局部连接与权值共享

下图是一个很经典的图示,左边是全连接,右边是局部连接。

对于一个1000 × 1000的输入图像而言,如果下一个隐藏层的神经元数目为10^6个,采用全连接则有1000 × 1000 × 10^6 = 10^12个权值参数,如此数目巨大的参数几乎难以训练;而采用局部连接,隐藏层的每个神经元仅与图像中10 × 10的局部图像相连接,那么此时的权值参数数量为10 × 10 × 10^6 = 10^8,将直接减少4个数量级。

尽管减少了几个数量级,但参数数量依然较多。能不能再进一步减少呢?能!方法就是权值共享。具体做法是,在局部连接中隐藏层的每一个神经元连接的是一个10 × 10的局部图像,因此有10 × 10个权值参数,将这10 × 10个权值参数共享给剩下的神经元,也就是说隐藏层中10^6个神经元的权值参数相同,那么此时不管隐藏层神经元的数目是多少,需要训练的参数就是这 10 × 10个权值参数(也就是卷积核(也称滤波器)的大小),如下图。

这大概就是CNN的一个神奇之处,尽管只有这么少的参数,依旧有出色的性能。但是,这样仅提取了图像的一种特征,如果要多提取出一些特征,可以增加多个卷积核,不同的卷积核能够得到图像的不同映射下的特征,称之为Feature Map。如果有100个卷积核,最终的权值参数也仅为100 × 100 = 10^4个而已。另外,偏置参数也是共享的,同一种滤波器共享一个。

卷积神经网络的核心思想是:局部感受野(local field),权值共享以及时间或空间亚采样这三种思想结合起来,获得了某种程度的位移、尺度、形变不变性(?不够理解透彻?)。

网络结构

下图是一个经典的CNN结构,称为LeNet-5网络

可以看出,CNN中主要有两种类型的网络层,分别是卷积层池化/采样层(Pooling)。卷积层的作用是提取图像的各种特征;池化层的作用是对原始特征信号进行抽象,从而大幅度减少训练参数,另外还可以减轻模型过拟合的程度。

卷积层

卷积层是卷积核在上一级输入层上通过逐一滑动窗口计算而得,卷积核中的每一个参数都相当于传统神经网络中的权值参数,与对应的局部像素相连接,将卷积核的各个参数与对应的局部像素值相乘之和,(通常还要再加上一个偏置参数),得到卷积层上的结果。如下图所示。

下面的动图能够更好地解释卷积过程:

摘自:http://www.jeyzhang.com/cnn-learning-notes-1.html

转载于:https://www.cnblogs.com/bonelee/p/8242061.html

CNN中的局部连接(Sparse Connectivity)和权值共享相关推荐

  1. 卷积核的优势-权值共享与局部感知能力

    卷积核的优势-权值共享与局部感知能力 在读论文的时候一直读到一个名词"权值共享",但心里对这个概念一直比较模糊,今天突然明白,记录一下. 1. 局部感知能力 这与卷积核的使用方式有 ...

  2. 局部连接来减参,权值共享肩并肩(深度学习入门系列之十一)

    系列文章: 一入侯门"深"似海,深度学习深几许(深度学习入门系列之一) 人工"碳"索意犹尽,智能"硅"来未可知(深度学习入门系列之二) 神经 ...

  3. 【深度学习之美】局部连接来减参,权值共享肩并肩(入门系列之十一)

    系列文章: 一入侯门"深"似海,深度学习深几许(深度学习入门系列之一) 人工"碳"索意犹尽,智能"硅"来未可知(深度学习入门系列之二) 神经 ...

  4. CNN中的卷积操作与权值共享

    CNN中非常有特点的地方就在于它的局部连接和权值共享,通过卷积操作实现局部连接,这个局部区域的大小就是滤波器filter,避免了全连接中参数过多造成无法计算的情况,再通过参数共享来缩减实际参数的数量, ...

  5. 如何理解CNN中的权值共享

    记录一下深度学习中CNN中的权值共享 首先,卷积网络的核心思想是将:局部感受野.权值共享(或者权值复制)以及时间或空间亚采样这三种结构思想结合起来获得了某种程度的位移.尺度.形变不变性. 通俗理解,所 ...

  6. 卷积神经网络中的权值共享

    一.起源 权值共享这个词最开始其实是由LeNet5模型提出来,在1998年,LeCun发布了LeNet网络架构 其实权值共享这个词说全了就是整张图片在使用同一个卷积核内的参数,比如一个3*3*1的卷积 ...

  7. 神经网络中的权值共享

    2012年的AlexNet网络是深度学习的开端,但是CNN的开端最早其实可以追溯到LeNet5模型,它的几个特性在2010年初的卷积神经网络研究中被广泛的使用--其中一个就是权值共享. 神经网络的输入 ...

  8. 如何理解卷积神经网络中的权值共享

    权值共享这个词最开始其实是由LeNet5模型提出来,在1998年,LeCun发布了LeNet网络架构,就是下面这个: 虽然现在大多数的说法是2012年的AlexNet网络是深度学习的开端,但是CNN的 ...

  9. 全连接,局部感知,权值共享,卷积输入输出的个人理解

    查看全文 http://www.taodudu.cc/news/show-3406080.html 相关文章: ICPC2017网络赛(南宁)子序列最大权值(树状数组+dp) 价格权值 神经网络阈值是 ...

最新文章

  1. python 中shape 1,n 与1的区别
  2. 验证输入的是否数字的几种方法
  3. ReviewForJob——快速排序(基于插入排序)+快速选择(快速排序变体)
  4. C++学习之路 | PTA乙级—— 1073 多选题常见计分法 (20 分)(精简)
  5. go tcp连接_TCP漫谈之keepalive和time_wait
  6. 解决windows下Error:node with name rabbit already running on “XXX” 和管理页面打不开问题
  7. 插件 KSImageNamed 用图片时自动显示图片缩略图
  8. android动态加载.so,实现动态库升级
  9. 快递单中抽取关键信息【一】----基于BiGRU+CR+预训练的词向量优化
  10. python成语接龙源代码,基于Tkinter,带成语解释
  11. 记一次js逆向详细过程
  12. 界面原型设计工具使用系列(三)-Mockup Builder
  13. 【原创】Exchange 用户发送邮件提示:您无权执行此操作,解决办法
  14. 英国电信反悔华为是唯一真正的5G供应商
  15. 工具分享:eclipse-java-2019-09版windows64位正版最新(附下载链接)
  16. 软件产品登记-全攻略
  17. 量化风格:风格短期切换,关注反转与估值(20210106).PDF
  18. Python网络爬虫——1、网络爬虫简介
  19. 查询数据库中的图片文件
  20. 23考研高等数学复习笔记(自用)

热门文章

  1. Linux之telnet命令使用详解—网络故障定位(四)
  2. java是否支持freertos_使用GCC配置FreeRTOS(ARM)
  3. java split 逗号_咦,Java拆分个字符串都这么讲究
  4. python获取数组中大于某一阈值的那些索引值_java矩阵计算及其在统计中的应用(一)...
  5. python里元组和列表的共同点和不同点_Python列表和元组的相同点和不同点是什么...
  6. mysql修改数据库名字_mysql 数据库修改名字
  7. 2021湖北孝感高考成绩查询时间,2021年4月孝感自考成绩查询时间网址入口
  8. c语言程序竞赛,2015年江西理工大学C语言程序设计竞赛(初级组)
  9. layui关闭表格编辑_Layui表格table关闭拖拽列宽、禁用拖拽列宽
  10. 使用java搭建直播平台,我就不信你还听不明白了!