MVP: Multi-view Prompting Improves Aspect Sentiment Tuple Prediction

news2024/9/27 7:24:02

MVP: Multi-view Prompting Improves Aspect Sentiment Tuple Prediction

论文地址: https://arxiv.org/pdf/2305.12627.pdf
论文代码: https://github.com/ZubinGou/multi-view-prompting

1. 介绍

Multi-view Prompting (MVP)

1.1 研究目标

本文提出了多试图提示(MVP)模型处理方面级别情感分析,以聚合不同顺序产生的情感元素,利用不同视角的人类问题解决过程的直觉。具体来说,(MVP)引入元素顺序提示,引导语言模型生成多个情感元组,每个元组的元素顺序不同,然后投票选出最合理的元组。(MVP)可以自然地将多视图和多任务分别建模为元素的排列和组合,在多个ABSA任务上用一个模型比以前的特定于任务的设计方法表现更好。

1.2 现有科学问题

现有的研究往往以固定的顺序(从左到右)预测情感元素,忽视了情感元组中元素的相互依赖性和语言表达的多样性对结果的影响。
这种单顺序生成有以下潜在的缺点: (主要是说没有顺序问题)

  • 不完整性,元组预测并不是一个文本生成任务,元素之间的关系不是有序的,而是相互依赖的;
  • 不稳定性,如Hu等(2022)的研究表明,不同目标模板阶次的性能存在显著差异;
  • 误差积累,前期的预测误差会累积,影响后期的预测。

1.3 解决方法

受提示链(prompt chain)的启发,MVP模型引入了基于元素顺序的提示学习来控制情感元素的预测顺序,实现了目标表达的多样化。与单阶生成相比,MVP通过接收来自多个视图的信息,减轻了固定顺序的不完全性和不稳定性,同时通过元素的排列减轻了生成方法潜在的误差积累(图1)。(这里所说的一个视图相当于是一种排列顺序)
在这里插入图片描述
图1: MVP架构, 三个阶段

1.4 创新点/贡献

  • 介绍了一种基于元素顺序的快速提示方法(MVP),该方法通过聚合多视图结果来提高情绪元组的预测能力。
  • MVP天然的允许我们在所有任务中同时训练单一模型。据我们所知,多任务MVP是第一个在各种ABSA任务上显著优于任务特定模型的单一模型。
  • 实验结果表明,该算法在4个任务的10个数据集上都取得了显著的进展,在低资源环境下也非常有效。

ABSA任务案例

方面术语a: 一般是文本中明确出现的描述目标,如图2“The pizza is delicious”句中的“pizza”就是方面术语。
特殊情况: 当目标被隐式表达(例如“It’s overestimated”)时,由于方面术语是代词,这种情况我们一般将方面术语表示为一个名为“null”的特殊术语。(一般是主语)
观点/意见词o: 一般是(主语)表达自己对目标对象的意见的表达方式。如图2“The pizza is delicious”句中的“delicious”就是观点术语。(一般是宾语)
方面类别C: 一个预定义好的类别集合, 一般用于对方面术语的分类, 该集合为每个特定的感兴趣的领域预定义。例如,pizza 的方面类别是food。 (方面类别与方面术语是一对多的关系)
情绪极性s: 表示当前文本/情感元组的情感极性, 通常包括正面、负面和中性。

在这里插入图片描述
图2: ABSA任务案例

3. 模型架构

在这里插入图片描述

4. 论文方法

基于不同顺序的提示符,模型可以从不同的视图生成多个元组。一些视图给出了相同的正确元组,而一些视图的有效性较低,因此可能是错误的,但不太可能导致相同的错误。换句话说,不同的观点倾向于在正确的情绪元组中表现出更多的一致性。根据这种直觉,提议的MVP集合并将大多数视图同意的元组作为最终结果。(就像是对的答案千篇一律, 错误的写法千奇百怪是一个道理), 温馨提示这里大多数指的是超过试图的二分之一

4.1 基于元素顺序的提示学习

为了控制情感元素的预测顺序,MVP引入了一种基于元素顺序的激励机制。具体来说,我们使用有序的目标模式设计目标,并使用元素顺序提示符设计输入。

4.1.1构建有序目标范式

