朋友,我能分享你的喜怒吗?阿里语音情感识别框架揭秘

简介: 在本文中我们提出了一套包含多个子系统的复合情感识别框架。这一框架会深入挖掘输入语音中与情感相关的各个方面的信息,从而提高系统的顽健性。

小叽导读:情感识别(即,识别开心,忧伤等)现在愈来愈受到人们的关注,因为它可以提升人机交互界面的用户体验,进而提升产品的用户粘性,并在心理医疗健康方面等具有独特价值。基于语音的情感识别尤其具有现实意义,因为基于语音的人机交互界面具有相对较低的硬件要求。但是,在现实中,周围环境中存在着许多噪声,这些噪声将会降低系统的识别性能。在本文中我们提出了一套包含多个子系统的复合情感识别框架。这一框架会深入挖掘输入语音中与情感相关的各个方面的信息,从而提高系统的顽健性。

作者:陶斐、刘刚、赵情恩

会议:ICASSP-2018


研究背景

在现实生活中,基于语音的人工智能系统处在复杂的场景当中,因而会面临各种各样的挑战。对于情感识别来说,主要的挑战来自于两个方面:

周围存在背景噪声,因而传统的特征提取,比如在整句话层面上提取统计参数的方法将受到严重干扰;

用户说话的方式比较随意,不能如实验室中那样很好地控制输入语音,有时候用户会有一些发出一些非语音的声音,比如哭声,笑声,咳嗽声等,这些声音有些与情感有关,有些则完全无关。

面对这两个挑战,我们提出了一套复合情感识别框架。这套框架会对底层和高层特征进行识别,因此可以对一些背景噪声有一定的顽健性;同时这套框架也会利用注意力模型(attention model)学习特征序列中重要时间点的特征,以及利用语音中的文本信息对情感信息进行分类——这些机制可以有效避免用户的非语音声音或者长静音对识别的干扰。

复合情感识别框架

在本文中,我们提出了一套复合的情感识别框架。这一框架由若干子系统组合而成,其中包括基于整句话(utterance level)底层特征(low level descriptor)的识别系统,基于整句话高层表述的识别系统,基于序列特征的识别系统,以及基于语义信息的识别系统(见Fig 1)。

image.png

Fig1 The proposed ensemble framework for emotion recognition

其中,基于整句话底层特征的识别系统为一个深度神经网络,采用多任务训练(multitasklearning)方式进行训练(见Fig 2),采用的特征为从opensmile提取的Interspeech 2010 LLD特征集。在这个神经网络中,我们在trunk部分有两层隐层(hidden layer)(每层4096个神经元),在branch部分,每个任务有一层隐层(1024神经元),之后有一层 柔性最大激活函数(softmax)。其中我们的神经元均使用精馏线性单元(rectified linearunit)。

image.png

Fig2 The multitask learning DNN

基于整句话高层表述的识别系统也是采用一个深度神经网络,同样也是采用多任务训练方式进行训练。采用的特征为200维iVector(从一个由4000小时语音训练的语音识别(ASR)系统中提取)。这里我们采用的网络结构与底层特征识别系统的神经网络相同,唯一的区别为,这个一个系统在trunk部分每一层只有1024个神经元。

基于序列特征的子系统采用递归神经网络,对输入序列进行建模,在递归神经网络上采用基于attention model的加权池化层(weighted pooling)(见Fig 3),将输入的一个序列提取成一个高层表述。基于这个高层表述进行分类。这一子系统也采用多任务训练方式进行训练。这一递归网络与上述神经网络的大致结构相似,区别为在trunk部分,我们使用了RNN,并且在RNN上利用attention based weighted pooling layer来提取高端表述(high level representation)。

image.png

上述三个子系统中的多任务训练,我们采用三个任务,情感识别为主任务(权重为1),说话人识别(权重为0.3)和性别识别(权重为0.6)为辅助任务。在多任务训练中,由于系统可以看到更多的任务信息,可以更好地检视输入的特征,因此可以更好地训练神经网络。

除了上述三个子系统外,还有一个子系统是基于文本的子系统。该子系统采用支持向量机(supportvector machine),使用了从语音识别系统中获取的文本。这一系列子系统的识别结果会通过线性相加组合起来,从而得到最后的结果。

实验

我们在多模情感识别竞赛2017数据集(MEC 2017)上测试这一套框架。MEC 2017数据集是采集自影视作品,其中包含了许多背景噪声(汽车噪声,工厂噪声等等),以及说话人的非语音声音(哭声、笑声等等)。其中各类情感的分布如下。

image.png

根据MEC 2017的建议,我们采用无权重平均F-score(MAF)和准确率作为我们的衡量标准。考虑到数据库中的数据不平衡性,我们主要关注MAF指标。

实验中,我们采用两套系统作为参照系统,一套是MEC2017建议的random forest 系统,还有一套是利用Interspeech 2017特征集搭建DNN的情感识别系统。具体实验结果如下:

image.png

由实验结果可以看到,我们提出的这一套框架,可以远远超过参照系统(分别增加了11.9%和7.8%准确率)。即使四个子系统的识别率参差不齐,最后组合之后的结果依然超过了所有的子系统,可以推测这个过程中全面检视输入信息,可以很有效的提高识别准确率和系统顽健性。

