CNN(卷积神经网络)在自然语言处理中的应用

本文介绍了CNN如何用于文本分类任务,通过卷积和池化捕捉文本的局部特征和顺序信息。预训练的词嵌入结合模型训练的词嵌入向量,能够利用先验知识并适应当前任务。CNN通过不同大小的滤波器提取特征,max池化选择最大值生成最终特征向量,用于分类。
摘要由CSDN通过智能技术生成

本文参考自Convolutional Neural Networks for Sentence Classification,结尾处放上传送门。

用传统方法进行文本分类任务时,通常将一篇文档所对应的tf-idf 向量作为模型的特征输入。但是这样做会有一个弊端,就是这样的tf-idf 表示实际上丢失了输入的文本序列中单词的顺序。而CNN对文本数据建模时,输入变长的字符串,然后通过滑动窗口加池化的方式将原先的输入转换成一个固定长度的向量表示,这样就可以捕捉到原文本中的一些局部特征和顺序上的信息。但一般只适用于短文本,对于两个词之间的长距离的依赖关系还是很难被捕捉到。

下面结合下图,来分析下CNN如何应用于文本分类任务的:

原图是两个通道的训练。

1)输入层是两个n*k的矩阵,其中n为文本所对应的单词总数(若长度不够n用padding 补,超出则舍弃),k是每个词对应的emberding向量维度。这里的两个通道:一个是每个词的 k维向量预先在其他语料库中训练好的,即预训练的模型可以用word2vec等,另外一个通道是每个词的k维向量作为未知的参数由模型训练得到。这样做的好处一方面预训练好的emberding向量可以利用其他预料库更多的先验知识;另一方面,由当前CNN模型训练出来的词嵌入向量可以更好地捕捉与当前任务关联的特征。其中未知的n*k的通道的参数是初始化,随着网络的训练会慢慢迭代改变。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值