pytorch解微分方程_【他山之石】pytorch中optimizer对loss的影响

“他山之石,可以攻玉”,站在巨人的肩膀才能看得更高,走得更远。在科研的道路上,更需借助东风才能更快前行。为此,我们特别搜集整理了一些实用的代码链接,数据集,软件,编程技巧等,开辟“他山之石”专栏,助你乘风破浪,一路奋勇向前,敬请关注。

作者:知乎—Agnio-ltp

地址:https://www.zhihu.com/people/agnio-ltp

神经网络优化器的作用是为了优化神经网络,从而加速训练网络。pytorch中的optimizer包含好几个常用的分类器。这些分类器的原理各有差异,比如学习率,权重衰减等方面。这里分析不同分类器对于反向传播后的loss值的影响,通常loss值在多次反向传播后越小那么模型预测的准确率会越高,下面就直接通过代码来分析。 编译环境:anaconda、pytorch

01

读取数据集并构建模型
import torchimport torch.nn as nnimport torch.nn.functional as Fimport torchvisionimport torchvision.datasets as dsetimport torchvision.transforms as transformsimport torch.optim as optim
模型训练,使用线性模型
class Model(nn.Module):    def __init__(self):        super(Model, self).__init__()        self.f1 = nn.Linear(28*28, 100, bias=True)        self.f2 = nn.Linear(100, 10, bias=True)    def forward(self, data):        data = self.f1(data)        data = F.relu(data)        data = self.f2(data)        return data
读取MNIST数据集
root = 'data/MNIST'transformfun = transforms.Compose([    transforms.ToTensor(),
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值