Convolutional Neural Networks for Sentence Classification

简介:

本篇将分享一个有监督学习句子表示的方法,文章是Convolutional Neural Networks for Sentence Classification,作者是Harvard NLP组的Yoon Kim,并且开源了代码 sent-conv-torch


卷积神经网络(CNN)在计算机视觉中应用广泛,其捕捉局部feature的能力非常强,为分析和利用图像数据的研究者提供了极大额帮助。本文作者将CNN引用到了NLP的文本分类任务中。


本文模型架构图:


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


熟悉CNN结构的童鞋们看这个图就会非常眼熟,单通道图像可以表示为一个矩阵,输入到CNN中,经过多组filter层和pooling层,得到图像的局部特征,然后进行相关任务。本文用拼接词向量的方法,将一个句子表示成为一个矩阵,这里矩阵的每一行表示一个word,后面的步骤仅采用一组filter、pooling层来得到句子的特征向量,然后进行分类。


这里,模型根据词向量的不同分为四种:


  • CNN-rand,所有的词向量都随机初始化,并且作为模型参数进行训练。

  • CNN-static,即用word2vec预训练好的向量(Google News),在训练过程中不更新词向量,句中若有单词不在预训练好的词典中,则用随机数来代替。

  • CNN-non-static,根据不同的分类任务,进行相应的词向量预训练。

  • CNN-multichannel,两套词向量构造出的句子矩阵作为两个通道,在误差反向传播时,只更新一组词向量,保持另外一组不变。


在七组数据集上进行了对比实验,证明了单层的CNN在文本分类任务中的有效性,同时也说明了用无监督学习来的词向量对于很多nlp任务都非常有意义。


这里需要注意的一点是,static模型中word2vec预训练出的词向量会把good和bad当做相似的词,在sentiment classification任务中将会导致错误的结果,而non-static模型因为用了当前task dataset作为训练数据,不会存在这样的问题。具体可参看下图:


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


CNN最初应用在图像领域,将文本进行一些处理之后,也可以应用在nlp中,同样的思路,attention mechanism最初也是应用在图像识别领域中,现在seq2seq+attention的模型横扫了很多nlp task。其实很多问题在某个维度上看,是相似的问题,是可以用类似的方法进行解决的。



来源:paperweekly


原文链接

相关文章
|
8月前
|
机器学习/深度学习 算法
Keyphrase Extraction Using Deep Recurrent Neural Networks on Twitter论文解读
该论文针对Twitter网站的信息进行关键词提取,因为Twitter网站文章/对话长度受到限制,现有的方法通常效果会急剧下降。作者使用循环神经网络(recurrent neural network,RNN)来解决这一问题,相对于其他方法取得了更好的效果。
60 0
|
机器学习/深度学习 自然语言处理 算法
【文本分类】Convolutional Neural Networks for Sentence Classification
【文本分类】Convolutional Neural Networks for Sentence Classification
【文本分类】Convolutional Neural Networks for Sentence Classification
|
机器学习/深度学习 存储 人工智能
【文本分类】Recurrent Convolutional Neural Networks for Text Classification
【文本分类】Recurrent Convolutional Neural Networks for Text Classification
【文本分类】Recurrent Convolutional Neural Networks for Text Classification
|
机器学习/深度学习 大数据
【文本分类】Deep Pyramid Convolutional Neural Networks for Text Categorization
【文本分类】Deep Pyramid Convolutional Neural Networks for Text Categorization
107 0
【文本分类】Deep Pyramid Convolutional Neural Networks for Text Categorization
|
机器学习/深度学习 数据挖掘
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
|
机器学习/深度学习 数据建模
2_Recurrent Neural Networks (RNNs)循环神经网络 —Simple RNNs
2_Recurrent Neural Networks (RNNs)循环神经网络 —Simple RNNs
133 0
2_Recurrent Neural Networks (RNNs)循环神经网络 —Simple RNNs
|
机器学习/深度学习 传感器 文字识别
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读(三)
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
|
机器学习/深度学习 XML 缓存
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读(二)
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
|
机器学习/深度学习 存储 文字识别
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读(一)
Paper:《Generating Sequences With Recurrent Neural Networks》的翻译和解读
|
机器学习/深度学习 数据挖掘 计算机视觉
CV:翻译并解读2019《A Survey of the Recent Architectures of Deep Convolutional Neural Networks》第四章(一)
CV:翻译并解读2019《A Survey of the Recent Architectures of Deep Convolutional Neural Networks》第四章
CV:翻译并解读2019《A Survey of the Recent Architectures of Deep Convolutional Neural Networks》第四章(一)