论文阅读:Think Before You Speak: Explicitly Generating Implicit Commonsense Knowledge for Response Generation

1 研究背景与作者动机

人们在对话中,除了句子本身的意思外,还常常隐含一些常识。许多端到端的对话模型是基于对话历史来生成回复。这种模型并没有显性地学习对话历史中隐含的常识。或者说,模型可能不知道对话历史中隐含的某些常识。

有些研究者提出基于知识扩充的对话模型(knowledge-augmented Response Generation, RG)。其中大多数需要用到外部知识库(Knowledge Base, KB)。主要采取让模型从知识库中检索与对话历史有关联的知识的方法,然后利用检索得到的知识来辅助生成Response。这类方法的缺陷是,如果知识库的知识覆盖面不够大,可能检索不到相关知识。

本文作者没有采用检索外部知识库的方法来获取知识,而是让模型根据对话历史来生成与对话历史相关的隐含知识。

图-1

例如,图-1所示的对话中, 对话句子“I need to buy some flowers for my wife.”隐含一些常识,这些常识包括:丈夫给妻子买花是爱的表达,玫瑰花是爱的象征。

作者认为本文方法的优点是:1) 与只采用对话历史的方法相比,本文方法能让模型生成的回复包含更多的信息(more informative);2) 与知识检索的方法相比,本文方法所构建的模型可能在知识库中没有的知识,也就是说模型学会了知识库中没有的知识。

2 方法

1. 本文方法要解决的几个难点

1) 如何使模型能生成对话中隐含的知识

2) 用什么方式表示隐含的知识

3) 如何将知识融入到对话生成的输入数据中

  • 难点一:如何使模型能生成对话中隐含的知识

利用对话历史生成隐含知识的问题可以形式化表示为,其中表示对话历史,表示对话中隐含的知识。为了在这种假设下训练模型,就需要构成一个数据集,这个数据集应由成对的 (对话历史,对话历史中隐含的知识)元组构成,其中“对话历史中隐含的知识”为label。

为了构建(对话历史,对话历史中隐含的知识)元组数据集,作者用到了外部知识源ConceptNet。作者通过知识对齐(Knowledge-Aligned )的方式,将对话历史中的知识与ConceptNet中的知识进行匹配。论文中介绍了两种匹配方式:Hard-Matching和Soft-Matching.

  • 难点二:用什么方式表示隐性知识

由于从ConceptNet中提取出的结构化知识与模型的输入格式不匹配,作者者提出了两种知识表示方式:1) Map Relations to Natural Language; 2) Information-Seeking Question-Answer Pairs;

用上图-1中的对话为例,对这两种方式各举一个例子

1) Map Relations to Natural Language的表示方式为:

Rose is a type of flower.

Rose is a symbol of love.

2) Information-Seeking Question-Answer Pairs的表示方式为:

What is a type of flower? Rose is a type of flower.

Rose is a symbol of what? Rose is a symbol of love.

  • 难点三:如何将知识融入到对话生成的输入数据中

生成模型用到的输入数据包含对话历史和隐性知识两部分,作者将隐性知识放入<implicit></implicit>标记中间,具体格式如下:

<speaker1> I need to buy some flowers for my wife. <implicit>rose is a type of flower;rose is a symbol of love </implicit><speaker2>Perhaps you’d be interested in red roses.

3 训练

损失函数包含两部分,

公式1为Knowledge Generation损失,公式2为Response Generation损失。

4 实验

1. 数据集:

作者采用Commonsense-Focused Dialogues for Response Generation: An Empirical Study这篇论文作者整理的数据集。

2. 基模型:

采用DialoGPT-medium预训练模型作为基模型

3. 实验一:几种变体模型分析

作者用Hard-Matching和Soft-Matching两种方式分别构建了两套数据集。针对不同的数据集,又用上文提到的不同的知识表示方式和不同的知识融合方式进行了组合实验。

4. 实验二:与其它端到端模型、其它基于知识扩充模型对比分析

