机器情绪及抑郁症识别算法详解:Graph-MFN模型
机器情绪及抑郁症识别算法详解:Graph-MFN模型
随着人工智能技术的不断发展,机器在情感识别和抑郁症检测领域的应用越来越广泛。本文将介绍一种基于多模态学习的Graph-MFN模型,该模型在多个数据集上都取得了优异的性能表现。
语言起源理论将语言与非语言行为(视觉和声学模态)的结合视为人类在进化过程中使用的主要交流形式(Müller,1866)。在自然语言处理中,这种形式的语言被称为人类多模态语言。近年来,多模态语言建模已成为自然语言处理(NLP)和多模态机器学习的核心研究方向之一。研究致力于建模多模态语言的双重动态:模态内动态(每个模态内的动态)和跨模态动态(不同模态之间的动态)。
另外多模态抑郁症检测应运而生,依托于人工智能、机器学习和大数据分析等技术的进步,通过综合分析语音、表情、文本、行为、心理生理数据等多种信息源,能够更全面地捕捉和识别抑郁症的多维度表现。这种方法不仅提高了抑郁症检测的准确性和客观性,还具有早期发现、持续监测和个性化干预的潜力,为抑郁症的管理和治疗带来了新的希望和可能性。
模型结构
动态融合图(DFG)
在本节中,我们讨论了所提出的动态融合图(DFG)神经模型的内部结构。DFG 具有以下特性: 1)它能够显式建模n模态交互; 2)使用了高效的参数数量(相比于先前的方法,如Tensor Fusion); 3)可以根据每个n模态动态的重要性在推理过程中动态改变其结构,并选择合适的融合图。假设模态集合为M=(l)语言,(v)视觉,(a)声学M=(l)语言,(v)视觉,(a)声学。单模态动态表示为l,v,al,v,a,双模态动态为l,v,v,a,l,al,v,v,a,l,a,三模态动态为l,v,al,v,a。这些动态以潜在表示的形式存在,并且每个都被视为图G=(V,E)G=(V,E)中的顶点,VV是顶点集合,EE是边集合。仅当vi∈vjvi ∈vj 时,两个顶点vivi 和vjvj 之间建立方向性神经连接。例如,l∈l,vl∈l,v,这导致<语言>和<语言, 视觉>之间的连接。此连接被表示为一条边eijeij 。DjDj 将所有满足上述神经连接公式的vivi 作为vjvj 的输入。
作者为每条边 eijeij 定义了一个效能,记作 αijαij 。vivi 在作为 DjDj 的输入之前会乘以 αijαij 。每个 αα 都是一个经过 sigmoid 激活的概率神经元,用于表示 vivi 和 vjvj 之间连接的强弱。αα 是 DFG 可解释性的主要来源。所有 αα 的向量是通过一个深度神经网络 DαDα 推断的,输入为顶点集 VV 中的单例顶点(如语言、视觉和声学)。通过监督训练目标来学习 DαDα 的参数,并有效利用这些效能,从而动态控制图的结构。选择单例顶点是因为它们没有入边,因此不需要关联任何效能(推断单例顶点不需要效能)。这些单例顶点 ll、vv 和 aa 也是 DFG 的输入。在下一节中,将讨论这些输入如何传递给 DFG。所有顶点通过各自效能缩放的边与网络的输出顶点 TtTt 相连。框架图展示了顶点、边和相应效能的整体结构。总共有8个顶点(包括输出顶点)、19条边以及随后19个效能。
Graph-MFN
为了测试 DFG 的性能,作者采用了类似于 Memory Fusion Network (MFN) 的递归架构。MFN 是一个具有三个主要组件的递归神经模型:1)LSTM 系统:一组并行的 LSTM,每个 LSTM 处理单一模态;2)Delta-memory Attention Network 是执行多模态融合的组件,通过分配系数来突出跨模态动态;3)多视图门控记忆是存储多模态融合输出的组件。将 Delta-memory Attention Network 替换为 DFG,并将修改后的模型称为图记忆融合网络 (Graph-MFN)。图 4 展示了 Graph-MFN 的整体架构。
与 MFN 类似,Graph-MFN 也使用 LSTM 系统来处理各个模态。clcl 、cvcv 和 caca 分别代表语言、视觉和声学模态的 LSTM 记忆。DmDm ,其中 m∈{l,v,a}m∈{l,v,a},是一个全连接的深度神经网络,输入为 LSTM 在两个连续时间戳 t−1t−1 和 tt 之间的表示 hm[t−1,t]hm [t−1,t],使网络能够跟踪随时间变化的记忆维度。DlDl 、DvDv 和 DaDa 的输出为 DFG 的单例顶点。DFG 模型跨模态交互,并将其输出顶点 TtTt 编码为多模态表示,存储在多视图门控记忆 utut 中。多视图门控记忆通过网络 DuDu 将 TtTt 转化为提议的记忆更新 u^tu^t 。γ1γ1 和 γ2γ2 分别是多视图门控记忆的保持和更新门控,它们通过网络 Dγ1Dγ1 和 Dγ2Dγ2 学习。最后,网络 DzDz 将 TtTt 转化为多模态表示 ztzt ,用于更新 LSTM 系统。在所有实验中,Graph-MFN 的输出是每个 LSTM 的最终输出 hmThmT 以及最后一个递归时间步 TT 的多视图门控记忆内容 uTuT 。这一输出随后连接到分类或回归层以进行最终的情感或情绪识别预测。
数据集介绍
CMU-MOSI
CMU-MOSI数据集是MSA研究中流行的基准数据集。该数据集是YouTube独白的集合,演讲者在其中表达他们对电影等主题的看法。MOSI共有93个视频,跨越89个远距离扬声器,包含2198个主观话语视频片段。这些话语被手动注释为[-3,3]之间的连续意见评分,其中-3/+3表示强烈的消极/积极情绪。
CMU-MOSEI
CMU-MOSEI数据集是对MOSI的改进,具有更多的话语数量,样本,扬声器和主题的更大多样性。该数据集包含23453个带注释的视频片段(话语),来自5000个视频,1000个不同的扬声器和250个不同的主题
AVEC2019
AVEC2019 DDS数据集是从患者临床访谈的视听记录中获得的。访谈由虚拟代理进行,以排除人为干扰。与上述两个数据集不同的是,AVEC2019中的每种模态都提供了几种不同的特征。例如,声学模态包括MFCC、eGeMaps以及由VGG和DenseNet提取的深度特征。在之前的研究中,发现MFCC和AU姿势分别是声学和视觉模态中两个最具鉴别力的特征。因此,为了简单和高效的目的,我们只使用MFCC和AU姿势特征来检测抑郁症。数据集用区间[0,24]内的PHQ-8评分进行注释,PHQ-8评分越大,抑郁倾向越严重。该基准数据集中有163个训练样本、56个验证样本和56个测试样本。
SIMS/SIMSV2
CH-SIMS数据集[35]是一个中文多模态情感分析数据集,为每种模态提供了详细的标注。该数据集包括2281个精选视频片段,这些片段来自各种电影、电视剧和综艺节目,每个样本都被赋予了情感分数,范围从-1(极度负面)到1(极度正面)
性能展示
MOSI和MOSEI数据集
SIMS数据集
Model | MAE | Corr | Acc-2 | F1 |
---|---|---|---|---|
TFN | 43.22 | 59.1 | 78.38 | 78.62 |
LMF | 44.12 | 57.59 | 77.77 | 77.88 |
MFN | 43.49 | 58.24 | 77.90 | 77.88 |
MulT | 45.32 | 56.41 | 78.56 | 79.66 |
Self-MM | 42.50 | 59.52 | 80.04 | 80.44 |
Graph-MFN | 41.00 | 58.88 | 81.84 | 81.82 |
抑郁症检测数据集AVEC2019
Model | CCC | MAE |
---|---|---|
Baseline | 0.111 | 6.37 |
EF | 0.34 | - |
Bert-CNN & Gated-CNN | 0.403 | 6.11 |
Multi-scale Temporal Dilated CNN | 0.430 | 4.39 |
MULT | 0.426 | 4.45 |
Graph-MFN | 0.432 | 4.35 |
复现过程
在下载附件并准备好数据集并调试代码后,进行下面的步骤,附件已经调通并修改,可直接正常运行;
安装多模态情感分析集成包
pip install MMSA
进行训练
from MMSA import MMSA_run
# run LMF on MOSI with default hyper parameters
MMSA_run('lmf', 'mosi', seeds=[1111, 1112, 1113], gpu_ids=[0])
# tune Self_mm on MOSEI with default hyper parameter range
MMSA_run('self_mm', 'mosei', seeds=[1111], gpu_ids=[1])
# run TFN on SIMS with altered config
config = get_config_regression('tfn', 'mosi')
config['post_fusion_dim'] = 32
config['featurePath'] = '~/feature.pkl'
MMSA_run('tfn', 'mosi', config=config, seeds=[1111])
# run MTFN on SIMS with custom config file
MMSA_run('mtfn', 'sims', config_file='./config.json')
运行过程
- 训练过程
- 最终结果
- 随时间推移 DFG 功效的可视化。 当 DFG 接触到新信息时,功效(因此 DFG 结构)会随着时间而变化。 DFG 能够选择依赖哪个 n 模态动力学。 它还学习有关人类交流的先验,因为某些功效(因此 DFG 中的边缘)在时间和数据点上保持不变。
本文原文来自腾讯云开发者社区