国庆期间,抖音上“一句方言证明你是地道家乡人”的活动在吸引了全国各地的网友热情参与,话题最高登上抖音挑战榜第一位,播放量已超过5000万。这场“各地方言大赏”之所以能火出圈,抖音新上线的地方方言自动翻译功能功不可没。创作者们在用家乡话录制短视频时,使用“自动字幕”功能,选择“转为普通话字幕”,即可完成对视频内容方言语音的自动识别,并将视频里的方言内容转化为普通话字幕,让其他地区的网友也能无痛听懂各种“加密型国语”。有来自福建网友亲测表示,连“十里不同音”的闽南语也能翻译得分毫不差,大呼“闽南语在抖音上为所欲为的日子一去不复返了”。
众所周知,语音识别和机器翻译的模型训练需要大量的训练数据,但方言作为口语流传,可用于模型训练的方言语料数据很少,那么,为这项功能提供技术支持的火山引擎技术团队是如何突破的呢?
该实验在粤语上进行,使用了5万小时无标注语音和10小时标注语音。结果如下表所示,Efficient Wav2vec (w2v-e)在100M和300M参数量的模型下,相比Wav2vec 2.0,CER相对下降5%,训练开销减半。
进一步,团队以自监督预训练模型微调得到的CTC模型作为种子模型,对无标注数据打伪标签,然后提供给一个参数量较小的端到端LAS模型做训练,同步实现了模型结构的迁移和推理计算量的压缩,可以直接基于成熟的端到端推理引擎部署上线。该技术已成功应用于两个低资源方言,用10小时量级的标注数据实现了低于20%的字错误率。![](https://bytedance.feishu.cn/space/api/box/stream/download/asynccode/?code=MzNlZDg2ODVjZTg3NWFiNzFlM2M4MTEwMjM4ZTgwNzNfejlwR2liektxbE05VE9raUxMQW54WG5FUkM2MlF1Vk1fVG9rZW46SU93T2JvVzllb2NaTDd4aGRZbmNDcjhhbm5kXzE2OTcxMDE0NDk6MTY5NzEwNTA0OV9WNA)
![](https://bytedance.feishu.cn/space/api/box/stream/download/asynccode/?code=NGE1MmNhZjQ0MjU0NDVkMmFmNjlmY2Y5MmZiMjE1ZGFfa2sxNkRCQkIyTGxMMHhncGJLQVVKbmxFMnJRSDQ4QjlfVG9rZW46WkxrR2JnMTVWb01WYlV4THdMSWN3bFRubmJlXzE2OTcxMDE0NDk6MTY5NzEwNTA0OV9WNA)
5个方言的平均CER(字错误率)从35.3%优化到17.21%。
论文地址:https://arxiv.org/abs/2105.09501
加入对比学习任务的设计是基于一个经典的假设:不同语言中同义句的编码后的表示应当在高维空间的相邻位置。因为不同语言中的同义句对应的句意是相同的,也就是“编码”过程的输出是相同的。比如“早上好”和“Good morning”这两句话对于懂中文和英文的人来说,理解到的意思是一样的,这也就对应了“编码后的表示在高维空间的相邻位置”。
训练目标设计mRASP2在传统的交叉熵损失 (cross entropy loss) 的基础上,加入了对比损失 (contrastive loss) ,以多任务形式进行训练。图中橙色的箭头指示的是传统使用交叉熵损失 (Cross Entropy Loss, CE loss) 训练机器翻译的部分;黑色的部分指示的是对比损失 (Contrastive Loss, CTR loss) 对应的部分。
词对齐数据增强方法又称对齐增强(Aligned Augmentation, AA),是从mRASP的随机对齐变换(Random Aligned Substitution, RAS)方法发展而来的。
如图所示,图(a)表示了对平行语料的增强过程,图(b)表示了对单语语料的增强过程。其中,图(a)中原本的英语单词被替换成中文对应的单词;而图(b)中原本的中文单词被分别替换成英文、法语、阿拉伯语、德语。mRASP的RAS等价于第一种替换方式,它只要求提供双语的同义词词典;而第二种替换方式需要提供包含多种语言的同义词词典。值得提一句,最终使用对齐增强方法的时候,可以只采用(a)的做法或者只采用(b)的做法。
实验结果表明mRASP2在有监督、无监督、零资源的场景下均取得翻译效果的提升。其中有监督场景平均提升 1.98 BLEU,无监督场景平均提升 14.13 BLEU,零资源场景平均提升 10.26 BLEU。该方法在广泛场景下取得了明显的性能提升,可以大大缓解低资源语种训练数据不足的问题。
方言识别阶段
一直以来,火山语音团队都为时下风靡的视频平台提供基于语音识别技术的智能视频字幕解决方案,简单来说就是可以自动将视频中的语音和歌词转化成文字,来辅助视频创作的功能。 在这个过程中,技术团队发现,传统的有监督学习会对人工标注的有监督数据产生严重依赖,尤其在大语种的持续优化以及小语种的冷启动方面。以中文普通话和英语这样的大语种为例,尽管视频平台提供了充足的业务场景语音数据,但有监督数据达到一定规模之后,继续标注的ROI将非常低,必然需要技术人员考虑如何有效利用百万小时级别的无标注数据,来进一步改善大语种语音识别的效果。 相对小众的语言或者方言,由于资源、人力等原因,数据的标注成本高昂。在标注数据极少的情况下(10小时量级),有监督训练的效果非常差,甚至可能无法正常收敛;而采购的数据往往和目标场景不匹配,无法满足业务的需要。 对此,团队采用了以下方案:低资源方言自监督
该实验在粤语上进行,使用了5万小时无标注语音和10小时标注语音。结果如下表所示,Efficient Wav2vec (w2v-e)在100M和300M参数量的模型下,相比Wav2vec 2.0,CER相对下降5%,训练开销减半。
图说:模型参数量和CER对比
图说:基于无监督训练ASR的落地流程
方言大规模pretrain+finetune训练模式
5个方言的平均CER(字错误率)从35.3%优化到17.21%。
平均字错误率 | 粤语 | 闽南 | 上海 | 中原官话 | 西南官话 | |
单方言 | 35.3 | |||||
100wh pretrain+方言混合finetune | 17.21 | 13.14 | 22.84 | 19.60 | 19.50 | 10.95 |
方言翻译阶段
通常情况下,机器翻译模型的训练离不开大量语料的支持,然而方言常以口语形式流传,现今方言使用者的数量也逐年减少,这些现象都提升了方言语料数据收集的难度,方言的机器翻译效果也难以提升。为了解决方言语料不足的问题,火山翻译团队提出多语言翻译模型 mRASP (multilingual Random Aligned Substitution Pre-training)和 mRASP2,通过引入对比学习,辅以对齐增强方法,将单语语料和双语语料囊括在统一的训练框架之下,充分利用语料,来学习更好的语言无关表示,由此提升多语言翻译性能。加入对比学习任务的设计是基于一个经典的假设:不同语言中同义句的编码后的表示应当在高维空间的相邻位置。因为不同语言中的同义句对应的句意是相同的,也就是“编码”过程的输出是相同的。比如“早上好”和“Good morning”这两句话对于懂中文和英文的人来说,理解到的意思是一样的,这也就对应了“编码后的表示在高维空间的相邻位置”。
训练目标设计mRASP2在传统的交叉熵损失 (cross entropy loss) 的基础上,加入了对比损失 (contrastive loss) ,以多任务形式进行训练。图中橙色的箭头指示的是传统使用交叉熵损失 (Cross Entropy Loss, CE loss) 训练机器翻译的部分;黑色的部分指示的是对比损失 (Contrastive Loss, CTR loss) 对应的部分。
实验结果表明mRASP2在有监督、无监督、零资源的场景下均取得翻译效果的提升。其中有监督场景平均提升 1.98 BLEU,无监督场景平均提升 14.13 BLEU,零资源场景平均提升 10.26 BLEU。该方法在广泛场景下取得了明显的性能提升,可以大大缓解低资源语种训练数据不足的问题。