论文链接:https://arxiv.org/pdf/2002.03067.pdf

1

简介

一般来说,模型越深效果越好。但是同时,模型越深也更难训练——即无法收敛到训练集上一个好的值。

今天,我们给大家介绍被 ICML2020接收的一篇文章:基于类别描述的文本分类模型。

该模型的主要思想是:通过显式地引入对分类标签的描述提高文本分类的效果。我们提出了三种方法引入这种描述:

  • 模板法——对每个标签静态地指定一个描述;
  • 抽取法——对每个标签在输入文本中抽取一段文字作为描述;
  • 生成法——动态地根据输入的文本为每个标签生成一段描述。

使用这种技术,我们能够在单标签文本分类、多标签文本分类和多角度情感分析任务的10个数据集上取得显著更好的效果。

2

文本分类中的标签

文本分类是自然语言处理中非常重要的一项任务,它要求模型判断输入文本的类别,如情感、评分、类型等。

从分类数量上说,分为单标签分类和多标签分类,前者指每个文本只有一个标签类,后者指每个文本可以有多个标签类。

从任务类型讲,可以分为文档分类、情感分析等,前者指对整个输入文本分类(可以是单标签或多标签),后者指对文本的多种情感判断类别。

经典的文本分类方法是把待分类标签视为简单的下标。如当前的输入文本是“这个电影真好看”,需要分类的标签是{1:积极,0:消极},模型接受文本之后,输出的是0或者1,代表分类结果。

显然,用这种分类方法,模型完全无视了“积极”和“消极”的语义,对更复杂标签,这无疑是一种“语义浪费”。我们想要把标签提供的信息利用起来。

鉴于此,我们提出在输入文本的同时,也输入对标签本身的描述,比如牛津词典对“positive”的定义(描述)是:“full of hope and confidence, or giving cause for hope and confidence”。

把这个描述和原始文本拼接在一起,送入模型,模型输出一个概率值,代表当前文本具有该标签类的可能性。如此,我们就能充分利用标签本身提供的语义。

但是如果待分类文本的标签数很多(甚至上百个标签),一个一个为他们人工构造描述也是件麻烦的事情,况且人工构造的也不一定“准确”。

为此,我们期望模型能动态地、根据输入句子的不同自动构造出一个描述来。

因而,我们又提出了两种方法:抽取文本中的一段作为描述,和使用一个语言模型从头生成一段描述。这两种方法都可以使用强化学习得以实现。

这三种方法的一个例子如下。对当前输入的文本,我们现在要去判断它是否属于“car”这个标签,而“car”的模板描述、抽取描述和生成描述分别如图所示。

这种基于标签描述的方法有以下好处:

  • 融入了标签语义,而不仅仅是简单的下标,使得模型更好地进行分类;
  • 可以很轻松地进行多分类,只需要一个一个判断标签即可;
  • 得到标签描述具有一定的灵活性,不限于人工定义的标签描述。

用这种方法,我们能够在单标签分类数据集AGNews, 20news, DBPedia, Yahoo, YelpP,IMDB,多标签分类数据集Reuters,AAPD,和多方面情感分析数据集BeerAdvocate,TripAdvisor取得显著更好的效果。

3

