深度学习文本分类文献综述

  • 摘要
  • 介绍
  • 1. 文本分类任务
  • 2.文本分类中的深度模型
    • 2.1 Feed-Forward Neural Networks
    • 2.2 RNN-Based Models
    • 2.3 CNN-Based Models
    • 2.4 Capsule Neural Networks
    • 2.5 Models with Attention Mechanism
    • 2.6 Memory-Augmented Networks
    • 2.7 Transformers
    • 2.8 Graph Neural Networks
    • 2.9 Siamese Neural Networks
    • 2.10 Hybrid Models
    • 2.11 Beyond Supervised Learning
  • 3. 挑战与机遇
    • New Datasets for More Challenging Tasks.
    • Modeling Commonsense Knowledge.
    • Interpretable Deep Learning Models.
    • Memory Efficient Models.
    • Few-Shot and Zero-Shot Learning.
  • REFERENCES

原文链接:https://arxiv.org/pdf/2004.03705.pdf

摘要

在各种文本分类任务中,基于深度学习的模型已经超越了经典的基于机器学习的方法,包括情感分析、新闻分类、问答和自然语言推理。在本次研究工作中,我们详细回顾了150多个基于深度学习的文本分类模型,并讨论了它们的技术贡献、相似性以及各自的优势。我们还总结了40多个广泛用于文本分类的流行数据集。最后,我们定量分析了不同深度学习模型在基准数据集上的表现,并讨论了未来的研究方向。

介绍

文本分类是自然语言处理(NLP)中的一个经典问题,其目的是为句子、查询、段落和文档等文本单元分配标签或标记。它有着广泛的应用,包括问答、垃圾邮件检测、情感分析、新闻分类、用户意图分类、内容调节等。文本数据可以来自不同的来源,例如web数据、电子邮件、聊天、社交媒体、机票、保险索赔、用户评论、客户服务的问题和答案等等。文本是一个极其丰富的信息源,但由于其非结构化的性质,从中提取有效信息是一个非常耗时的过程。
文本分类可以通过手动注释或自动标记来执行。随着工业应用中文本数据规模的不断扩大,文本自动分类变得越来越重要。自动文本分类的方法可分为三类:

  • 基于规则的方法(Rule-based methods);
  • 基于机器学习(数据驱动)的方法(Machine learning based
    methods);
  • 混合方法(Hybrid methods)。

基于规则的方法使用一组预定义的规则将文本分类为不同的类别。例如,任何带有“football”、“basketball”或“basketball”字样的文档都会被指定“sport”标签。这些方法需要对领域有深入的了解,并且系统很难维护。另一方面,基于机器学习的方法学习根据过去对数据的观察进行分类。机器学习算法利用预先标注的样本作为训练数据,学习文本片段与其标注之间的内在关联。因此,基于机器学习的方法能够检测数据中隐藏的模式,具有更高的可伸缩性,可以应用于各种任务。这与基于规则的方法不同,后者需要为不同的任务设置不同的规则。顾名思义,混合方法使用基于规则和机器学习方法的组合来进行预测。
机器学习模型近年来受到了广泛的关注。大多数经典的基于机器学习的模型遵循两步过程,第一步从文档(或任何其他文本单元)中提取一些手工制作的特征,第二步将这些特征输入分类器进行预测。一些流行的手工制作功能包括Bag of Words (BoW)及其扩展。常用的分类算法包括朴素贝叶斯、支持向量机(SVM)、隐马尔可夫模型(HMM)、梯度增强树和随机森林。两步方法有几个局限性。例如,依赖手工制作的特性需要繁琐的特性工程和分析来获得良好的性能。此外,特征设计对领域知识的强烈依赖性使得该方法很难推广到新的任务中。最后,这些模型不能充分利用大量的训练数据,因为特征(或特征模板)是预定义的。
从2012年开始,一个基于深度学习的模型AlexNet[1]在ImageNet的竞赛中大获全胜。从那时起,深度学习模型被广泛应用于计算机视觉和自然语言处理的任务中,提高了技术水平[2–5]。这些模型试图以端到端(End to End)的方式学习特征表示和执行分类(或回归)。它们不仅有能力发现数据中隐藏的模式,而且在不同的应用程序之间更容易转移。毫不奇怪,近年来这些模型正成为各种文本分类任务的主流框架。
在本次研究中,我们回顾了过去六年中为各种文本分类任务开发的150多种深度学习模型,包括情感分析、新闻分类、主题分类、问答(QA)和自然语言推理(NLI)。我们根据这些工作的神经网络结构将其分为几个类别,例如基于递归神经网络(RNN)、卷积神经网络(CNN)、注意机制(Attention)、Transformers、胶囊网络(Capsule Nets)等的模型。本文的主要内容可以总结如下:

  • 详细概述了超过150个深度学习模型提出的文本分类方法;
  • 回顾了40多个流行的文本分类数据集;
  • 在16个基准数据集上对一组选定的深度学习模型的性能进行了定量分析;
  • 讨论了目前文本分类问题的挑战和未来方向。

