深度学习笔记(29) 1×1 卷积

  • 1. 1×1 卷积
  • 2. 1×1 卷积的作用
  • 3. 1×1 卷积的应用

1. 1×1 卷积

在架构内容设计方面,其中一个比较有帮助的想法是使用1×1卷积

过滤器为1×1,数字2
输入一张6×6×1的图片,然后对它做卷积,起过滤器大小为1×1×1
所以前三个单元格分别是2、4、6等等
似乎用处不大,只是对输入矩阵乘以某个数字
但这仅仅是对于6×6×1的一个通道图片来说,1×1卷积效果不佳


2. 1×1 卷积的作用


如果是一张6×6×32的图片,那么使用1×1过滤器进行卷积效果更好
所实现的是遍历36个单元格,计算图中32个数字和过滤器中32个数字的元素积之和
再应用ReLU非线性函数

以其中一个单元为例
它是这个输入层上的某个切片,用这36个数字乘以这个输入层上1×1切片,得到一个实数

这个1×1×32过滤器中的32个数字可以这样理解
一个神经元的输入是32个数字(输入图片某个位置32个通道中的数字)
即相同高度和宽度上某一切片上的32个数字
这32个数字具有不同通道,乘以32个权重(过滤器中的32个数)
然后应用ReLU非线性函数,在这里输出相应的结果

一般来说,如果过滤器不止一个,而是多个,就好像有多个输入单元
其输入内容为一个切片上所有数字,输出结果是 6×6×过滤器数量
所以1×1卷积可以从根本上理解为对这32个不同的位置都应用一个全连接层
全连接层的作用是输入32个数字(过滤器数量标记为 nC[l+1] ,在这36个单元上重复此过程)
输出结果是 6×6×filters(过滤器数量),以便在输入层上实施一个非平凡(non-trivial)计算,改变通道数
这种方法通常称为1×1卷积
有时也被称为 Network in Network,网络中的网络


3. 1×1 卷积的应用


假设一个 28×28×192 的输入层,可以使用池化层压缩它的高度和宽度
但如果通道数量很大
可以用 32 个大小为 1×1 的过滤器把它压缩为 28×28×32 维度的层
严格来讲每个过滤器大小都是 1×1×192 维
因为过滤器中通道数量必须与输入层中通道的数量保持一致
这就是 压缩通道数(nc)的方法,对于池化层只是压缩了这些层的高度和宽度


当然如果想保持通道数192不变,这也是可行的
再添加一层 1×1×192卷积层,保持输出为 28×28×192
1×1卷积层给神经网络添加了一个非线性函数
从而减少或保持输入层中的通道数量不变
当然如果愿意,也可以增加通道数量


参考:

《神经网络和深度学习》视频课程


相关推荐:

深度学习笔记(28) 残差网络
深度学习笔记(27) 经典卷积网络
深度学习笔记(26) 卷积神经网络
深度学习笔记(25) 池化层
深度学习笔记(24) 卷积层


谢谢!

