1.����������㷨ʵ��Դ��
2.im2col方法实现卷积算法
3.什么是卷积卷积卷积神经网络
4.算法题:卷积神经网络 上
5.ç¥ç»ç½ç»ï¼å·ç§¯ç¥ç»ç½ç»ï¼CNNï¼
6.卷积神经网络(CNN)算法详解
����������㷨ʵ��Դ��
请ç®è¿°å½±åå·ç§¯ç¥ç»ç½ç»å·ç§¯å±ç¯èçå½±åè¦ç´ ,åå ¶å½±åçåå å¦ä¸ï¼1ãå·ç§¯ç¥ç»ç½ç»ç®æ³ç»æåæãå°±ç®åç®æ³çåå±ç¶åµèè¨ï¼å·åç¥ç»ç½ç»ä½ä¸ºå½åå¨å¾åè¯å«é¢åç主æµç®æ³ï¼è¢«è¯¸å¤å·¥ä½å¢éæ广æ³æ¥åï¼è对äºå¾åè¯å«çç 究éç¹ï¼ä¹ä»å¯»æ¾æ´ä¸ºä¼ç§çç®æ³ï¼è½¬ç§»å°äºå¯¹å·ç§¯ç¥ç»ç½ç»ç®æ³æ¬èº«çä¼åä¸ï¼å¹¶ä¸å¨åºç¨é¢åï¼ä¹å¨è¿å¹´åå¾äºé¿è¶³è¿å±ã
2ãä»å·ç§¯ç¥ç»ç½ç»èªèº«çè§åº¦èèï¼å ¶å¨å·ç§¯å±ä¹é´éç¨äºå ±äº«åæ°ï¼ä½¿å¾è®¡ç®è¿ç¨ä¸å¯¹äºè®¡ç®èµæºçå ç¨å¤§å¤§ç¼©å°ï¼åæ¶ä¹å¨è®ç»åæ°æ¹é¢å®ç°äºææçç®åï¼æåäºæ´ä½è¿ç®è¿ç¨çæçãé¤æ¤ä»¥å¤ï¼æ¤ç§è®¡ç®æ¹å¼å ä¹ä¸éè¦å¯¹å¾åå±å¼é¢å¤çæè ç¹å¾å¼æåæä½ï¼è¿ä¹æ为å·ç§¯ç¥ç»ç½ç»å¨å¾åè¯å«é¢åä¼äºå ¶ä»ç®æ³çæ¾èä¹å¤ã
3ãå·ç§¯ç¥ç»ç½ç»ç®æ³ä¹åå¨è¯¸å¤å¼±ç¹ï¼ä¾å¦ä¼ ç»çç®æ³æ¬èº«å¹¶æªè½å¯¹ç®æ³å±å¼æ·±å ¥ææï¼å¯¹åºçå·ç§¯æ ¸å大ï¼ç®æ³ç»æå±æ°è¾å°çï¼é½ä¼é ææ¤ç§ç®æ³çä¼å¿æªè½ææåæ¥ï¼è¿äºä¹å°±æ为äºå½åå¨è¯¥é¢åä¸è¿è¡æ¹è¿ç 究çå·¥ä½éç¹ã
im2col方法实现卷积算法
直观理解卷积算法的im2col方法
在深度神经网络中,卷积层的神经算法实现神经算法核心计算过程可以通过im2col函数高效实现。它将二维的网络网络输入矩阵和卷积核转化为四维张量,以便于矩阵乘法操作。源码以下是代码关键步骤的简化概括:
1. 卷积开始时,输入从二维升级到四通道(如的卷积卷积长城麻将源码RGB值),卷积核同样升级到匹配的神经算法实现神经算法通道数。对于单通道,网络网络公式表示为:
[公式] (c为通道数,源码kh,代码 kw为卷积核尺寸,步长默认为1)
2. 当多卷积核存在时,卷积卷积每个卷积核独立作用于输入,神经算法实现神经算法最终输出通道数等于卷积核数量。网络网络计算过程如下:
[公式] (d为卷积核序号,源码n为输入序号)
3. 扩展到批量处理时,代码每批输入独立与所有卷积核进行卷积,最终输出大小与输入批量相同。例如:
[公式] (批量为2的输入)
4. 步长的选择影响卷积结果的采样方式,步长越大,采样间隔越大。如果步长导致输入不规则,可能需要特殊处理,揭阳和深圳源码如填充或忽略。
在Python实现中,im2col函数的核心在于将输入数据转换为列向量,并根据批量和通道顺序正确插入。这一过程优化了内存访问,提高计算效率。
总结来说,im2col方法是将卷积计算复杂性转化为矩阵乘法,通过巧妙的矩阵操作简化了神经网络中的卷积运算,是深度学习框架设计中的重要步骤。
什么是卷积神经网络
卷积神经网络是一种深度学习的算法模型,特别适用于处理图像、视频等二维数据。这是一种包含卷积计算的深度神经网络。卷积神经网络主要由输入层、卷积层、激活层、池化层和全连接层等组成。其独特之处在于,卷积层能够捕捉图像的局部特征。这一功能得益于卷积核的服饰商城网站源码使用,这些卷积核在输入数据上执行卷积操作,以识别并提取图像中的边缘、纹理等特征。激活层则增加网络的非线性,使得网络能够处理复杂的数据模式。池化层则用于降低数据的维度,减少计算量并防止过拟合。最后,全连接层用于输出网络的预测结果。
CNN的主要优点包括:
1. 参数的共享:由于卷积核在图像上的滑动和卷积操作,CNN能够实现参数的共享,从而大大减少模型的参数数量,提高模型的泛化能力。
2. 局部感知和层次结构:CNN的层次结构使其能够从图像中逐层提取高级特征,而局部感知则使得网络更关注图像的局部信息,有助于识别图像的细节。
3. 高效处理二维数据:对于图像、视频等二维数据,CNN能够高效地进行处理,无需进行复杂的预处理操作。
总的paypal电商源码来说,卷积神经网络是一种针对二维数据处理的深度神经网络,它通过卷积计算提取图像的局部特征,并能够通过层次结构逐步抽象和表示高级特征,是计算机视觉等领域的重要工具。
算法题:卷积神经网络 上
全连接层和卷积神经网络的基本操作和特点存在显著区别。全连接层在输出层每个节点与输入层所有节点间存在连接,而卷积神经网络则主要通过卷积层构建,这些层具备局部连接和权值共享特性。卷积层通过卷积核在输入特征图上不断扫描,产生输出特征图,卷积核的移动遵循设定的步长。在边界处理方面,通过填充0实现,为输入特征图提供扩展空间,以保持输出特征图的大小。
举例而言,假设输入特征图的尺寸为5x5,卷积核为3x3,步长为1,不进行填充,以左上角的wpf多进程源码输入特征为例,其取值为[3,3,2,0,0,1,3,1,2],卷积核参数为[0,1,2,2,2,0,0,1,2],通过点积计算输出特征图上对应棕色方格的值,即为,展示了卷积操作的基本原理。
接着,我们深入探索卷积层与全连接层的区别,关键在于感受野的定义。感受野描述了卷积神经网络中某一输出特征图上的点能受到原始输入数据影响的区域范围。以二维卷积神经网络为例,我们利用公式计算各层的感受野大小。层间的步长决定着其感受野的扩展。对于全连接层,由于连接贯穿输入层至输出层的每一点,其感受野覆盖整个输入数据。
卷积层的输出尺寸、参数量和计算量是根据输入特征图尺寸、卷积核大小、步长等参数计算得出。输出尺寸通过卷积核与输入尺寸结合,再加上填充后的输入数据量来决定;参数量基于卷积核数与每个核的参数数;计算量则在考虑卷积核在每个滑动窗口的操作次数与窗口总数之间的关系。
分组卷积将输入与输出通道划分为相同组数,减少参数量与计算量,最初在AlexNet中引入,主要用于处理高计算量与存储需求的卷积层,以利用多个GPU分担计算任务。转置卷积则用于从低维特征映射到高维特征,常应用于语义分割、实例分割等任务,如图像自编码器、变分自编码器、生成式对抗网络中。
空洞卷积通过引入膨胀率超参数,扩大卷积核尺寸的同时保持感受野的扩展,而不增加参数量。它通过在卷积核间添加空洞,改变相邻数据点间的间隔,从而提升感受野范围,保护输入数据的内部结构。
最后,可变形卷积允许卷积核在每个采样点上添加可学习的偏移量,实现采样点的动态调整,超越规则网络点的局限,适用于处理形状复杂的数据,提高模型的灵活性与适用性。
本篇内容详细阐述了卷积神经网络的核心组件及功能,旨在深入理解这些机制如何在不同应用场景中实现高效率的特征提取与分析,推动深度学习领域的发展。
ç¥ç»ç½ç»ï¼å·ç§¯ç¥ç»ç½ç»ï¼CNNï¼
ç¥ç»ç½ç» ææ©æ¯ç±å¿çå¦å®¶åç¥ç»å¦å®¶æåºçï¼æ¨å¨å¯»æ±å¼ååæµè¯ç¥ç»ç计ç®æ¨¡æã
ç²ç¥å°è¯´ï¼ ç¥ç»ç½ç» æ¯ä¸ç»è¿æ¥ç è¾å ¥/è¾åºåå ï¼å ¶ä¸æ¯ä¸ªè¿æ¥é½ä¸ä¸ä¸ª æ ç¸å ³èãå¨å¦ä¹ é¶æ®µï¼éè¿è°æ´æå¼ï¼ä½¿å¾ç¥ç»ç½ç»çé¢æµåç¡®æ§éæ¥æé«ãç±äºåå ä¹é´çè¿æ¥ï¼ç¥ç»ç½ç»å¦ä¹ å称 è¿æ¥è å¦ä¹ ã
ç¥ç»ç½ç»æ¯ä»¥æ¨¡æ人èç¥ç»å çæ°å¦æ¨¡å为åºç¡è建ç«çï¼å®ç±ä¸ç³»åç¥ç»å ç»æï¼åå ä¹é´å½¼æ¤è¿æ¥ãä»ä¿¡æ¯å¤çè§åº¦çï¼ç¥ç»å å¯ä»¥çä½æ¯ä¸ä¸ªå¤è¾å ¥åè¾åºçä¿¡æ¯å¤çåå ï¼æ ¹æ®ç¥ç»å çç¹æ§ååè½ï¼å¯ä»¥æç¥ç»å æ½è±¡æä¸ä¸ªç®åçæ°å¦æ¨¡åã
ç¥ç»ç½ç»æä¸ä¸ªè¦ç´ ï¼ ææç»æãè¿æ¥æ¹å¼ãå¦ä¹ è§å
ç¥ç»ç½ç»çææç»æ ï¼ç¥ç»ç½ç»çåå é常æç §å±æ¬¡æåï¼æ ¹æ®ç½ç»çå±æ¬¡æ°ï¼å¯ä»¥å°ç¥ç»ç½ç»å为åå±ç¥ç»ç½ç»ã两å±ç¥ç»ç½ç»ãä¸å±ç¥ç»ç½ç»çãç»æç®åçç¥ç»ç½ç»ï¼å¨å¦ä¹ æ¶æ¶æçé度快ï¼ä½å确度ä½ã
ç¥ç»ç½ç»çå±æ°åæ¯å±çåå æ°ç±é®é¢çå¤æç¨åº¦èå®ãé®é¢è¶å¤æï¼ç¥ç»ç½ç»çå±æ°å°±è¶å¤ãä¾å¦ï¼ä¸¤å±ç¥ç»ç½ç»å¸¸ç¨æ¥è§£å³çº¿æ§é®é¢ï¼èå¤å±ç½ç»å°±å¯ä»¥è§£å³å¤å é线æ§é®é¢
ç¥ç»ç½ç»çè¿æ¥ ï¼å æ¬å±æ¬¡ä¹é´çè¿æ¥åæ¯ä¸å±å é¨çè¿æ¥ï¼è¿æ¥ç强度ç¨ææ¥è¡¨ç¤ºã
æ ¹æ®å±æ¬¡ä¹é´çè¿æ¥æ¹å¼ï¼å为ï¼
1ï¼åé¦å¼ç½ç»ï¼è¿æ¥æ¯ååçï¼ä¸å±åå çè¾åºæ¯ä¸å±åå çè¾å ¥ï¼å¦ååä¼ æç½ç»ï¼Kohonenç½ç»
2ï¼åé¦å¼ç½ç»ï¼é¤äºå项çè¿æ¥å¤ï¼è¿ææåä¸å±åå çè¾åºä½ä¸ºç¬¬ä¸å±åå çè¾å ¥ï¼å¦Hopfieldç½ç»
æ ¹æ®è¿æ¥çèå´ï¼å为ï¼
1ï¼å ¨è¿æ¥ç¥ç»ç½ç»ï¼æ¯ä¸ªåå åç¸é»å±ä¸çææåå ç¸è¿
2ï¼å±é¨è¿æ¥ç½ç»ï¼æ¯ä¸ªåå åªåç¸é»å±ä¸çé¨ååå ç¸è¿
ç¥ç»ç½ç»çå¦ä¹
æ ¹æ®å¦ä¹ æ¹æ³åï¼
æç¥å¨ï¼æçç£çå¦ä¹ æ¹æ³ï¼è®ç»æ ·æ¬çç±»å«æ¯å·²ç¥çï¼å¹¶å¨å¦ä¹ çè¿ç¨ä¸æ导模åçè®ç»
认ç¥å¨ï¼æ çç£çå¦ä¹ æ¹æ³ï¼è®ç»æ ·æ¬ç±»å«æªç¥ï¼ååå éè¿ç«äºå¦ä¹ ã
æ ¹æ®å¦ä¹ æ¶é´åï¼
离线ç½ç»ï¼å¦ä¹ è¿ç¨å使ç¨è¿ç¨æ¯ç¬ç«ç
å¨çº¿ç½ç»ï¼å¦ä¹ è¿ç¨å使ç¨è¿ç¨æ¯åæ¶è¿è¡ç
æ ¹æ®å¦ä¹ è§ååï¼
ç¸å ³å¦ä¹ ç½ç»ï¼æ ¹æ®è¿æ¥é´çæ¿æ´»æ°´å¹³æ¹åæç³»æ°
çº éå¦ä¹ ç½ç»ï¼æ ¹æ®è¾åºåå çå¤é¨åé¦æ¹åæç³»æ°
èªç»ç»å¦ä¹ ç½ç»ï¼å¯¹è¾å ¥è¿è¡èªéåºå°å¦ä¹
æèªãæ°å¦ä¹ç¾ã对人工ç¥ç»ç½ç»çéä¿ç解ï¼
ç¥ç»ç½ç»ç§ç±»å¾å¤ï¼å¸¸ç¨çæå¦ä¸åç§ï¼
1ï¼Hopfieldç½ç»ï¼å ¸åçåé¦ç½ç»ï¼ç»æåå±ï¼æç¸åçåå ç»æ
2ï¼ååä¼ æç½ç»ï¼åé¦ç½ç»ï¼ç»æå¤å±ï¼éç¨æå°åæ¹å·®ççº éå¦ä¹ è§åï¼å¸¸ç¨äºè¯è¨è¯å«ååç±»çé®é¢
3ï¼Kohonenç½ç»ï¼å ¸åçèªç»ç»ç½ç»ï¼ç±è¾å ¥å±åè¾åºå±ææï¼å ¨è¿æ¥
4ï¼ARTç½ç»ï¼èªç»ç»ç½ç»
深度ç¥ç»ç½ç»ï¼
Convolutional Neural Networks(CNN)å·ç§¯ç¥ç»ç½ç»
Recurrent neural Network(RNN)循ç¯ç¥ç»ç½ç»
Deep Belief Networks(DBN)深度信念ç½ç»
深度å¦ä¹ æ¯æå¤å±ç¥ç»ç½ç»ä¸è¿ç¨åç§æºå¨å¦ä¹ ç®æ³è§£å³å¾åï¼ææ¬çåç§é®é¢çç®æ³éåã深度å¦ä¹ ä»å¤§ç±»ä¸å¯ä»¥å½å ¥ç¥ç»ç½ç»ï¼ä¸è¿å¨å ·ä½å®ç°ä¸æ许å¤ååã
深度å¦ä¹ çæ ¸å¿æ¯ç¹å¾å¦ä¹ ï¼æ¨å¨éè¿åå±ç½ç»è·ååå±æ¬¡çç¹å¾ä¿¡æ¯ï¼ä»è解å³ä»¥å¾éè¦äººå·¥è®¾è®¡ç¹å¾çéè¦é¾é¢ã
Machine Learning vs. Deep Learning
ç¥ç»ç½ç»ï¼ä¸»è¦æ¯æç¥å¨ï¼ç»å¸¸ç¨äº åç±»
ç¥ç»ç½ç»çåç±»ç¥è¯ä½ç°å¨ç½ç»è¿æ¥ä¸ï¼è¢«éå¼å°åå¨å¨è¿æ¥çæå¼ä¸ã
ç¥ç»ç½ç»çå¦ä¹ å°±æ¯éè¿è¿ä»£ç®æ³ï¼å¯¹æå¼éæ¥ä¿®æ¹çä¼åè¿ç¨ï¼å¦ä¹ çç®æ å°±æ¯éè¿æ¹åæå¼ä½¿è®ç»éçæ ·æ¬é½è½è¢«æ£ç¡®åç±»ã
ç¥ç»ç½ç»ç¹å«éç¨äºä¸åæ åµçåç±»é®é¢ï¼
1) æ°æ®éæ¯è¾å°ï¼ç¼ºå°è¶³å¤çæ ·æ¬å»ºç«æ¨¡å
2) æ°æ®çç»æé¾ä»¥ç¨ä¼ ç»çç»è®¡æ¹æ³æ¥æè¿°
3) å类模åé¾ä»¥è¡¨ç¤ºä¸ºä¼ ç»çç»è®¡æ¨¡å
缺ç¹ï¼
1) éè¦å¾é¿çè®ç»æ¶é´ï¼å è对äºæ足å¤é¿è®ç»æ¶é´çåºç¨æ´åéã
2) éè¦å¤§éçåæ°ï¼è¿äºé常主è¦é ç»éªç¡®å®ï¼å¦ç½ç»æææâç»æâã
3) å¯è§£éæ§å·® ã该ç¹ç¹ä½¿å¾ç¥ç»ç½ç»å¨æ°æ®ææçåæ并ä¸ç好ã
ä¼ç¹ï¼
1) åç±»çå确度é«
2)并è¡åå¸å¤çè½å强
3)åå¸åå¨åå¦ä¹ è½åé«
4)对åªé³æ°æ®æå¾å¼ºçé²æ£æ§å容éè½å
ææµè¡çåºäºç¥ç»ç½ç»çåç±»ç®æ³æ¯å¹´ä»£æåºç ååä¼ æç®æ³ ãååä¼ æç®æ³å¨å¤è·¯åé¦ç¥ç»ç½ç»ä¸å¦ä¹ ã
å®ä¹ç½ç»ææ
å¨å¼å§è®ç»ä¹åï¼ç¨æ·å¿ 须说æè¾å ¥å±çåå æ°ãéèå±æ°ï¼å¦æå¤äºä¸å±ï¼ãæ¯ä¸éèå±çåå æ°åè¾åºå±çåå æ°ï¼ä»¥ç¡®å®ç½ç»ææã
对è®ç»æ ·æ¬ä¸æ¯ä¸ªå±æ§çå¼è¿è¡è§æ ¼åå°æå©äºå å¿«å¦ä¹ è¿ç¨ãé常ï¼å¯¹è¾å ¥å¼è§æ ¼åï¼ä½¿å¾å®ä»¬è½å ¥0.0å1.0ä¹é´ã
离æ£å¼å±æ§å¯ä»¥éæ°ç¼ç ï¼ä½¿å¾æ¯ä¸ªåå¼ä¸ä¸ªè¾å ¥åå ãä¾å¦ï¼å¦æå±æ§Açå®ä¹å为(a0,a1,a2)ï¼åå¯ä»¥åé ä¸ä¸ªè¾å ¥åå 表示Aãå³ï¼æ们å¯ä»¥ç¨I0 ,I1 ,I2ä½ä¸ºè¾å ¥åå ãæ¯ä¸ªåå åå§å为0ãå¦æA = a0ï¼åI0置为1ï¼å¦æA = a1ï¼I1ç½®1ï¼å¦æ¤ä¸å»ã
ä¸ä¸ªè¾åºåå å¯ä»¥ç¨æ¥è¡¨ç¤ºä¸¤ä¸ªç±»ï¼å¼1代表ä¸ä¸ªç±»ï¼èå¼0代表å¦ä¸ä¸ªï¼ãå¦æå¤äºä¸¤ä¸ªç±»ï¼åæ¯ä¸ªç±»ä½¿ç¨ä¸ä¸ªè¾åºåå ã
éèå±åå æ°è®¾å¤å°ä¸ªâæ好â ï¼æ²¡ææç¡®çè§åã
ç½ç»è®¾è®¡æ¯ä¸ä¸ªå®éªè¿ç¨ï¼å¹¶å¯è½å½±ååç¡®æ§ãæçåå¼ä¹å¯è½å½±ååç¡®æ§ãå¦ææ个ç»è¿è®ç»çç½ç»çåç¡®ç太ä½ï¼åé常éè¦éç¨ä¸åçç½ç»æææ使ç¨ä¸åçåå§æå¼ï¼éå¤è¿è¡è®ç»ã
ååä¼ æç®æ³å¦ä¹ è¿ç¨ï¼
è¿ä»£å°å¤çä¸ç»è®ç»æ ·æ¬ï¼å°æ¯ä¸ªæ ·æ¬çç½ç»é¢æµä¸å®é çç±»æ å·æ¯è¾ã
æ¯æ¬¡è¿ä»£åï¼ä¿®æ¹æå¼ï¼ä½¿å¾ç½ç»é¢æµåå®é ç±»ä¹é´çåæ¹å·®æå°ã
è¿ç§ä¿®æ¹âååâè¿è¡ãå³ï¼ç±è¾åºå±ï¼ç»ç±æ¯ä¸ªéèå±ï¼å°ç¬¬ä¸ä¸ªéèå±ï¼å æ¤ç§°ä½ååä¼ æï¼ã尽管ä¸è½ä¿è¯ï¼ä¸è¬å°ï¼æå°æç»æ¶æï¼å¦ä¹ è¿ç¨åæ¢ã
ç®æ³ç»æ¢æ¡ä»¶ï¼è®ç»éä¸è¢«æ£ç¡®åç±»çæ ·æ¬è¾¾å°ä¸å®çæ¯ä¾ï¼æè æç³»æ°è¶è¿ç¨³å®ã
ååä¼ æç®æ³å为å¦ä¸å æ¥ï¼
1) åå§åæ
ç½ç»çæé常被åå§å为å¾å°çéæºæ°ï¼ä¾å¦ï¼èå´ä»-1.0å°1.0ï¼æä»-0.5å°0.5ï¼ã
æ¯ä¸ªåå é½è®¾æä¸ä¸ªåç½®ï¼biasï¼ï¼åç½®ä¹è¢«åå§å为å°éæºæ°ã
2) ååä¼ æè¾å ¥
对äºæ¯ä¸ä¸ªæ ·æ¬Xï¼éå¤ä¸é¢ä¸¤æ¥ï¼
ååä¼ æè¾å ¥ï¼ååä¼ æ误差
计ç®åå±æ¯ä¸ªåå çè¾å ¥åè¾åºãè¾å ¥å±ï¼è¾åº=è¾å ¥=æ ·æ¬Xçå±æ§ï¼å³ï¼å¯¹äºåå jï¼Oj = Ij = Xjãéèå±åè¾åºå±ï¼è¾å ¥=åä¸å±çè¾åºç线æ§ç»å,å³ï¼å¯¹äºåå jï¼ Ij =wij Oi + θjï¼è¾åº=
3) ååä¼ æ误差
计ç®åå±æ¯ä¸ªåå ç误差ã
è¾åºå±åå jï¼è¯¯å·®ï¼
Ojæ¯åå jçå®é è¾åºï¼èTjæ¯jççæ£è¾åºã
éèå±åå jï¼è¯¯å·®ï¼
wjkæ¯ç±jå°ä¸ä¸å±ä¸åå kçè¿æ¥çæï¼Errkæ¯åå kç误差
æ´æ° æ å åå·® ï¼ä»¥åæ ä¼ æç误差ã
æç±ä¸å¼æ´æ°ï¼
å ¶ä¸ï¼â³wijæ¯æwijçæ¹åãlæ¯å¦ä¹ çï¼é常å0å1ä¹é´çå¼ã
åç½®ç±ä¸å¼æ´æ°ï¼
å ¶ä¸ï¼â³Î¸jæ¯å置θjçæ¹åã
Example
人类è§è§åçï¼
深度å¦ä¹ ç许å¤ç 究ææï¼ç¦»ä¸å¼å¯¹å¤§è认ç¥åççç 究ï¼å°¤å ¶æ¯è§è§åççç 究ã å¹´ç诺è´å°å»å¦å¥ï¼é¢åç»äº David Hubelï¼åºçäºå æ¿å¤§çç¾å½ç¥ç»çç©å¦å®¶ï¼ åTorsten Wieselï¼ä»¥åRoger Sperryãå两ä½ç主è¦è´¡ç®ï¼æ¯âåç°äºè§è§ç³»ç»çä¿¡æ¯å¤çâï¼ å¯è§ç®å±æ¯å级ç ã
人类çè§è§åçå¦ä¸ï¼ä»åå§ä¿¡å·æå ¥å¼å§ï¼ç³åæå ¥åç´ Pixelsï¼ï¼æ¥çååæ¥å¤çï¼å¤§èç®å±æäºç»èåç°è¾¹ç¼åæ¹åï¼ï¼ç¶åæ½è±¡ï¼å¤§èå¤å®ï¼ç¼åçç©ä½çå½¢ç¶ï¼æ¯åå½¢çï¼ï¼ç¶åè¿ä¸æ¥æ½è±¡ï¼å¤§èè¿ä¸æ¥å¤å®è¯¥ç©ä½æ¯åªæ°çï¼ã
对äºä¸åçç©ä½ï¼äººç±»è§è§ä¹æ¯éè¿è¿æ ·éå±å级ï¼æ¥è¿è¡è®¤ç¥çï¼
å¨æåºå±ç¹å¾åºæ¬ä¸æ¯ç±»ä¼¼çï¼å°±æ¯åç§è¾¹ç¼ï¼è¶å¾ä¸ï¼è¶è½æååºæ¤ç±»ç©ä½çä¸äºç¹å¾ï¼è½®åãç¼çã躯干çï¼ï¼å°æä¸å±ï¼ä¸åçé«çº§ç¹å¾æç»ç»åæç¸åºçå¾åï¼ä»èè½å¤è®©äººç±»åç¡®çåºåä¸åçç©ä½ã
å¯ä»¥å¾èªç¶çæ³å°ï¼å¯ä»¥ä¸å¯ä»¥æ¨¡ä»¿äººç±»å¤§èçè¿ä¸ªç¹ç¹ï¼æé å¤å±çç¥ç»ç½ç»ï¼è¾ä½å±çè¯å«å级çå¾åç¹å¾ï¼è¥å¹²åºå±ç¹å¾ç»ææ´ä¸ä¸å±ç¹å¾ï¼æç»éè¿å¤ä¸ªå±çº§çç»åï¼æç»å¨é¡¶å±ååºåç±»å¢ï¼çæ¡æ¯è¯å®çï¼è¿ä¹æ¯è®¸å¤æ·±åº¦å¦ä¹ ç®æ³ï¼å æ¬CNNï¼ççµææ¥æºã
å·ç§¯ç¥ç»ç½ç»æ¯ä¸ç§å¤å±ç¥ç»ç½ç»ï¼æ é¿å¤çå¾åç¹å«æ¯å¤§å¾åçç¸å ³æºå¨å¦ä¹ é®é¢ãå·ç§¯ç½ç»éè¿ä¸ç³»åæ¹æ³ï¼æåå°æ°æ®éåºå¤§çå¾åè¯å«é®é¢ä¸æéç»´ï¼æç»ä½¿å ¶è½å¤è¢«è®ç»ã
CNNææ©ç±Yann LeCunæåºå¹¶åºç¨å¨æååä½è¯å«ä¸ãLeCunæåºçç½ç»ç§°ä¸ºLeNetï¼å ¶ç½ç»ç»æå¦ä¸ï¼
è¿æ¯ä¸ä¸ªæå ¸åçå·ç§¯ç½ç»ï¼ç± å·ç§¯å±ãæ± åå±ãå ¨è¿æ¥å± ç»æãå ¶ä¸å·ç§¯å±ä¸æ± åå±é åï¼ç»æå¤ä¸ªå·ç§¯ç»ï¼éå±æåç¹å¾ï¼æç»éè¿è¥å¹²ä¸ªå ¨è¿æ¥å±å®æåç±»ã
CNNéè¿å·ç§¯æ¥æ¨¡æç¹å¾åºåï¼å¹¶ä¸éè¿å·ç§¯çæå¼å ±äº«åæ± åï¼æ¥éä½ç½ç»åæ°çæ°é级ï¼æåéè¿ä¼ ç»ç¥ç»ç½ç»å®æåç±»çä»»å¡ã
éä½åæ°é级ï¼å¦æ使ç¨ä¼ ç»ç¥ç»ç½ç»æ¹å¼ï¼å¯¹ä¸å¼ å¾çè¿è¡åç±»ï¼é£ä¹ï¼æå¾ççæ¯ä¸ªåç´ é½è¿æ¥å°éèå±èç¹ä¸ï¼å¯¹äºä¸å¼ xåç´ çå¾çï¼å¦ææ1Méèå±åå ï¼ä¸å ±æ^个åæ°ï¼è¿æ¾ç¶æ¯ä¸è½æ¥åçã
ä½æ¯å¨CNNéï¼å¯ä»¥å¤§å¤§åå°åæ°ä¸ªæ°ï¼åºäºä»¥ä¸ä¸¤ä¸ªå设ï¼
1ï¼æåºå±ç¹å¾é½æ¯å±é¨æ§çï¼ä¹å°±æ¯è¯´ï¼ç¨xè¿æ ·å¤§å°çè¿æ»¤å¨å°±è½è¡¨ç¤ºè¾¹ç¼çåºå±ç¹å¾
2ï¼å¾åä¸ä¸åå°ç段ï¼ä»¥åä¸åå¾åä¸çå°ç段çç¹å¾æ¯ç±»ä¼¼çï¼ä¹å°±æ¯è¯´ï¼è½ç¨åæ ·çä¸ç»åç±»å¨æ¥æè¿°åç§åæ ·ä¸åçå¾å
åºäºä»¥ä¸ä¸¤ä¸ªå设ï¼å°±è½æ第ä¸å±ç½ç»ç»æç®å
ç¨ä¸ªxçå°è¿æ»¤å¨ï¼å°±è½å¤æè¿°æ´å¹ å¾çä¸çåºå±ç¹å¾ã
å·ç§¯è¿ç®çå®ä¹å¦ä¸å¾æ示ï¼
å¦ä¸å¾æ示ï¼ä¸ä¸ª5x5çå¾åï¼ç¨ä¸ä¸ª3x3ç å·ç§¯æ ¸ ï¼
1ãã0ãã1
0ãã1ãã0
1ãã0ãã1
æ¥å¯¹å¾åè¿è¡å·ç§¯æä½ï¼å¯ä»¥ç解为æä¸ä¸ªæ»å¨çªå£ï¼æå·ç§¯æ ¸ä¸å¯¹åºçå¾ååç´ åä¹ç§¯ç¶åæ±åï¼ï¼å¾å°äº3x3çå·ç§¯ç»æã
è¿ä¸ªè¿ç¨å¯ä»¥ç解为使ç¨ä¸ä¸ªè¿æ»¤å¨ï¼å·ç§¯æ ¸ï¼æ¥è¿æ»¤å¾åçå个å°åºåï¼ä»èå¾å°è¿äºå°åºåçç¹å¾å¼ãå¨å®é è®ç»è¿ç¨ä¸ï¼ å·ç§¯æ ¸çå¼æ¯å¨å¦ä¹ è¿ç¨ä¸å¦å°çã
å¨å ·ä½åºç¨ä¸ï¼å¾å¾æå¤ä¸ªå·ç§¯æ ¸ï¼å¯ä»¥è®¤ä¸ºï¼ æ¯ä¸ªå·ç§¯æ ¸ä»£è¡¨äºä¸ç§å¾åæ¨¡å¼ ï¼å¦ææ个å¾ååä¸æ¤å·ç§¯æ ¸å·ç§¯åºçå¼å¤§ï¼å认为æ¤å¾ååååæ¥è¿äºæ¤å·ç§¯æ ¸ãå¦æ设计äº6个å·ç§¯æ ¸ï¼å¯ä»¥ç解为è¿ä¸ªå¾åä¸æ6ç§åºå±çº¹ç模å¼ï¼ä¹å°±æ¯ç¨6ç§åºç¡æ¨¡å¼å°±è½æç»åºä¸å¯å¾åã以ä¸å°±æ¯ç§ä¸åçå·ç§¯æ ¸ç示ä¾ï¼
æ± å çè¿ç¨å¦ä¸å¾æ示ï¼
å¯ä»¥çå°ï¼åå§å¾çæ¯xçï¼å¯¹å ¶è¿è¡éæ ·ï¼éæ ·çªå£ä¸ºxï¼æç»å°å ¶éæ ·æ为ä¸ä¸ª2x2大å°çç¹å¾å¾ã
ä¹æ以è¿ä¹åï¼æ¯å 为å³ä½¿åå®äºå·ç§¯ï¼å¾åä»ç¶å¾å¤§ï¼å 为å·ç§¯æ ¸æ¯è¾å°ï¼ï¼æ以为äºéä½æ°æ®ç»´åº¦ï¼å°±è¿è¡éæ ·ã
å³ä½¿åå°äºè®¸å¤æ°æ®ï¼ç¹å¾çç»è®¡å±æ§ä»è½å¤æè¿°å¾åï¼èä¸ç±äºéä½äºæ°æ®ç»´åº¦ï¼ææå°é¿å äºè¿æåã
å¨å®é åºç¨ä¸ï¼å为æ大å¼éæ ·ï¼Max-Poolingï¼ä¸å¹³åå¼éæ ·ï¼Mean-Poolingï¼ã
LeNetç½ç»ç»æï¼
注æï¼ä¸å¾ä¸S2ä¸C3çè¿æ¥æ¹å¼å¹¶ä¸æ¯å ¨è¿æ¥ï¼èæ¯é¨åè¿æ¥ãæåï¼éè¿å ¨è¿æ¥å±C5ãF6å¾å°ä¸ªè¾åºï¼å¯¹åºä¸ªæ°åçæ¦çã
å·ç§¯ç¥ç»ç½ç»çè®ç»è¿ç¨ä¸ä¼ ç»ç¥ç»ç½ç»ç±»ä¼¼ï¼ä¹æ¯åç §äºååä¼ æç®æ³
第ä¸é¶æ®µï¼ååä¼ æé¶æ®µï¼
aï¼ä»æ ·æ¬éä¸åä¸ä¸ªæ ·æ¬(X,Yp)ï¼å°Xè¾å ¥ç½ç»ï¼
bï¼è®¡ç®ç¸åºçå®é è¾åºOp
第äºé¶æ®µï¼ååä¼ æé¶æ®µ
aï¼è®¡ç®å®é è¾åºOpä¸ç¸åºççæ³è¾åºYpçå·®ï¼
bï¼ææå°å误差çæ¹æ³ååä¼ æè°æ´æç©éµã
卷积神经网络(CNN)算法详解
卷积神经网络(CNN),作为深度学习的核心算法之一,起源于世纪至年代的Time Delay Neural Networks和LeNet-5。随着深度学习理论的进步和硬件的提升,CNN在计算机视觉和自然语言处理等领域表现出色,其设计灵感源于生物视觉机制,能够进行监督和非监督学习,通过参数共享和稀疏连接实现对格点数据高效学习。
在CNN中,核心概念是卷积核,它是神经网络训练中需要优化的参数。卷积操作通过核中的权重与输入数据的对应元素相乘并求和,形成输出。由于卷积核尺寸小,通常会对图像进行多次滑动处理,以捕捉全局信息。数据通常被抽象为四维,每个通道对应特定的特征,如颜色或音频特征。
卷积神经网络利用多个通道提取不同层次的特征,每个通道代表输入数据的一种特定特征。通道数量会随着网络深度增加而增加,从原始的RGB图像扩展到自动学习的高级特征。填充机制则帮助保持输出尺寸,步长控制了卷积核的移动步幅。
平移不变性和局部相关性是卷积设计的关键思想,前者通过参数共享模拟人类视觉对平移特征的识别,后者利用局部信息处理图像,避免全局计算的冗余。CNN通过滑动卷积核寻找特征,对输入进行特征提取,不同的卷积核提取不同特征,以完成图像识别任务。
池化操作作为特化的卷积,用于降维并增强特征提取,如平均池化和最大池化。池化后的结果有助于识别显著特征和防止过拟合。感受野的概念描述了神经元对输入的敏感区域,网络深度增加时感受野扩大,提升模型理解和鲁棒性。
LeNet-5作为第一个成功的CNN模型,展示了卷积在图像识别中的潜力,其结构简单但功能强大,包含卷积、下采样和全连接层。LeNet-5的成功开启了深度学习在图像处理领域的广泛应用。
卷积神经网络(CNN)反向传播算法
本文主要总结了卷积神经网络(CNN)的反向传播算法。首先,回顾了DNN反向传播的基本原理,接着指出在CNN中,由于池化层和卷积层的独特性,需要解决几个关键问题。
问题1是池化层没有激活函数,可通过令其激活函数等于自身来简化。问题2是池化层误差的反向传播需要从缩小后的误差 δl推导出上一层的更大区域误差,通过上采样(upsample)处理。问题3和4涉及卷积层的反向传播,卷积核的求导涉及到卷积运算的性质,需要对卷积核进行旋转度以求得梯度。
具体步骤包括:已知池化层的 δl,推导上一隐藏层的 −1δl−1,利用上采样技术和激活函数的导数;对于卷积层,通过矩阵卷积和卷积核的翻转度计算梯度;最后,计算卷积层和全连接层的权重与偏置的梯度更新。
总结CNN反向传播算法时,以批量梯度下降法为例,涉及到模型的初始化,输入样本的处理,前向传播和反向传播的具体步骤,以及权重和偏置的更新。每个层的处理方式根据其类型(全连接、卷积或池化)有所不同。