利用BERT提高语种识别性能
本文介绍清华大学语音与音频技术实验室(SATLab)ISCSLP 2022录用论文。BERT-LID: Leveraging BERT to Improve Spoken Language Identification。这篇文章将BERT模型引入到语种识别领域。利用BERT模型的优越性,再结合下游不同的神经网络模型,提升语种识别能力,尤其是在短语音的情况下识别性能有更为明显提升。
01 语种识别
语种识别是分析处理语音片段以判断其所属的语种。 它 对智能语音系统中的多语言模块有着深远的影响。目前语种 识别技术在中长语音(>3s)上能够实现较高的准确率 ,但是在短语音(<=1s)上 的表现并不能令人满意。由于短语音提供的数据信息较少,因此大大增加了识别难度。
我们尝试将在自然语言处理中表现甚好的BERT模型应用到语种识别任务中,旨在提升短语音情况下语种识别模型的性能。
语种识别(图片来自第五届东方语种识别竞赛)
02 BERT-LID
BERT的全称是:Bidirectional Encoder Representation from Transformers。该模型通过大规模无标注文本语料训练,获得包含丰富语义信息的表征,BERT具有强大的语义理解能力,是近年来自然语言处理领域公认的里程碑模型。
BERT模型(图片来自https://arxiv.org/pdf/1810.04805.pdf)
原始的BERT旨在处理基于文本的表示,而我们这里的输入是语音,因此需要对输入语音进行预处理以适应该模型。
方法一:提取语音的音素,作为BERT模型的输入。
方法二:提取语音的后验概率特征,替换原始的Token Embedding结果,作为输入。
将调整过后的BERT接不同的分类网络模型进行学习
我们通过对整体网络进行训练以获得最佳BERT-LID模型。
03 实验及结论
我们使用OLR20、TAL_ASR、TIMIT和THCHS30数据集来对BERT模型进行训练。对于音频数据我们使用BUT的开源代码来获得音素序列以及音素后验概率特征。
其中OLR20来自于2020年东方语种识别竞赛所提供的数据,包含6个语种;TAL_ASR为好未来英语课授课音频,每条音频只有一位说话人,包含中英文混合讲话的情况(对于这种情况,我们使用强制对齐的方法来获得中文与英文的标签信息);TIMIT为英文数据集;THCHS30为中文数据集。同时我们还对数据进行切分处理来获得时长为1s的短语音数据。数据集的具体情况如下图所示,其中T&T为TIMIT和THCHS30的切分短语音混合使用的情况。
数据集
下游神经网络模块,我们选择使用CNN、LSTM、RCNN、DPCNN分别进行实验。首先我们在OLR20和T&T数据上对BERT-LID模型进行测试,然后进行消融实验:a)BERT部分结合线性分类层来得到结果(称之为BERT);b)去掉BERT模块(称之为LID),直接将数据输入到对应的模型中来得到结果。可以看出,相比于BERT以及LID模块,BERT-LID模型在语种识别任务中准确率整体上有所提升。
在OLR20和T&T数据集上进行消融实验
之后,我们在BERT-RCNN、x-vextor、n-gram-svm模型上进行对比实验(TAL_ASR和T&T数据集为短音频数据的集合),其中x-vextor、n-gram-svm为我们的基线系统。可以看出,BERT-LID模型在我们的不同数据集中都能有最优表现,尤其是在短语音情况下,我们所提出的方法有更为明显的提升。
在不同数据集上进行对比试验