语音情感分析技术解析:声学与文本融合方法
人类语音通过所说的话语及其表达方式传递说话者的情感和情绪。在语音助手等基于语音的计算系统以及呼叫中心会话等人际交互中,自动理解语音情感对于改善客户体验和结果至关重要。
为此,某中心软件开发工具包团队最近发布了一种语音情感分析模型,该模型使用机器学习从语音信号中估计情感。我们采用深度神经网络架构,提取并联合分析文本/语言信息和声学/音调信息。推理在短信号段上实时运行,并返回一组概率,表明该段表达积极、中性或消极情感的可能性。
DNN架构与两阶段训练
先前基于语音的情感和情绪分析方法通常包括两个步骤:估计预定的信号特征集(如音高和频谱能量波动),以及基于这些特征对情感进行分类。此类方法对于分类相对较短的情感表达有效,但其性能在自然对话语音信号上会下降。
在自然对话中,文本特征在传达情感或情绪方面起着重要作用。作为声学特征方法的替代方案,一些情感分析方法纯粹通过分析语音转录文本来关注文本特征。
某中心的语音情感分析采用混合方法。为确保模型包含声学特征和语言信息,我们从具有编码器-解码器架构的自动语音识别模型开始。我们训练模型同时识别情感和语音,然后冻结其编码器,用作情感分类模型的前端。
我们的两步训练过程首先训练自动语音识别器同时识别情感和语音。然后将ASR模型的编码器冻结,并用作情感分类模型的前端。
我们模型的ASR分支和分类分支都由深度学习前端提供输入,该前端使用自监督进行预训练,以提取有意义的语音信号特征,而不是先前基于语音的方法中使用的预定声学特征。
ASR分支的编码器对应于通常称为声学模型的部分,它将声学信号特征映射到词块或音素的抽象表示。解码器对应于语言模型,将这些块组装成有意义的单词。
在ASR训练中,前端保持固定,ASR编码器和解码器参数使用带有前置情感标签的转录进行训练——例如"积极 我很开心"。损失函数评估模型将输入特征映射到情感标签和转录的效果。因此,编码器学习音调信息和文本信息。
ASR训练完成后,使用预训练前端和训练过的ASR编码器构建分类器分支。编码器输出连接到轻量级分类器,前端和ASR编码器的参数都被冻结。然后,使用带有情感标签的语音输入,我们训练分类器输出积极、中性和消极情感的概率。它还训练检测语音存在——即输入是否包含任何语音。
训练第二个分类分支的目的是关注那些对估计情感和语音存在重要的ASR编码器输出,并减弱对应于输入话语实际转录的输出。
使用异构数据集进行训练
先前基于语音的情感和情绪分析模型通常使用规模较小、话语相对较短的数据集进行训练,但这对于自然对话的分析效果不佳。在我们的工作中,我们改用多个数据集的组合。
我们的多任务学习方法要求所有训练数据集都包含转录和情感标签。然而,可用数据集并不总是同时具备这两者。对于有转录但没有情感标签的数据集,我们使用某中心理解服务从转录中估计基于文本的情感。对于有情感标签但没有转录的数据集,我们使用某中心转录服务估计转录。对于既没有转录也没有情感标签的语音数据集,我们使用某中心转录和理解服务估计两者。
通过这种方法,我们可以使用多个数据集进行ASR训练。我们还使用数据增强以确保对输入信号条件的鲁棒性。我们的增强堆栈包括频谱增强、语速变化(95%、100%、105%)、混响和加性噪声(0dB至15dB信噪比)。除了使用多样化数据集进行训练外,我们还使用多样化数据进行测试,并评估模型在各个数据横截面上的性能,以确保跨人口群体的公平性。
在我们的测试中,我们发现混合模型优于仅依赖文本或声学数据的先前方法。
情感标签的偏差减少
由于训练数据集中情感标签的频率不均匀,我们使用了几种偏差减少技术。对于ASR训练阶段,我们对数据进行采样,使情感标签的分布均匀。在分类器训练阶段,我们对每个情感类别的损失函数分量进行加权,使其与相应情感标签的频率成反比。
通常,数据集中存在中性情感比积极或消极情感更普遍的趋势。我们的采样和损失函数加权技术可以减少中性、积极和消极类别检测率的偏差,提高模型准确性。
实时推理
我们的语音情感分析的推理模型包括预训练前端、训练过的ASR编码器和训练过的分类器。值得注意的是,我们的分类器计算成本远低于ASR解码器,这意味着我们的语音情感分析系统可以以比需要完整文本转录的系统更低的成本运行推理。
我们的语音情感分析模型已作为语音分析功能部署在某中心软件开发工具包呼叫分析中,在其生产配置中,它每2.5秒在五秒语音段上运行,为语音存在和情感提供实时概率估计。该模型配置为使用短期情感概率计算过去30秒活动语音以及整个语音信号持续时间的情感估计。