当前位置: 首页 > news >正文

Pytorch深度学习-----神经网络的基本骨架-nn.Module的使用

系列文章目录

PyTorch深度学习——Anaconda和PyTorch安装
Pytorch深度学习-----数据模块Dataset类
Pytorch深度学习------TensorBoard的使用
Pytorch深度学习------Torchvision中Transforms的使用(ToTensor,Normalize,Resize ,Compose,RandomCrop)
Pytorch深度学习------torchvision中dataset数据集的使用(CIFAR10)
Pytorch深度学习-----DataLoader的用法


文章目录

  • 系列文章目录
  • 一、nn.Module是什么?
  • 二、搭建自己的一个神经网络


一、nn.Module是什么?

首先nn是Neural Netword(神经网络)首字母的缩写。
其次torch.nn是专门为神经网络设计的模块化接口,可以用来定义和运行神经网络
nn.Module是nn中十分重要的类,包含网络各层的定义及forward方法
类别如下图所示
在这里插入图片描述
Module:位于containers容器中
官网案例如下图所示:
在这里插入图片描述
代码解释如下:

import torch.nn as nn
import torch.nn.functional as Fclass Model(nn.Module):  # 表示nn.Module为其Model的父类,Model继承于它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))

小土堆对forward函数的解释如下图所示
在这里插入图片描述
在这里插入图片描述
即:对输入的x进行第一次卷积,再进行第一次非线性操作;
再第二次进行卷积,然后第二次非线性操作。
最后返回结果。

二、搭建自己的一个神经网络

import torch
import torch.nn as nn# 创建类
class Lgl(nn.Module):  # 表示nn.Module为其Lgl的父类,Lgl继承于它def __init__(self):  # 构造函数,进行初始化super().__init__()  # 调用父类的构造函数def forward(self, x):  # 前向传播函数y = x+1  # 定义这个神经网络是输入x,返回x+1的结果return y
# 实例化
test = Lgl()
x=torch.tensor(1.0)  # <class 'torch.Tensor'>创建tensor类型数据作为卷积的参数
print(type(x))
result = test(x)
print(result)  # tensor(2.)
http://www.lryc.cn/news/99685.html

相关文章:

  • QT开发快捷键
  • RabbitMQ 教程 | RabbitMQ 入门
  • 【雕爷学编程】MicroPython动手做(10)——零基础学MaixPy之神经网络KPU2
  • BUG分析以及BUG定位
  • Day46 算法记录| 动态规划 13(子序列)
  • 结构型-桥接模式(Bridge Pattern)
  • 基于小波哈尔法(WHM)的一维非线性IVP测试问题的求解(Matlab代码实现)
  • 前端(Electron Nodejs)如何读取本地配置文件
  • 没有 telnet 不能测试端口?容器化部署最佳的端口测试方式
  • 漏洞发现-BurpSuite插件-Fiora+Fastjson+Shiro
  • Elasticsearch-倒排索引
  • pagehelper与mybatis-plus冲突的解决办法
  • 解决使用Timer时出现Task already scheduled or cancelled异常的问题
  • P1175 后缀表达式
  • 【HashMap】49. 字母异位词分组
  • golang实现多态
  • formatter的用法,深拷贝, Object.assign 方法实战。
  • Windows上安装和使用git到gitoschina和github上_亲测
  • MATLAB算法实战应用案例精讲-【深度学习】预训练模型GPTXLNet
  • Spring data JPA常用命令
  • Excel的使用
  • 大数据课程D4——hadoop的MapReduce
  • java策略模式
  • Vue2封装自定义全局Loading组件
  • docker 搭建jenkins
  • 【Docker】Docker 部署 Mysql 并设置数据持久化
  • 【ARM 常见汇编指令学习 5 -- arm64汇编指令 wzr 和 xzr】
  • 4.4 成员变量与局部变量的区别有哪些?
  • 学生管理系统-03项目案例(3)
  • Banana Pi BPI-KVM – 基于 Rockchip RK3568 SoC 的 KVM over IP 解决方案