卷积神经网络学习笔记(一):CNN概况

一、机器如何识别图片

机器处理图像的第一步是理解,理解如何表达一张图像,进而读取图片。简单来说,每个图像都是一系列特定排序的图点(像素)。如果你改变像素的顺序或颜色,图像也随之改变。基本上,机器会把图像打碎成像素矩阵,存储每个表示位置像素的颜色码。
关于具体如何理解这个问题,推荐看下“机器视角”的一篇文章。

https://mp.weixin.qq.com/s?__biz=MzA3MzI4MjgzMw==&mid=2650728746&idx=1&sn=61e9cb824501ec7c505eb464e8317915&scene=0#wechat_redirect

二、卷积神经网络

一个卷积神经网络大致有如下的几个部分构成:
· 卷积层:帮助提取特征,越深的卷积神经网络会提取越具体的特征,越浅的网络提取越浅显的特征。
· 池化层(pooling):池化的唯一目的是减少图像的空间大小。最常见形式是最大池化。
· 输出层:CNN 中的输出层是全连接层,其中来自其他层的输入在这里被平化和发送,以便将输出转换为网络所需的参数。

1.卷积层
对图像和滤波矩阵做内积(逐个元素相乘再求和)的操作就是所谓的『卷积』操作,也是卷积神经网络的名字来源。
比如下图中,图中左边部分是原始输入数据,图中中间部分是滤波器filter,图中右边是输出的新的二维数据。
这里写图片描述

2.池化层
这里写图片描述

3.输出层
为了生成最终的输出,我们需要应用全连接层来生成一个等于我们需要的类的数量的输出。仅仅依靠卷积层是难以达到这个要求的。卷积层可以生成 3D 激活图,而我们只需要图像是否属于一个特定的类这样的内容。输出层具有类似分类交叉熵的损失函数,用于计算预测误差。一旦前向传播完成,反向传播就会开始更新权重与偏差,以减少误差和损失。

更多关于CNN反向传播的推导和实现可以参考如下博客

http://blog.csdn.net/zouxy09/article/details/9993371

猜你喜欢

转载自blog.csdn.net/qq_38213612/article/details/77875196