CNN学习笔记
CNN,即卷积神经网络,一般由输入层、卷积层、池化层、全连接层、输出层构成。
- 输入层:输入层即数据的输入,在NLP中,输入的是文本的向量表示。
- 卷积层:在卷积层中,有一个或多个卷积核对网络的输入进行卷积操作,最后得到和卷积核数目相同的feature map,卷积层的作用是用来提取特征,通过卷积核对输入的“扫描”来提取特征。
权重共享:CNN中所说的的权重共享是指对输入进行卷积操作过程中所用到的参数均来自卷积核。
卷积操作可以表示为:V = con2v(w,x,‘padding方式’)+b - 池化层 :池化层的功能是用来提取feature map中的主要特征,从而减小计算量,常用的有最大池化和平均池化两种方法。
- 全连接层: 通过将池化之后产生的矩阵以行相连,形成向量,作为输入传到全连接层,全连接层的作用是将之前提取到的局部特征组合成总体特征。
- 输出层: Y=f(V)
- 反向传播:CNN使用梯度下降进行反向传播,总的误差值为
实际输出为y,正确输出为d。
对总误差求w的偏导,即可,详细推导过程见:CNN公式推导过程