UniSA: Unified Generative Framework for Sentiment Analysis

文章目录

  • UniSA:统一的情感分析生成框架
    • 文章信息
    • 研究目的
    • 研究内容
    • 研究方法
      • 1.总体架构图
      • 2.基准数据集SAEval
      • 3.Task-Specific Prompt
      • 4.Modal Mask Training
      • 5.Pre-training Tasks
        • 5.1Mask Context Modeling
        • 5.2Sentiment Polarity Prediction
        • 5.3Coarse-grained Label Contrast Learning
        • 5.4Cross-task Emotion Prediction
    • 结果与讨论
    • 代码和数据集

UniSA:统一的情感分析生成框架

总结:原理=>所有子任务整合起来,数据集就变得很大了,让模型学习这些所有的数据,模型的情感能力就上去了,关键在于怎么整合?训练好之后,不管是情感分析的什么任务(输入都会被Task-Specific Prompt统一,输出都有四个标签,一个真实标签,三个伪标签),通过这个框架都可以实现不错的结果。

文章信息

作者:Zaijing Li,Fengxiao Tang

单位:Central South University(中南大学)

会议/期刊:Proceedings of the 31st ACM International Conference on Multimedia(MM 2023)(CCF A)

题目:UniSA: Unified Generative Framework for Sentiment Analysis

年份:2023

研究目的

探究情感分析的多任务统一建模,将情感分析的子任务整合到一个单一的模型中,来提高模型的情感能力。

【对情感分析的所有子任务进行统一建模存在三个主要挑战:1.每个子任务的输入和输出形式各不相同。2.多模态的模态对齐问题。3.数据集注释偏差。

  • 引入了特定任务提示方法,将所有子任务视为生成任务并进行联合训练,来统一不同子任务的输入和输出形式
  • 通过扩展生成式Transformer(基础的Transformer模型)去处理多模态数据,提出了一种模态掩码训练方法学习模态间的关系,来解决模态对齐的问题。
  • 引入数据集嵌入消除不同数据集之间的注释偏差。】

研究内容

  • 提出了一个多模态生成框架 UniSA,重新耦合情感分析的各个子任务(对话中的情感识别 (ERC)、基于方面的情感分析 (ABSA) 和多模态情感分析 (MSA))实现多任务统一建模

  • 提出了一种新颖的情感相关预训练任务(Pre-training Tasks),让模型能够学到跨子任务的通用情感知识。

  • 构建了一个基准数据集 SAEval,以统一的格式包含了各种情感分析子任务的基准数据集。

研究方法

1.总体架构图

image-20240305162432037

为了处理视觉、声学和文本的跨模态输入,将原始的Transformer编码器修改为多模态编码器,并引入了模态掩码训练方法(该方法使得模型能够有效地学习到不同模态之间的关系)。通过任务特定提示( Task-Specific Prompt )方法来规范所有子任务的输入格式。为了解决数据集之间的偏差,在输入中嵌入了一个数据集,以区分不同的数据集。

2.基准数据集SAEval

基准数据集SAEval的构建是将来自不同情感分析子任务的多个数据集统一以字典格式存储。(该词典包括"Task Type"、"Dataset ID "、“Text”、“Audio”、“Image"等关键词。对于ERC数据集,额外的信息如” Context “,” Speaker ID “和” Utterance index "被包含来确定当前查询的会话信息。)数据集示例:

image-20240305172447131

3.Task-Specific Prompt

通过任务特定提示(Task-Specific Prompt)统一所有子任务的输入流,并将所有子任务转化为生成任务来统一子任务的输出形式。【作用就是统一输入与输出】

image-20240305170757602

任务特定提示包括三个组成部分:任务标识符Z、答案集Y和输入流X。

  • 标识符Z由特殊的标记组成(包括Task type,Data id ,Speaker id)。
  • 答案集Y是每个数据集的特定标签集合,用于指导模型生成预期结果。
  • 输入流X代表输入的文本、声音、视觉和上下文。

L = { Z , Y , X } L=\{Z,Y,X\} L={Z,Y,X}

4.Modal Mask Training

