情感分类《Convolutional Neural Networks for Sentence Classification》

文章探讨了预训练词向量结合CNN在句子分类任务中的表现,对比了不同词向量更新策略的效果。实验显示,CNN-non-static模型在分类精度上领先,证实了预训练词向量的有效性。

Motivation

Razavian等人(2014)使用预训练特征提取器在图像分类任务上取得了不错的效果,同时CNN在自然语言处理的任务上的应用也很有效。受此启发,本文作者使用预训练的词向量搭建一个简单的CNN网络。实验表明:在句子分类任务上,预训练的词向量+简单CNN模型往往比复杂的大型神经网络的分类效果好。

 

核心思想:

一般情况下,使用CNN进行句子分类是先将单词用向量表示,这个向量是随机初始化的。然后在训练过程中逐渐对词向量进行更新,使相似的单词在距离上相近,最终识别输入句子的类型。(本文的Baseline

本文使用Mikoliv等人在100 billion个单词上训练的词向量作为以下三个模型的输入:

  1. 在训练过程中,这些词向量始终不变(CNN-static);
  2. 在训练过程中,允许对词向量进行微调,即更新词向量(CNN-non-static);
  3. 综合上面两种情况,设置两个channel,一个channel的词向量不变,一个微调(CNN-multichannel)。

 

模型结构:

实验结果:

Baseline是效果最差,这也符合我们直观理解。因为从0训练词向量的效果,肯定不如使用大量预料训练过的词向量好。

虽然模型简单,但上面三种模型的分类效果都能达到业界顶尖水平。CNN-non-static还是比CNN-static的效果更好一点,因为CNN-non-static毕竟对词向量进行更新,学习到了和训练集相关的特征。

总的来看CNN-non-static的效果最好,对于CNN-multichannel性能下降的一个合理的解释是:不应该使用一整个非静态的channel而是只要增加一个可以修改的维度就可以了。

 

启发:

  1. 对于在训练集中未出现过的单词,模拟预训练单词的分布能够达到更好的效果。论文中考虑了方差,所以考虑均值+方差的会不会更好一点。
  2. 使用Dropout往往会有意想不到的效果。
  3. CNN网络的容量很大,能够提升模型性能。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值