深度学习(六)——神经网络的基本骨架:nn.Module的使用

一、torch.nn简介

官网地址:

torch.nn — PyTorch 2.0 documentation

1. torch.nn中的函数简介

  • Containers:神经网络的骨架

  • Convolution Layers:卷积层

  • Pooling layers:池化层

  • Padding Layers:Padding

  • Non-linear Activations:非线性激活

  • Normalization Layers:正则化层

还有其他函数,详情可以看官方文档。以上这些函数构成了神经网络的基本操作。

2. torch.nn中Containers函数的介绍

Containers一共有六个模块:

  • Module:对于所有神经网络提供一个基本的骨架,一般定义一个神经网络用如下代码。其中,_Model_代表模型的名称,_nn.Module_就是继承了这个类的模板。然后我们先用__init__初始化,其中super(Model,self).__init__()指的是对父类进行初始化,后面的部分是根据自己构建的神经网络个性化定制的。之后我们使用forword函数对输入数据进行计算,也可以这么理解:对于一个神经网络,首先输入数据–>使用forword函数计算数据–>输出数据,这个过程也叫前向传播
import torch.nn as nn
import torch.nn.functional as Fclass Model(nn.Module):def __init__(self):super().__init__()self.conv1 = nn.Conv2d(1, 20, 5)self.conv2 = nn.Conv2d(20, 20, 5)def forward(self, x):x = F.relu(self.conv1(x))return F.relu(self.conv2(x))
  • Sequential

  • ModuleList

  • ModuleDict

  • ParameterList

  • ParameterDict

二、实操nn.Module

1. 构建一个简单的神经网络

  • 一些小技巧:在写__init__super函数时,pycharm点击下面这个按钮就可以自动补全:

  • 下面构建一个很简单的神经网络,具体作用就是把输入数据+1然后返回,之后调用这个神经网络:

from torch import nn
import torch#构建一个叫Demo的神经网络
class Demo(nn.Module):def __init__(self):super().__init__()def forward(self,input):output=input+1  #对输入神经网络的数据+1,然后返回return output#调用神经网络
demo=Demo()
x=torch.tensor(1.0)  #输入神经网络的数据
output=demo(x)
print(output)  #输出神经网络的数据

[Run] tensor(2.)

2. 神经网络运行过程

为了更好地说明上面代码的运行过程,把debug打到第14行的demo=Demo()代码上,并点击_Step into My Code_:

之后一直点击_Step into My Code_,就可以看到代码的运行过程如下:

  • 在调用demo=Demo()后,首先使用super().__init__()对\(nn.Module\)进行初始化

  • 然后设定输入值x,并使用demo(x)将该值传入到forword函数中

  • forword函数将该值进行_加一_,并返回output

  • 最后将返回的output输出

最后的最后

感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你。

因为这个行业不同于其他行业,知识体系实在是过于庞大,知识更新也非常快。作为一个普通人,无法全部学完,所以我们在提升技术的时候,首先需要明确一个目标,然后制定好完整的计划,同时找到好的学习方法,这样才能更快的提升自己。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

五、面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下。
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1451444.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Linux多线程编程中的同步与互斥

文章目录 一、线程同步与互斥1、理解线程同步2、互斥的概念3、小结 二、互斥锁(Mutex)1、互斥锁的定义和作用2、pthread库中的互斥锁3、互斥锁的实现原理4、示例代码演示互斥锁的基本用法 三、条件变量(Condition Variable)1、条件…

RK3566调试VI5301

VI5301是南京芯视界推出的一款直接飞行时间(dToF)传感器,与ST的VL53L0x兼容。 一、开发平台 系统:linux 4.19(buidroot) 二、驱动移植 解压厂家提供的驱动文件:VI5301_Linux_General_M40_V202,目录结构…

QML学习及实战

QML学习及实战(更多内容) 创建项目 3. 剩下的就是一路下一步即可 添加静态资源——图片 添加之后完成之后的路径 案列 || demo 可以参考的资料:https://github.com/gongjianbo/MyTestCode/blob/master/README.md 1. 文本省略号 Text {wi…

Python中关于电商商品数据的采集【taobao/JD/商品详情数据返回】

在Python中采集电商商品数据(如淘宝、京东等)通常涉及到网络爬虫(web scraping)或称为网络数据抓取(web data scraping)。由于电商平台通常会有反爬虫机制,因此直接抓取数据可能会遇到各种挑战&…

CV每日论文--2024.6.14

1、ICE-G: Image Conditional Editing of 3D Gaussian Splats 中文标题:ICE-G:3D 高斯斑点的图像条件编辑 简介:近年来,出现了许多技术来创建高质量的3D资产和场景。然而,当涉及到这些3D对象的编辑时,现有方法要么速度慢、要么牺牲质量,要么…

【ai】blender4.1 安装插件

开源软件,所以资料充足插件及配置 下载插件插件是python开发的 编辑中的偏好设置 点击选中 点击一键切换中文英文 切换主题 插件源码

