TextCNN的简单理解及其conv1d实现

本文介绍了TextCNN算法在文本分类任务中的应用,通过卷积神经网络提取文本特征并进行分类。以"I like this movie very much !"为例,详细解释了卷积和最大池化的操作过程,并给出了conv1d的简单实现,强调了dropout在防止过拟合中的作用,以及参数的可调性。
摘要由CSDN通过智能技术生成

近期在使用深度学习做文本分类的任务的时候了解到了TextCNN算法,之前一直使用较多的是LSTM。TextCNN 是利用卷积神经网络对文本进行分类的算法,由 Yoon Kim 在2014年的 “Convolutional Neural Networks for Sentence Classification” 文章中提出. 

1.举个小例子,如下图

简而言之,TextCNN的主要作用就是通过CNN来有效提取提取出文本的特征,然后再进行深度神经网络训练,最终达到对文本进行分类的目的。

对于上图来说,输入“I like this movie very much !”,这句话一共有7个单词,每个单词的词向量维度为5。name这句话形成的文本矩阵大小为7*5。接着我们来看卷积核,在这里卷积核的宽即为词向量的维度(即为5),卷积核的长即每一步跨越单词的数量。上面的7*5矩阵,在卷积核长度为2,3,4。那么卷积核的大小为2*5,3*5和4*5,步长为1,那么经过卷积以后以前的7*5词文本矩阵分别变为6*1,5*1和4*1的矩阵。再进行最大池化,分别取上述卷积后矩阵的最大值,再拼接在一起即得到最后的表示文本特征的向量。在上图中,每个尺寸的卷积核各有2个,一共有3个不同的卷积核,故最后形成6*1的文本向量。接着将文本向量带入到深度神经网络进行分本分类。

2.conv1d简单实现

class PictureTextCNNCon
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值