深度学习-03 Pytorch

损失函数是用来衡量模型预测结果与真实值之间的差异,并用来优化模型的指标。在机器学习和神经网络中,常用的损失函数包括均方误差(Mean Squared Error,MSE)、交叉熵(Cross-Entropy)等。

反向传播(Backpropagation)是一种基于梯度下降算法的优化方法,用来计算模型中每个参数对于损失函数的梯度,从而更新参数以最小化损失函数。反向传播通过链式法则将损失函数的梯度传递回每个参数,从输出层向输入层反向计算梯度。具体而言,反向传播算法可以分为两个步骤:

前向传播(Forward Propagation):将输入数据通过模型的参数计算出预测值,并计算出损失函数的值。

反向传播(Backward Propagation):通过链式法则计算出损失函数对于每个参数的梯度,并更新参数。

反向传播的过程中,需要根据损失函数的类型来计算梯度。例如,对于均方误差损失函数,梯度的计算可以通过对每个参数的偏导数进行求解;对于交叉熵损失函数,梯度的计算可以通过softmax函数的导数进行求解。

反向传播算法的实现主要包括两个步骤:计算梯度和参数更新。在计算梯度时,通过对损失函数进行求导,得到每个参数的梯度;在参数更新时,根据梯度和学习率进行参数的更新。这个过程不断迭代,直到达到收敛条件或达到一定的迭代次数为止。

优化器是机器学习中一个重要的组件,用于调整模型的参数以使其最优化。在机器学习任务中,目标就是最小化或最大化一个特定的损失函数。优化器的作用就是通过调整模型的参数,使得损失函数的值最小化或最大化。

常见的优化器有梯度下降法(Gradient Descent)、随机梯度下降法(Stochastic Gradient Descent)、动量法(Momentum)、Nesterov Accelerated Gradient(NAG)、Adagrad、RMSprop、Adam等。

常见的Pytorch模型有:

1.线性回归模型(Linear Regression Model):用于拟合线性关系数据的模型。

2.逻辑回归模型(Logistic Regression Model):用于分类问题的模型。

3.多层感知机模型(Multi-Layer Perceptron Model):由多个全连接层组成的深度神经网络模型。

4.卷积神经网络模型(Convolutional Neural Network Model):用于处理图像和视觉数据的模型。

5.循环神经网络模型(Recurrent Neural Network Model):用于处理序列数据的模型。

6.长短期记忆网络模型(Long Short-Term Memory Model):一种循环神经网络的变种,用于处理长序列数据的模型。

7.生成对抗网络模型(Generative Adversarial Network Model):由生成器和判别器组成的模型,用于生成新的数据样本。

8.注意力机制模型(Attention Mechanism Model):用于处理序列数据的模型,通过对输入序列的不同部分赋予不同的注意权重来提升模型性能。

9.Transformer模型:基于注意力机制的模型,用于处理序列数据的模型,如自然语言处理任务中的机器翻译和文本生成等。

模型保存

python 复制代码
vgg16=torchvision.models.vgg16(pretrained=False)

# 保存方式一,保存模型结构+模型参数
torch.save(vgg16,"vgg16_method1.pth")

# 保存方式二,保存模型参数  (推荐)
torch.save(vgg16.state_dict(),"vgg16_method2.pth")




# 保存方式一:加载模型
model=torch.load("vgg16_method1.pth")

# 保存方式二:加载模型
vgg16=torchvision.models.vgg16(pretrained=False)
vgg16.load_state_dict()
model=torch.load("vgg16_method2.pth")
相关推荐
985小水博一枚呀5 分钟前
【深度学习|可视化】如何以图形化的方式展示神经网络的结构、训练过程、模型的中间状态或模型决策的结果??
人工智能·python·深度学习·神经网络·机器学习·计算机视觉·cnn
LluckyYH2 小时前
代码随想录Day 46|动态规划完结,leetcode题目:647. 回文子串、516.最长回文子序列
数据结构·人工智能·算法·leetcode·动态规划
古猫先生2 小时前
YMTC Xtacking 4.0(Gen5)技术深度分析
服务器·人工智能·科技·云计算
一水鉴天2 小时前
智能工厂的软件设计 “程序program”表达式,即 接口模型的代理模式表达式
开发语言·人工智能·中间件·代理模式
Hiweir ·3 小时前
机器翻译之创建Seq2Seq的编码器、解码器
人工智能·pytorch·python·rnn·深度学习·算法·lstm
Element_南笙3 小时前
数据结构_1、基本概念
数据结构·人工智能
FutureUniant3 小时前
GitHub每日最火火火项目(9.21)
人工智能·计算机视觉·ai·github·音视频
明明真系叻3 小时前
第十二周:机器学习笔记
人工智能·机器学习
你的陈某某4 小时前
【变化检测】基于ChangeStar建筑物(LEVIR-CD)变化检测实战及ONNX推理
深度学习·变化检测