当给定一个多模态输入 I i = I i t , I i a , I i v I_{i}=I_{i}^{t},I_{i}^{a},I_{i}^{v} Ii=Iit,Iia,Iiv时( I i m , m ∈ t , a , v I_i^m,m\in{t,a,v} Iim,mt,a,v代表时间 i i i的单模态输入),要掩蔽一个或多个模态的输入,这样将产生七种模态设置,即, I i t , I i a , I i v , I i a + I i v , I i t + I i a , I i t + I i v I_i^t,I_i^a,I_i^v,I_i^a+I_i^v,I_i^t+I_i^a,I_i^t+I_i^v Iit,Iia,Iiv,Iia+Iiv,Iit+Iia,Iit+Iiv I i t + I i a + I i v I_i^t+I_i^a+I_i^v Iit+Iia+Iiv。由于文本模态很重要,所以只使用其中的四种设置,也就是 I i t , I i t + I i a , I i t + I i v , I i t + I i a + I i v . I_{i}^{t},I_{i}^{t}+I_{i}^{a},I_{i}^{t}+I_{i}^{v},I_{i}^{t}+I_{i}^{a}+I_{i}^{v}. Iit,Iit+Iia,Iit+Iiv,Iit+Iia+Iiv.通过这样的方式,多模态数据在训练阶段就有了四种不同的输入形式,扩展了训练数据的模态多样性,并可以有效应对实际场景中多种数据中某些模态的缺失。

5.Pre-training Tasks

预训练分为两个阶段:

  • 第一阶段是粗粒度情感感知预训练(coarse-grained emotion perception pre-training),包括掩码上下文建模情感极性预测粗粒度标签对比学习。第一阶段是为了让模型获得初步的情感分类能力。(情感是极性不变,组合具有相同情感极性的查询即相同情感极性的样本)不会改变两者。因此,根据情感极性将所有数据集划分为不同的数据池。然后,我们从同一个数据池中随机抽取两个查询组合成一个新的查询,用于预训练阶段一)
    L s t a g e 1 = L M C M + L S P P + L C C L . \mathcal{L}_{stage1}=\mathcal{L}_{MCM}+\mathcal{L}_{SPP}+\mathcal{L}_{CCL}. Lstage1=LMCM+LSPP+LCCL.

  • 第二阶段是细粒度情感感知预训练(Pre-training Stage Two),包括掩码上下文建模跨任务情感预测。其目的是让模型获得细粒度情感分类能力。
    L s t a g e 2 = L M C M + L C E P . \mathcal{L}_{stage2}=\mathcal{L}_{MCM}+\mathcal{L}_{CEP}. Lstage2=LMCM+LCEP.

5.1Mask Context Modeling

掩码上下文建模(MCM)可以随机掩码输入的文本、声学、视觉和上下文模态中的标记,以鼓励模型学习预测被掩码的标记(token)。

image-20240305205646466
L M C M ( θ ) = − ∑ m = 1 M log ⁡ ( P θ ( w m ∣ w n ) ) , \mathcal{L}_{MCM}(\theta)=-\sum_{m=1}^M\log{(P_\theta(w_m|w_n))}, LMCM(θ)=m=1Mlog(Pθ(wmwn)),

符号含义
1 ≤ m ≤ M 1\le m \le M 1mM表示掩码索引,M是掩码标记的数量
w m w_m wm被屏蔽的token
w n w_n wn未被屏蔽的token
P θ P_\theta Pθ模型的输出分布, θ \theta θ代表可以优化的模型参数
5.2Sentiment Polarity Prediction

为了鼓励模型学习区分不同的情感类别,将数据集的细粒度情感标签转换为情感极性标签,将其映射为正面、负面和中性类别。然后,在情感极性预测(SPP)任务中,训练模型预测输入的情感极性类别。
L S P P ( θ ) = − log ⁡ ( P θ ( s ∣ w n ) ) . \mathcal{L}_{SPP}(\theta)=-\log{(P_{\theta}(s|w_{n}))}. LSPP(θ)=log(Pθ(swn)).

5.3Coarse-grained Label Contrast Learning

