fbpx
维基百科

卷积神经网络

卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,[1]对于大型图像处理有出色表现。

卷积神经网络由一个或多个卷积层和顶端的全连通层(对应经典的神经网络)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网络能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网络在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网络,卷积神经网络需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构[2]

定义

“卷积神经网络”表示在网络采用称为卷积的数学运算。卷积是一种特殊的线性操作。卷积网络是一种特殊的神经网络,它们在至少一个层中使用卷积代替一般矩阵乘法

概览

发展

CNN是根据生物的视觉处理过程来进行设计的。[來源請求]

大脑中视觉皮层接收视觉信号的过程

Hubel和Wiesel在20世纪50年代到20世纪60年代的研究发现,猫和猴子的视觉皮层中包含着能分别对某一小块视觉区域进行回应的神经元。当眼睛不动的时候,在一定区域内的视觉刺激能使单个神经元兴奋,那这个区域就称为这个神经元的感受范围。相邻的细胞具有相似且重叠的感受范围。[來源請求]为了形成一张完整的视觉图像,整个视觉皮层上的神经元的感受范围的大小和位置呈现系统性的变化。[來源請求]左脑和右脑分别对应其对侧的视野。[來源請求] 他们在其1968年的一篇论文中确定了大脑中有两种不同的基本视觉细胞:

  • 简单细胞
  • 复杂细胞

Hubel和Wiesel还提出了这两种细胞用于模式识别任务的级联模型。

结构

卷積層

卷積層可以产生一組平行的特徵圖(feature map),它通過在輸入圖像上滑動不同的卷積核並執行一定的運算而組成。此外,在每一個滑動的位置上,卷積核與輸入圖像之間會執行一個元素對應乘積並求和的運算以將感受野內的信息投影到特徵圖中的一個元素。這一滑動的過程可稱爲步幅 Z_s,步幅 Z_s 是控制輸出特徵圖尺寸的一個因素。卷積核的尺寸要比輸入圖像小得多,且重疊或平行地作用於輸入圖像中,一張特徵圖中的所有元素都是通過一個卷積核計算得出的,也即一張特徵圖共享了相同的權重和偏置項。

線性整流層

線性整流層(Rectified Linear Units layer, ReLU layer)使用線性整流(Rectified Linear Units, ReLU) 作为這一層神經的激勵函數(Activation function)。它可以增强判定函数和整个神经网络的非线性特性,而本身并不会改变卷积层。

事实上,其他的一些函数也可以用于增强网络的非线性特性,如双曲正切函数  ,  ,或者Sigmoid函数 。相比其它函数来说,ReLU函数更受青睐,这是因为它可以将神经网络的训练速度提升数倍[3],而并不会对模型的泛化准确度造成显著影响。

池化層

 
步幅为2,池化窗口为 的最大池化层

池化(Pooling)是卷积神经网络中另一个重要的概念,它实际上是一种非线性形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。

直觉上,这种机制能够有效地原因在于,一个特征的精确位置远不及它相对于其他特征的粗略位置重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的网络结构中的卷积层之间都会周期性地插入池化层。池化操作提供了另一种形式的平移不变性。因为卷积核是一种特征发现器,我们通过卷积层可以很容易地发现图像中的各种边缘。但是卷积层发现的特征往往过于精确,我们即使高速连拍拍摄一个物体,照片中的物体的边缘像素位置也不大可能完全一致,通过池化层我们可以降低卷积层对边缘的敏感性。

池化层每次在一个池化窗口(depth slice)上计算输出,然后根据步幅移动池化窗口。下图是目前最常用的池化层,步幅为2,池化窗口为 的二维最大池化层。每隔2个元素从图像划分出 的区块,然后对每个区块中的4个数取最大值。这将会减少75%的数据量。

 

除了最大池化之外,池化层也可以使用其他池化函数,例如“平均池化”甚至“L2-范数池化”等。过去,平均池化的使用曾经较为广泛,但是最近由于最大池化在实践中的表现更好,平均池化已经不太常用。

由于池化层过快地减少了数据的大小,目前文献中的趋势是使用较小的池化滤镜,[4]甚至不再使用池化层。[5]

RoI池化(Region of Interest)是最大池化的变体,其中输出大小是固定的,输入矩形是一个参数。[6]

