当前位置: 首页 > news >正文

ER论文阅读-Incomplete Multimodality-Diffused Emotion Recognition

基本介绍:NeurIPS, 2024, CCF-A

原文链接:https://proceedings.neurips.cc/paper_files/paper/2023/file/372cb7805eaccb2b7eed641271a30eec-Paper-Conference.pdf

Abstract

        人类多模态情感识别(MER)旨在通过多种异质模态(如语言、视觉和音频)感知和理解人类情感。与单一模态相比,多模态中的互补信息有助于更稳健的情感理解。然而,在现实世界的场景中,模态缺失阻碍了多模态理解,导致MER性能下降。为了解决这一问题,本文提出了一种不完全多模态-扩散情感识别(IMDer)方法,以缓解不完全多模态下的MER挑战。为了恢复缺失的模态,IMDer利用基于分数的扩散模型,将输入的高斯噪声映射到缺失模态的期望分布空间,并根据其原始分布恢复缺失数据。特别地,为了减少缺失模态和恢复模态之间的语义歧义,现有的模态被嵌入为条件,以引导和优化基于扩散的恢复过程。与以往的工作相比,IMDer中的基于扩散的模态恢复机制能够同时实现分布一致性和语义消歧。恢复模态的特征可视化展示了模态特定分布的连续性和语义对齐。此外,定量实验结果验证了IMDer在各种模态缺失模式下取得了最新的MER准确率。

Introduction

        受益于多模态数据的内在异质性,各种模态被用于多模态情感识别(MER)以从协同的角度理解人类的行为和意图。近年来,MER已成为情感计算领域最活跃的研究课题之一,具有诸多应用,如医疗保健和机器人技术。稳健的MER依赖于从多样化的模态中学习和结合表示。在之前的研究中,Zadeh等人设计了一个张量融合网络,该网络将配对的模态作为输入以编码双模态表示,随后融合生成三模态表示。Tsai等人提出了一种多模态Transformer,用于学习模态之间的潜在适应性和相关性。此后,各种先进的方法探索了多模态Transformer的不同变体,以构建稳健的MER框架。

        然而,在现实世界的场景中,并非所有模态总是可用的,例如,语言数据可能由于语音识别错误而丢失;视频数据可能由于隐私和安全问题无法访问。这些不完整的多模态数据最终严重阻碍了MER的性能。对于不完全多模态下的MER,一种简单的方法是从现有模态中恢复缺失的模态。如图1(a)所示,便捷的模态恢复方法旨在通过设计良好的编码器-解码器框架,建立可用模态与缺失模态之间的映射来恢复缺失模态。

        其中,赵等人结合了自动编码器与循环一致性学习进行模态恢复。Lian等人设计了一种图补全网络,利用图神经网络重构缺失部分。然而,这些早期方法未能明确考虑与每个模态的内在区分性高度相关的模态特定分布。例如,一张图像通过成千上万个像素展示了快乐面孔的视觉外观,而相应的文本则使用离散的词语描述了这一情感。

        在本文中,我们旨在通过提出一种不完全多模态-扩散情感识别(IMDer)方法,挑战不完全多模态下的MER问题,如图1(b)所示。为了恢复缺失的模态,IMDer利用了流行的基于分数的扩散模型,该模型将输入的随机噪声映射到缺失模态的分布空间。特别地,基于分数的扩散模型通过随机微分方程(SDE)扰动数据来捕捉缺失模态的分布。在拥有足够数据和模型容量的情况下,我们能够通过解决逆时间SDE(即去噪过程),从先验噪声分布开始,利用训练良好的分数模型恢复分布一致的模态。

        为了减少缺失模态与相应恢复模态之间的语义歧义,我们使用现有的可用模态作为语义条件,来引导和优化恢复过程。嵌入在可用模态中的信息促使IMDer同时实现分布一致性和语义消歧。最后,恢复的模态与现有的模态一起被输入到多模态融合和预测网络中,用于MER任务。总结而言,本研究的贡献如下:

  1. 为了应对不完全多模态下的MER挑战,我们提出了不完全多模态-扩散情感识别(IMDer)方法。IMDer将输入的随机噪声映射到缺失模态的分布空间,并根据其原始分布恢复缺失数据。
  2. 为了最大限度地减少缺失模态与恢复模态之间的语义歧义,我们利用可用模态作为先验条件,引导和优化恢复过程。这确保了恢复的模态在分布和语义上都保持一致。
  3. 我们在公开的MER数据集上进行了大量实验,在不同的模态缺失模式下均取得了优越或相当的结果。恢复模态的特征可视化表明了其分布一致性和语义对齐。

