Pytorch Pytorch+深度学习神经网络相关学习收获

文章目录

一、基础知识

机器学习 本质就是通过 数据+答案的数据集 经过机器学习的训练 得到相关的规则进行预测

对应224×224×3的图像 代表的意思是 高×宽×通道

3通道可以理解为RGB的

二、Pytorch

pytorch好处

①利用GPU进行加速

②用于构建深度神技网络

三、如何实现一个神经网络

get_data() 准备数据 准备输入输出的张量(张量可以理解为数组)

get_weights() 创建学习参数,最原始的参数都是随机得到的,然后一步步优化

simple_network() 简单的网络架构 最简单的是线性规则作为输入产生对应的输出 y=wx+b

loss_fn() 损失函数,用来评估模型性能的好坏,同时可以作为优化器的输入 进行进一步的性能优化 常用的指标是误差平方和 SSE MSE

optimize() 优化器,调整初试随机权重(根据loss调整参数)

四、pytorch的数据类型

pytorch 有两种数据类型(张量和变量)

张量类似numpy中的数组

0维张量:标量 FloatTensor 或 LongTensor

1维张量:向量 元素序列的数组

2维张量:矩阵

3维张量:多个矩阵累加到一起(宽,高,颜色)

切片张量:进行截取

4维张量:一批图像

5维张量:视频

通常用cuda()方法,将张量从cpu复制到gpu

五、常用结构

torch.random 任意给定形状创建随机值

loss 评估损失

learning_rate 超参数,用较小梯度调整

优化器 常用的有Adam、RMSprop、SGD优化

加载数据:

DataSet类:任何数据集都要继承这个类,并且要实现__len__(self)与__getitem__(self,idx)方法

Dataloader:这个类位于pytorch 的utils类中,负责将数据集对象与不同取样器联合

常用的非线性函数有:sigmoid、tanh、ReLU、Leaky ReLU

①fx=1/(1+e^x)

输入实数,0-1之间输出,极大负值更接近0,极大正值更加接近1

②tanh

-1到1之间

③ReLU

fx=max(0,x)

有助于更快找到权重集合,随机梯度收敛快

成本低,只是判断就行

缺点:有很大梯度反向传播时,神经元完全无效,可通过选择对应的学习率来控制

④Leaky ReLU

非连续 饱和度设为0.001

六、构造神经网络的相关知识

pytorch子类要调用nn.Module

init初始化层,forward 传值并且返回输出

优化器需要一个标量值,由loss层生成,有时需要多个

也可以是交叉熵损失(总和为1)

loss=nn.CrossEntropyLoss()/nn.MSELoss()

input=Variable(torch.random(3,5),requires_grad=True)

target=Variable(torch.LongTensor(3).random_(50))

output=loss(input,output)

output.backward()

常用的损失函数

L1loss 正则化使用

MSELoss 均方误差损失,用于回归

CrossEntropyLoss 交叉熵损失,用于二分类和多类别分类

NLLLoss 用于分类

NLLLoss2d 像素级分类

常用的优化网络架构

ADADELTA

Adagrad

Adam

Sparse

Adamax

ASGD

LBFGS

RMSprop

Rprop

SGD

优化中要记得用zero_grad()函数避免参数累加

七、数据集处理

glob方法返回特定路径的所有文件,文件巨大可以用iglob

pytorch对数据做的工作

1、转换为同等大小

2、用数据集的均差和标准差归一化

3、图片数据转换为Pytorch张量

DataLoader: 两个参数

1、shuffle 为True的时候,每次调用混合排列图片

2、num_workers:用于并发 并发进程个数

通过torchvision.models 获取模型

相关推荐
2601_962296288 分钟前
Pytorch转ONNX详解
pytorch·深度学习·框架·onnx·模型转换
大熊背22 分钟前
冯‑克里斯映射估计算法逻辑
深度学习·机器学习·计算机视觉·白平衡·色调映射·冯-克里斯映射估计
147API28 分钟前
蒸馏模型上线后怎样设置教师回退,避免失败请求反复烧钱
大数据·人工智能·深度学习·机器学习·蒸馏
差不多的周周39 分钟前
《MoChat:面向多转弯动作理解和描述的关节分组时空接地多通道大语言模型》论文核心部分详解
人工智能·深度学习·机器学习·计算机视觉·语言模型·自然语言处理
Zzj_tju1 小时前
小模型指令微调:数据混合、模板与过拟合的最小复现
人工智能·深度学习·机器学习·语言模型
孤狼warrior2 小时前
SCTR 五次失败的安全 BN 路由器
人工智能·python·深度学习·算法·安全·yolo
Hali_Botebie2 小时前
地平线PrepareMethod:EAGER和Graph Model
人工智能·深度学习
承渊政道2 小时前
【从零开始大模型开发与微调:基于PyTorch与ChatGLM】(实战训练自己的ChatGPT从续写模型到对齐助手:RLHF、奖励模型与PPO精读)
人工智能·pytorch·chatgpt·预训练·rlhf·大模型微调
June bug3 小时前
【HCIA- AI(正课)】2.4 循环神经网络
人工智能·rnn·深度学习
YOLO数据集集合3 小时前
红外热成像人员检测数据集 |红外检测 白热模式 人员检测 夜间监控 目标检测 YOLO格式 深度学习数据集 计算机视觉9067期
数据库·深度学习·yolo·目标检测·计算机视觉·红外人员·红外数据