如果一个输入句子有多个情感元组,我们利用一个特殊的符号[SSEP]将它们对应的有序目标模式连接起来,得到最终的目标序列 y p i y_{pi} ypi O, A, C, S分别代表四个情感元素。
[ O ] e o [ A ] e a [ C ] e c [ S ] e s   [ S S E P ]   [ O ] e o [ A ] e a [ C ] e c [ S ] e s [O]e_o[A]e_a[C]e_c[S]e_s \space [SSEP] \space [O]e_o[A]e_a[C]e_c[S]e_s [O]eo[A]ea[C]ec[S]es [SSEP] [O]eo[A]ea[C]ec[S]es

4.1.2元素顺序提示

我们将提示符作为后缀添加到每个输入句子,以获得最终的输入xpi。这样我们得到一个训练的输入输出对:

4.2 多视图推理

4.2.1 模式约束生成

但是,生成的结果可能不符合目标模式格式,特别是在训练集较小的情况下(Zhang et al., 2021a;Yan等,2021)。因此,我们设计了一种基于模式的约束解码(Cao等人,2021),将目标模式知识注入到解码过程中。它确保生成的元素位于相应的词汇表集中。具体实施细节见附录B。

4.2.2 多视图结果聚合

因为每个视图可以预测多个元组,所以我们首先聚合所有视图的结果,然后使用出现在大多数视图中的元组作为最终预测。具体来说,对于一个输入句x,假设我们从选择的m个排列中提示一个训练过的模型生成,排列pi的预测元组集合为 T ′ p i T'pi Tpi,它可能包含一个或多个情绪元组,那么我们就可以得到最终的聚合结果 T ′ M V P T^{'} MVP TMVP,由下式得到:
在这里插入图片描述

5. 实验结果

5.1 对比实验

在这里插入图片描述

5.2 低资源

在这里插入图片描述

视图个数的影响

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/688675.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python 深度学习 解决遇到的报错问题

目录 一、解决报错ModuleNotFoundError: No module named ‘tensorflow.examples 二、解决报错ModuleNotFoundError: No module named ‘tensorflow.contrib‘ 三、安装onnx报错assert CMAKE, ‘Could not find “cmake“ executable!‘ 四、ImportError: cannot import na…

67、基于51单片机ADXL345计步器系统设计(程序+原理图+PCB源文件+参考论文+开题报告+设计资料+元器件清单等)

摘 要 计步器是一种颇受欢迎的日常锻炼进度监控器,可以激励人们挑战自己,增强体质,帮助瘦身。早期设计利用加重的机械开关检测步伐,并带有一个简单的计数器。晃动这些装置时,可以听到有一个金属球来回滑动&#xff0c…

MongoDB集群搭建(四)

基础环境准备 安装Docker 创建Docker网络 因为需要使用Docker搭建MongoDB集群,所以先创建Docker网络 docker network create mongo-cluster docker network ls 创建挂载目录 创建对应的挂载目录来存储配置文件以及日志文件 # 创建配置文件目录 mkdir -p /opt/mongo…

MYSQL数据类型介绍

一、MySQL的数据类型 主要包括以下五大类: 整数类型:BIT、BOOL、TINY INT、SMALL INT、MEDIUM INT、 INT、 BIG INT 浮点数类型:FLOAT、DOUBLE、DECIMAL 字符串类型:CHAR、VARCHAR、TINY TEXT、TEXT、MEDIUM TEXT、LONGTEXT、TINY…

测试进阶面试必问12个算法题,洞悉出题思路,拿的就是高薪!

可以明确的一点是,面试算法题目在难度上(尤其是代码难度上)会略低一些,倾向于考察一些基础数据结构与算法,对于高级算法和奇技淫巧一般不作考察。 代码题主要考察编程语言的应用是否熟练,基础是否扎实&…

GPIO通用输入输出口

GPIO 1、简介1.1、基本结构1.2、工作模式使用库函数的使用方法 2、GPIO输出LED流水灯蜂鸣器 3、GPIO输入按键控制LED光敏传感器控制蜂鸣器 1、简介 1、GPIO(general Purpose Input Output)通用输入输出口; 2、可配置为8种输入输出模式; 3、引脚电平&…

如何在Linux部署Jdk1.8备忘录(高效版)

