©作者 | 刘兴贤

学校 | 北京邮电大学硕士生

研究方向 | 自然语言处理

前两天看到刘知远老师组在 arxiv 上放出来了 Prompt-tuning 相关的新工作,这篇文章是将外部知识融入 Prompt-tuning 过程的一个尝试,引起了我的兴趣。于是,我在拜读了这篇文章之后,写成本文做一个简单总结。

论文标题:

Knowledgeable Prompt-tuning: Incorporating Knowledge into Prompt Verbalizer for Text Classification

论文作者:

Shengding Hu, Ning Ding, Huadong Wang, Zhiyuan Liu, Juanzi Li, Maosong Sun

论文链接:

https://arxiv.org/abs/2108.02035

Main Idea & Motivation

之前的 Prompt-tuning 方法可被用于文本分类任务,具体方式是通过构建标签词表,将分类问题转化为一个预测和标签相关词的问题。因此,这样的问题可以构建一个含有 [MASK] 的模板,然后让 MLM(掩码语言模型)去预测 [MASK] 位置的单词。至此,分类任务被转化为了一个掩码语言建模问题。

下面给出一个例子,当我们要对一个句子进行分类时,可以尝试构建下面的模板:

A [MASK] question: x

比如 MLM 预测出在 [MASK] 位置概率最高的词是 science,那该句可以被分类为 SCIENCE 类别。

然而我们很快就认识到,MLM 在 [MASK] 位置可以预测出的单词是很多的,然而类别数只有特定数量的,因此该问题很重要的一个部分是如何构建一个单词表到类别标签的映射。这个映射能让 MLM 在预测到类别标签的相关词时,就可以被分到指定类别去。

这样的一个映射,通常是由人来手工编辑或使用梯度下降搜索。但显然这样会带来覆盖范围不全导致的高偏差和高方差。知识库的组织结构,天然的带有范围关系,在知识库的图结构中,相关联的实体会有边相连,不相关的实体可能要经过很多跳才能找到关联,或无关联。因此如果能将外部的知识库信息融入,构建一个映射器(本文称语言表达器),就可以一定程度上避免手工构造和梯度下降带来的高偏差和高方差问题。

Abstract

构建任务特定的 Prompt,去调整预训练语言模型 (PLM) 是文本分类任务上一种很有前途的方法。之前的研究表明,在低数据场景中,Prompt-tuning 比具有额外分类器的 Fine-tuning 方法具有显著优势。

Prompt-tuning 的核心思想是在输入中插入文本片段(即模板),并将分类问题转化为掩码语言建模问题,其中关键的一步是使用一个语言表达器,在 word space 和 label space 之间构建一个映射。

语言表达器通常是手工构建或通过梯度下降搜索,这可能缺乏覆盖范围并给结果带来相当大的偏差和高方差。在这项工作中,本文专注于将外部知识整合到语言表达器中,形成知识融合的 Prompt-tuning(KPT),以改进和稳定 Prompt-tuning。具体来说,本文使用外部知识库 (KB) 扩展了语言表达器的针对于分类标签的词空间,并在使用扩展的标签词空间进行预测之前使用 PLM 细化了扩展的标签词空间。零样本和少样本文本分类任务的大量实验证明了 KPT 的有效性。

Method

KPT 旨在构建一个语言表达器,在单词空间和分类标签空间做一个映射。

因此 KPT 包含以下三个步骤:

  • 标签词的扩展

  • 扩展标签词的去噪

  • 语言表达器的使用

下图展示了 KPT 的整体流程:

▲ KPT的结构示意图,包含语言表示器的构建、修正、使用三个阶段

3.1 标签词的扩展

实体概念相关的知识图谱 ConceptNet (Speer et al., 2017) 和 WordNet (Pedersen et al., 2004),甚至单纯的单词嵌入方法都能作为外部的知识来源,因为事实上我们只需要成对的单词之间的关联程度。其中知识库中实体间的边上含有权重,可以被用来表示相关性。因此,本文将原始的标签词作为锚节点,相关性分数大于阈值的节点,都可被作为标签词的扩展词。

比如对于二元情感分类,扩展出的情感相关词如下图所示:

3.2 扩展标签词的去噪

之前有提到,Prompt-tuning 的主要应用场景是在数据不充足的情况下,设计提示然后将剩下的工作交给 PLM,Prompt-tuning 生效的其中一个原因是利用提示,激发出 PLM 在预训练阶段学习到的相关知识或先验分布,因此在数据不充足的情况下,这是一种能够更好地利用预训练模型学习到海量知识的方式。

