赞
踩
点击上面蓝字关注阿黎
“文本分类是自然语言处理领域一个非常经典的任务,一般文本分类分为三种,基于规则的文本分类,基于机器学习的文本分类和基于深度学习的文本分类。本文我们重点关注基于深度学习的文本分类,并为大家介绍文本分类中非常经典的fasttext和textcnn。
”01 简介
文本分类是对给定文档,对文档进行归类的过程,常见的文本分类任务是垃圾邮件识别和情感分析。文本分类的处理大致分为文本预处理、文本特征提取、分类模型构建等。常见的文本分类方法一般分为三种,基于规则的文本分类,这种方法通常是基于词表;基于机器学习的文本分类,这种方法通常是将文章转换为向量然后采用传统的机器学习算法如SVM,GBDT等;第三种方法是基于深度学习的方法,关于文本分类的论文很多,这篇文章我们将为大家介绍几篇基于深度学习的文本分类的论文,由于篇幅有限本文将重点介绍fasttext和textcnn。
02 Bag of Tricks for Efficient Text Classification
论文链接:https://arxiv.org/pdf/1607.01759v2.pdf
源码:https://github.com/facebookresearch/fastText
推荐理由:传说中的fasttextfacebook推出的非常经典的文本分类模型,训练速度非常快,可以快速上手反复迭代哦
这是2016年由Facebook提出的一种比较迅速的词向量和文本分类方法,模型的结构类似于CBOW(连续词袋模型)都是由输入层,隐藏层,输出层组成,输出层的结果是一个特定的目标,例如预测下一个词汇之类的。但是fasttext和CBOW的区别是,如下图所示:
fasttext的输入不仅是句子中词语的one-hot编码还有N-gram的特征,N-gram的特征默认是3~6gram,为了提高模型的训练速度,N-gram的查找采用了hashing trick。这样做的好处是,one-hot编码是没有考虑到词语之间的顺序的,加入N-gram特征可以让模型学习到词语之间的连续特征。
另一个区别是为了提高softmax计算的速度,fasttext采用了hierarchal softmax,也就是计算从根节点到某个分类的路径上的所有节点的softmax的总和,这样对于分类类别非常多的情况下,可以将时间复杂度由O(kh)降低到O(hlog2(k)),这样也可以提高模型的训练速度。
为了验证fasttext的效果,作者在情感分类和Tag识别上分别进行了实验,情感分类的实验结果如下所示,加了bigram的fasttext的效果在AG数据集上超过了char-cnn,char-rnn, VDCNN的效果,在其他数据集上略逊于其他模型或者持平。总体来说效果还是很不错的。
但是在训练速度上fasttext可以说远超其他模型,当然这也是fasttext的迷人之处了,在效果和速度上取得了一个很好的balance。
03 Convolutional Neural Networks for Sentence Classification
论文链接:https://arxiv.org/pdf/1408.5882.pdf
源码:github很多
推荐理由:textcnn文本分类必读论文
谈到文本分类,TextCNN绝对是不能绕开的,本文作者将卷积应用到NLP任务中。模型的结构非常经典,输入层,卷积层,池化层和输出层。
1. 输入层是由文本的word embedding拼接的矩阵
2. 卷积层图中看着只有一层,但是实际上模型中有不同大小的卷积核,可以在不同的窗口大小下捕捉到文本的上下文信息。
3. 卷积层的结果拼接之后经过池化层,然后输入到全连接层,最后经过softmax可以得到文本分类的结果。
在以上结构上作者做了很多实验:
作者在7个数据集上进行实验,可以看出除了随机word embedding以外,预训练之后加载word embedding的效果都优于随机初始化。
04 A Sensitivity Analysis of (and Practitioners’ Guide to) Convolutional Neural Networks for Sentence Classification
论文链接:https://arxiv.org/pdf/1510.03820.pdf
推荐理由:这篇文章可以看成是对textcnn的补充,作者做了大量的实验来探索什么样的参数和训练方法可以使textcnn的效果达到最优
在CNN在文本分类上取得一系列不错的成绩之后,本文将聚焦在可能影响模型的效果的其他因素上面。
因此本文采用的模型是textCNN模型,模型的输入是word embedding的拼接,卷积层有6个大小分别是2,3,4的卷积核,然后对卷积层的输出结果进行筹划拼接之后接softmax层最后输出分类结果。
有了这个基础的CNN模型之后本文将重点放在影响模型效果的其他因素上,文中对embedding生成方式,卷积核的大小,feature map的数量,激活函数,池化方法,正则化等其他因素对模型的影响。
通过多种实验,作者得出结论,embedding的生成方式,卷积核的大小,feature map的数量对模型效果有比较重要的影响,1-max pooling的效果要优于其他方法而正则化对模型的影响比较少。
05 结语
以上就是文本分类中比较经典的三篇论文啦,fasttext因为其优越的性能,知道现在训练word embedding,文本分类中还是会看到他的身影。textcnn在NLP领域中应用了卷积层,可以提取到上下文的信息,而且模型结构非常简单清晰,效果也不错,也是文本分类入门的经典哈哈。以上就是本文分享的内容啦,下篇我们会分享文本分类中同样经典的textrnn和HAN希望大家保持关注~
可能还想看
分享 | 叮,情感分类从入门到放弃资料推荐来咯~论文推荐|模型量化,数据增强,关系抽取相关论文推荐推荐系统相关资料推荐Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。