Retrieve, Discriminate and Rewrite: A Simple and Effective Framework翻译

2024-02-18 16:20

本文主要是介绍Retrieve, Discriminate and Rewrite: A Simple and Effective Framework翻译,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要

获得有情感的响应是建立具有同理心对话系统的关键步骤。这项任务已经在基于生成的聊天机器人中进行了很多研究,但是在基于检索的机器人中的相关研究仍处于早期阶段。现有的基于检索的聊天机器人的工作主要是Retrieve-and-Rerank的框架,其具有以降低响应质量为代价来满足情感生成的常见问题。要解决此问题,我们提出了一种简单有效的Retrieve-Discriminate-Rewrite框架。该框架用新的discriminate-and-rewrite机制替换了重排序机制,该机制通过判别模块预测检索到的高质量响应的情感标签,并通过重写模块进一步重写不满足情感的响应。这不仅可以保证响应的质量,还可以满足给定的情感标签。此外,这项研究的另一个挑战是缺乏现成的情感响应数据集。为了解决这个问题并测试我们提出的框架,我们基于原始Douban对话语料库标注了Sentimental Douban Conversation Corpus。实验结果表明,我们提出的框架是有效的,且优于基线。

1.介绍

在这里插入图片描述
  表达情感是构建类人对话系统的关键因素,这可以显着促进人机交互期间的情感沟通且增强用户满意度。这个问题在基于生成的聊天机器人中已经有过很多的研究,这通常被定义为给定情感标签和对话的上下文,来生成响应。
  然而,基于检索的聊天机器人的相关研究仍处于早期阶段。基于检索的聊天机器人与基于生成的相比,能够获得更多样化和信息更丰富的响应,同样也被广泛使用,因此,获得情感响应对基于检索的聊天响应的研究是有意义的。在现有的研究中,情感被认为是总结感情,感觉和情绪的术语。在本文中,我们专注于情绪,并研究如何在基于检索的聊天机器人中获得特定情绪(正面或负面)的响应。
  与可以生成新响应的基于生成的聊天机器人不同,基于检索的聊天机器人必须从响应存储库中检索出候选响应。因此,为了获得情感响应,如何有效地使用候选是一个重要问题。基于检索的聊天机器人的现有工作主要是基于Retrieve-and-Rerank框架,该框架对检索到的候选利用重排名的机制。具体地,该框架首先通过检索模块获得候选,然后根据给定的情感标签调整排名或匹配分数,最后输出具有适当情感和内容的响应。
  但是, Retrieve-and-Rerank框架无法满足要求,因为它在满足给予给定的情感标签时会降低响应的质量。这意味着将丢弃高质量但不满足情感的响应,这将直接降低了基于检索的聊天机器人的核心优势。例如,在图1(a)中,当不考虑情感标签时,高质量的candidate 2应该是最好的,但由于给出了情感标签,因此只能选择具有普通质量的candidate 3。
  为了同时保证内容和情感,我们提出了一种简单有效的Retrieve-Discriminate-Rewrite框架。 该框架用新的判别和重写机制替换重排名机制,该机制优先选择高质量的候选响应并重写其情感被判别为不满足的响应。例如,在图1(b)中,我们的新框架优先选择高质量的candidate 2,然后识别到candidate 2的情感是不满足的,并且最终对candidate 2进行少量修改,从而使影响满足要求。这表明该框架不仅可以保证响应的质量,还可以满足给定的情感标签。
  此外,这一研究的另一个挑战是缺乏现成的情感数据集。 这样的数据集不仅可以在我们的框架中使用,而且能用于采用重排名机制的现有方法。为解决此问题并测试我们的框架,我们在原始Douban对话语料库的基础上,标注了情感Douban对话语料库。我们对该数据集进行实验,实验结果表明,我们具有简单架构的框架是有效的且优于基线。
  这项工作的贡献总结如下:

  • 我们提出了一种Retrieve-Discriminate-Rewrite框架,用于在基于检索的聊天机器人中获得情感响应,这解决了Retrieve-and-Rerank框架中的低质量响应问题。
  • 我们标注并发布一个情感响应数据集,这些数据集解决了研究中缺乏必要情感数据集这一问题。
  • 数据集上的实验结果表明,我们的框架是有效的且优于baseline。