因此本文主要集中在数据不充分情况下的扩展标签词的去噪,也即无标注数据 zero-shot 场景和少量标注数据 few-shot 场景。

3.2.1 对于 zero-shot 场景

需要解决三个问题:

1. 知识库中得到的扩展词,并不在 PLM 的单词空间中(out-of-vocabulary);

2. PLM 中的稀有词,概率预测往往不准确;

3. 标签词的先验分布具有巨大的偏差。

对于第 1 个问题:

本文简单的将词拆分成逐 token 的多个部分,并用 PLM 逐 token 预测的平均概率,作为整个词的概率。

对于第 2 个问题:

对于一些稀有词,PLM 预测的概率不准确(其实是不稳定),且有偏差,因此,最好在扩展单词表中删去这些稀有词。然而,我们应该如何确定哪些是稀有词呢?本文使用 MLM 去预测句子上下文中这个单词的概率。

也即我们要预测的是下面这个概率的期望:

然而我们无法直接得到这个期望,只能用在上下文中预测的频率去估计,也即,使用这样一个近似:

也即在上下文中用 PLM 去预测这个单词,有人可能会问,这不是zero-shot嘛,哪里来的数据上下文让你训练呢?

虽然是 zero-shot,我们不能有标注数据,但无标注数据还是可以用的嘛!这个单词概率的先验,就是从这些无标注数据中得到。

最后我们删去那些概率低于阈值的扩展词。

对于第 3 个问题:

无论输入句子的标签如何,但有一些标签词天然地更不可能被预测到,这是由于标签词的先验分布具有很大差异。

本文的解决方案,仍然是利用标签词的上下文先验分布来校准预测的分布。

也即:

这个先验分布仍然和 2 一样,是使用少量无标注数据得到的。

3.2.2 对于 few-shot 场景

在 few-shot 中,因为有少量的标注数据,所以去噪更容易。

对于每个标签词,我们为其分配一个可学习的权重参数,然后再将其归一化,得到:

在 few-shot 情况下,我们不需要进行校准,因为训练过程中这个参数会被训练到所需的范围。

3.3 语言表达器的使用

3.3.1 在 zero-shot 情况下

我们简单地认为扩展词中每个词对于预测标签的贡献相同,因此我们对其进行简单平均,并用预测分数的均值作为该标签的预测分数,最后取出预测分数最大的类别,作为最后的结果。

其中:

Experiment

本文使用的预训练语言模型是 RoBERTa(large)。

每个数据集都手工设置了 4 个不同的模板,如对于,IMDB 数据集:

然后对比实验包括:

  • Prompt-tuning (PT)

  • Prompt-tuning + Contextualized Calibration(PT + CC)

  • Fine-tuning (FT)

其中第二个是传统的 Prompt-tuning 加上本文使用的上下文校准。

第三个则是简单的微调。

实验结果如下图所示:

▲ zero-shot实验结果

▲ few-shot实验结果

KPT 方法的其中一个显著优点是,由于引入了外部知识,因此生成的标签扩展词,是多粒度、多角度的。下图展示了一个示例:

可以看到,对于政治主题(左),KPT 方法生成了“diplomatic”(外交), “republic”(共和),“parliament”(议会)等多个主题的扩展词,证明了这一观点。

Conclusion

本文中提出了 KPT,它使用外部知识库在 Prompt-tuning 过程中扩展了语言表达器。为了更好地利用知识库,我们为语言表达器提出了一些改进方法。实验显示了 KPT 在 zero-shot 场景和 few-shot 场景中的潜力。

未来的工作中,仍然有与本文研究相关的开放性问题。

1. 在语言表达器中选择信息丰富的标签词的复杂方法;

2. 在模板构建和语言表达器设计方面结合知识库和 Prompt-tuning 的更好方法;

3. 将外部知识结合到文本生成等其他任务的 Prompt-tuning 方法。我们期待这个方向有更多新颖的工作。

特别鸣谢

感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。

更多阅读

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

???? 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

???? 投稿通道:

• 投稿邮箱:hr@paperweekly.site

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

△长按添加PaperWeekly小编

????

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

