机器学习与深度学习系列连载: 第二部分 深度学习(十一)卷积神经网络 2 Why CNN for Image?

卷积神经网络 2 Why CNN

为什么处理图片要用CNN?
在这里插入图片描述
原因是:

  • 一个神经元无法看到整张图片
  • 能够联系到小的区域,并且参数更少
  • 图片压缩像素不改变图片内容

在这里插入图片描述

1. CNN 的特点

  • 卷积: 一些卷积核远远小于图片大小; 同样的pattern 已在图片的不同区域出现
  • 抽样:抽样压缩,不影响图片的含义

在这里插入图片描述

2. CNN 为什么适用于图片处理?

一般来讲,单层神经网络可以表示任何函数(数学已经证明),那么我们为什么不用全连接神经网络,而用复杂的,人为设计的CNN取处理图片呢?秘密在于,CNN能够大量减少参数,提高效率。
(1)模型比较
在这里插入图片描述
(2)减参秘密
我们拿6*6大小的图片为例,filter是3*3,filter中每个参数是一个参数,用不同的颜色表示,就会生成activemap,粉色表示的图层
在这里插入图片描述
以activemap 中第一个数值3为例,在全连接网络中(完全展开CNN),至少需要16个参数,但是只需要9个输入。
在这里插入图片描述

3. CNN in Keras

(1)图片输入Input需要reshape到3D 的tensor
在这里插入图片描述
(2)继续添加maxpooling 和convolution层
在这里插入图片描述
(3)展开用全连接层,softmax输出分类结果
在这里插入图片描述

本专栏图片、公式很多来自台湾大学李弘毅老师、斯坦福大学cs229,斯坦福大学cs231n 、斯坦福大学cs224n课程。在这里,感谢这些经典课程,向他们致敬!

猜你喜欢

转载自blog.csdn.net/dukuku5038/article/details/83774169