在熟悉卷积神经网络之后,再看文本卷积神经网络就很简单。一个经典的图就可以说明。
-
输入:如下图,我们可以看到一句话"I like this movie very much!",每个单词使用一个shape为1*5的行向量表示,然后这7个单词以垂直方式堆积成一个二维矩阵。该二维矩阵的shape为count(单词)*5。
-
卷积核:输入确定之后,后面的一层中展示的是3个不同尺寸的卷积核,分别为2个45、2个35和2个2*5的卷积核。可以看出来,卷积核的一个维度是确定的,与词向量的维度d相等。那么这里的卷积就不再是图像中的二维卷积,而是一维卷积,该卷积核只在高度维度上平移。
-
卷积操作:在卷积核确定之后,每个卷积核与输入进行卷积运算,会得到一个特征图的输出,分别为2个14、2个15和2个1*6的特征图。这一步是卷积运算。从卷积结果中看出,这里采用的卷积方式是VALID,并没有进行填充。
-
池化操作:从图中可以看出,在卷积之后,又进行了最大池化,然后将每个特征图最大池化之后的结果也以垂直方式堆积。
-
全连接层:在池化操作之后,可以进行全连接的计算,最后通过一个softmax激活函数即可。