深度学习用于文本分类的论文及代码集锦

本文汇总了多篇关于使用深度学习进行文本分类的论文,包括CNN在句子分类中的应用,动态CNN的句子语义建模,字符级CNN文本分类,分层注意力网络的文档分类,循环卷积神经网络,非常深的卷积网络,以及浅宽卷积网络对文本分类的效果。每篇论文都有其独特的网络结构和实验结果,提供了相关的开源代码实现。

[1] Convolutional Neural Networks for Sentence Classification

Yoon Kim

New York University

EMNLP 2014

http://www.aclweb.org/anthology/D14-1181

这篇文章主要利用CNN基于预训练好的词向量中对句子进行分类。作者发现利用微调来学习任务相关的词向量可以提升模型效果。

网络结构示例如下

640?wx_fmt=png

各个数据集统计信息如下

640?wx_fmt=png

各模型结果对比如下

a640?wx_fmt=png

通道对模型结果影响示例如下

640?wx_fmt=png

代码地址

https://github.com/yoonkim/CNN_sentence (Theano)

https://github.com/dennybritz/cnn-text-classification-tf (Tensorflow)

https://github.com/harvardnlp/sent-conv-torch (Torch)

相关研究组

http://nlp.seas.harvard.edu/ (哈佛大学)


              smiley_12.png我是分割线smiley_12.png


[2] A Convolutional Neural Network for Modelling Sentences

Nal Kalchbrenner

University of Oxford

ACL 2014

http://www.aclweb.org/anthology/P14-1062

这篇文章提出一种动态卷积神经网络,并将其用于句子中的语义建模。该网络中的池化算子为动态k最大池化法,该算子用于线性序列。本文中的网络可以处理变长的句子,并对句子推理出特征图,该特征图不仅可以捕获短距离关系,也可以捕获长距离关系。另外,该网络不依赖解析树,可以用于任何种类的语言。

网络结构示例如下

640?wx_fmt=png

宽窄卷积对比如下

640?wx_fmt=png

整体结构如下

640?wx_fmt=png

各模型结果对比如下

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

模型结果示例如下

640?wx_fmt=png

代码地址

https://github.com/FredericGodin/DynamicCNN (Theano/Lasagne)


              smiley_12.png我是分割线smiley_12.png


[3] Character-level Convolutional Networks for Text Classification

Xiang Zhang et al.

NIPS 2015

https://papers.nips.cc/paper/5782-character-level-convolutional-networks-for-text-classification.pdf

这篇文章主要讨论字符级别的卷积神经网络。

模型结构示例如下

640?wx_fmt=png

卷积层示例如下

640?wx_fmt=png

全连接层示例如下

640?wx_fmt=png

数据集统计信息如下

640?wx_fmt=png

各模型结果对比如下

640?wx_fmt=png

640?wx_fmt=png

代码地址

https://github.com/zhangxiangxiao/Crepe (Torch)

https://github.com/mhjabreel/CharCNN (Tensorflow)

https://github.com/srviest/char-cnn-text-classification-pytorch (PyTorch)


              smiley_12.png我是分割线smiley_12.png


[4] Hierarchical Attention Networks for Document Classification

Zichao Yang et al.

Carnegie Mellon University, Microsoft Research

NAACL-HLT 2016

http://www.aclweb.org/anthology/N16-1174

这篇文章提出分层注意力网络用于文档分类。该模型的分层结构可以对应到文档的分层结构;该网络的注意力机制包含单词级别和句子级别的两种注意力机制,这有助于发现文档中的重要内容。

分层注意力网络结构如下

640?wx_fmt=png

数据集统计信息如下

640?wx_fmt=png

各方法结果对比如下

640?wx_fmt=png

代码地址

https://github.com/richliao/textClassifier (keras)

https://github.com/ematvey/hierarchical-attention-networks (Tensorflow)

https://github.com/EdGENetworks/attention-networks-for-classification (Pytorch)


              smiley_12.png我是分割线smiley_12.png


[5] Recurrent Convolutional Neural Networks for Text Classification

Siwei Lai et al.

Chinese Academy of Sciences

AAAI 2015

https://www.aaai.org/ocs/index.php/AAAI/AAAI15/paper/viewFile/9745/9552

这篇文章提出循环卷积神经网络用于文本分类,无需人工设计特征。循环结构用于捕捉上下文信息,该结构相对传统基于窗口的神经网络方法可以减少噪声。该文中利用最大值池化法来自动选择文本中比较重要的词,使其对文本分类作用较大。

网络结构示例如下

640?wx_fmt=png

数据集统计信息如下

640?wx_fmt=png

各方法效果对比如下

640?wx_fmt=png

上下文窗口大小影响示例如下

640?wx_fmt=png

代码地址

https://github.com/airalcorn2/Recurrent-Convolutional-Neural-Network-Text-Classifier (Keras) 


              smiley_12.png我是分割线smiley_12.png


[6] Very Deep Convolutional Networks for Text Classification

Alexis Conneau et al.

Facebook AI Research

ACL 2017

http://www.aclweb.org/anthology/E17-1104

这篇文章利用VDCNN在字符级别上处理文本,并且卷积和池化算子都比较小,即所依赖的单元数较少。该文中利用了29个卷积层。

样本及标签示例如下

640?wx_fmt=png

网络结构如下

640?wx_fmt=png

其中卷积块结构如下

640?wx_fmt=png

各卷积块对应的卷积层数如下

640?wx_fmt=png

数据集统计信息如下

640?wx_fmt=png

各方法效果对比如下

640?wx_fmt=png

代码地址

https://github.com/geduo15/Very-Deep-Convolutional-Networks-for-Natural-Language-Processing-in-tensorflow (TensorFlow)

https://github.com/zonetrooper32/VDCNN (TensorFlow keras)


              smiley_12.png我是分割线smiley_12.png


[7] Do Convolutional Networks Need to Be Deep for Text Classification?

Hoa T. Le et al.

LORIA

AAAI 2018

https://aaai.org/ocs/index.php/WS/AAAIW18/paper/viewFile/16578/15542

这篇文章讨论了文本分类中卷积网络的深度的重要性。

浅宽卷积神经网络示例

640?wx_fmt=png

字符级别的DenseNet示例如下

640?wx_fmt=png

Dense Block 示例如下

640?wx_fmt=png

各模型效果对比如下

640?wx_fmt=png

数据集统计信息如下

640?wx_fmt=png

代码地址

https://github.com/lethienhoa/Very-Deep-Convolutional-Networks-for-Natural-Language-Processing  (Tensorflow)


                 smiley_12.png我是分割线smiley_12.png


为方便大家交流,已开通以下几个群

  • 自然语言处理交流群

  • 计算机视觉交流群

  • 推荐系统交流群

  • 广告算法交流群

  • 自动驾驶交流群

  • 语音识别交流群

  • 其他推荐的群(暂未开通)

欢迎感兴趣的朋友加入,入群方式:

关注公众号之后在后台发送"入群"或"加群",小编会把您拉进相应的群,谢谢



                smiley_12.png我是分割线smiley_12.png


可以通过以下方式关注

(长按->识别图中二维码->关注)

640?wx_fmt=png

本公众号(微信号:mlanddlanddm)专注于机器学习(主要包含但不限于深度学习)相关知识分享,其中涉及自然语言处理、推荐系统以及图像处理前沿论文等,欢迎大家关注交流


               smiley_12.png我是分割线smiley_12.png


您可能感兴趣

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值