相关文章:

ER论文阅读-Incomplete Multimodality-Diffused Emotion Recognition

基本介绍:NeurIPS, 2024, CCF-A 原文链接:https://proceedings.neurips.cc/paper_files/paper/2023/file/372cb7805eaccb2b7eed641271a30eec-Paper-Conference.pdf Abstract 人类多模态情感识别(MER)旨在通过多种异质模态&#x…...

Matlab自学笔记36:日期时间型的概念、分类和创建方法

1.概念 日期时间型(Dates and Time)数据具有灵活的显示格式和高达毫微秒的精度,并且可以处理时区、夏令时和平闰年等特殊因素 2.日期时间型数据有以下三种表示方式 (1)Datetime型,表示日期时间点&#x…...

Spring Boot自定义配置项

Spring Boot自定义配置项 配置文件 在application.properties文件添加需要的配置 比如: file.pathD:\\flies\\springboot\\ConfigurationProperties 注解 使用注解ConfigurationProperties将配置项和实体Bean关联起来,实现配置项和实体类字段的关联&…...

【C++篇】C++类与对象深度解析(六):全面剖析拷贝省略、RVO、NRVO优化策略

文章目录 C类与对象前言读者须知RVO 与 NRVO 的启用条件如何确认优化是否启用? 1. 按值传递与拷贝省略1.1 按值传递的概念1.2 示例代码1.3 按值传递的性能影响1.3.1 完全不优化 1.4 不同编译器下的优化表现1.4.1 Visual Studio 2019普通优化1.4.2 Visual Studio 202…...

什么时候用synchronized,什么时候用Reentrantlock

文章目录 使用 synchronized 的场景使用 ReentrantLock 的场景综合考虑 使用 synchronized 的场景 synchronized 是 Java 内置的同步机制,使用起来比较简单且常用于如下场景: 1、简单的同步逻辑:当你的同步逻辑非常简单,比如只需…...

[ffmpeg]音频格式转换

本文主要梳理 ffmpeg 中的音频格式转换。由于采集的音频数据和编码器支持的音频格式可能不一样,所以经常需要进行格式转换。 API 调用 常用 API struct SwrContext *swr_alloc(void); int swr_init(struct SwrContext *s); struct SwrContext *swr_alloc_set_opt…...

SSRF工具类-SsrfTool

为了帮助开发人员和安全研究人员检测和修复SSRF(Server-Side Request Forgery)漏洞,存在 多种工具。这里我将给出一个简单的工具类示例,这个工具类可以用来检查一个给定的URL是否可 能引发SSRF攻击。请注意,这个工具类主要用于教育目的,并不意味着它可以完全防止所有的…...

python集合运算介绍及示例代码

Python 中的集合(set)是一种数据类型,用于存储唯一元素的无序集合。集合支持多种运算,如并集、交集、差集和对称差集,方便执行数学上的集合操作。 1. 创建集合 可以使用大括号 {} 或者 set() 函数创建集合&#xff1…...

『功能项目』按钮的打开关闭功能【73】