池化层是基于 Fast-RCNN [7]架构的卷积神经网络的一个重要组成部分。

完全连接层

最后,在经过几个卷积和最大池化层之后,神经网络中的高级推理通过完全连接层来完成。就和常规的非卷积人工神经网络中一样,完全连接层中的神经元与前一层中的所有激活都有联系。因此,它们的激活可以作为仿射变换来计算,也就是先乘以一个矩阵然后加上一个偏差(bias)偏移量(向量加上一个固定的或者学习来的偏差量)。

应用

影像辨識

卷积神经网络通常在影像辨識系统中使用。

視訊分析

相比影像辨識问题,視訊分析要难许多。CNN也常被用于这类问题。

自然语言处理

卷积神经网络也常被用于自然语言处理。 CNN的模型被证明可以有效的处理各种自然语言处理的问题,如语义分析[8]、搜索结果提取[9]、句子建模[10] 、分类[11]、预测[12]、和其他传统的NLP任务[13] 等。

药物发现

卷积神经网路已在药物发现中使用。卷积神经网络被用来预测的分子与蛋白质之间的相互作用,以此来寻找靶向位点,寻找出更可能安全和有效的潜在治疗方法。

围棋

卷积神经网络在计算机围棋领域也被使用。2016年3月,AlphaGo对战李世乭的比赛,展示了深度学习在围棋领域的重大突破。

微调(fine-tuning)

卷积神经网络(例如Alexnet、VGG网络)在网络的最后通常为softmax分类器。微调一般用来调整softmax分类器的分类数。例如原网络可以分类出2种图像,需要增加1个新的分类从而使网络可以分类出3种图像。微调(fine-tuning)可以留用之前训练的大多数参数,从而达到快速训练收敛的效果。例如保留各个卷积层,只重构卷积层后的全连接层与softmax层即可。

經典模型

  • LeNet
  • VGG
  • GoogLeNet
  • ResNet
  • DenseNet

可用包

  • roNNie (页面存档备份,存于互联网档案馆): 是一個簡易入門級框架,使用Tensorflow 計算層.可於python下載 pip3 ronnie
  • Caffe: Caffe包含了CNN使用最广泛的库。它由伯克利视觉和学习中心(BVLC)研发,拥有比一般实现更好的结构和更快的速度。同时支持CPUGPU计算,底层由C++实现,并封装了Python和MATLAB的接口。
  • Torch7(www.torch.ch)
  • OverFeat
  • Cuda-convnet
  • MatConvnet
  • Theano:用Python实现的神经网络包[14]
  • TensorFlow
  • Paddlepaddle(www.paddlepaddle.org (页面存档备份,存于互联网档案馆))
  • Keras
  • PyTorch

参考

  1. ^ Convolutional Neural Networks (LeNet) - DeepLearning 0.1 documentation. DeepLearning 0.1. LISA Lab. [31 August 2013]. (原始内容于2017-12-28). 
  2. ^ Convolutional Neural Network. [2014-09-16]. (原始内容于2020-10-29). 
  3. ^ Krizhevsky, A.; Sutskever, I.; Hinton, G. E. . Advances in Neural Information Processing Systems. 2012, 1: 1097–1105 [2016-11-20]. (原始内容存档于2015-02-16). 
  4. ^ Graham, Benjamin. Fractional Max-Pooling. 2014-12-18. arXiv:1412.6071  [cs.CV]. 
  5. ^ Springenberg, Jost Tobias; Dosovitskiy, Alexey; Brox, Thomas; Riedmiller, Martin. Striving for Simplicity: The All Convolutional Net. 2014-12-21. arXiv:1412.6806  [cs.LG]. 
  6. ^ Grel, Tomasz. . deepsense.io. 2017-02-28. (原始内容存档于2017-06-02) (英语). 
  7. ^ Girshick, Ross. Fast R-CNN. 2015-09-27. arXiv:1504.08083  [cs.CV]. 
  8. ^ Grefenstette, Edward; Blunsom, Phil; de Freitas, Nando; Hermann, Karl Moritz. A Deep Architecture for Semantic Parsing. 2014-04-29. arXiv:1404.7296  [cs.CL]. 
  9. ^ Learning Semantic Representations Using Convolutional Neural Networks for Web Search – Microsoft Research. research.microsoft.com. [2015-12-17]. (原始内容于2016-06-18). 
  10. ^ Kalchbrenner, Nal; Grefenstette, Edward; Blunsom, Phil. A Convolutional Neural Network for Modelling Sentences. 2014-04-08. arXiv:1404.2188  [cs.CL]. 
  11. ^ Kim, Yoon. Convolutional Neural Networks for Sentence Classification. 2014-08-25. arXiv:1408.5882  [cs.CL]. 
  12. ^ Collobert, Ronan, and Jason Weston. "A unified architecture for natural language processing: Deep neural networks with multitask learning."Proceedings of the 25th international conference on Machine learning. ACM, 2008.
  13. ^ Collobert, Ronan; Weston, Jason; Bottou, Leon; Karlen, Michael; Kavukcuoglu, Koray; Kuksa, Pavel. Natural Language Processing (almost) from Scratch. 2011-03-02. arXiv:1103.0398  [cs.LG]. 
  14. ^ . [2015-04-24]. (原始内容存档于2020-11-08). 