2.相关工作

在对话系统中获得有情感响应的现有工作可以分为两个分支。第一类是基于生成的方法,它基于Seq2Seq模型为给定的会话上下文生成有情感的响应。基于生成的方法具有生成新响应的优点,并且已经具有很多好的工作。 第二类是基于检索的方法,它从响应存储库检索出候选响应来获得基于会话上下文的情感响应。基于检索的方法具有获得多样化和信息丰富响应的优势,与基于生成的方法相比仍然具有竞争力。本文重点介绍第二类。
  与基于生成的方法不同,对基于检索的方法如何获得有情感响应的相关研究仍在早期阶段。Lubis et al. (2019) 提出了一种检索积极情绪的重排名策略,其方法也可以应用于生成情感反应。Qiu et al. (2020) 介绍了一种情感匹配网络,该网络融入了情绪因因子并实现情绪控制。从使用候选者的角度来看,这些方法都基于Retrieve-and-Rerank框架。虽然这些方法已经获得了有情感的反应,但Qiu et al. (2020) 观察到这些方法更喜欢满足于给定情感标签的响应,即使它们与上下文无关,这减少了基于检索的聊天机器人的核心优势。 如何平衡丰富的信息并给予期望情感标签仍然需要不断探索,在本文中,我们讨论了这个问题。
  在我们的工作中涉及的另一个研究分支是自然语言处理中的风格迁移。我们框架中的重写机制将修改响应的情绪,这已经在某些风格转移工作中进行了研究。一些现有的工作侧重于如何获取独立于风格的句子表示,然后使用目标风格生成句子。这些工作都具有一定的有效性,但它们通常缺乏细粒度的控制并导致内容质量下降,这与我们对情绪进行细粒度控制的目标不一致。同时,一些现有的工作侧重于如何删除句子中与风格相关的单词,然后使用目标风格生成句子。受这些工作的启发,我们将情绪重写看作类似的两阶段过程处理。但是不同于这些工作,我们的情绪重写将涉及从中性表达到有情感表达的大量情况,而不仅仅是在不同情感表达之间的迁移。缺乏处理中性表达将导致我们的任务表现不佳,我们对此问题的处理与这些工作不同。此外,其他一些现有的工作从其他不同的角度实现了风格转移。这些工作旨在更通用的风格迁移问题,并且缺乏对情绪的细粒度控制,这与我们工作的目标不符。

3.The Retrieve-Discriminate-Rewrite Framework

3.1 Overview

在这里插入图片描述
  在这项工作中,我们的目标是在给定情感标签和基于检索的聊天机器人的对话上下文,来获取对应的情感响应。特别是,我们关注的情感标签是情绪(positive或negative)。
  该问题可以定义如下:给定具有 N N N个语句的对话上下文 C = { u 1 , u 2 , . . . , u N } C=\{u_1,u_2,...,u_N\} C={u1,u2,...,uN},上下文相关的响应存储库 P = { r 1 , r 2 , . . . , r M } P=\{r_1,r_2,...,r_M\} P={r1,r2,...,rM}和目标情绪 s s s,目标是从响应储存库 P P P中检索到候选响应 Y Y Y,其不仅与上下文 C C C相干,而且与目标情绪 s s s相匹配。
  对于此问题,我们的Retrieve-Discriminate-Rewrite框架如图2所示。该框架由三个组件组成:
  (1)Retrieval Module:该模块用于与现有的基于检索的聊天机器人兼容,可以为后续模块提供高质量的响应。
  (2)Discrimination Module:该模块从检索模块接收检索到的高质量响应,然后区分检索到的高质量响应的情绪,并输出满足情绪的响应。
  (3)Rewriting Module:该模块从判别模块接收不满足情绪的响应,用以校正响应的情绪。
  在以下部分中,我们将详细描述这些组件,并介绍在框架中如何使用它们来获得期望情感的响应。

