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

跟着小土堆学习pytorch(六)——神经网络的基本骨架(nn.model)

文章目录

  • 一、model介绍
  • 二、Module
  • 三、张量
    • 3.1 定义
    • 3.2 用法

一、model介绍

容器                                          Containers
卷积层                                        Convolution Layers
池化层                                        Pooling layers
填白层                                        Padding Layers
非线性激活(加权和,非线性)                  Non-linear Activations (weighted sum, nonlinearity)
非线性激活(其他)                            Non-linear Activations (other)
正则化层                                      Normalization Layers
复发性层                                      Recurrent Layers
变压器层                                      Transformer Layers
线性层                                        Linear Layers
辍学层                                        Dropout Layers
稀疏层                                        Sparse Layers
距离函数                                      Distance Functions
损失函数                                      Loss Functions
视觉层                                        Vision Layers
洗牌层(打乱)                                Shuffle Layers
数据并行层                                    DataParallel Layers (multi-GPU, distributed)
量化的功能                                    Quantized Functions
惰性模块初始化                                Lazy Modules Initialization

以后一一介绍

二、Module

class Model(nn.Module):def __init__(self) -> None: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))

定义自己的类(神经网络),自己继承了Module的父类,但是有想进行修改,则定义了__init__和forward,
之后就是调用父类的初始化函数。forward(前向传播),backward(反向传播)。

x魏输入,F.relu(self.conv1(x)),先经过一次卷积conv1,之后经过一次非线性relu
由于返回时return F.relu(self.conv2(x))所有总共两组。
示例

import torch
from torch import nn
class Tudui(nn.Module):def __init__(self):super().__init__()def forward(self,input):output = input + 1return output
tudui = Tudui()
x = torch.tensor(1.0)
output = tudui(x)
print(output)

三、张量

3.1 定义

数学中
标量:单独的数
向量:一行或一列数组
矩阵:二维数组
张量:维度超过2的数组

PyTorch中
张量(Tensor)是一种数据结构,可以是一个标量、一个向量、一个矩阵,甚至是更高维度的数组。

所以PyTorch中的张量(Tensor)和Numpy中的**数组(ndarray)**非常相似。

3.2 用法

一、张量的数据类型、默认类型、类型转换。
二、张量的生成:torch.tensor()、torch.Tensor()、张量和NumPy数据互相转换、随机数生成张量、函数生成等。
三、张量操作:改变张量的形状、获取张量中的元素、拼接和拆分等。
四、张量计算:比较大小、基本运算、统计相关计算等。

文章链接:【PyTorch】张量超详细介绍(数据类型、生成、操作、计算)

http://www.lryc.cn/news/478534.html

相关文章:

  • 数字化落地过程中的研发效能治理如何开展?
  • Windows安装配置node.js
  • Javaweb梳理9——JDBC
  • 逆向CTF入门(如何找main)
  • c语言归并排序
  • 碳化硅陶瓷膜的特性
  • 机器学习(三)——决策树(附核心思想、重要算法、概念(信息熵、基尼指数、剪枝处理)及Python源码)
  • 良心无广,这五款电脑软件堪称必备,最后一个比快播都猛
  • Vue3中实现原生CSS完成圆形按钮点击粒子效果和定点旋转动画
  • 百度网盘 服务器开小差了
  • 数据分析师招聘要求
  • 【C语言】实战-力扣题库:回文链表
  • Centos安装Minio
  • 二叉树的基本概念和底层实现
  • GIF图片格式详解(三)
  • 类和对象相关题
  • Word大珩助手:超大数字怎么读?35位数字?69位数字?
  • 阿里云k8s-master部署CNI网络插件遇到的问题
  • 【LwIP源码学习4】主线程tcpip_thread
  • 求猫用宠物空气净化器推荐,有没有吸毛强、噪音小的产品
  • pycharm中python控制台出现CommandNotFoundError: No command ‘conda run‘.
  • 架构师备考-架构基本概念
  • 信奥赛C++知识点
  • 高并发内存池扩展 -- 处理大内存,优化释放时需要传入空间大小,加入定长内存池,存放映射关系的容器的锁机制,优化性能(基数树,优势,优化前后对比)
  • Composite(组合)
  • 有Bootloader,为什么还要BROM?
  • 【MATLAB代码】CV和CA模型组成的IMM(滤波方式为UKF),可复制粘贴源代码
  • 【网络】传输层协议TCP(下)
  • 服务器数据恢复—EVA存储故障导致上层应用不可用的数据恢复案例
  • 支持向量机相关证明 解的稀疏性