项目介绍
这个项目介绍了一个基于Wav2vec 2.0的多维度语音情感识别模型。该模型由audeering公司开发,是一个专门用于研究目的的模型。它能够从原始音频信号中预测出激励度(arousal)、支配度(dominance)和效价(valence)三个维度的情感特征,输出值范围大约在0到1之间。
模型特点
-
该模型是在Facebook的Wav2Vec2-Large-Robust模型基础上进行微调得到的。
-
训练数据集使用的是MSP-Podcast(v1.7)。
-
在微调之前,模型被剪枝从24个transformer层减少到12个层。
-
除了输出情感预测结果,模型还能提供最后一个transformer层的池化状态。
-
模型的ONNX格式导出版本可以在Zenodo平台上获取。
使用方法
该项目提供了详细的Python代码示例,展示了如何使用这个模型进行情感预测和特征提取。主要步骤包括:
-
导入必要的库和模型类。
-
从Hugging Face模型库加载预训练的模型和处理器。
-
准备输入音频信号。
-
定义处理函数,该函数可以根据需要输出情感预测结果或提取嵌入特征。
-
调用处理函数,获取结果。
注意事项
-
这个模型仅供研究使用,如需商业用途,需要联系audeering公司获取商业许可。
-
模型期望输入的是原始音频信号。
-
输出结果包括激励度、支配度和效价三个维度的预测值。
-
模型还可以输出最后一个transformer层的池化状态,这可能对其他下游任务有用。
技术细节
-
模型架构包括一个Wav2Vec2Model作为基础,加上一个回归头(RegressionHead)用于情感预测。
-
回归头包含一个密集层、dropout层和输出投影层。
-
模型的前向传播过程包括通过Wav2Vec2Model提取特征,然后对特征进行平均池化,最后通过回归头得到最终预测结果。
-
代码示例中还展示了如何处理输入信号,包括使用处理器进行规范化,以及如何在CPU或其他设备上运行模型。
这个项目为研究人员提供了一个强大的工具,用于探索语音情感识别领域。通过提供详细的使用说明和代码示例,项目降低了研究者的使用门槛,有助于推动相关领域的研究进展。