结论

我们将这一套系统应用于中文的影视作品数据库上。之所以应用到这一数据库上,是因为影视作品中的场景比较接近现实生活。结果显示,我们的系统可以全面超越现有的基于深度学习的前沿系统。这一成功,可以说明我们的这一套框架可以有助于在现实中实现情感识别。

论文地址:https://arxiv.org/abs/1803.01122.pdf

目录
相关文章
|
存储 负载均衡 Cloud Native
gRPC的原理和实践
gRPC的原理和实践
1511 1
gRPC的原理和实践
|
4月前
|
人工智能 安全 API
阿里云JVS智能体套件对接使用完全指南:从架构解析到生产级集成
本文深度解析阿里云JVS智能体套件的产品体系、技术架构与完整对接使用方法。JVS基于Harness分布式架构,由JVS Claw(开箱即用AI助理)、JVS Crew(企业级全托管智能体底座)和JVS Mobile(移动端智能自动化平台)三大产品组成。文章从账号准备、Clawbot创建、模型配置、多渠道接入(微信、企业微信、钉钉等)到API深度集成(含Python完整示例)、自定义Skill开发、安全合规与计费策略,层层递进,提供一站式从零到一构建企业级AI智能体的完整技术指南。同时深入解析JVS的"环境范式"设计理念——智能在模型、执行在沙箱,以及Harness四层架构如何实现安全隔离与动态
|
4月前
|
人工智能 安全 搜索推荐
7月16日北京站 | Agent用云实操沙龙:让Agent安全、稳定、高效调用云
Agent调云落地难?OpenAPI参数难猜、工具调用纠结、Token失控、安全难保障……本沙龙直击5大工程痛点,拆解插件/工具链/平台三类接入方案,实演安全与成本双治理,并设分组研讨+专家答疑。7月16日北京阿里云科技园,席位有限,速报名!
|
6月前
|
人工智能 监控 搜索推荐
AI购物搜索的底层秘密:你的商品为何被推荐,又为何被淹没
本文揭秘2026年AI购物搜索底层逻辑:告别关键词竞价,转向“意图拆解—知识库匹配—上下文排序”新范式。详解千问×淘宝、豆包×抖音两大战场,揭示GEO优化核心——聚焦行业高权重信源、结构化商品信息、统一主体深耕,助中小商家破局AI流量红利。(239字)
|
8月前
|
JavaScript 前端开发 NoSQL
Node.js 后端开发全解析:从核心原理架构到实战应用
本文系统解析Node.js核心原理(V8+libuv、事件循环)、后端分层/MVC架构、Express/NestJS实战案例,并客观分析其高并发优势与CPU密集型短板,助力开发者精准选型与高效落地。(239字)
848 2
|
10月前
|
机器学习/深度学习 移动开发 编解码
YOLO26 改进 - C2PSA | C2PSA融合MSLA多尺度线性注意力:并行多分支架构融合上下文语义,提升特征判别力 | Arxiv 2025
本文提出多尺度线性注意力机制MSLA,通过并行3×3/5×5/7×7/9×9深度卷积提取多尺度特征,结合低复杂度线性注意力(O(N)),兼顾细粒度局部细节与全局长程依赖。将其集成至YOLO26,构建C2PSA_MSLA模块,在医学图像分割与目标检测任务中显著提升性能、效率与鲁棒性。(239字)
YOLO26 改进 - C2PSA | C2PSA融合MSLA多尺度线性注意力:并行多分支架构融合上下文语义,提升特征判别力 | Arxiv 2025
|
10月前
|
运维 负载均衡 安全
面向未来的国际短信验证平台技术架构与深度解析
国际短信验证平台已从早期简单的号码服务,演进为技术密集、安全可控、合规健全的一体化通信解决方案,该片由浅入深讨论国际短信平台的技术与架构。
面向未来的国际短信验证平台技术架构与深度解析
|
10月前
|
缓存 监控 测试技术
Playwright性能优化:减少测试执行时间的10个技巧
当E2E测试耗时过长,优化势在必行。我们团队将45分钟的测试套件优化至8分钟,实战总结10大技巧:并行执行、浏览器复用、选择性运行、智能等待、预置数据、资源拦截、合理分层、状态缓存、硬件升级与持续监控。组合拳出击,显著提升效率。
|
自然语言处理 JavaScript 数据管理
HarmonyOS Next 实战卡片开发 01
本文详细介绍了 HarmonyOS Next 中的卡片开发,涵盖基本概念、类型、创建、配置、能力支持、生命周期及通信等内容。Form Kit 提供将应用重要信息前置到服务卡片的功能,减少跳转层级,适用于嵌入系统应用(如桌面),支持拉起页面与发送消息等交互。卡片分为静态与动态两种类型,分别适用于不同刷新需求场景。
732 0
HarmonyOS Next 实战卡片开发 01
|
传感器 物联网 开发者
使用Python读取串行设备的温度数据
本文介绍了如何使用Python通过串行接口(如UART、RS-232或RS-485)读取温度传感器的数据。详细步骤包括硬件连接、安装`pyserial`库、配置串行端口、发送请求及解析响应等。适合嵌入式系统和物联网应用开发者参考。
806 3