zoukankan      html  css  js  c++  java
  • 神经网络-1x1 filter的作用

    在设计卷积神经网络架构时,有时候想压缩input的width 和 height,通常的做法便是 加一层pooling layer。

    但是第三维的信息,有时候过多,而且过于复杂,这时候就要用到1x1xchannel的filter了。

    如图:

    1X1x192的filter相当于对图片的某一个像素点进行神经网络的全连接,并且在矩阵计算后,把channel从192变为32.

    并且可以消减算力,比如想把28x28x192的图像以5x5的32个filter转换为28x28x32的图像,则可以添加一层bottleneck layer也就是16个1x1x192的filter,作为过渡

    Google Inception Net 首次出现在 ILSVRC 2014 的比赛中(和 VGGNet 同年),就以较大优势拔得头筹。那届比赛中的 Inception Net 一般被称为 Inception V1(version 1),其最大的优势在于控制 了参数量(也就控制了计算量)的同时,仍然能够获得非常好的分类性能 —— top-5 错误率 6.67%。

    其中大量运用了1x1的 filter,原因是:

    • 图片数据天然地邻近区域的数据相关性较高,也即可通过卷积操作使相邻的像素点连接在一起。我们可十分方便构造多个卷积核,在同一空间位置但不同通道的卷积核的输出结果相关性较高。
    • 因此一个 1×11×1 的卷积就可以很自然地将这些相关性很高的、在同一空间位置但不同通道的特征连接在一起,这也正是 1×11×1的卷积会频繁地应用到 Inception Net 中的原因。
    • 1×11×1 卷积所连接的节点的相关性是最高的,而稍微大一点尺寸的卷积,3×33×3、5×55×5 的卷积所连接的节点相关性也很高,因此可进一步地使用一些稍大尺寸的卷积,增加特征多样性(diversity)
  • 相关阅读:
    mybatis date类型比较
    搭建 c 语言环境 1_centos6 minimal 配置 c/c++ 编译环境
    2_eclipse配置c/c++环境
    1_eclipse导入hibernate 的DTD 文件
    1_eclipse配置c/c++开发环境
    2_修改Eclipse里面的快捷键
    1_修改注释内容
    8_对象创建、static 关键字、静态变量和成员变量的区别、文档
    7_匿名对象、封装(private)、this 关键字、构造方法
    6_面向对象基础、成员变量和局部变量的区别
  • 原文地址:https://www.cnblogs.com/ChrisInsistPy/p/9518107.html
Copyright © 2011-2022 走看看