卷积神经网络, 此條目可参照外語維基百科相應條目来扩充, 若您熟悉来源语言和主题, 请协助参考外语维基百科扩充条目, 请勿直接提交机械翻译, 也不要翻译不可靠, 低品质内容, 依版权协议, 译文需在编辑摘要注明来源, 或于讨论页顶部标记, href, template, translated, page, html, title, template, translated, page, translated, page, 标签, convolutional, neural, network, 是一种前馈神经网络, . 此條目可参照外語維基百科相應條目来扩充 若您熟悉来源语言和主题 请协助参考外语维基百科扩充条目 请勿直接提交机械翻译 也不要翻译不可靠 低品质内容 依版权协议 译文需在编辑摘要注明来源 或于讨论页顶部标记 a href Template Translated page html title Template Translated page Translated page a 标签 卷积神经网络 Convolutional Neural Network CNN 是一种前馈神经网络 它的人工神经元可以响应一部分覆盖范围内的周围单元 1 对于大型图像处理有出色表现 卷积神经网络由一个或多个卷积层和顶端的全连通层 对应经典的神经网络 组成 同时也包括关联权重和池化层 pooling layer 这一结构使得卷积神经网络能够利用输入数据的二维结构 与其他深度学习结构相比 卷积神经网络在图像和语音识别方面能够给出更好的结果 这一模型也可以使用反向传播算法进行训练 相比较其他深度 前馈神经网络 卷积神经网络需要考量的参数更少 使之成为一种颇具吸引力的深度学习结构 2 目录 1 定义 2 概览 3 发展 3 1 大脑中视觉皮层接收视觉信号的过程 4 结构 4 1 卷積層 4 2 線性整流層 4 3 池化層 4 4 完全连接层 5 应用 5 1 影像辨識 5 2 視訊分析 5 3 自然语言处理 5 4 药物发现 5 5 围棋 6 微调 fine tuning 7 經典模型 8 可用包 9 参考定义 编辑此章节需要扩充 2020年3月15日 卷积神经网络 表示在网络采用称为卷积的数学运算 卷积是一种特殊的线性操作 卷积网络是一种特殊的神经网络 它们在至少一个层中使用卷积代替一般矩阵乘法概览 编辑此章节尚無任何内容 发展 编辑此章节需要扩充 2020年10月5日 CNN是根据生物的视觉处理过程来进行设计的 來源請求 大脑中视觉皮层接收视觉信号的过程 编辑 Hubel和Wiesel在20世纪50年代到20世纪60年代的研究发现 猫和猴子的视觉皮层中包含着能分别对某一小块视觉区域进行回应的神经元 当眼睛不动的时候 在一定区域内的视觉刺激能使单个神经元兴奋 那这个区域就称为这个神经元的感受范围 相邻的细胞具有相似且重叠的感受范围 來源請求 为了形成一张完整的视觉图像 整个视觉皮层上的神经元的感受范围的大小和位置呈现系统性的变化 來源請求 左脑和右脑分别对应其对侧的视野 來源請求 他们在其1968年的一篇论文中确定了大脑中有两种不同的基本视觉细胞 简单细胞 复杂细胞Hubel和Wiesel还提出了这两种细胞用于模式识别任务的级联模型 结构 编辑卷積層 编辑 卷積層可以产生一組平行的特徵圖 feature map 它通過在輸入圖像上滑動不同的卷積核並執行一定的運算而組成 此外 在每一個滑動的位置上 卷積核與輸入圖像之間會執行一個元素對應乘積並求和的運算以將感受野內的信息投影到特徵圖中的一個元素 這一滑動的過程可稱爲步幅 Z s 步幅 Z s 是控制輸出特徵圖尺寸的一個因素 卷積核的尺寸要比輸入圖像小得多 且重疊或平行地作用於輸入圖像中 一張特徵圖中的所有元素都是通過一個卷積核計算得出的 也即一張特徵圖共享了相同的權重和偏置項 線性整流層 编辑 線性整流層 Rectified Linear Units layer ReLU layer 使用線性整流 Rectified Linear Units ReLU f x max 0 x displaystyle f x max 0 x 作为這一層神經的激勵函數 Activation function 它可以增强判定函数和整个神经网络的非线性特性 而本身并不会改变卷积层 事实上 其他的一些函数也可以用于增强网络的非线性特性 如双曲正切函数 f x tanh x displaystyle f x tanh x f x tanh x displaystyle f x tanh x 或者Sigmoid函数f x 1 e x 1 displaystyle f x 1 e x 1 相比其它函数来说 ReLU函数更受青睐 这是因为它可以将神经网络的训练速度提升数倍 3 而并不会对模型的泛化准确度造成显著影响 池化層 编辑 步幅为2 池化窗口为2 2 displaystyle 2 times 2 的最大池化层 池化 Pooling 是卷积神经网络中另一个重要的概念 它实际上是一种非线性形式的降采样 有多种不同形式的非线性池化函数 而其中 最大池化 Max pooling 是最为常见的 它是将输入的图像划分为若干个矩形区域 对每个子区域输出最大值 直觉上 这种机制能够有效地原因在于 一个特征的精确位置远不及它相对于其他特征的粗略位置重要 池化层会不断地减小数据的空间大小 因此参数的数量和计算量也会下降 这在一定程度上也控制了过拟合 通常来说 CNN的网络结构中的卷积层之间都会周期性地插入池化层 池化操作提供了另一种形式的平移不变性 因为卷积核是一种特征发现器 我们通过卷积层可以很容易地发现图像中的各种边缘 但是卷积层发现的特征往往过于精确 我们即使高速连拍拍摄一个物体 照片中的物体的边缘像素位置也不大可能完全一致 通过池化层我们可以降低卷积层对边缘的敏感性 池化层每次在一个池化窗口 depth slice 上计算输出 然后根据步幅移动池化窗口 下图是目前最常用的池化层 步幅为2 池化窗口为2 2 displaystyle 2 times 2 的二维最大池化层 每隔2个元素从图像划分出2 2 displaystyle 2 times 2 的区块 然后对每个区块中的4个数取最大值 这将会减少75 的数据量 f X Y S max a b 0 1 S 2 X a 2 Y b displaystyle f X Y S max a b 0 1 S 2X a 2Y b 除了最大池化之外 池化层也可以使用其他池化函数 例如 平均池化 甚至 L2 范数池化 等 过去 平均池化的使用曾经较为广泛 但是最近由于最大池化在实践中的表现更好 平均池化已经不太常用 由于池化层过快地减少了数据的大小 目前文献中的趋势是使用较小的池化滤镜 4 甚至不再使用池化层 5 RoI池化 Region of Interest 是最大池化的变体 其中输出大小是固定的 输入矩形是一个参数 6 池化层是基于 Fast RCNN 7 架构的卷积神经网络的一个重要组成部分 完全连接层 编辑 最后 在经过几个卷积和最大池化层之后 神经网络中的高级推理通过完全连接层来完成 就和常规的非卷积人工神经网络中一样 完全连接层中的神经元与前一层中的所有激活都有联系 因此 它们的激活可以作为仿射变换来计算 也就是先乘以一个矩阵然后加上一个偏差 bias 偏移量 向量加上一个固定的或者学习来的偏差量 应用 编辑影像辨識 编辑 卷积神经网络通常在影像辨識系统中使用 視訊分析 编辑 相比影像辨識问题 視訊分析要难许多 CNN也常被用于这类问题 自然语言处理 编辑 卷积神经网络也常被用于自然语言处理 CNN的模型被证明可以有效的处理各种自然语言处理的问题 如语义分析 8 搜索结果提取 9 句子建模 10 分类 11 预测 12 和其他传统的NLP任务 13 等 药物发现 编辑 卷积神经网路已在药物发现中使用 卷积神经网络被用来预测的分子与蛋白质之间的相互作用 以此来寻找靶向位点 寻找出更可能安全和有效的潜在治疗方法 围棋 编辑 参见 AlphaGo李世乭五番棋 卷积神经网络在计算机围棋领域也被使用 2016年3月 AlphaGo对战李世乭的比赛 展示了深度学习在围棋领域的重大突破 微调 fine tuning 编辑卷积神经网络 例如Alexnet VGG网络 在网络的最后通常为softmax分类器 微调一般用来调整softmax分类器的分类数 例如原网络可以分类出2种图像 需要增加1个新的分类从而使网络可以分类出3种图像 微调 fine tuning 可以留用之前训练的大多数参数 从而达到快速训练收敛的效果 例如保留各个卷积层 只重构卷积层后的全连接层与softmax层即可 經典模型 编辑LeNetAlexNetVGGGoogLeNetResNetDenseNet可用包 编辑roNNie 页面存档备份 存于互联网档案馆 是一個簡易入門級框架 使用Tensorflow 計算層 可於python下載 pip3 ronnie Caffe Caffe包含了CNN使用最广泛的库 它由伯克利视觉和学习中心 BVLC 研发 拥有比一般实现更好的结构和更快的速度 同时支持CPU和GPU计算 底层由C 实现 并封装了Python和MATLAB的接口 Torch7 www torch ch OverFeat Cuda convnet MatConvnet Theano 用Python实现的神经网络包 14 TensorFlow Paddlepaddle www paddlepaddle org 页面存档备份 存于互联网档案馆 Keras PyTorch参考 编辑 Convolutional Neural Networks LeNet DeepLearning 0 1 documentation DeepLearning 0 1 LISA Lab 31 August 2013 原始内容存档于2017 12 28 Convolutional Neural Network 2014 09 16 原始内容存档于2020 10 29 Krizhevsky A Sutskever I Hinton G E Imagenet classification with deep convolutional neural networks Advances in Neural Information Processing Systems 2012 1 1097 1105 2016 11 20 原始内容存档于2015 02 16 Graham Benjamin Fractional Max Pooling 2014 12 18 arXiv 1412 6071 cs CV Springenberg Jost Tobias Dosovitskiy Alexey Brox Thomas Riedmiller Martin Striving for Simplicity The All Convolutional Net 2014 12 21 arXiv 1412 6806 cs LG Grel Tomasz Region of interest pooling explained deepsense io 2017 02 28 原始内容存档于2017 06 02 英语 Girshick Ross Fast R CNN 2015 09 27 arXiv 1504 08083 cs CV Grefenstette Edward Blunsom Phil de Freitas Nando Hermann Karl Moritz A Deep Architecture for Semantic Parsing 2014 04 29 arXiv 1404 7296 cs CL Learning Semantic Representations Using Convolutional Neural Networks for Web Search Microsoft Research research microsoft com 2015 12 17 原始内容存档于2016 06 18 Kalchbrenner Nal Grefenstette Edward Blunsom Phil A Convolutional Neural Network for Modelling Sentences 2014 04 08 arXiv 1404 2188 cs CL Kim Yoon Convolutional Neural Networks for Sentence Classification 2014 08 25 arXiv 1408 5882 cs CL Collobert Ronan and Jason Weston A unified architecture for natural language processing Deep neural networks with multitask learning Proceedings of the 25th international conference on Machine learning ACM 2008 Collobert Ronan Weston Jason Bottou Leon Karlen Michael Kavukcuoglu Koray Kuksa Pavel Natural Language Processing almost from Scratch 2011 03 02 arXiv 1103 0398 cs LG 深度网络 Theano项目主页 2015 04 24 原始内容存档于2020 11 08 取自 https zh wikipedia org w index php title 卷积神经网络 amp oldid 75126031, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。