近年来,大多数商业自动语音识别(ASR)系统已开始从混合系统(包含独立的声学模型、词典和语言模型)转向端到端神经网络模型,这些模型以声学信号作为输入并输出文本。端到端模型在性能和灵活性方面具有优势,但需要比混合系统更多的训练数据。在训练数据稀缺的情况下(例如当前事件引入新术语"冠状病毒"或模型需要适应新应用时),这可能成为问题。
提出的方法概述,包含语音生成模型(左)和自动语音识别模块(右)
在此类情况下,使用合成语音作为补充训练数据是一种可行的解决方案。在本年度Interspeech会议上发表的论文中,我们采用这种方法,使用合成语音数据(类似于某机构文本转语音模型生成的输出语音)来更新ASR模型。在实验中,我们对现有ASR模型进行微调以识别此前未接触过的药物名称,发现该方法使模型在新词汇上的词错误率相比原始模型降低了65%。通过采用持续学习训练程序避免"灾难性遗忘",模型在现有词汇表上的性能保持不变。我们在论文中描述了该程序以及为使合成语音数据尽可能接近真实语音数据所采取的步骤。
合成语音
构建鲁棒ASR模型的关键是在多种不同声音上训练模型,使其能够学习各种声学频率分布和不同的音素发声方式(音素是语音的最小单位)。我们通过从实验室志愿者收集的500个声音配置中随机采样32个,将数据集中的每个话语合成了32次。
与大多数TTS模型类似,我们的模型采用编码器-解码器架构:编码器生成输入文本的向量表示,解码器将其转换为输出频谱图(合成语音频率分布的一系列快照)。频谱图传递至神经声码器,添加必要的相位信息以将其转换为真实语音信号。
对于每个说话者,我们使用说话人识别系统生成独特的声音配置嵌入(该说话者声学特征的向量表示)。该嵌入是TTS模型的后期输入,恰在解码步骤之前。我们还训练TTS模型以参考频谱图作为输入,为其提供输出韵律模型(输出语音的节奏、重音、旋律、时长和响度)。该模型架构允许我们对相同输入文本同时变化声音配置嵌入和韵律嵌入,从而能够以不同声音和韵律生成同一话语的多个版本。
TTS模型学习与声音和韵律无关的语音编码器,其输出同时受声音配置嵌入和韵律嵌入调节,使我们能够用不同声音和韵律生成同一文本的变体
接下来,为使合成语音更接近真实语音,我们采用多种方式对其进行处理:基于实验室收集的啁啾声样本应用不同类型的混响;添加噪声;衰减特定频段;以及掩码部分信号以模拟中断。我们根据特定概率(例如60%的添加背景噪声概率)随机应用这些处理,以确保不同类型样本的良好混合。
持续学习
当更新神经网络模型以反映新数据时,可能面临灾难性遗忘的风险:改变模型权重以处理新数据可能损害模型处理原始训练数据类型的能力。在论文中,我们描述了在合成数据上微调现有ASR模型时用于防止这种情况的几种技术。
我们的基线模型是在50,000小时数据上训练的ASR模型。我们分四个阶段为其更新药物名称的新词汇表:
- 第一阶段:将5,000小时合成数据添加到原始数据集,并在两者上微调模型,但冻结编码器设置,仅允许解码器权重变化
- 第二阶段:再次在组合数据集上微调模型,但此次允许更新编码器权重
- 第三阶段:仅在原始数据上微调模型,但在损失函数中添加新项,如果连接权重变化过大则惩罚模型
- 第四阶段:仅在原始数据上微调模型,允许所有权重以无约束方式更新
实验发现,在第二阶段训练后(数据集包含合成数据且所有权重可自由变化时),新词汇表上的错误率相比基线降低超过86%。然而,现有词汇表上的错误率略有上升,相比基线增加不到1%。在某些情况下(例如模型适应新应用时),这可能是可接受的。但在已部署模型的更新中,可能不可接受。第三和第四微调阶段将原始词汇表上的错误率降至基线以下,同时仍将新词汇表上的错误率降低65%。因此,我们的实验指出了一种可适应不同使用场景的训练方法。
相关研究领域:对话式AI
标签:自动语音识别(ASR)、合成数据生成、某智能助手、Interspeech