自监督多任务学习用于多模态情感分析
Learning Modality-Specific Representation with Self-Supervised Mulit-Task Learning for Multimodal Sentiment Analysis
Abstract
- 多模态数据集只是给三个模态定一个统一的标签,要对每一个单独模态标注非常费时费力,但是每一个单独模态的有不同的信息。
- 本文基于自监督学习(self-supervised learning)提出了标签生成模块用于获得每一个单独模态的标签,并且联合多模态和单模态学习分别学习一致性和不同性。不仅如此,还设计了权重调节策略(weight-adjustment strategy)引导子任务聚焦在模态之间更加不同的采样上。
- 在MOSI和MOSEI上做了实验验证性能,并且在具有人工标注的SIMS数据上验证了相比于人工标注的性能
introduction
- 根据表示学习中对于任务指引的不同,将方法分为两种:前向指引(forward guidance)和后向指引(backward guidance)。前者聚焦于设计一个捕获模态之间交互的交互模块,后者聚焦于对任务实加额外的损失函数作为先验约束。本文使用后者的方式
- 关联论文 – SIMS以及MISA (独立单模态的标注以及modality-specific 表示
model
- 目标:获得自动生成的信息丰富的单模态表示,并且联合多模态和三个单独模态进行多任务学习。这篇工作将情感分析作为一个回归任务 – 得出一个实数
- 左边的编码部分,文本利用bert进行编码并且取最后一层的第一个token-vector作为对整个句子的表示。其余两个利用预训练的工具抽取之后,经过单向的lstm将最后一个hidden vector输出,三者拼接。 第一个全连接用于转换维度,第二个用于预测
- 右边单模态部分,由于每一个模态的维度不同,首先使用全连接转换维度,然后利用单模态标签生成模块生成每一个单一模块的标签
单模态生成模块(ULGM)
- 基于多模态的表示以及模态的表示来生成每一个单一模态的标签值
D代表模态和类中心的距离 - 计算不同模态的positive center 以及negative center,也就是类中心(class centers)
- 计算每一个单模态表示与类中心(两个)的距离 (distance)
- 根据上面得到的距离计算相对距离(relative distance value)
- 根据公式的推导,就后可以得到每一个单模态的监督值(也就是伪标签)其实可以用多模态的标签值加上偏置得到
- 最后动态的更新每一个监督值,由于一开始产生的单模态标签值并不稳定,所以进行动态调整,并且在每一次计算中都考虑了前面一个epoch的标签值
- 完整的算法如下,其中第3 6 11-13 以及15为重点
优化目标
“we use the difference between u-labels and m-labels as the weight of loss function. It indicates that the network should pay more attention on the samples with larger difference .W
Experiment
- 在对齐与非对齐下都进行了验证,对比的baseline也比较新。