深度学习之感性理解-卷积神经网络
1 \7 i, d7 u' E% i4 r是什么
; W5 r0 _2 P& y( c干嘛的* R, E+ q4 d. X3 @$ Y- i* ?8 z
卷积核
1 q2 M1 C& X2 ]池化层
4 \9 _3 A$ A/ E6 j1 b: d4 {, {是什么
7 Y' E/ H- H/ z; b6 f前面我们介绍的神经网络称为全连接神经网络,因为前一层每个神经元的输出都作为下一层每个神经元的输入。卷积神经网络恰恰相反,不需要全连接,只有部分前一层输出做为后一层的输入。可以简单理解为有一张6X6像素的图片,还有一个3X3的窗口,然后进行从左到右,从上到下一格一格的移动,每次计算窗口里的值和对应图片值的乘积和作为新的像素点,放在一个新的图片里。
c1 e) `/ @8 b" n: i2 r: c 4 U( t% ?/ j4 E; D/ {& G
如果将图片作为输入,窗口作为参数,对应的就是这种稀疏连接,共享参数的结构。% c7 @3 P, |2 _1 [; {( h
![]()
& x; M/ x+ c- _3 B6 b& g2 ~. b7 X干嘛的
, e7 l8 o& t5 l- I这样的连接方式虽然非常全面,不会漏掉任何一个神经元的作用,但是缺点也明显,这种连接使得参数过多,训练时间就会变长,比如处理大图片,像素个数可能有几百万维,参数数量太过庞大,导致训练时间过长,于是有大神提出了卷积神经网络(CNN)。1 T5 O& }4 f# v; Y% F8 _- c
, V- Q. I2 t$ B: z( z- G& g卷积神经网络至少有一个卷积层,可以用来提取特征,也就是把图片抽象化,这样就可以减少一定的信息量,参数自然就少了,同时卷积层通过共享参数的方式工作,也可以减少参数。举个例子,如果我们要识别一只猫,如果用全连接的方式可能就会描述成,一只有黄色的大耳朵蓝眼睛身体肥大的波斯猫。但是通过卷积神经网络的卷积层后,会描述成一只猫,这样就提高了通用性,只描述了抽象的特征。
& p% h3 ~/ W0 Q
- z1 ^1 L2 \7 U9 H+ v比如如果我要想学习交通灯的特征,交通灯只在图片里的某一部分,并非全部,如果我把像素点一个个的观察过去,是不是有点浪费,能不能用个大的窗口,直接把交通灯给捕捉出来呢,这也是用CNN的一个特点。
7 a6 X* x+ x% L. {9 i" @![]()
( a$ }7 L S$ g. h( y0 @+ f7 F) S9 {% a
卷积核2 P* ]/ `9 F4 h, p
就是上面所说的窗口,可以简单的理解为提取相应特征的参数,把高纬度的映射到低纬度,是一种有损压缩,他的表达式也可以看成
# m' p3 h" I+ T7 m$ Y4 y* ty=wx+b
. Q/ _- i- z |. Y& F3 |/ L: ^ I5 v- n' K2 Q
1 z2 n# S4 ?3 V/ o3 H4 V
池化层一种处理层,类似卷积层,又进行了一次特征提取,减少下一层数据的处理量,进一步获取更为抽象的信息。主要分为最大池化和平均池化,即取窗口中最大的或者取平均数放入新图片里。 $ }' T4 B- @- a
3 T; s$ {0 ]" p5 j
好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵,图片均来自网络,侵删。有问题加我QQ数学中国浅夏3243710560
* ?$ O; i0 V, K8 E8 y4 X6 I6 S9 u' J; Z% J
, t. K+ F# h. d6 Y
0 E1 a; a U: g2 M4 T; u9 H |