清华大学刘知远组:文本分类任务中,将知识融入Prompt-tuning过程相关推荐

  1. 【NLP】如何在文本分类任务中Fine-Tune BERT

    问 题 BERT在许多自然语言理解(NLU)任务中取得了惊人的成果,但它的潜力还有待充分挖掘.目前很少有如何能进一步提高BERT性能的研究,因此,如何通过一些技巧和方法最大限度的提升BERT在文本分类 ...

  2. 从文本分类问题中的特征词选择算法追踪如何将数学知识,数学理论迁移到实际工程中去...

    博文转载请注明作者和出处(作者:finallyliuyu :出处博客园) 附:<卡方特征词选择算法> <DF特征词选择算法> 一.数学背景 将数学知识.数学理论以及数学思想迁移 ...

  3. php文本域输出_如何在文本分类任务中Fine-Tune BERT

    问 题 BERT在许多自然语言理解(NLU)任务中取得了惊人的成果,但它的潜力还有待充分挖掘.目前很少有如何能进一步提高BERT性能的研究,因此,如何通过一些技巧和方法最大限度的提升BERT在文本分类 ...

  4. ACL 2020 | 消除文本分类问题中歧视现象的研究

    ©PaperWeekly 原创 · 作者|张冠华.白冰 研究机构|哈工大/腾讯 研究方向|自然语言处理 导语 文本分类问题是自然语言处理中的一个基础问题,旨在根据语义预测一句话的标签.常见的文本分类任 ...

  5. PaddleNLP基于ERNIR3.0文本分类以中医疗搜索检索词意图分类(KUAKE-QIC)为例【多分类(单标签)】

    相关项目链接: Paddlenlp之UIE模型实战实体抽取任务[打车数据.快递单] Paddlenlp之UIE分类模型[以情感倾向分析新闻分类为例]含智能标注方案) 应用实践:分类模型大集成者[Pad ...

  6. 文本分类模型中的“蒸”功夫

    本文首发于:行者AI 2018年Bert的横空出世给自然语言处理带来了巨大的突破,Bert及其衍生模型在多个文本处理下游任务中达到了SOTA的结果.但是这样的提升是有一定代价的,其中之一就是计算量的大 ...

  7. NLP 模型“解语如神”的诀窍:在文本分类模型中注入外部词典

    一. 引言 现实世界的文本表述如恒河沙数,以惊人的速度变换着,人工智能(AI)在快速识别形形色色的文本之前,必须经过充足的训练数据洗礼.然而,面对复杂多变的文本表述,NLP 模型往往无法从有限的训练数 ...

  8. 清华大学刘知远组:基于Prompt Tuning对低维本征任务子空间进行探索

    ©作者 | 曾伟豪 学校 | 北京邮电大学 研究方向 | 对话摘要生成 论文标题: Exploring Low-dimensional Intrinsic Task Subspace via Prom ...

  9. Linux中如何理解组的分类,Linux中用户和组管理

    一.用户分类 1.管理员和普通用户 1️⃣:管理员   --    用户ID:0 2️⃣:普通用户 --   用户ID:1-65535 2.普通用户又分为系统用户和登陆用户 1️⃣:系统用户 -- 用 ...

最新文章

  1. 1081 Rational Sum 有理数类型题处理 需再做
  2. 低速自动驾驶车辆的定位与建图
  3. mysql的基础命令
  4. BGP——本地优先级选路+BGP路由水平分割机制(讲解+配置命令)
  5. Python_Day10_进程、线程、协程
  6. 游戏筑基开发之测试篇2(C语言)
  7. c语言命名规则 [转载]
  8. springboot项目自定义注解实现的多数据源切换--亲测有效
  9. RegExp-1 【转义符号与字符、正则基础、修饰/元字符】
  10. 架构之美第一章-如何看到一滴水的美丽
  11. epub电子书--目录结构介绍
  12. 支持android11的画质修改器,pubgtool画质修改器
  13. 悉尼大学理学院计算机科学,【悉尼大学理学院专业】 - 澳大利亚留学联盟
  14. eclipse快捷方式打不开解决方法
  15. tw8836flash制作
  16. Nature综述:宏基因组时代的病毒分类
  17. html div设置有空隙,如何解决img标签下面的小空隙
  18. MySQL Shell 安装与基本使用
  19. JAVA面试题《下》
  20. python seo cms_「SEO帝国」 SEO中讲的 CMS是什么意思

热门文章

  1. []==''返回?为什么?运算符==进行了什么操作?
  2. 超级好用的视频转换器Cisdem Video Converter for Mac
  3. js解决chrome浏览器无法自动播放音频
  4. 运维人员福利,空气源热泵实现远程智能控制
  5. python爬虫三大解析数据方法:bs4 及爬小说网案例
  6. CadenceAllegro16.6绘图软件使用二
  7. 保研面试 算法题_计算机考研/保研复试重点整理-数据结构篇
  8. 二进制老鼠毒药c语言,老鼠试药  二进制问题
  9. 手机号号码段及js验证
  10. [学习总结]自制简易操作系统