2018-12-19 CNN神经网络学习

台湾大学李宏毅老师的机器学习课程是一份非常好的ML/DL入门资料,这篇文章是学习本课程第10课所做的笔记和自己的理解。

1. 前言

神经网络中的每一个神经元与DNN(深度学习网络)的神经元一样,但是对于有3万的input神经元也有1000的fully connection来说,weight将会有30000*1000个,所以CNN需要削减weight的数目。

为什么CNN可以用较少的参数得到一个较好的模型呢?

1.因为pattern模式的识别往往不需要看一整张图片,比如识别一只鸟,通过看鸟嘴就可以了;

2.因为相同的模式可能会出现在不同的位置,比如识别鸟,鸟的位置可能会出现在图片的不同位置;

3.对图像降低采样不会影响识别模式。


2.CNN模型

1.convolution卷积层

2.max pooling池化层

3.flatten 拉平

1.卷积层convolution

filter内的参数是学习出来的,但是filter的数目跟大小与stride的大小是人为设定的。


卷积的操作动图1
卷积的操作动图2

理解卷积的操作动图,卷积是一种神经网络的链接方式,卷积输出的结果叫做feature map。

shared weights 不同位置识别

2.max pooling

缩小feature map;

3.flatten 

按照规定拉直图片矩阵。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容