Lecture 5
卷积神经网络
卷积神经网路是一种前馈神经网络,人工神经元可以相应周围单元,可以大型图像处理,卷积神经网络包括卷积层和池化层。
前馈神经网络 是一种最简单的神经网络,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层,各层间没有反馈
前馈神经网络结构简单,应用广泛,能够以任意精度逼近任意连续函数及平方可积函数,而且可以精确实现任意有限训练样本集
感知器(感知机)是最简单的前馈网络,主要用于模式分类,也用于基于模式分类的学习控制和多模态控制中
反馈神经网络 是一种将输出经过一步时移再接入到输入层的神经网络系统。
前馈型神经网络取连续或离散变量,一般不考虑输出与输入在时间上的滞后效应,只表达输出与输入的映射关系
反馈型神经网络可以用离散变量也可以用连续取值,考虑输出与输入之间在时间上的延迟,需要用动态方程来描述系统的模型
前馈神经网络的学习主要采用误差修正法,计算过程一般比较慢,收敛速度也比较慢
反馈神经网络主要采用Hebb学习规则,一般情况下计算的收敛速度很快
卷积神经网络之层级结构
在此图中CNN要做的事情:给定一张未知图片,判定条件也未知,需要模型来判断这张图片到底是什么,最后输出的结果:如果判定为车,还需判定是什么车
- 最左边的是数据输入层,对数据做一些处理,CNN只对训练集做“去均值”
- CONV:卷积计算层,线性乘机 求和
- RELU:激励层
- POOL:池化层(取区域平均或最大)
- FC:全连接层
卷积
对图像和滤波矩阵做内积
下面红框区域可以理解为一个滤波器,多个滤波器叠加在一起便组成了卷积层
(通俗的讲就是除了输入层和输出层,中间对输入数据进行的一层或多层处理都可理解为滤波器,也就是把输入数据过滤成我们想要的输出数据)
- GIF动态卷积图
由图可得:
- 两个神经元,也就是中间有两个滤波器
- 分别以两个滤波器filter为轴滑动数组进行卷积计算,得到两组不同的输出
左边的数据在变化,但是中间的滤波器没有改变,这就是CNN的局部感知机制
(通俗的讲,就是输入的数据在不断的改变,但是“评判”的标准没有改变)
这样的输出才有参考的价值
CNN激励层与池化层
- RELU激励层
之前了解过激励函数sigmoid,但实际梯度下降中,sigmoid容易饱和、造成终止梯度传递,且没有0化中心
RELU的优点是收敛快,求梯度简单
- 池化层
应用实例
这里只实现了卷积功能
(由于电脑里两个相同规格的图片很少,所以就用这两个)
每个图初始有三张特征map,用了两个9*9的filter过滤,所以每张图都有两个特征图输出
这里只实现了卷积也就是过滤,其中参数W,b都是随机产生的, 感觉实验出来的结果有点像边缘提取
激励函数用的是sigmoid