CENet及多模态情感计算实战


✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:传知代码论文复现

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

​​

​​

目录

一、概述

二、论文地址

三、研究背景

四、主要贡献

五、论文思路

六、主要内容和网络架构

七、数据集介绍

八、性能对比

九、复现过程(重要)

十、演示结果


本文所有资源均可在该地址处获取。

一、概述

本文对 “Cross-Modal Enhancement Network for Multimodal Sentiment Analysis” 论文进行讲解和手把手复现教学,解决当下热门的多模态情感计算问题,并展示在MOSI和MOSEI两个数据集上的效果

二、论文地址

DOI: 10.1109/TMM.2022.3183830

三、研究背景

情感分析在人工智能向情感智能发展中起着重要作用。早期的情感分析研究主要集中在分析单模态数据上,包括文本情感分析、图像情感分析、音频情感分析等。然而,人类的情感是通过人体的多种感官来传达的。因此,单模态情感分析忽略了人类情感的多维性。相比之下,多模态情感分析通过结合文本、视觉和音频等多模态数据来推断一个人的情感状态。与单模态情感分析相比,多模态数据包含多样化的情感信息,具有更高的预测精度。目前,多模态情感分析已被广泛应用于视频理解、人机交互、政治活动等领域。近年来,随着互联网和各种多媒体平台的快速发展,通过互联网表达情感的载体和方式也变得越来越多样化。这导致了多媒体数据的快速增长,为多模态情感分析提供了大量的数据源。下图展示了多模态在情感计算任务中的优势。

四、主要贡献

  • 提出了一种跨模态增强网络,通过融入长范围非文本情感语境来增强预训练语言模型中的文本表示;
  • 提出一种特征转换策略,通过减小文本模态和非文本模态的初始表示之间的分布差异,促进了不同模态的融合;
  • 融合了新的预训练语言模型SentiLARE来提高模型对情感词的提取效率,从而提升对情感计算的准确性。

五、论文思路

作者提出的跨模态增强网络(CENet)模型通过将视觉和声学信息集成到语言模型中来增强文本表示。在基于transformer的预训练语言模型中嵌入跨模态增强(CE)模块,根据非对齐非文本数据中隐含的长程情感线索增强每个单词的表示。此外,针对声学模态和视觉模态,提出了一种特征转换策略,以减少语言模态和非语言模态的初始表示之间的分布差异,从而促进不同模态的融合。

六、主要内容和网络架构

首先我们展示一下CENet的总体网络架构


通过该图,我们可以看出该模型主要有以下几部分组成:1.非文本模态特征转化;2.跨模态增强;3.预训练语言模型输出;接下来将对他们分别进行讲解:
1. 非文本模态转换
针对预训练语言模型,初始文本表示是基于词汇表的单词索引序列,而视觉和听觉的表示则是实值向量序列。为了缩小这些异质模态之间的初始分布差异,进而减少在融合过程中非文本特征和文本特征之间的分布差距,本文提出了一种将非文本向量转换为索引的特征转换策略。这种策略有助于促进文本表征与非文本情感语境的有机融合。

具体而言,特征转换策略利用无监督聚类算法分别构建了“声学词汇表”和“视觉词汇表”。通过查询这些非语言词汇表,可以将原始的非语言特征序列转换为索引序列。下图展示了特征转换过程的具体步骤。考虑到k-means方法具有计算复杂度低和实现简单等优点,作者选择使用k-means算法来学习非语言模态的词汇。

2. 跨模态增强模块
本文提出的CE模块旨在将长程视觉和声学信息集成到预训练语言模型中,以增强文本的表示能力。CE模块的核心组件是跨模态嵌入单元,其结构如下图所示。该单元利用跨模态注意力机制捕捉长程非文本情感信息,并生成基于文本的非语言嵌入。嵌入层的参数可学习,用于将经过特征转换策略处理后得到的非文本索引向量映射到高维空间,然后生成文本模态对非文本模态的注意力权重矩阵。

在初始训练阶段,由于语言表征和非语言表征处于不同的特征空间,它们之间的相关性通常较低。因此,注意力权重矩阵中的元素可能较小。为了更有效地学习模型参数,研究者在应用softmax之前使用超参数来缩放这些注意力权重矩阵。

### 多模态情感分析概述 多模态情感分析是一种结合多个数据源(如文本、音频和图像)来更精确地理解和预测情感的技术。这种方法能够克服单一模态可能存在的局限性,从而提供更加全面的情感表达解读。 #### 基于 BERT 和 ResNet 的融合方法 一种常见的多模态情感分析方法是将自然语言处理中的预训练模型 BERT 与计算机视觉领域常用的卷积神经网络 ResNet 结合起来[^1]。这种组合可以分别提取文本和图像的特征,并通过不同的融合策略(如早期融合、晚期融合或注意力机制引导的融合),进一步提升分类效果。 ```python import torch from transformers import BertModel from torchvision.models import resnet50 class MultiModalFusion(torch.nn.Module): def __init__(self, bert_model_name='bert-base-uncased'): super(MultiModalFusion, self).__init__() # 初始化BERT用于文本特征提取 self.bert = BertModel.from_pretrained(bert_model_name) # 使用ResNet50作为图像特征提取器 self.resnet = resnet50(pretrained=True) # 融合层设计 self.fusion_layer = torch.nn.Linear(768 + 2048, 128) # 合并后的维度 # 输出层定义 self.output_layer = torch.nn.Linear(128, num_classes=3) # 如正面、负面、中立 def forward(self, text_input_ids, image_features): text_output = self.bert(text_input_ids).last_hidden_state[:, 0, :] # CLS token embedding image_output = self.resnet(image_features) # 图像特征向量 combined_feature = torch.cat((text_output, image_output), dim=-1) fused_representation = self.fusion_layer(combined_feature) output = self.output_layer(fused_representation) return output ``` 上述代码展示了如何构建一个多模态模型的基础结构,其中 `BertModel` 提取文本语义信息而 `resnet50` 则负责图片内容解析。 #### UniMSE - 统一多模态情感分析框架 另一个先进的解决方案是由 **UniMSE** 提供的整体化方案[^2]。它采用了一种新颖的方式来进行跨模态的知识共享以及对比学习,旨在缩小不同类型输入之间固有的差异。具体来说: - 它提出了一个通用表示空间,在此空间内各种形式的信息被映射到相同尺度下; - 应用了模态内部及外部的一致性和互补性约束条件; - 验证结果显示其在主流评测集合 MOSI、MOSEI 等上均超越了当前技术水平。 #### CENet - 跨模态增强网络 除此之外,“Cross-modal Enhancement Network (CENet)”也是一项值得关注的研究成果[^3]。该算法特别强调解决因媒介特性各异而导致的表现鸿沟问题。借助特定模块的设计,它可以有效放大那些对于最终决策至关重要的部分信号强度,同时抑制噪声干扰的影响。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值