3.2 Retrieval Module

在我们的框架中,检索模块用于与现有的基于检索的方法兼容。为了验证我们的框架是通用的,我们选择以下基于检索的方法来获得框架中的高质量响应,我们将根据这些方法分别进行实验。
  GTM。这是真实标签模型,即总是输出正确的响应。我们使用这一理想模型来研究检索结果在完美情况下框架的表现。
  SMN。这是基于检索的聊天机器人的经典工作,其提出了一个基于RNN的序列匹配网络,其在多个粒度上与每个语句进行匹配,并将获得的匹配向量累积来作为最终匹配分数。
  MSN。这是最近在基于检索的聊天机器人的工作,其提出了一个多跳选择器网络,以减轻使用不必要的上下文语句的副作用。它是目前最好的方法之一。

3.3 Discrimination Module

在我们的框架中,判别模块用于从检索模块接收检索到的高质量响应,并判别响应的情绪。对于满足情绪的响应,模块则直接输出它。
  该模块处理一个分类任务,因此我们可以利用许多现有分类器。在这项工作中,我们选择预训练的BERT模型作为我们的分类器,这在各种NLP任务中取得了最先进的性能。
  对于预训练的BERT模型,给定响应 R = { w 1 , w 2 , w 3 , . . . , w n } R=\{w_1,w_2,w_3,...,w_n\} R={w1,w2,w3,...,wn},输入可以表示为:“ [ C L S ] w 1 w 2 w 3 . . . w n [ S E P ] [CLS]~w_1~w_2~w_3...w_n~[SEP] [CLS] w1 w2 w3...wn [SEP]”。与常用的操作相同,我们使用 [ C L S ] [CLS] [CLS]字符的隐藏表示来表示响应,然后将其带入到softmax层进行分类。

3.4 Rewriting Module

在我们的框架中,重写模块用于从判别模块接收具有不满足情绪的响应,并校正响应的极性。
  受先前在风格迁移中的工作的启发,我们将响应的情绪重写视为两阶段过程:Delete和Generate。 第一阶段采用预训练的情绪分类模型来删除响应中的情感表达,第二生成阶段采用两个基于transformer的生成器来产生满足情绪的响应。我们在以下部分中分别介绍这两个阶段。

3.4.1 Delete

在这个阶段,我们的目标是识别并删除情感响应中的情感表达。对于中性的响应,我们在这个阶段不进行任何处理。
  我们的方法基于预训练的情绪分类模型,以自动识别单词级的情感表达。对于情感分类模型,句子中的情感表达是识别句子情绪的关键。因此,直观的想法是测量不同单词对句子情绪分类的重要性,影响最重要的单词应该是关键的情感表达。
  具体而言,我们设计一个单词排名机制,用于识别响应中单词级的情感表达。我们计算响应 R R R中每个单词 w i w_i wi的重要性评分 I w i I_{w_i} Iwi。该方法是在响应中删除单词 w i w_i wi,并比较删除前后的目标情绪的预测得分,这可以分别表示为 S e ( R [ w i ] ) S_e(R_{[w_i]}) Se(R[wi]) S e ( R [ w / o w i ] ) S_e(R_{[w/o~w_i]}) Se(R[w/o wi])。每个单词 w i w_i wi的重要性评分 I w i I_{w_i} Iwi则可以正式定义如下:
I w i = S e ( R [ w i ] ) − S e ( R [ w / o w i ] ) (1) I_{w_i}=S_e(R_{[w_i]})-S_e(R_{[w/o~w_i]})\tag{1} Iwi=Se(R[wi])Se(R[w/o wi])(1)
  我们首先计算每个单词的重要性分数,并选择前 λ \lambda % λ作为情感表达的单词。然后,我们删除这些情感表达并将修改后的响应发送到下一个阶段(Generate)。

3.4.2 Generate

在这里插入图片描述

这篇关于Retrieve, Discriminate and Rewrite: A Simple and Effective Framework翻译的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/721729

