自动语音识别(ASR)模型是语音助手的核心组件,它们越来越多地被部署在互联网边缘设备上,以实现更快的响应(无需云端处理)并在连接中断时持续服务。然而,ASR模型需要定期更新,以适应新词汇和名称的加入。如果所有本地收集的数据都保留在设备上,更新全局模型就需要联邦学习,即设备在本地计算更新并仅向云端传输梯度或模型权重调整。
联邦学习中的一个核心问题是如何标注本地存储的数据,以便用于更新本地模型。在今年的国际声学、语音与信号处理会议(ICASSP)上,我们提出了一种解决方案。方案的一部分是使用自监督学习(即用一个版本的模型为另一个版本标注数据)和数据增强;另一部分是基于隐式用户反馈(如重新表述请求)和跨多轮会话的自然语言理解语义的弱监督信号。
实验方法
为了测试这一方法,我们模拟了一个联邦学习(FL)设置,其中数百台设备使用未共享的数据更新本地模型。这些更新被聚合,并与云端服务器的更新结合,后者通过历史数据回放训练以防止ASR模型退化。这些创新使得在新用例上的词错误率(WER)相对降低了10%,同时在其他测试集上几乎没有退化。
噪声学生范式
半监督学习通常使用一个强大的教师模型为更高效的学生模型标注训练数据。在边缘设备上,由于计算、通信和内存限制,较大的教师模型可能不实用。因此,我们采用了噪声学生或迭代伪标注范式,即本地ASR模型充当自身的教师模型。在模型为本地存储的音频标注后,我们丢弃置信度过高(无法提供新信息)或过低(可能错误)的样本。然后,通过添加噪声和背景语音等元素增强样本,以提高模型的鲁棒性。
弱监督与强化学习
弱监督用于防止模型因预测错误的自我标签而陷入错误反馈循环。用户通常在多轮会话中与语音助手交互,后续交互可以指示请求是否被正确处理。取消或重复请求表明用户不满意,用户还可以被提示提供显式反馈信号。这些交互为自我标签提供了额外的真实来源。
我们使用强化学习更新本地模型。在强化学习中,模型与环境反复交互,试图学习最大化奖励函数的策略。我们通过隐式反馈和自然语言理解(NLU)模型推断的语义生成合成奖励。通过计算语义成本指标(如NLU模型标记的命名实体在ASR假设中出现的比例),可以将NLU模型的推断语义转换为反馈分数。
实验结果
在实验中,我们使用了400台设备上的3,000轮训练数据,这些设备通过自我标签和弱监督计算梯度或模型更新。云端协调器将这些更新与40台伪设备生成的更新结合,后者使用历史转录数据计算模型更新。实验结果显示,在新数据(即当前时间段比过去更流行的词汇或短语)上的测试集上,性能提升了10%以上。云端伪设备通过回放训练防止了灾难性遗忘(即模型在更新时对旧数据的性能退化)。