在粗粒度对比学习任务中,将编码器的输出作为每个样本的表征,并在一个批次中计算具有相同情感标签的样本之间的欧氏距离。然后,最大化具有相同情感标签的样本之间的相似性。(让模型学会区分不同的情感类别

Alt

L C C L ( θ ) = ∑ j = 1 b ∑ k = 1 b ( d i s t a n c e ( j , k ) ∗ m a s k ( j , k ) ) ∑ k = 1 b d i s t a n c e ( j , k ) , \mathcal{L}_{CCL}(\theta)=\sum_{j=1}^b\frac{\sum_{k=1}^b(distance(j,k)*mask(j,k))}{\sum_{k=1}^bdistance(j,k)}, LCCL(θ)=j=1bk=1bdistance(j,k)k=1b(distance(j,k)mask(j,k)),

符号含义
b b b一个批次的大小
d i s t a n c e ( j , k ) distance(j,k) distance(j,k)样本j和样本k之间的欧氏距离
m a s k ( j , k ) mask(j,k) mask(j,k)当样本j和样本k具有相同的情感标签时, m a s k ( j , k ) mask( j , k) mask(j,k)为1,否则为0
5.4Cross-task Emotion Prediction

在跨任务情感预测(CEP )任务中,首先将编码器的输出作为每个样本的表征,并对每个子任务的样本进行聚类(每个子任务不同的标签将聚成一类)。然后,对于每个样本计算其表征与每个子任务的每个标签簇之间的距离。将距离最小的簇对应的标签作为每个子任务样本的伪标签。

给定一个子任务集 D = { A B S A , M S A , E R C , C A } D=\lbrace ABSA,MSA,ERC,CA \rbrace D={ABSA,MSA,ERC,CA}​,每个样本输出将有4个标签:一个为原始标签,三个为跨任务伪标签。
L C E P ( θ ) = − ∑ D log ⁡ ( P θ ( E d ∣ w m ) ) , \mathcal{L}_{CEP}(\theta)=-\sum^D\log{(P_\theta(E_d|w_m))}, LCEP(θ)=Dlog(Pθ(Edwm)),
E d E_d Ed表示子任务 d ∈ D d\in D dD中的情感标签。

结果与讨论

斜体是消融实验

  • UniSA模型在每个数据集上的表现与现有的SOTA模型相当,并且可以用相对较少的参数执行所有的情感分析子任务。
  • 将提出的任务特定提示方法替换为任务令牌,证明了任务特定提示方法对模型性能的影响。
  • 去掉模态掩码训练方法,验证了模态掩码的有效性。
  • 通过引入了三个额外的LSTM作为音频、图像和上下文输入的编码器,探索不同输入形式对模型性能的影响,证明了Multimodal transformer encoder的有效性。
  • 通过消融预训练的第一阶段与第二阶段,证明了各个预训练阶段的有效性。
  • 通过从多模态信号中剔除声学和视觉模态,验证了多模态对模型性能的影响。
  • 通过在情感分析的下游任务上进行实验,表明UniSA在预训练阶段学习到了跨子任务的共同情感知识,从而在不同的情感分析子任务上表现出良好的泛化性。

代码和数据集

代码:https://github.com/dawn0815/UniSA

数据集:

image-20240306160304953

实验环境:NVIDIA RTX V100(32G)

😃😃😃

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

latex使用\rm将部分公式或者部分单词设置为正体

在LaTeX中,\rm 是用于设置文字为 “Roman” 字体的命令。这里的 “Roman” 字体通常指的是默认的文本字体,也就是没有特意设置为斜体或粗体的普通字体。然而,\rm 并不总是表示特定的字体样式,而是依赖于当前文档或环境的设置。 在…

TIA博途中安装和更新HSP硬件支持包的具体方法示例

TIA博途中安装和更新HSP硬件支持包的具体方法示例 下面介绍2种方法,大家可根据自己实际的情况来选择适合自己的方法。 方法1: 参考以下链接中的内容: 如何TIA博途中更新HSP硬件目录? 方法2:

力扣515. 在每个树行中找最大值(BFS,DFS)

Problem: 515. 在每个树行中找最大值 文章目录 题目描述思路复杂度Code 题目描述 思路 思路1:BFS 套用BFS模板,直接在遍历树的某一层时将当前层的最大值存入数组中 思路2:DFS 回溯思想,在递归时不断更新可选列表(根据…

(C语言)深入理解指针2之野指针与传值与传址与assert断言

(C语言)深入理解指针1基础:http://t.csdnimg.cn/iGA3V 前面我们了解了指针的一些基础知识,下面我们进行进一步的指针学习 目录 1. 野指针 6.1 野指针成因 1. 指针未初始化 2. 指针越界访问 3. 指针指向的空间释放 6.2 如何…

基于JavaWEB SpringBoot婚纱影楼摄影预约网站设计和实现

基于JavaWEB SSM SpringBoot婚纱影楼摄影预约网站设计和实现 博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言…

Git快速上手二

对Git命令的深入理解快速上手Git(包含提交至GitHub和Gitee)-CSDN博客 1.5 分支操作 1.5.1 分支原理 系统上线后,又要修改bug,又要开发新的功能。 由于新功能没有开发完,所以需要建立分支,一边修改bug,一边开发新功能,最终合并. 1.5.2 分支实操 创建…

每日一题 — 有效三角形的个数

611. 有效三角形的个数 - 力扣(LeetCode) 思路: 双指针思想,先将数据排序 然后先固定最大的数Max,也就是数组最后的数再定义一左一右两个下标 left 、 right,当这个值相加大于最大的数,那么他两…

【HTML】HTML基础7.2(有序列表)

目录 标签 效果 注意 标签 <ol> <li>列表内容</li> <li>列表内容</li> <li>列表内容</li> <li>列表内容</li> 。。。。。。 </ol> 效果 代码 <ol><li>银河护卫队 10000000000</li><l…

云计算的部署方式(公有云、私有云、混合云、社区云)

云计算的部署方式(公有云、私有云、混合云、社区云) 目录 零、00时光宝盒 一、云计算的部署方式 1.1、公有云&#xff08;Public Cloud&#xff09; 1.2、私有云&#xff08;Private Cloud&#xff09;  1.3、混合云&#xff08;Hybrid Cloud&#xff09; 1.4、社区云&am…

IO多路复用:2024/3/5

作业1、使用poll实现tcp服务器端&#xff0c;select实现tcp客户端 服务器端&#xff1a; #include <myhead.h> #define SER_IP "192.168.199.131" //服务端IP #define SER_PORT 8888 //服务端端口号int main(int argc, const char *argv[])…

调研图基础模型(Graph Foundation Models)

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 图基础模型&#xff08;Graph Foundation Models&#xff0c;简称 GFMs&#xff09; 是一种经过预训练的图大模型&#xff0c;旨在处理不同领域的图数据和任务。让我们详细探讨一下这个概念。 Github …

什么是MGR高可用(完整版)

MGR简介 MGR是MySQL Group Replication的缩写&#xff0c;即MySQL组复制。 在以往&#xff0c;我们一般是利用MySQL的主从复制或半同步复制来提供高可用解决方案&#xff0c;但这存在以下几个比较严重的问题&#xff1a; 主从复制间容易发生复制延迟&#xff0c;尤其是在5.6以前…

【考研数学】基础660太难了?一个办法搞定660

觉得题目太难&#xff0c;大概率是题目超出了自己当前的水平 题型没见过&#xff0c;或者太复杂&#xff0c;属于跳级学习了&#xff0c;正确的思路就是回归到自己的水平线&#xff0c;题目略难即可。 这样做题的话&#xff0c;大部分题目涉及的点不会超出自己的能力范围&…

Redis探秘:十大最佳应用场景揭示

文章目录 强烈推荐前言&#xff1a;应用场景:缓存:示例 会话管理:示例 队列:示例 计数器和统计:示例 发布/订阅:示例 分布式锁:示例 实时数据处理:示例 限流和速率控制:示例 会话存储和缓存:示例 地理位置应用:示例 总结&#xff1a;强烈推荐专栏集锦写在最后 强烈推荐 前些天…

爆肝!Claude3与ChatGPT-4到底谁厉害,看完你就知道了!

前言&#xff1a; 相信大家在pyq都被这张图片刷屏了把~ 昨天&#xff0c;为大家介绍了一下什么是Claude&#xff0c;今天咱终于弄到号了&#xff08;再被ban了3个号之后终于是成功的登上去了&#xff0c;如果各位看官觉得咱文章写的不错&#xff0c;麻烦点个小小的关注~你们的…

AI发展历程和常用框架

AI发展历程 近几年的人工智能发展历程可以大致划分为以下几个阶段&#xff1a; 数据驱动的突破&#xff08;2012-2015年&#xff09;&#xff1a;这一时期&#xff0c;随着大数据的兴起和计算能力的提升&#xff0c;深度学习技术开始取得突破。以AlexNet在2012年ImageNet图像…

考研数学——高数:多元函数微分法及其应用

因为复习阶段全篇很细节的写下来一来比较费时间&#xff0c;二容易导致为了记笔记而记。 接下来的内容只会保留上课中比较有意义的地方&#xff0c;以及有自己助于理解的想法 全微分 助记&#xff1a; 证明是否可微&#xff0c;首先判断两个偏导数是否存在&#xff0c;不存在则…

30m二级分类土地利用数据Arcgis预处理及获取

本篇以武汉市为例&#xff0c;主要介绍将土地利用数据转换成武汉市内各区土地利用详情的过程以及分区统计每个区内各地类面积情况&#xff0c;后面还有制作过程中遇到的面积制表后数据过小的解决方法以及一些相关的知识点&#xff1a; 示例数据下载链接&#xff1a;数据下载链…

(二) 数据库系统的结构抽象与演变

2.1三层模式与两层映像&#xff0c;物理独立性和逻辑独立性 从数据角度可以分为三层视图模式默认指的是全局模式&#xff0c;视图默认指的是外部视图 一个数据库只有一个内模式 DBMS要让用户定义三层模式&#xff0c;程序自动地实现两层映像 。 从外部视图到外模式的数据结构的…

03.axios数据提交和错误处理

一.axios常用请求方法和数据提交 1. 想要提交数据&#xff0c;先来了解什么是请求方法 请求方法是一些固定单词的英文&#xff0c;例如&#xff1a;GET&#xff0c;POST&#xff0c;PUT&#xff0c;DELETE&#xff0c;PATCH&#xff08;这些都是http协议规定的&#xff09;&am…