提示:高效简洁版 文章目录 前言一、整理环境二、部署jdk1.8三、建立Java环境四、生效验证总结 前言 作为备忘录阐述,力求简洁明了,直接开始贴步骤。 一、整理环境 1.首先查看服务器上是否有Java,如果自带恭喜你不用装了。 java…

Linux5.gcc(g++),动静态链接,make和Makefile

1.gcc od 文件 :查看二进制文件。 2.动静态库(此处简单认识,详细内容后面介绍) ldd 文件 :查看文件所依赖的库。 file 文件 :查看文件的具体信息。 在Linux当中,程序在链接的时候,默认是动态链接(后缀是.so) 如果要使用静态链接&#xff…

Redis的3大特殊数据结构(3)-Geospatial

Geospatial地理空间,Redis 在 3.2 版本中加入了地理空间(geospatial)以及索引半径查询的功能,主要用在需要地理位置的应用上。将指定的地理空间位置(经度、纬度、名称)添加到指定的 key 中,这些…

JS逆向入门教程p1 浏览器设置 常用工具

1.准备工作 http 编程语言(网络apidavaScript) 逆向(js逆向 安卓逆向 ios逆向 PC逆向)调试 图像识别 下载城南Post助手、fiddler、wireshark(鲨鱼)抓包工具; 通过进程抓包 fiddler插件: f12配置推荐,实验功能全部关闭 时间线上的分配检测:js的运行时间线 关闭时间…

【软考网络管理员】2023年软考网管初级常见知识考点(21)-安装及配置DHCP服务器(图文结合)

涉及知识点 安装DHCP服务器,配置DHCP服务器,如何去安装DHCP服务器,如何去配置DHCP服务器,软考网络管理员常考知识点,软考网络管理员网络安全,网络管理员考点汇总。 原创于:CSDN博主-《拄杖盲学…

项目进度计划表的制作方法解析:简单易懂的步骤指南

项目进度计划表怎么做?创建项目进度表是项目管理的一个重要组成部分,它有助于确保项目的成功完成。它是一个详细的计划,概述了实现项目目标所需的工作范围、时间线、里程碑和资源。本文将讨论制定项目进度表所涉及的步骤。 1、定义项目范围: …

掌握Gradio的Audio模块:实时交互与多功能展示

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

C语言学习(二十七)---指针练习题(三)

在上一节的内容中,我们继续学习了字符数组的相关指针练习题,今天我们将继续将练习有关二维数组的指针练习题和有关结构体的指针练习题,好了,话不多说,开整!!!! 二维数组…

从零开始学习:如何使用Selenium和Python进行自动化测试?

安装selenium 打开命令控制符输入:pip install -U selenium 火狐浏览器安装firebug:www.firebug.com,调试所有网站语言,调试功能 Selenium IDE 是嵌入到Firefox 浏览器中的一个插件,实现简单的浏览器操 作的录制与回…

开源社 KCC@硅谷正式成立,搭建国际开源交流平台

大家好!我很高兴向大家宣布一个重要的消息: 开源社在硅谷的KCC(Kaiyuanshe City Community)正式成立了!作为开源社的一项重要举措,KCC硅谷将成为国际开源交流的桥梁,架起中国和全球开源社区之间…

第十八章、Spring中的事务属性:隔离、传播属性等

1.什么是事务属性 属性:描述物体特征的一系列值 事务属性;描述事务特征的一系列值 1. 隔离属性 2. 传播属性 3. 只读属性 4. 超时属性 5. 异常属性2.如何添加事务属性 Transactional(isloation,propagation,readOnly,timeout,rollbackFor,norollbackFo…

three.js中物体的灯光与阴影设置

一、.设置物体阴影的核心步骤 1. 以平面上有一个球体为例,设置球体的阴影投射到平面上,核心步骤如下: 要让球体的阴影照射到平面上,需要使用阴影映射技术。具体步骤如下: 在渲染器中启用阴影: renderer…

高速下载ChatGLM2模型文件的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

无法使用MBR2GPT创建EFI系统分区?试试这方法!

将MBR转换为GPT的原因 你可能已经了解了GPT和MBR这两种不同类型的磁盘。由于硬盘容量一直在不断增加,人们现在更偏向于使用GPT磁盘。相较于MBR磁盘,GPT磁盘支持更大的存储空间,其限制超过了2TB。另外,GPT磁盘允许几乎无限数量…