Think Before You Speak: Explicitly Generating Implicit Commonsense Knowledge for Response Generation相关推荐

  1. 《论文阅读》Commonsense Knowledge Aware Conversation Generation with Graph Attention

    <论文阅读>Commonsense Knowledge Aware Conversation Generation with Graph Attention 简介 论文试图解决什么问题? ...

  2. 【论文笔记】Commonsense Knowledge Aware Conversation Generation with Graph Attention

    Commonsense Knowledge Aware Conversation Generation with Graph Attention 文章目录 Commonsense Knowledge ...

  3. 【AAAI2023】视觉辅助的常识知识获取Visually Grounded Commonsense Knowledge Acquisition 个人学习笔记

     视觉辅助的常识知识获取 摘要:大规模的常识知识库为广泛的AI应用提供了能力,其中常识知识的自动提取extraction of commonsense knowledge (CKE)是一个基本和具有挑 ...

  4. COSMIC: COmmonSense knowledge for eMotion Identification in Conversations

    未完待续 代码: https://github.com/declare-lab/conv-emotion. intro 对话变量:话题.观点.说话人个性.论证逻辑.意图等 常识性知识:理解对话 A的第 ...

  5. Zero-Shot Graph Relation Prediction through Commonsense Knowledge Integration

    文章目录 Abstract Introduction 挑战:在zero-shot triplets上的性能下降 动机:应用常识解决zero-shot relation prediction Insig ...

  6. 论文解读:Improving Machine Reading Comprehension with Contextualized Commonsense Knowledge

    论文解读:Improving Machine Reading Comprehension with Contextualized Commonsense Knowledge 论文下载:https:// ...

  7. Commonsense and Named Entity Aware Knowledge Grounded Dialogue Generation

    摘要 motivation: 以外部知识为基础,在对话历史背景下解释语言模式,如省写.回指和共同引用,对对话的理解和生成至关重要. this paper: 在本文中,我们提出了一种新的开放域对话生成模 ...

  8. Text-based RL Agents with Commonsense Knowledge:New Challenges, Environments and Baselines

    dblp: Keerthiram MurugesanList of computer science publications by Keerthiram Murugesanhttps://dblp. ...

  9. COMMONSENSEQA: A Question Answering Challenge Targeting Commonsense Knowledge

    题目与摘要 本文针对什么任务?任务简要介绍下. 创建问答数据集,基于知识图谱 本文发现了什么问题?该文大体是怎么解决的?解决得如何? 以往的问答都是针对给定文字或者段落,提出问题,选择答案.回答问题所 ...

最新文章

  1. 三维重建 KinectFusion
  2. brew gd php_PHPBrew 使用指南
  3. iOS 获取屏幕最上层window以及响应者
  4. 阶段-关口系统--范围界定阶段---学习记录
  5. 宇泽电影工作室网页HTML语言,4.4宇泽国际旅行社网页制作
  6. mac安装完mysql后关机特别慢_解决Mac升级到10.12后关机很慢的问题
  7. linux作为生产力工具_适用于Linux的顶级音乐播放器,可保护隐私的社交媒体替代品,打印技巧,生产力工具等
  8. Oracle全文索引之四 维护
  9. php memcached 加锁,用memcached实现的php锁机制
  10. java web 常见面试题_2019最新Javaweb面试题及答案
  11. UE4学习笔记----点光源属性
  12. 少有人走的路——心智成熟的旅程
  13. Tourists【广义圆方树+树链剖分+方点的特别优化】
  14. 利用java代码一键生成数据库文档
  15. 互联网公司logo logo制作
  16. openstack(pike) dvr 中南北数据流向分析
  17. 基于google pIxel刷机并且获取root教程
  18. 日历插件---FullCalendar (vue3中实现,常用详细的功能以及样式、有源码)
  19. headFirst JavaScript 程序设计笔记
  20. 淘宝卖家辅助工具有哪些比较好用的?

热门文章

  1. 图片在线翻译的操作技巧
  2. 区块链结合物联网会碰撞出怎样的火花?
  3. AELF(ELF)区块链项目介绍
  4. Notepad Next 无法输入中文
  5. sd卡格式化后数据恢复怎么操作
  6. 【python django发送手机号验证码】
  7. Tegra TK1安装Opencv1.0
  8. 羽毛球练习——资料收集——心得分享
  9. vue3+阿里乾坤实现主应用和微应用
  10. python 计算 Pearson 线性相关系数