Bootstrap

ERC论文阅读(03)--SPCL论文阅读笔记(2024-10-29)

SPCL论文阅读笔记

论文中心思想

这篇论文是研究ERC任务的论文,作者提出了监督原型对比学习的方法用于ERC任务。

论文

EMNLP2022 paper “Supervised Prototypical Contrastive Learning for Emotion Recognition in Conversation”

现存问题

现存的使用监督对比学习解决ERC任务仍然存在两个问题:

  1. ERC数据集经常是类别不平衡的并且可能在小的批次中无法满足适当的正负样本比例

  2. 现存ERC数据集通常是多模态的方式收集的,存在一些对话的文本信息不足以区分情绪

解决方法

对于第1个问题,提出监督原型对比损失(整合了原型网络和监督对比学习) 具体如何计算我这里没有看懂

对于第2个问题,将课程学习与对比学习相结合。设计了一个基于距离的难度度量函数

方法具体实现

原型向量如何获取没看懂
原型对比学习如何学习没看懂
课程策略没看懂
有监督的原型对比学习损失函数如何计算:
将每个类别的原型向量引入损失中?
第i个类别的原型向量:从表示队列中随机挑选K个样本作为支持集,将支持集的平均值作为原型向量。
得到的原型向量作为对应类别的一个样本,

实验结果

实验表明,在类别不平衡情景下SPCL能够工作得很好,并且对于训练批次大小没有那么敏感

创新性

提出SPCL损失
第一个将课程学习与对比学习联合用于ERC
创新性主要是在训练策略上面,模型结构就是用的SimCSE??

代码环境配置

pytorch1.7.0要求python>=3.6 python<=3.8
但是这里装3.7报错了,改装了3.8
GPU:RTX3090(网上租的)
创建虚拟环境,在虚拟环境中安装pytorch: conda install pytorch==1.7.0 cudatoolkit=11.0 -c pytorch
然后,按照作者的readme文件,安装requirements.txt

注:个人觉得这个代码比较复杂,我看了好久才看明白,555~ 怪本人菜,好好努力呀~

补充知识

原型对比学习:前人提出的用于综合对比学习和聚类学习两种方法的一种方法。
原型:代表一组语义上相似的实例的代表性嵌入,通过聚类算法找到原型,并将每个实例分配给不同的原型。

结论

提出用于ERC任务的SPCL损失,在类别不平衡的数据上也表现不错,对于训练batch size也没有那么敏感。

其他

笔记都是本人的个人意见和想法,仅供参考,如果您有任何建议也非常欢迎留言指出~
2024-10-29
的的

;