尽管在多样化数据上训练的声学模型是自动语音识别(ASR)的根本,但说话人变异性仍是一个重大难题。声音差异可能来自生理因素(声道的长度、声带的特点)、说话风格、口音,甚至情感状态。说话人适应技术旨在调整一个预先存在的、通常是独立于说话人的(SI)模型,使其更符合特定目标说话人的特点,通常会用到少量的说话人特定数据。与直接使用SI模型相比,此方法通常能提升该说话人的识别准确率。
传统方法:变换
在深度学习主导该方面之前,适应通常涉及在高斯混合模型-隐马尔可夫模型(GMM-HMM)系统框架内学习线性变换。像最大似然线性回归(MLLR)这样的方法会学习GMM均值和方差的变换。一种相关且通常更有效的方法是特征空间MLLR(fMLLR),也称为约束MLLR(CMLLR)。
fMLLR学习一个说话人特定的线性变换矩阵,该矩阵应用于输入特征(例如MFCCs),而非模型参数。目的是调整说话人的特征,使其更好地符合独立于说话人的HMM所预期的特征分布。尽管在现代端到端系统中作为主要的适应方法已不太常见,但基于说话人身份来变换输入或内部表示的想法仍然存在。
I-向量:捕捉说话人身份
I-向量(Identity Vectors)作为在低维空间表示说话人特点的有效方法而出现,最初主要为说话人识别而开发,但很快被采用于ASR适应。它们源自GMM-HMM系统,但其作用扩展到神经网络。
- 核心思想: 主要观点是,说话人变异性(以及信道变异性)可以在GMM参数(超向量)的高维空间内的低维子空间中进行建模。通用背景模型(UBM),通常是一个在多样化数据上训练的大型GMM,表示平均说话人。特定说话人的GMM可以被视为对UBM的偏离。
- 提取: 利用因子分析,特定说话人的GMM超向量M可以建模为:
M=m+Tv
这里,m是独立于说话人的UBM超向量,T是总变异矩阵(一个矩形矩阵,它体现了说话人和信道变化的主要方向),v是低维i-向量。i-向量v是使用UBM和矩阵T从说话人的语音数据中估算出来的。
- 在ASR中的运用: 在混合HMM-DNN系统中,i-向量成为一种标准辅助输入。固定的i-向量代表给定发音或片段的说话人身份,它在每个时间步与声学特征(如MFCCs或滤波器组)拼接在一起,然后输入到DNN声学模型中。网络通过这些说话人信息来调整其内部处理。即使是一些端到端模型,也能通过i-向量作为辅助输入获得帮助。
基于神经网络的适应
随着深度学习的兴起,适应技术发展为直接修改或调节神经网络模型。
辅助说话人嵌入
与使用i-向量类似,学习到的说话人嵌入可以作为辅助输入。这些嵌入通常不是通过GMM上的因子分析获得,而是来自专门用于说话人辨别的独立神经网络(例如,x-向量、d-向量)。
- 过程: 将目标说话人的一个(或多个)注册发音通过预训练的说话人嵌入网络,以提取一个固定维度的向量。然后,该向量与帧级声学特征拼接,并输入到ASR声学模型中(例如,编码器-解码器架构中的编码器)。
- 优势: ASR网络会学习如何解释这些嵌入并相应地调整其预测。这通常要求ASR模型在初始训练时就使用从其训练说话人中获得的说话人嵌入。
模型微调
最直接的方法可能是,取一个预训练的独立于说话人的ASR模型,然后使用目标说话人的适应数据继续对其进行训练(微调)。
- 过程: SI模型的权重用作初始化。然后使用说话人的数据进行训练,通常学习率远低于初始训练时的学习率。
- 变体:
- 完全微调: 所有模型参数都进行更新。这需要更多适应数据来避免过拟合。
- 特定层微调: 只更新某些层,通常是最后几层,假设它们能体现更多说话人特定信息。这需要较少数据。
- 难点: 过拟合是一个主要问题,尤其是在适应数据非常有限(例如,只有少量发音)时。正则化技术变得很重要。如果整个模型很大,它也可能计算量大。
适配器模块
适配器提供了一种参数高效的替代方案,可替代完全微调。小型神经网络模块(“适配器”)被插入到预训练模型的层中。
- 过程: 大型SI模型的原始权重保持不变。只有小得多的适配器模块的参数使用说话人特定数据进行训练。
- 架构: 适配器通常是小型前馈网络,插入到主要模块(如Transformer中的自注意力或前馈层)之后。它们获取模块的输出,对其进行变换,然后通过残差连接将其添加回模块的输出。
- 优势: 训练的参数数量大大减少,降低了过拟合风险和计算成本。原始模型保持不变,并且可以根据需要插入不同的说话人适配器。
适配器模块的示意图。小型、可训练的适配器层插入到预训练模型的冻结层之间。在说话人适应过程中,只有适配器会被更新。
学习隐藏单元贡献(LHUC)
LHUC是另一种参数高效的技术。它不是添加模块,而是学习现有网络中隐藏单元激活(输出)的说话人特定缩放因子。
- 过程: 对于每个说话人,都会学习一个幅度因子向量(选定层中每个隐藏单元一个)。在对该说话人进行推断时,这些因子会与隐藏单元激活进行逐元素相乘。
- 优势: 调节现有单元的贡献,而不是添加新单元。它要求每个说话人每个隐藏单元只估算一个参数,这使得在数据量较少的情况下进行适应非常高效。
选择适应策略
最佳说话人适应技术通常取决于:
- 适应数据量: 微调需要比适配器或LHUC更多的数据。如果有好的说话人嵌入提取器,即使只有一个注册发音,辅助特征也可能运作良好。
- 计算资源: 微调整个模型是最昂贵的。适配器和LHUC则便宜得多。使用预计算的嵌入在ASR推断期间只会增加极小的额外开销。
- 模型架构: 某些方法与特定架构更契合(例如,适配器与Transformer)。
- 性能要求: 需要权衡期望的准确率提升水平与适应成本。
说话人适应仍是一个活跃的研究方向,特别是那些需要极少数据(少样本或零样本适应)并在大型现代端到端ASR系统中高效适应的方法。这些方法对于个性化语音界面和提升多样化用户群体的稳定性具有积极作用。