相关文章

uva 10014 Simple calculations(数学推导)

直接按照题意来推导最后的结果就行了。 开始的时候只做到了第一个推导,第二次没有继续下去。 代码: #include<stdio.h>int main(){int T, n, i;double a, aa, sum, temp, ans;scanf("%d", &T);while(T--){scanf("%d", &n);scanf("%lf", &first);scanf

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

Spring Framework系统框架

序号表示的是学习顺序 IoC(控制反转)/DI(依赖注入): ioc:思想上是控制反转,spring提供了一个容器,称为IOC容器,用它来充当IOC思想中的外部。 我的理解就是spring把这些对象集中管理,放在容器中,这个容器就叫Ioc这些对象统称为Bean 用对象的时候不用new,直接外部提供(bean) 当外部的对象有关系的时候,IOC给它俩绑好(DI) DI和IO

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

excel翻译软件有哪些?如何高效提翻译?

你是否曾在面对满屏的英文Excel表格时感到头疼?项目报告、数据分析、财务报表... 当这些重要的信息被语言壁垒阻挡时,效率和理解度都会大打折扣。别担心,只需3分钟,我将带你轻松解锁excel翻译成中文的秘籍。 无论是职场新人还是老手,这一技巧都将是你的得力助手,让你在信息的海洋中畅游无阻。 方法一:使用同声传译王软件 同声传译王是一款专业的翻译软件,它支持多种语言翻译,可以excel

MonoHuman: Animatable Human Neural Field from Monocular Video 翻译

MonoHuman:来自单目视频的可动画人类神经场 摘要。利用自由视图控制来动画化虚拟化身对于诸如虚拟现实和数字娱乐之类的各种应用来说是至关重要的。已有的研究试图利用神经辐射场(NeRF)的表征能力从单目视频中重建人体。最近的工作提出将变形网络移植到NeRF中,以进一步模拟人类神经场的动力学,从而动画化逼真的人类运动。然而,这种流水线要么依赖于姿态相关的表示,要么由于帧无关的优化而缺乏运动一致性

linux dlopen手册翻译

名称 dlclose, dlopen, dlmopen 打开和关闭一个共享对象 简介 #include <dlfcn.h>void *dlopen(const char*filename, int flags);int dlclose(void *handle);#define _GNU_SOURCE#include <dlfcn.h>void *dlmoopen(Lmid_t lm

从计组中从重温C中浮点数表示及C程序翻译过程

目录 移码​编辑  传统浮点表示格式 浮点数的存储(ieee 754)->修炼内功 例子:   ​编辑 浮点数取的过程   C程序翻译过程 移码  传统浮点表示格式 浮点数的存储(ieee 754)->修炼内功 根据国际标准IEEE(电⽓和电⼦⼯程协会)  32位 例子:    64位    IEEE754对有效数字M和

HumanNeRF:Free-viewpoint Rendering of Moving People from Monocular Video 翻译

HumanNeRF:单目视频中运动人物的自由视点绘制 引言。我们介绍了一种自由视点渲染方法- HumanNeRF -它适用于一个给定的单眼视频ofa人类执行复杂的身体运动,例如,从YouTube的视频。我们的方法可以在任何帧暂停视频,并从任意新的摄像机视点或甚至针对该特定帧和身体姿势的完整360度摄像机路径渲染主体。这项任务特别具有挑战性,因为它需要合成身体的照片级真实感细节,如从输入视频中可能

深度评测热门翻译工具,携手你的翻译得力助手

随着互联网技术的飞速发展,全球化交流日益频繁,跨语言沟通的需求也随之激增。对于外语水平有限的朋友来说,翻译器是一个必不可少的工具。今天我就分享几款我用的翻译器吧。 1.福晰在线翻译  链接直达>>https://fanyi.pdf365.cn/doc  该网站以其高度的专业性著称,专为翻译需求而精心打造。它不仅支持用户粘贴部分文字进行即时翻译,更贴心地提供了整份PDF文档的导入翻译功能,极大