往期回顾:
05——深度前馈网络、神经网络概述
06——深度学习中的正则化
07——深度模型中的优化
学习了基本的神经网络结构,以及如何进行正则化和优化之后,我们接下来转向特化的神经网络家族,允许其扩展到能够处理很大规模的数据和具有特殊结构的数据。(主要参考《深度学习》和cousera上吴恩达的课程)
卷积网络(convolutional network),也叫卷积神经网络(CNN),是一种专门用来处理具有类似网络结构的数据的神经网络。例如时间序列(一维网格)和图像数据(二维网格)。CNN 使用了卷积这种数学运算,卷积网络是指至少在网络的一层中使用卷积运算来替代一般的矩阵乘法运算的神经网络。卷积网络结构的研究进展十分迅速,针对特定基准(benchmark),几周就会有一个新的最优的网络结构。但所有的网络结构都是由基本部件逐步搭建起来的。
一、卷积运算
通常,卷积是对两个实变函数的一种运算。卷积运算通常用星号表示。
s ( t ) = ∫ x ( a ) w ( t − a ) d a = ( x ∗ w ) ( t ) . s(t) = \int x(a)w(t-a)da = (x*w)(t). s(t)=∫x(a)w(t−a)da=(x∗w)(t).卷积的第一个参数(x)称为输入,第二个参数(w)称为核函数,输出有时称作特征映射。
离散形式的卷积定义如下:
s ( t ) = ( x ∗ w ) ( t ) = ∑ a = − ∞ ∞ x ( a ) w ( t − a ) . s(t) = (x*w)(t) = \sum_{a = -\infty}^{\infty} x(a)w(t-a). s(t)=(x∗w)(t)=a=−∞∑∞</