umich cv-4-2 经典卷积网络架构

这篇具有很好参考价值的文章主要介绍了umich cv-4-2 经典卷积网络架构。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这节课中主要讨论了卷积神经网络的发展历史以及几种经典结构是如何构建的

  • 卷积网络经典结构
    • AlexNet
    • VGG
    • GoogleNet
    • Residual Network

AlexNet

在2012年的时候,Alexnet神经网络提出,这时网络的架构比如说各个层之间要如何排列组合,使用多少卷积层池化层,每个层又如何设置超参数其实没有什么规律,主要通过实验与试错:
umich cv-4-2 经典卷积网络架构
但是我们通过对内容容量,可学习参数以及浮点运算次数的计算,可以看到一些有趣的规律,绝大多数的内容容量都使用在了卷积层,绝大多数的可学习的参数都在全连接层,绝大多数的浮点运算都发生在卷积层
umich cv-4-2 经典卷积网络架构
在2013年又提出了ZFNet,其实只是一个更大的AlexNet:
umich cv-4-2 经典卷积网络架构
umich cv-4-2 经典卷积网络架构

VGG

在2014年提出了VGG网络,VGG网络引入了有规律的设计。建立了更深层的网络,我们可以看到卷积层与池化层的超参数都是固定的,并且每次池化之后都会让卷积层通道数加倍,这样可以保证卷积层每次进行的运算数量一致
umich cv-4-2 经典卷积网络架构
从下图也可以看出,VGG要比Alexnet复杂许多:
umich cv-4-2 经典卷积网络架构

GoogleNet

umich cv-4-2 经典卷积网络架构
但是同样在2014年提出的Googlenet网络中,不再强调更大更深的神经网络,因为谷歌想要在更低要求的设备下,去追求效率,这意味着减少内存容量的使用,可学习参数的数目以及浮点运算的次数
为了实现上面的目标,googlenet做出了很多的努力

首先,在网络最开始,Googlenet采用了非常激进地下采样,使用了步长与卷积核都比较大的卷积层以及池化层,我们可以看到是直接从224维度降到了28,同时内存,参数,浮点运算也大幅下降:
umich cv-4-2 经典卷积网络架构

其次,Googlenet在网络的中间部分,多次采用了叫Inception Module的结构,我们可以看到它是采用了多个平行分支,在多个尺寸上进行卷积再聚合,那么我们怎么理解这样设计呢,可以参考这篇博文:https://zhuanlan.zhihu.com/p/32702031
简单来说,其实就相当于把传统卷积方式得到的稀疏矩阵,使用不同尺度的卷积,我们可以得到密集矩阵,把相关性强的特征聚集在一起,筛除了冗余信息:
umich cv-4-2 经典卷积网络架构

然后,在神经网络的最后,不使用很大的全连接层,而是使用一个平均池化层以及一个全连接层来输出各分类分数得分,这样可以大大减少参数,内存以及浮点运算次数:
umich cv-4-2 经典卷积网络架构

最后,由于神经网络层数过深,梯度传播效果不佳,可以选择在其它层数采用和最后结构一样的结构,提取输出分类分数,但是这里是batch normalization还没有提出的时候,之后我们就不需要这样做
umich cv-4-2 经典卷积网络架构

ResidualNetwork

在batch normalization提出之后,我们可以很轻松地训练深层的网络使其收敛,导致神经网络的层数迅速增加,但是又出现的新的问题,发现深层神经网络反而不如浅层神经网络训练效果好,甚至出现了欠拟合的情况。

后来就有人(何大神)想出了残差网络,核心原理可以参见这篇:https://medium.com/@hupinwei/深度學習-resnet之殘差學習-f3ac36701b2f
大概是说过深的神经网络会导致出现退化的情况,有一种办法就是我们直接堆叠一层和上一层一样的结果(Identify mapping 恒等映射),更好的办法是这样做:
“讓我們先建立以下的概念:

輸入是x

學到的特徵是H(x)

我們定義一個新的名詞,叫做殘差 Residual

Residual = H(x) - x

殘差的概念很直覺吧? 就是學到的特徵和原本的輸入的差異。

既然是Residual = H(x) - x,Residual 也是X的函數,所以也寫作F(x), 那F(x) = H(x) - x

原本學習是這樣的。 x → H(x)

已經知道 F(x) = H(x) - x

所以學習也可以這樣寫:x → F(x) + x

因為H(x) = F(x) + x

用文字來說明的話,

輸入→特徵

變成:輸入→ 輸入 + 殘差

這樣有什麼好處嗎?

如果今天我們多一層,什麼都沒有學到。那殘差就是0

那多這一層,想想我們上面介紹過的,當殘差=0的時候,輸入→ 輸入,這一層就叫做恆等映射,因此,多這一層如果沒學到新的特徵,也不會讓模型退化。實際上當然不會剛好等於0, 而是可以增加很多層,而每一層都可以學到一些新的更複雜的特徵。”
这就是残差网络中基本的残差块的设计思路:
umich cv-4-2 经典卷积网络架构
我们把上图的shortcut加入卷积层,再结合之前VGG的中间结构设计,googlenet的首尾设计,刚开始激进地下采样,最后采用平均池化层与一个线性层输出结构,就得到了残差网络的设计:
umich cv-4-2 经典卷积网络架构
umich cv-4-2 经典卷积网络架构

