pytorch图像分类篇:1.卷积神经网络基础与补充

前言

最近在b站发现了一个非常好的 计算机视觉 + pytorch 的教程,相见恨晚,能让初学者少走很多弯路。
因此决定按着up给的教程路线:图像分类→目标检测→…一步步学习用pytorch实现深度学习在cv上的应用,并做笔记整理和总结。

up主教程给出了pytorch和tensorflow两个版本的实现,我暂时只记录pytorch版本的笔记。

参考内容来自:

卷积神经网络

在这里插入图片描述


CNN正向传播——以LeNet举例

第一节课主要是通过LeNet网络讲解了CNN中的卷积层、池化层和全连接层的正向传播过程。(包含卷积层的神经网络都可以称为卷积神经网络),由于是基础,就不再赘述。

关于CNN基础可以参考CNN基础
关于LeNet网络可以参考LeNet详解
在这里插入图片描述

这里推荐一个LeNet的可视化网页,有助于理解(需翻墙)https://www.cs.ryerson.ca/~aharley/vis/conv/

在这里插入图片描述


补充1——反向传播中误差的计算:softmax/sigmoid

之前我自己总结过神经网络的反向传播过程,即根据误差的反向传播来更新神经网络的权值。

一般是用 交叉熵损失Cross Entropy Loss)来计算误差

在这里插入图片描述
需要注意的是,softmax的所有输出概率和为1,例如进行图像分类时,输入一张图像,是猫的概率为0.3,是狗的概率为0.6,是马的概率为0.1。

在这里插入图片描述

而sigmoid的输出则没有概率和为1的要求。


补充2——权重的更新

在这里插入图片描述
实际应用中,用优化器optimazer)来优化梯度的求解过程,即让网络得到更快的收敛:

  • SGD优化器(Stochastic Gradient Descent 随机梯度下降)
    • 缺点:1. 易受样本噪声影响;2. 可能陷入局部最优解
    • 改进:SGD+Momentum优化器
  • Agagrad优化器(自适应学习率)
    • 缺点:学习率下降的太快,可能还没收敛就停止训练
    • 改进:RMSProp优化器:控制下降速度
  • Adam优化器(自适应学习率)

详情可参考机器学习:各种优化器Optimizer的总结与比较
附图:几种优化器下降的可视化比较
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值