深度学习之感性理解-卷积神经网络
6 }8 ~6 d1 B0 \4 \9 U7 Y是什么& s4 B8 m6 ~, }+ n/ U: N
干嘛的
* {8 S9 J3 J( H" o+ W( }3 h卷积核
8 e' ?0 k$ p' j( g) L* l3 B池化层( S5 u5 J+ E/ J2 l$ M
是什么4 c$ x/ H% T$ O6 a5 b
前面我们介绍的神经网络称为全连接神经网络,因为前一层每个神经元的输出都作为下一层每个神经元的输入。卷积神经网络恰恰相反,不需要全连接,只有部分前一层输出做为后一层的输入。可以简单理解为有一张6X6像素的图片,还有一个3X3的窗口,然后进行从左到右,从上到下一格一格的移动,每次计算窗口里的值和对应图片值的乘积和作为新的像素点,放在一个新的图片里。5 V" U+ y5 b1 w6 O, g1 C2 ?0 e
( v; a; Q# S" R3 A
如果将图片作为输入,窗口作为参数,对应的就是这种稀疏连接,共享参数的结构。
, s2 [8 }6 m7 }% s2 s; z $ B( a7 [7 F$ F5 `: ?: k5 ?
干嘛的$ d" E, V4 @' c, g
这样的连接方式虽然非常全面,不会漏掉任何一个神经元的作用,但是缺点也明显,这种连接使得参数过多,训练时间就会变长,比如处理大图片,像素个数可能有几百万维,参数数量太过庞大,导致训练时间过长,于是有大神提出了卷积神经网络(CNN)。
) d2 B6 i, J$ e( r7 u8 {( \, T& W: u% @5 R9 R7 Z2 z4 B
卷积神经网络至少有一个卷积层,可以用来提取特征,也就是把图片抽象化,这样就可以减少一定的信息量,参数自然就少了,同时卷积层通过共享参数的方式工作,也可以减少参数。举个例子,如果我们要识别一只猫,如果用全连接的方式可能就会描述成,一只有黄色的大耳朵蓝眼睛身体肥大的波斯猫。但是通过卷积神经网络的卷积层后,会描述成一只猫,这样就提高了通用性,只描述了抽象的特征。
, `8 V3 K" w" H2 e; y
. ?9 `, k3 |3 w$ i比如如果我要想学习交通灯的特征,交通灯只在图片里的某一部分,并非全部,如果我把像素点一个个的观察过去,是不是有点浪费,能不能用个大的窗口,直接把交通灯给捕捉出来呢,这也是用CNN的一个特点。+ o; [& ^& b1 \: L% Y8 V8 s+ s
![]()
* K4 u: A ]$ p& O* s W& I! [0 |4 `/ n
卷积核7 C2 j8 X- o7 }1 Z% v. H5 V) J% U* f
就是上面所说的窗口,可以简单的理解为提取相应特征的参数,把高纬度的映射到低纬度,是一种有损压缩,他的表达式也可以看成
9 F8 T+ J0 q; j. Fy=wx+b' k3 L! o* E, n* u" x8 ]
# Z! B7 G7 L* `* e' M![]()
5 g( {3 e% ~1 P( o1 n1 C池化层一种处理层,类似卷积层,又进行了一次特征提取,减少下一层数据的处理量,进一步获取更为抽象的信息。主要分为最大池化和平均池化,即取窗口中最大的或者取平均数放入新图片里。
9 u5 Z: V& W0 s9 n! b ; i4 q* f3 F0 C9 v5 \% L
好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵,图片均来自网络,侵删。有问题加我QQ数学中国浅夏3243710560
3 s% F( y( ~- A) c5 p
* _! @4 p* P; I! ?
; X& t% C" z" E4 r2 g) T5 g4 m* C8 E( v, L+ f
|