搭建 Redis 集群【Windows】

Redis 集群是一个分布式存储解决方案,它将数据分布在多个Redis节点上,以提高系统的可伸缩性、可靠性和性能。 1. 集群概念与特点 集群概念:Redis集群是由多个相互独立的 Redis 节点组成,这些节点通过高速网络互联,并作…

数据采集项目2-业务数据同步

全量同步 每天都将业务数据库中的全部数据同步一份到数据仓库 全量同步采用DataX datax datax使用 执行 python /opt/module/datax/bin/datax.py /opt/module/datax/job/job.json 更多job.json配置文件在: 生成的DataX配置文件 java -jar datax-config-genera…

Go Module详解

文章目录 基本介绍相关环境变量Go Module的使用初始化项目(go mod init)管理依赖项(go mod edit)获取依赖项(go mod download)整理依赖项(go mod tidy)导入vendor目录(go…

优思学院|做质量没有前途?10年质量人想对大家说...

你是否也有过这样的困惑?做质量工作究竟有没有前途?是不是感觉每天都在重复一样的事情,看不到未来的希望? 今天,优思学院分享一个任职于五百强企业、有着10年经验的质量人、六西格玛黑带学生徐某的文章,和…

【VS】尚未配置为Web项目XXXX指定的本地IIS URL HTTP://localhost

报错原因: 我们在Web项目的属性配置中勾选了“使用本地IIS Web服务器”; 本来嘛,这也没啥,问题是当我们的电脑IP改变时,将会导致程序找不到原来的IP地址了,那么当然会报错啦。 解决办法: 其实…

新一代大核卷积反超ViT和ConvNet!同参数量下性能、精度、速度完胜

大核卷积网络是CNN的一种变体,也是深度学习领域的一种重要技术,它使用较大的卷积核来处理图像数据,以提高模型对视觉信息的理解和处理能力。 这种类型的网络能够捕捉到更多的空间信息,因为它的大步长和大感受野可以一次性覆盖图像…

填报志愿选大学专业,文科生如何选专业?

读文科的同学接触的专业知识相对广泛,往往被认为是“万金油”,他们仿佛什么都能做,但是和专业技能类知识不同,缺乏技术支持,从而使得文科专业的就业方向和前景远远比不上理科专业那么明朗,对于众多文科生而…

加速“芯”动力 | 2024集成电路测试工程师研修班(苏州场)报名通知

6月19日—20日,加速“芯”动力——2024集成电路测试工程师研修班正式开课。本次培训课程内容包括芯片设计测试技术分享、解决方案分享、ATE编程接口介绍、ATE向量微指令、ATE量产界面介绍、测试开发基础培训、程序开发实训等内容,感兴趣的小伙伴&#xf…

【智能家居控制系统项目】一、项目系统镜像烧录与系统登录

前言 完成本章节将可以获得本项目的系统UI界面功能。本章节主要介绍如何烧录项目系统镜像以及进入系统。配套的视频介绍可以点击跳转到智能家居项目复刻配套视频 1.系统功能页面介绍 完成本章全部步骤,我们将可使用以下项目系统功能界面。 1.1 家居总览界面 主界面…

热门开源项目OpenHarmony

目录 1.概述 1.1.开源项目的意义 1.2.开源项目对软件行业的促进作用 1.3.小结 2.OpenHarmony 2.1.技术架构 2.2.分布式软总线 2.2.1.架构 2.2.2.代码介绍 2.2.2.1.代码目录 2.2.2.2.说明 2.2.2.3.发现组网和传输 2.2.2.3.1.发现 2.2.2.3.2.组网 2.2.2.3.3.传输…

从0到1:手动测试迈向自动化——手机web应用的自动化测试工具

引言: 在当今移动互联网时代,手机web应用已经成为人们生活中不可或缺的一部分。为了保证手机web应用的质量和稳定性,自动化测试工具变得十分重要。本文将介绍手机web应用自动化测试工具的选择和使用,提供一份超详细且规范的指南&a…

160. 相交链表 (Swift版本)

题目描述 最简单直接的解法 遍历 headA 的所有节点, 看 headB 中是否有相交的节点 /*** Definition for singly-linked list.* public class ListNode {* public var val: Int* public var next: ListNode?* public init(_ val: Int) {* self.val val*…

(三十)Flask之wtforms库【剖析源码上篇】

每篇前言: 🏆🏆作者介绍:【孤寒者】—CSDN全栈领域优质创作者、HDZ核心组成员、华为云享专家Python全栈领域博主、CSDN原力计划作者 🔥🔥本文已收录于Flask框架从入门到实战专栏:《Flask框架从入…

Nacos启动报错

报错日志: Caused by: java.lang.NullPointerException at com.mysql.jdbc.ConnectionImpl.getServerCharset(ConnectionImpl.java:2983) at com.mysql.jdbc.MysqlIO.sendConnectionAttributes(MysqlIO.java:1873) at com.mysql.jdbc.Mysql…