1. 文本分类任务

本节简要介绍了本文讨论的不同文本分类任务:情感分析、新闻分类、主题分析、问答和自然语言推理。
情感分析Sentiment Analysis. 情感分析是文本分类的一个热门分支,旨在分析文本数据(如产品评论、电影评论和推特)中人们的观点,并提取他们的情感倾向。情感分类可以是二元问题,也可以是多类问题。二元情感分析是将文本分为正类和负类,而多类情感分析则侧重于将数据分为细粒度标签或多级强度。
新闻分类News Categorization. 新闻内容是对人们产生重大影响的最重要的信息来源之一。新闻分类系统可以帮助用户实时获取感兴趣的信息。识别新兴新闻主题和基于用户兴趣推荐相关新闻是新闻分类的两个主要应用。
主题分析Topic Analysis. 主题分析试图通过识别文本的主题来自动地从文本中获取意义。主题分类是主题分析的重要组成部分。主题分类的目的是为每个文档分配一个或多个主题,以便于分析。
问答Question Answering (QA). QA系统有两种类型:抽取式和生成式。抽取式QA可以看作是文本分类的一个特例。给定一个问题和一组候选答案(例如,文献[6]中给定文档中的文本跨度),我们需要将每个候选答案分类为正确与否。生成性QA学习从零开始生成答案(例如使用Sequence-to-Sequence模型)。除非另有说明,本文讨论的质量保证任务是抽取式质量保证。
自然语言推理Natural language inference (NLI). 自然语言推理也被称为识别文本蕴涵(RTE),预测一个文本的意义是否可以从另一个文本中推断出来。特别是,系统需要为每一对文本单元分配一个标签,例如蕴涵、矛盾和中性[7]。释义是NLI的一种广义形式,也称为文本对比较。这项任务是衡量一个句子对的语义相似性,以确定一个句子是否是另一个句子的转述。

2.文本分类中的深度模型

在本节中,我们将回顾针对各种文本分类问题提出的150多个深度学习框架。为了更容易理解,我们根据这些模型的主要架构贡献,将其分为以下几类:

  • 基于前馈网络的模型(第2.1节)。
  • 基于RNN的模型,将文本视为一个单词序列,旨在捕获单词相关性和文本结构(第2.2节)。
  • 基于CNN的模型,用于识别文本中的模式,如关键短语,以进行分类(第2.3节)。
    Capsule网络,解决CNN汇集操作所造成的信息丢失问题,最近已应用于文本分类(第2.4节)。
  • 注意机制,有效识别文本中的相关词,并已成为开发深度学习模型的有用工具(第2.5节)。
  • 记忆增强网络(Memory-augmented networks),将神经网络与外部记忆形式相结合,模型可以读取和写入(第2.6节)。
  • Transformers,它允许比RNN更多的并行化,使得使用GPU集群高效(预)训练非常大的语言模型成为可能(第2.7节)。
  • 图神经网络,用于捕捉自然语言的内部图结构,如句法和语义分析树(第2.8节)。
  • Siamese Neural Networks,专为文本匹配而设计,是文本分类的特例(第2.9节)。
  • 混合模型,将注意力、RNN、CNN等结合起来,以捕捉句子和文档的局部和全局特征(第2.10节)。

2.1 Feed-Forward Neural Networks

前馈网络是文本表示的最简单的深度学习模型之一。然而,它们在许多文本分类基准上取得了很高的准确率。这些模型将文本视为一袋单词。对于每个单词,他们使用嵌入模型(如word2vec[8]或Glove[9])学习向量表示,将嵌入的向量和平均值作为文本的表示,将其通过一个或多个前馈层,称为多层感知器(MLP),然后使用逻辑回归、朴素贝叶斯或SVM等分类器对最后一层的表示进行分类[10]。这些模型的一个例子是深度平均网络(DAN)[10],其结构如图1所示。尽管它很简单,但DAN优于其他更复杂的模型,这些模型被设计用来明确地学习文本的组成性。例如,DAN在高语法方差的数据集上优于语法模型。Joulin等人[11]提出了一种简单有效的文本分类器fastText。与DAN一样,fastText将文本视为一袋单词。与DAN不同,fastText使用n-grams作为附加功能来捕获本地词序信息。这在实践中证明是非常有效的,同时获得了与显式使用词序的方法相当的结果[12]。

Fig. 1. The architecture of the Deep Average Network (DAN) [10]
Le和Mikolov[13]提出了doc2vec,它使用一种无监督算法来学习可变长度文本片段的定长特征表示,例如句子、段落和文档。如图2所示,doc2vec的架构类似于CBOW模型的架构[8,14]。唯一的区别是通过矩阵

