深度学习文本分类综述

本文为论文《Deep Learning Based Text Classification: A Comprehensive Review》的阅读总结,可以在第7-8部分直接看结论。

  1. 写在前面
    文本分类是自然语言处理(NLP)领域中较为基础的问题,情感分类、QA问答、自然语言推理、阅读理解等任务都可以看作是文本分类。在这些文本分类任务中,只要有一定量的标注数据,常见的算法能够达到很好的效果,这使得文本分类不是什么难题。近年来,随着基于深度学习的语言模型不断迭代,在同等标注数据量的情况下,一些模型也总是优于另一些模型。下面我们一起来看一下论文《Deep Learning Based Text Classification: A Comprehensive Review》中提到的150种深度学习文本分类方法,及其在40个数据集上的表现。
  2. 文本分类算法的分类

2.1 总共分三类

  • 基于规则的方法
  • 基于机器学习的方法,也可以叫做“数据驱动的方法”
  • 混合方法

2.2 三类方法各自的特点

  • 基于规则的方法的特点(Rule-based methods)
    • 需要人工参与:需要人的知识来形成规则,人形成的规则通常比较准确
    • 维护方面:当规则变化或更新时,维护成本较高(需人工重新总结规则);当规则较多时,规则与其他规则之间可能出现冲突,难以维护
    • 扩展性方面:难于扩展到其他场景中,往往需要重新编写规则

  • 机器学习的方法,也可以叫做“数据驱动的方法”(Machine learning (data-driven) based methods)
    • 机器学习的方法又分为两类
      • 传统机器学习文本分类,比如svm、gbdt
        • 第一步:人工指定特征,比如n-gram,tfidf,故需要大量的数据分析和特征工程的工作量;另外,特征工程工作需结合业务场景进行选择,这也导致很难泛化到其他场景;因为做了特征工程,对于数据量较大的数据集来说,一般都可以训练
        • 第二步:将特征放入分类器训练
      • 基于深度学习的文本分类
        • 深度学习模型能够自动地学习一些数据与标签之间的内在联系,除标注工作外,不需要人工干预

    • 混合方法(Hybrid methods)
      • 这里混合的方法指的是attention,CNN,LSTM,BERT等模型的混合,即深度学习模型的混合
      • 二工业界普遍采用的混合方法,主要考虑到规则方法来做前置过滤和后置兜底,方法简单易行、消耗资源少;对于一些较为复杂、数据量大,使用深度学习的模型效果更佳,就形成了混合的方法

3. 常见的文本分类任务

  • 情感分类
  • 新闻分类
  • 话题分类
  • QA问答
  • 自然语言推理(NLI)

这里介绍一下QA问答和自然语言推理。

  • QA问答:分为抽取式和生成式。抽取式可以认为:基于用户的问题,在非结构化的文档中针对句子做文本分类,选择个别句子作为答案。生成式属于seq2seq的文本,不属于文本分类。
  • 自然语言推理:可以认为是文本分类问题,即一段文字的信息是否是从另一段文字推理得出的,即“Yes or No”的二分类问题。

4. 典型的文本分类方法

4.1 Feed-Forward Neural Networks

用word2vec或glove学习得到词向量,将一个句子的单词用对应的词向量表示,并求和或平均后,放进MLP、SVM、LR等模型中进行训练,类似的方法有DAN(deep average network)、fastText,这两个方法都能够在文本分类问题上取得很好效果。

4.2 RNN家族

传统的RNN网络以及继任者LSTM这里就不多说了,已经是面试题中的常规操作了。这里简单提几个变种模型。

  • Tree-LSTM模型
    • 文本信息中存在语法结构的,Tree-LSTM能够学习到语法结构中丰富的语义表示,且能够学习到序列文本中的较长依赖的问题

  • Multi-Timescale LSTM (MT-LSTM)模型
    • LSTM在处理较长文本时,效率很低,常见的做法是截断后再输入到LSTM中。MT-LSTM的出现使得该模型能够处理长文本,能够在不同的时间尺度上获取有价值的信息

  • Topic RNN
    • 能够整合语法依赖,也能够整合话题中的语义依赖

4.3 CNN家族

这里仅提及最早的dynamic CNN和家喻户晓的kim-CNN。

