✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。
我是Srlua小谢,在这里我会分享我的知识和经验。🎥
希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮
记得先点赞👍后阅读哦~ 👏👏
📘📚 所属专栏:传知代码论文复现
欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙
目录
Coarse-grained Noise Metric 粗粒度噪声度量
Fine-grained Noise Metric 细粒度噪声度量
Single Denoising Curriculum 单一降噪课程
本文所有资源均可在该地址处获取。
论文地址
https://arxiv.org/pdf/2310.14605
主要内容
这篇文章介绍了一个名为M2DF(Multi-grained Multi-curriculum Denoising Framework)的新型多模态去噪框架,用于多模态基于方面的细粒度情感分析(MABSA)。MABSA是一项复杂的情感分析任务,它涉及到从文本和图像中提取特定方面的术语并确定其情感倾向。文章的主要贡献包括:
- 提出了一个新的视角来减少MABSA任务中噪声图像的负面影响。
- 设计了一个新颖的多粒度多课程去噪框架(M2DF),该框架与基础模型的选择无关。
- 在几个代表性模型上评估了去噪框架,包括当前的最先进模型,并在MABSA的三个子任务上展示了竞争性能。
M2DF框架通过调整训练数据的顺序来实现去噪,而不是通过设置阈值来过滤数据。文章通过广泛的实验结果表明,该框架在MABSA的三个子任务上一致地超越了现有的最先进工作。作者还提供了相关代码和数据集的链接。
此外,文章还回顾了MABSA和课程学习(Curriculum Learning, CL)的相关研究,并详细介绍了M2DF的方法论,包括噪声度量的定义和去噪课程的设计。最后,文章展示了实验设置、评估指标、与现有方法的比较结果以及对M2DF框架的深入分析和讨论。
主要贡献
这篇文章的主要贡献可以总结为以下几点:
-
新视角提出:文章提出了一个新的视角来减少多模态基于方面的细粒度情感分析(MABSA)任务中噪声图像的负面影响,而不需要通过过滤数据来实现。
-
M2DF框架:文章提出了一个名为M2DF(Multi-grained Multi-curriculum Denoising Framework)的新型去噪框架。这个框架独立于基础模型的选择,意味着它可以被应用于多种不同的模型上。
-
实验验证:作者在多个代表性模型上评估了M2DF框架,包括当前的最先进模型,并在MABSA的三个子任务上展示了其竞争性能。
-
噪声度量和去噪课程设计:文章定义了粗粒度和细粒度的噪声度量,并设计了单一度量和多度数量的去噪课程,这些设计有助于模型在训练过程中更有效地从干净数据中学习,同时减少噪声数据的负面影响。
-
深入分析:文章不仅展示了实验结果,还对M2DF框架的不同模块进行了消融研究,分析了不同模块对性能的影响,并探讨了M2DF在不同噪声水平数据子集上的表现。
-
局限性讨论:作者还讨论了当前研究的局限性,并提出了未来研究的方向,这为后续的研究提供了思路。
模型图
实线①表示当前训练步骤选择粗粒度去噪课程,虚线②表示未选择粗粒度去噪课程。
技术细节
数据集中存在许多与文本无关的噪声图像,这将对模型学习产生负面影响。
一些研究人员开发了跨模态关系检测模块,通过设置阈值来过滤低质量的噪声图像。然而,依赖阈值不可避免地会过滤掉大量有用的图像信息。
因此,在这项工作中,考虑在不过滤数据的情况下减少噪声图像的负面影响
简单来说,就是多模态数据集中图像文本可能出现不对应的情况,这个时候数据可能就不那么准确可能会让模型练错,因此希望通过让模型在高质量的数据集中多练会以减少数据集中的噪声部分对模型的影响。
Coarse-grained Noise Metric 粗粒度噪声度量
就是通过句子和图像的相似度来对数据集的质量进行衡量
是句子经过CLIP的文本编码器的特征向量,cos表示计算余弦相似度。V就是对应的图像部分的CLIP编码表示。
相似度越低表明文本和图像越不匹配,说明这组数据越有可能是噪声
Fine-grained Noise Metric 细粒度噪声度量
就是通过句子中的方面词(名词)和图像中的物体的相似度来对数据集的质量进行衡量
(3)是使用斯坦福解析器提取的名词短语作为句子中的方面术语(因为方面词大多数都是名词)。
(4)是使用目标检测模型Mask-RCNN提取图像中的视觉目标。
相似度越低表明文本和图像越不匹配,说明这组数据越有可能是噪声
Single Denoising Curriculum 单一降噪课程
其中p(0)为预定初始值,设为0.01,T为去噪过程的持续时间。在时间步长t处,p(t)表示噪声度量的上限,模型只允许使用噪声度量dc或df小于p(t)的训练实例。
模型在训练过程中不再以完全随机的顺序呈现训练数据,而是在干净数据上花更多的时间训练,在有噪声数据上花更少的时间训练
##Multiple Denoising Curriculum 多重去噪课程
sθ值越高,表示当前去噪课程取得的进展越大
验证集上两个连续表现的比率来衡量每个去噪课程的有效性
算法伪代码
首先进行初始化。计算出数据集的粗粒度和细粒度度量值,并计算出一组结果的比值
然后根据验证集的表现动态选择进行粗粒度筛选还是细粒度筛选。
实验结果
JMASA任务(句子+图片——识别方面及其情感)的实验结果
MATE任务(句子+图片——识别方面)的实验结果
MASC(句子+图片+方面——识别方面情感)任务的实验结果
可以看到,使用这个去噪方法,确实能够一定程度上优化模型的性能。
代码运行
环境配置
python 3.7.13
torch 1.12.0+cu113
numpy 1.21.6
transformers==3.4.0
fastnlp==0.6.0
h5py
可以换源加速安装:
pip install 包名 --default-timeout=120 -i https://pypi.tuna.tsinghua.edu.cn/simple
数据集目录结构
├── /src/
│ ├── /data/
│ │ │ ├── /jsons/
│ │ │ │ ├── twitter15_info.json # twitter15数据集路径的配置文件
│ │ │ │ ├── twitter17_info.json
│ │ │ │ ├── amended_similarity_by_region2015.json fine-grained similarity
│ │ │ │ ├── amended_similarity_by_region2017.json
│ │ │ │ ├── amended_similarity_by_whole2015.json coarse-grained similarity
│ │ │ │ ├── amended_similarity_by_whole2017.json
│ ├── /twitter2015/
│ ├── /twitter2017/
│ ├── /twitter2015_box_att_NER/
│ ├── /twitter2017_box_att_NER/
模型和数据集配置
网盘中的bart-base-model.zip中的内容解压到bart-base-model文件夹中
网盘中的pytorch_model.bin下载到checkpoint文件夹中
网盘中的twitter2015_box_att_NER.zip解压到src/data文件夹中
数据集路径配置可到twitter15_info.json修改
代码运行
- Train and Test on twitter2015
sh 15_pretrain_full.sh