深度学习文本分类文献综述(翻译自Deep Learning Based Text Classification: A Comprehensive Review)相关推荐

  1. 综述:基于深度学习的文本分类 --《Deep Learning Based Text Classification: A Comprehensive Review》总结(一)

    文章目录 综述:基于深度学习的文本分类 <Deep Learning Based Text Classification: A Comprehensive Review>论文总结(一) 总 ...

  2. 传统文本分类和基于深度学习文本分类

    用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践 近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文题目便是文本分类问题,趁此机会总 ...

  3. R使用LSTM模型构建深度学习文本分类模型(Quora Insincere Questions Classification)

    R使用LSTM模型构建深度学习文本分类模型(Quora Insincere Questions Classification) Long Short Term 网络-- 一般就叫做 LSTM --是一 ...

  4. 【NLP】深度学习文本分类|模型代码技巧

    文本分类是NLP的必备入门任务,在搜索.推荐.对话等场景中随处可见,并有情感分析.新闻分类.标签分类等成熟的研究分支和数据集. 本文主要介绍深度学习文本分类的常用模型原理.优缺点以及技巧,是「NLP入 ...

  5. 基于逻辑回归,支持向量机,朴素贝叶斯以及简单深度学习文本分类方法(BiLSTM、CNN)实现的中文情感分析,含数据集可直接运行

    基于逻辑回归,支持向量机,朴素贝叶斯以及简单深度学习文本分类方法(BiLSTM.CNN)实现的中文情感分析,含数据集可直接运行 完整代码下载地址:中文情感分析 中文情感分析 本项目旨在通过一个中文情感 ...

  6. 深度学习系列 -- 第二门课 改善深层神经网络:超参数调试、正则化以及优化(一):深度学习的实践层面(Practical aspects of Deep Learning)

    目录 一.深度学习的实践层面(Practical aspects of Deep Learning) 1 训练,验证,测试集(Train / Dev / Test sets) 2 偏差,方差(Bias ...

  7. 【用深度学习搜索相似服饰】《Using Deep Learning to Find Similar Dresses》by Luis Mey

    [用深度学习搜索相似服饰]<Using Deep Learning to Find Similar Dresses>by Luis Mey

  8. 【综述翻译】Deep Learning for Video Game Playing

    深度强化学习实验室 原文来源:https://arxiv.org/pdf/1708.07902.pdf 翻译作者:梁天新博士 编辑:DeepRL 在本文中,我们将回顾最近的Deep Learning在 ...

  9. 五年12篇顶会论文综述!一文读懂深度学习文本分类方法

    作者 | 何从庆 来源 | AI算法之心(ID:AIHeartForYou) 最近有很多小伙伴想了解深度学习在文本分类的发展,因此,笔者整理最近几年比较经典的深度文本分类方法,希望帮助小伙伴们了解深度 ...

最新文章

  1. 向 Web 开发人员推荐35款 JavaScript 图形图表库
  2. 机器学习如何计算特征的重要性_机器学习之特征缩放
  3. Caffe官方教程翻译(1):LeNet MNIST Tutorial
  4. CVPR19 基于图卷积网络的多标签图像识别模型 论文笔记
  5. [Linux]ARP协议
  6. 前端学习(3142):react-hello-react之父组件render
  7. 2019游戏 f1_2019年F1中国大奖赛激情开跑,这款手游带你体验真实F1的魅力
  8. 基于matlab 的燃油喷雾图像处理方法,基于MATLAB的燃油喷雾图像处理方法.doc
  9. 华数联手海信升级互联网电视平台
  10. java包名和类名可以一样吗_Java入门第三课:Java基本语法
  11. springboot中日志配置
  12. numeric转换varchar_将数据类型varchar转换为numeric时选择失败
  13. 中日文字编码转换_全网最全面、全详细的编码、解码知识!!!
  14. ajax同步时,loading加载不显示(谷歌浏览器)
  15. (转)等保二级三级差异纵向对比表
  16. s7-1200PLC和第三方扫码枪走以太网通信
  17. Linux面试常考(面经总结)
  18. PDF批量拆分、合并、书签提取、书签写入小工具
  19. 梦想经不起等待 -- 美文转载
  20. 实现虚拟机和主机之间的文件传输

热门文章

  1. 如何对企业内部进行知识内容有效性管理
  2. Need Review
  3. Mule代理Post空间查询点位过多导致查询不出来的问题
  4. Error while executing: npm ERR! D:\Program Files\Git\cmd\git.EXE ls-remote -h -t git://github.com/ad
  5. 鸟群从他身上钻过的那人
  6. Ubuntu安装MSF
  7. 结构体定义变量及初始化
  8. Android MVP +Retrofit+RxJava
  9. 论文阅读: B4: Experience with a Globally-Deployed Software Defined WAN
  10. ARM LDR和ADR指令