DCNN模型

kim-CNN模型

4.4 胶囊网络Capsule Neural Networks

为能够建模文本序列中的空间依赖关系以及实体位置关系,kim等人引入Capsule神经网络,取得了不错的效果。

4.5 注意力机制相关模型

这部分不再详述了

4.6 Memory-Augmented Networks

能够让模型学习到读取哪些内容,输出那些文字序列。

4.7 Transformers

太有名了,这部分不再详述了,包含XL-Net等模型

4.8 GNN 图神经网络

很久以前,textRank引入图论的方法解决一些关键词抽取、摘要等任务。文本序列中的语法和语义关系通常是一个图结构,为了建模这些图结构,一些研究人员引入了GNN。GNN能够利用句子间、文档间的结构关系,能够达到更好的效果。

4.9 Siamese network 孪生神经网络

不再详述,可参看:Siamese network 孪生神经网络--一个简单神奇的结构 - 知乎

4.10 混合的方法

这里混合的方法指的是上述深度学习模型之间的混合,比如cnn结合lstm,lstm结合attention模型等等

5. 数据集介绍

5.1 情感分类

  • Yelp、IMDb、Movie Review、SST、MPQA、AMazon、Aspect-Based Sentiment Analysis

5.2 新闻分类

  • AG News、20NewsGroups、SogouNews、Reuters news、BingNews、NYTimes、BBC、Google News

5.3 话题分类

  • DBpedia、Ohsumed、EUR-Lex、WOS、PubMed、PubMed 200k RCT、Irony (which is composed of annotated comments from the social news website reddit、Twitter dataset for topic classification of tweets、arXiv
    collection)

5.4 QA数据集

  • SQuAD、MS MARCO、TREC-QA、WikiQA、Quora、QA includes Situations With Adversarial Generations (SWAG)、 WikiQA、SelQA

5.5 NLI自然语言推理数据集

  • SNLI、Multi-NLI、SICK、MSRP、 Semantic Textual Similarity (STS)、RTE、SciTail

6. 评价方法

  • accuracy 和 error rate (二者加和等于1)
  • precision/recall/F-measure
  • Exact Match (EM)
    • 主要用于QA系统,用来衡量预测与真实回答之间的匹配程度,是SQuAD比赛中常用的评测方法
  • Mean Reciprocal Rank (MRR)
    • 主要用来评价排序的质量,query-document ranking 和 QA答案排序

7. 各方法的效果比较

使用上述数据集和评价方法的情况下,我们先总结一些基本结论

  • 基于深度学习的语言模型碾压了传统的文本分类方法,近年来随着基于深度学习的语言模型的发展,在很多任务上取得了5-10%的提升
  • BERT、RoBERTa、XLNet基本占据了各项任务的榜首,各大比赛的榜首也被这几个模型席卷,成为the-state-of-art的方法。

7.1 情感分类赛道

7.2 新闻分类及话题分类赛道

7.3 QA赛道

  • 阅读理解

  • wikiQA

7.4 自然语言推理赛道

8. 文本分类算法中存在的问题

  • 虽然在很多数据集上,基于深度学习的文本分类算法效果很好,但在一些复杂的文本分类场景中,仍然缺乏数据集,也无法验证当前模型的效果,比如复杂场景下QA、多步的文本推理、多语言文本分类等
  • 对知识进行建模:需要对文本信息中的知识进行建模,比如构建知识库、知识图谱,并基于这些知识进行分析及推理
  • 深度学习的可解释性:在很多真实的业务场景中,业务方更关心可解释性问题,然而目前的深度学习的可解释性不强
  • 更小、更高效的模型:随着bert等模型的出现,模型越来越大,训练消耗的资源也越来越多,有限资源下的训练时间也很长,工业界更需要较小、能够高效训练的模型
  • 小样本学习(zeor-shot和 few shot learning):当前深度学习的模型太依赖大量的标注数据了,是否能够引入知识,来解决标注样本较少的问题

9. 推荐两篇相关论文

Pre-trained Models for Natural Language Processing: A Survey​arxiv.org/pdf/2003.08271.pdf

Deep Learning Based Text Classification: A Comprehensive Review​arxiv.org/pdf/2004.03705

  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值