本章项目成果展示 我们打开上一篇72QFrameWork制作背包界面UGUI的项目, 本章要做的事情是制作打开背包与修改器的打开关闭按钮 首先打开UGUICanvas复制button按钮 重命名为ReviseBtn 修改脚本:UIManager.cs 将修改器UI在UGUICanvas预制体中设置为隐藏 运…...

Linux 常用命令 - more 【分页显示文件内容】

简介 more 命令源自英文单词 more, 表示 “更多”,它是一个基于文本的程序,用于查看文本文件的内容。该命令会逐页显示文件内容,允许用户按页浏览大型文本文件。当用户完成当前页的阅读后,可以通过按键(空格键或回车键…...

Kotlin Android 环境搭建

Kotlin Android 环境搭建 1. 引言 Kotlin 已成为 Android 开发的官方语言之一,因其简洁、表达性强和易于维护的特点而受到广大开发者的喜爱。在本教程中,我们将详细介绍如何在您的计算机上搭建 Kotlin Android 开发环境。 2. 系统要求 在开始搭建 Kotlin Android 开发环境…...

常见协议及其默认使用的端口号

在网络通信中,端口号用于标识特定的应用程序或服务。IANA(Internet Assigned Numbers Authority)负责分配和管理这些端口号。端口号分为三个范围: 熟知端口(Well-Known Ports):0到1023&#xf…...

04-Docker常用命令

04-Docker常用命令 启动类命令 启动docker systemctl start docker停止docker systemctl stop docker重启docker systemctl restart docker查看docker状态 systemctl status docker开机启动docker systemctl enable docker帮助类命令 查看docker版本 docker version查…...

数字化转型中的供应链管理优化

在当今全球化和数字化的浪潮下,企业供应链管理面临着前所未有的挑战和机遇,企业在数字化转型过程中,如何优化供应链管理成为提升竞争力的关键。通过应用先进技术如RPA机器人流程自动化、大数据分析、物联网等,企业可以显著提高物流…...

【Python报错已解决】SyntaxError: invalid syntax

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…...

树上差分+lca 黑暗的锁链

//** 太久不写了,感觉很难受。。。比赛最近打得也不好,课内任务又重,还要忙着做项目。何去何从。 今天又写了一题,用了树上差分的知识。下面来整理整理。 1.首先让我们学一下lca(最小公共父节点) 我用的…...

opencv4.5.5 GPU版本编译

一、安装环境 1、opencv4.5.5 下载地址:https://github.com/opencv/opencv/archive/refs/tags/4.5.5.ziphttps://gitee.com/mirrors/opencv/tree/4.5.0 2、opencv-contrib4.5.5 下载地址:https://github.com/opencv/opencv_contrib/archive/refs/tags/4…...

线性跟踪微分器TD详细测试(Simulink 算法框图+SCL完整源代码)

1、ADRC线性跟踪微分器 ADRC线性跟踪微分器(ST+SCL语言)_adrc算法在博途编程中scl语言-CSDN博客文章浏览阅读784次。本文介绍了ADRC线性跟踪微分器的算法和源代码,包括在SMART PLC和H5U平台上的实现。文章提供了ST和SCL语言的详细代码,并讨论了跟踪微分器在自动控制中的作用…...

LabVIEW闪退

LabVIEW闪退或无法启动可能由多个原因引起,特别是在使用了一段时间后突然发生的问题。重启电脑后 LabVIEW 和所有 NI 软件都无法打开,甚至在卸载和重装时也没有反应。这种情况通常与系统环境、软件冲突或 NI 软件组件的损坏有关。 1. 检查系统和软件冲突…...

【WPF】03 动态生成控件

说明 今天记录一篇关于动态生成控件的方法,也是反复查了一些资料,逐步完善成自己需要的方法,感觉还是比较好用的。通过这个需求,在网上也找了一些资料,发现了一个开源图形UI组件HandyControl,觉得比较好&a…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

conda相比python好处

Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理&#xff1a…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...

【2025年】解决Burpsuite抓不到https包的问题

环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...