CML 2020 | 显式引入对分类标签的描述,如何提高文本分类的效果?相关推荐

  1. hssfcell判断文本类型_ICML 2020 | 显式引入对分类标签的描述,如何提高文本分类的效果?...

    本文介绍的是ICML2020论文<Description Based Text Classification with Reinforcement Learning>,论文作者来自香侬科技 ...

  2. 文本基线怎样去掉_ICML 2020 | 基于类别描述的文本分类模型

    论文标题: Description Based Text Classification with Reinforcement Learning 论文作者: Duo Chai, Wei Wu, Qing ...

  3. ICML 2020 | 基于类别描述的文本分类模型

    论文标题: Description Based Text Classification with Reinforcement Learning 论文作者: Duo Chai, Wei Wu, Qing ...

  4. 【NLP傻瓜式教程】手把手带你RNN文本分类(附代码)

    文章来源于NewBeeNLP,作者kaiyuan 写在前面 这是NLP傻瓜式教程的第二篇----基于RNN的文本分类实现(Text RNN) 参考的的论文是来自2016年复旦大学IJCAI上的发表的关 ...

  5. AI:2020年6月22日北京智源大会演讲分享之09:40-10:10Mari 教授《基于显式上下文表征的语言处理》、10:10-10:40周明教授《多语言及多模态任务中的预训练模型》

    AI:2020年6月22日北京智源大会演讲分享之09:40-10:10Mari 教授<基于显式上下文表征的语言处理>.10:10-10:40周明教授<多语言及多模态任务中的预训练模型 ...

  6. VTK和ParaView中引入了显式结构化网格表达地质网格

    Introducing Explicit Structured Grids in VTK and ParaView - Kitware Blog 1.简介 新版本的vtk引入了适用于油藏角点网格模型的 ...

  7. 【生成模型】解读显式生成模型之完全可见置信网络FVBN

    上一期为大家说明了什么是极大似然法,以及如何使用极大似然法搭建生成模型,本期将为大家介绍第一个显式生成模型完全可见置信网络FVBN. 作者&编辑 | 小米粥 1 完全可见置信网络 在完全可见置 ...

  8. C语言隐式/显式类型转换 | C++四种强制类型转换、类的隐式转换、explicit

    文章目录 C语言类型转换 隐式类型转换 显式类型转换 C++ 强制类型转换 static_cast reinterpret_cast const_cast dynamic_cast 类的隐式类型转换 ...

  9. IJCAI 2020灭霸式拒稿,AI审稿是否更公平?

    来源 | 数据派 THU 编辑 | 文婧 出品 | AI科技大本营(ID:rgznai100) 一.IJCAI 2020灭霸式拒稿引众怒 随着AAAI 2020于2月7日作为2020年人工智能学界的第 ...

最新文章

  1. Codeforces Round #466 (Div. 2)
  2. 正则化技巧:标签平滑(Label Smoothing)以及在 PyTorch 中的实现
  3. 【SICP练习】9 练习1.15
  4. Android好用的第三方UI库
  5. hibernate c3p0 mysql_hibernate-使用c3p0数据库连接池,以及其它配置
  6. Java基础07 包
  7. php header
  8. C++五子棋(三)——判断鼠标有效点击
  9. php程序员可能不了解的编程细节
  10. C语言,C#语言求100-999内的水仙花数源程序
  11. 如何以10倍速加速Apache Xalan的XPath处理器
  12. 查看某个分区之前所有的数据_腾讯大数据面试真题汇总
  13. oracle中trim,ltrim,rtrim函数用法
  14. uniapp-小程序 调用阿里云OCR身份证识别
  15. 网络安全扫盲贴 史上最全网络安全问题解答
  16. 程序员到底要学什么?
  17. android3d动画的实现,Android 3D旋转动画库
  18. 将matlab代码转换成C代码
  19. linux运行360wifi,Linux(Ubuntu)下的无线网络卡上的小米和360wifi教程
  20. php图片指纹获取,指纹识别是通过什么等物理传感器获取指纹图像

热门文章

  1. MySQL断开SpringBoot_数据库连接中断-spring-springBoot
  2. java cursor_使用3.0驱动程序的Java中的Tailable Cursor示例?
  3. 计算机缺少log怎么解决方法,win10 计算机丢失logmanager怎么办_win10丢失log.dll文件的解决方法-win7之家...
  4. java阅读题_java 练习题带答案
  5. 计算机病毒洛,蓝狐动漫《百变机兽》中未完的战争,蓝毒兽原来是电脑病毒?...
  6. 常用start_Excel VBA 基础(02.7) - 常用函数 第二部分
  7. couldn't find libgnustl_shared.so
  8. LeanCloud数据更新不同步问题
  9. dw上按钮事件 pb_「React TS3 专题」使用 TS 的方式在类组件里定义事件
  10. Ubuntu install of ROS Melodic