• 深度学习面试题19:1*1卷积核的作用


    目录

      举例

      在Inception module上的应用

      参考资料


    可以减少计算量,可以增加非线性判别能力

    举例

    假设有1个高为30、宽为40,深度为200的三维张量与55个高为5、宽为5、深度为200的卷积核same卷积,步长=1,则结果是高为30、宽为40、深度为55的三维张量,如图所示:

    该卷积过程的乘法计算量大约为5*5*200*30*40*55=330000000,这个计算量很大。

    接着,我们可以考虑第二种卷积过程,先利用1*1的卷积核在深度上降维,然后升维:

    上述卷积过程的计算量大约为:

    第一步:1*1*200*30*40*20=4800000

    第二步:5*5*20*30*40*55=33000000

    总的乘法计算量大约为:37800000

    显然,得到同样的最终的结果,采用第二种方式,即首先在深度方向上降维,第二种的计算量是第一种的37800000/330000000=0.11。

    第二步中的中间层也可以叫做瓶颈层,因为他是整个网络中最小的,你可能会问:你这样大幅地缩小模型的规模会不会影响到网络的性能?事实证明只要合理构建瓶颈层,你既可以显著缩小瓶颈层规模,又不会降低网络性能,从而大量减少了计算。

    另外,因为又引入了一层结构,激活函数可以引入额外的非线性能力.

     返回目录

    在Inception module上的应用

    在googlenet中的inception module中就使用了这种1*1的卷积核做降维,以减少计算量和增加非线性判别能力

     返回目录

    参考资料

    《图解深度学习与神经网络:从张量到TensorFlow实现》_张平

    inceptionV1-Going Deeper with Convolutions

    《深-度-学-习-核-心-技-术-与-实-践》

    吴恩达深度学习

     返回目录

  • 相关阅读:
    Binary Tree Maximum Path Sum
    ZigZag Conversion
    Longest Common Prefix
    Reverse Linked List II
    Populating Next Right Pointers in Each Node
    Populating Next Right Pointers in Each Node II
    Rotate List
    Path Sum II
    [Leetcode]-- Gray Code
    Subsets II
  • 原文地址:https://www.cnblogs.com/itmorn/p/11224989.html
Copyright © 2020-2023  润新知