深度学习笔记(29) 1×1 卷积相关推荐

  1. 深度学习笔记其五:卷积神经网络和PYTORCH

    深度学习笔记其五:卷积神经网络和PYTORCH 1. 从全连接层到卷积 1.1 不变性 1.2 多层感知机的限制 1.2.1 平移不变性 1.2.2 局部性 1.3 卷积 1.4 "沃尔多在 ...

  2. 深度学习笔记(11) 超参数调试

    深度学习笔记(11) 超参数调试 1. 选择合适的范围 2. 超参数调试实践 1. 选择合适的范围 关于训练深度最难的事情之一是要处理的参数的数量 学习速率 a 到 Momentum(动量梯度下降法) ...

  3. 吴恩达深度学习笔记10-Course4-Week1【卷积神经网络】

    卷积神经网络(Convolutional Neural Networks) 一.计算机视觉(Computer Vision) 计算机视觉处理的输入都是图片.当图片尺寸比较小时,可以采用深度神经网络的结 ...

  4. 深度学习笔记9:卷积层的实现(forward, backward 的实现)

    用for循环实现的卷积层: 卷积运算: import time """ 定义2维度卷积的非矩阵操作""" def Conv2d(X,W, s ...

  5. 深度学习笔记其六:现代卷积神经网络和PYTORCH

    深度学习笔记其六:现代卷积神经网络和PYTORCH 1. 深度卷积神经网络(AlexNet) 1.1 学习表征 1.1 缺少的成分:数据 1.2 缺少的成分:硬件 1.2 AlexNet 1.2.1 ...

  6. 深度学习笔记其三:多层感知机和PYTORCH

    深度学习笔记其三:多层感知机和PYTORCH 1. 多层感知机 1.1 隐藏层 1.1.1 线性模型可能会出错 1.1.2 在网络中加入隐藏层 1.1.3 从线性到非线性 1.1.4 通用近似定理 1 ...

  7. 深度学习笔记其七:计算机视觉和PYTORCH

    深度学习笔记其七:计算机视觉和PYTORCH 1. 图像增广 1.1 常用的图像增广方法 1.1.1 翻转和裁剪 1.1.2 改变颜色 1.1.3 结合多种图像增广方法 1.2 使用图像增广进行训练 ...

  8. 深度学习笔记(16) 误差分析(一)

    深度学习笔记(16) 误差分析(一) 1. 进行误差分析 2. 清除标注错误的数据 1. 进行误差分析 假设正在调试猫分类器 然后在开发集取得了90%准确率,相当于10%错误 这离希望的目标还有很远 ...

  9. 深度学习笔记(14) 评估指标

    深度学习笔记(14) 评估指标 1. 正交化 2. 单一数字评估指标 3. 满足和优化指标 4. 改变开发/测试集和指标 1. 正交化 搭建建立机器学习系统的挑战之一是,可以尝试和改变的东西太多太多了 ...

  10. 深度学习笔记(13) Softmax分类

    深度学习笔记(13) Softmax分类 1. Softmax 回归 2. 练一个Softmax分类器 1. Softmax 回归 有一种logistic回归的一般形式,叫做 Softmax回归 能在 ...

最新文章

  1. React Button 使用onClick 定义 antd 登录页面
  2. SpringSecurity入门01(含源码)
  3. mac 下载python库,Mac电脑安装python第三方库(就于python3)
  4. find the nth digit(数学 思维)
  5. UFLDL教程:Exercise:Softmax Regression
  6. VC下调用x264进行视频编码,
  7. pwd命令是什么的缩写_手机学编程(2)目录管理命令
  8. IntelliJ IDEA 控制台最大化
  9. TensorFlow入门--实现多层感知机
  10. python中文件最重要的功能是什么和接收数据_Python测试题
  11. JS学习总结(7)——对象
  12. 用Python写的WiFi暴力破解工具(字典),已封装!!
  13. 苏州大学 算法与数据结构
  14. 【电脑技术】查杀U盘蠕虫病毒
  15. mac+微信打开连接到服务器,MAC OS系统 ,微信接收到的文件,打开wo… - Apple 社区...
  16. 使用假设检验分析PS4,XBox,Switch 谁是最好的游戏主机
  17. 一个大学生活网页设计作品
  18. 【GD32F310开发板试用】编码器接口的使用
  19. 【开源】STM32硬盘音圈电机闭环控制
  20. linux下的go富集分析,GO富集分析(R包GOseq)

热门文章

  1. 子页面带到父页面提交
  2. 生命的力量--HAND OF HOPE
  3. Spring Boot系列教程八: Mybatis使用分页插件PageHelper
  4. matlab 画图直接存储_Matlab Figure图形保存
  5. Django和SQLAlchemy,哪个Python ORM更好?
  6. 关于对于VCMFCATL的评论问题
  7. 线程工具类 - CountDownLatch(倒计时器)
  8. 生产环境下的负载均衡配置
  9. ARM S3C2410硬件手册重点
  10. logfile switch causes incremental checkpoint?