更进一步地,我们可以优化残差块的设计,使计算量更小:
umich cv-4-2 经典卷积网络架构

我们可以总体看看不同卷积网络的复杂度比较:
umich cv-4-2 经典卷积网络架构

最后提及一些其它更加高效的设计,并没有详细地讲,我也不是很懂,这里就再放一张总结图以及小哥的温馨提示:
umich cv-4-2 经典卷积网络架构
umich cv-4-2 经典卷积网络架构文章来源地址https://www.toymoban.com/news/detail-711125.html

到了这里,关于umich cv-4-2 经典卷积网络架构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • umich cv-3-2

    既然谈到神经网络,我们肯定要讨论在神经网络中是如何进行梯度的计算以及参数的优化的 传统的方法就是我们手动计算梯度,但是随着神经网络层数的增加,这种方法显然过于复杂 因此我们引入了计算图的概念,从一个简单的例子出发: 我们可以把一个(x+y)z的计算式拆分

    2024年02月08日
    浏览(32)
  • umich cv-1

    在本节课中,首先justin老师为我们介绍了图像分类了基础概念以及其用途,这里就不多涉及了 接着我们思考图像分类问题,如果我们想要直接通过某种算法来实现图像分类,显然是比较棘手的,于是引入了机器学习的思想,即用数据驱动,用数据去训练我们的分类器,再用新

    2024年02月08日
    浏览(28)
  • umich cv-2-1

    对于使用线性分类器来进行图片分类,我们可以给出这样的参数化方法: 而对于这样一个式子,我们怎么去理解呢? 首先从代数的角度,这个f(x,W)就是一张图片的得分,我们可以将一张图片所有的像素点输入,乘以一个权重矩阵,再加上一个偏置项b,就得到f(x,W) 举个具体的

    2024年02月08日
    浏览(31)
  • umich cv-2-2

    在上一篇博文中,我们讨论了利用损失函数来判断一个权重矩阵的好坏,在这节中我们将讨论如何去找到最优的权重矩阵 想象我们要下到一个峡谷的底部,我们自然会选择下降最快的斜坡,换成我们这个问题就是要求权重矩阵相对于损失函数的梯度函数,最简单的方法就是使

    2024年02月08日
    浏览(25)
  • umich cv-3-1

    对于传统的线性分类器,分类效果并不好,所以这节引入了一个两层的神经网络,来帮助我们进行图像分类 可以看出它的结构十分简单,x作为输入层,经过max(0,W1*x)到达h隐藏层,再经过W2到达s输出层 如果我们对隐藏层的结果进行可视化,我们可以看到如下的图像: 相对

    2024年02月08日
    浏览(29)
  • umich cv-6-2 注意力机制

    这节课中介绍了循环神经网络的第二部分,主要引入了注意力机制,介绍了注意力机制的应用以及如何理解,在此基础上建立了注意力层以及transformer架构 注意力机制 注意力机制 应用与理解 注意力层 transformer 上次我们没有提到sequence to sequence的RNN结构: 以文字翻译应用为例

    2024年02月07日
    浏览(31)
  • 经典卷积网络

    目录 一、经典神经网络出现的时间线​编辑 二、LeNet 三、AlexNet 四、VGGNet 五、InceptionNet 六、ResNet 总结: 背景 :LeNet由Yann LeCun于1998年提出,卷积网络开篇之作。 解释: 有一个6*5*5和16*5*5的卷积核,分别执行了CBAPD ,可以看出比如B(归一化),D(省略)都没有,不是因为没有设

    2024年02月11日
    浏览(25)
  • 【Python机器学习】实验16 卷积、下采样、经典卷积网络

    tf.Tensor: id=8263, shape=(2, 8), dtype=float32, numpy= array([[0.16938789, 0. , 0.08883161, 0.14095941, 0.34751543, 0.353898 , 0. , 0.13356908], [0. , 0. , 0.48546872, 0.37623546, 0.5447475 , 0.21755993, 0.40121362, 0. ]], dtype=float32) tf.Tensor: id=8296, shape=(4, 5), dtype=float32, numpy= array([[0. , 0. , 0. , 0.14286758, 0. ], [0. , 2.2727172 , 0. , 0

    2024年02月11日
    浏览(37)
  • 经典卷积神经网络-LeNet-5

    LeNet-5是Yann LeCun等人在《Gradient-Based Learning Applied to Document Recogn》论文中提出的一个卷积神经网络,LeNet的基本思想和结构为后来更复杂的神经网络提供了灵感,并为研究者们提供了深入理解卷积神经网络的起点。 如图所示,这是论文中所介绍的LeNet-5网络结构。输入为一个3

    2024年02月03日
    浏览(38)
  • 经典卷积神经网络——VGG16

    我们都知道Alexnet是卷积神经网络的开山之作,但是由于卷积核太大,移动步长大,无填充,所以14年提出的VGG网络解决了这一问题 VGG网络由牛津大学在2014年ImageNet挑战赛本地和分类追踪分别获得了第一名和第二名。研究卷积网络深度对其影响在大规模图像识别设置中的准确性

    2024年02月03日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包