专利名称:一种半监督的发音模型建模系统及方法
技术领域:
本发明涉及一种半监督的发音模型建模方法。本发明还涉及实现该方法的系统。
背景技术:
随着信息技术和全球化的迅速发展,国际交流越来越频繁,语言的学习需求呈现持续增长趋势,尤其是口语的交流能力,成了语言学习的重点。但是,传统的课堂教学偏重词汇和语法,学习者的口语能力难以得到有效地提高。为了适应语言学习的需求,人们开发了计算机辅助语言学习(Computer Assistant Language Learning, CALL)系统,通过计算机替代人来执行或辅助语言的教学,提高语言学习的效率。发音错误自动检测是计算机辅助语言学习系统的关键技术,它在很大程度上决定了计算机辅助语言学习系统的性能。可靠的自动发音错误检测技术有助于计算机辅助语言学习系统了解学习者掌握语言的水平,分析出学习者的发音缺陷,并有针对性地给出改进意见及对应的学习材料,有效提高学习者的语言水平。发音错误自动检测可以采用标准发音建立声学模型,也可以采用错误发音建立声学模型,但一般而言,采用错误发音建立的声学模型的性能更好。
发明内容
本发明要解决的技术问题是提供一种半监督的发音模型建模方法,它可以提高计算机辅助语言学习系统的性能。为解决上述技术问题,本发明的半监督的发音模型建模方法,包括下步骤(1)对音素的错误发音建立初始声学模型;(2)对训练数据做强制对齐,获得该音素的时间边界;(3)对该音素的每一类错误发音,建立一个混合高斯模型;(4)对步骤(3)建立的混合高斯模型进行聚类;(5)按照步骤的聚类结果,重新训练该音素的错误发音的声学模型。所述步骤,进一步包括以下步骤(41)对步骤C3)建立的混合高斯模型,两两计算高斯概率分布函数的距离,并生成一张距离表;(42)统计距离表的每一横行中,距离值小于预先设定的距离门限值的表项的个数;(43)根据步骤02)的统计结果,确定距离值小于距离门限值的表项个数最多的那一横行,将该横行所代表的高斯概率分布函数和这些表项所属纵行所代表的高斯概率分布函数合并为一类;(44)计算剩余混合高斯模型的类别数,并把已分类个数的值加1 ;(45)判断剩余混合高斯模型的类别是否为0或者已分类个数是否等于预先设定的已分类个数的上限值,若否,则转到步骤(42)。
本发明要解决的另一技术问题是提供一种实现上述方法的系统。为解决上述技术问题,本发明的半监督的发音模型建模系统,包括初始建模模块,用于对音素的错误发音建立初始声学模型;强制对齐模块,用于对训练数据做强制对齐,获得音素的时间边界;高斯分布计算模块,用于对音素的每一类错误发音,分别建立一个混合高斯模型;聚类模块,用于对高斯分布计算模块建立的混合高斯模型进行聚类;建模模块,用于根据聚类模块得到的聚类结果,重新训练音素的错误发音的声学模型。所述聚类模块进一步包括距离表生成模块,用于两两计算混合高斯模型的高斯概率分布函数的距离,并生成一张距离表;统计模块,用于统计距离表的每一横行中,距离值小于预先设定的距离门限值的表项的个数;类别合并模块,用于根据统计模块的统计结果,确定距离值小于距离门限值的表项个数最多的那一横行,将该横行所代表的高斯概率分布函数和这些表项所属纵行所代表的高斯概率分布函数合并为一类;计算模块,用于计算剩余混合高斯模型的类别数和已分类个数;判断模块,用于根据计算模块的计算结果,判断聚类是否完成。本发明的半监督的发音模型建模系统及方法,先用有监督的方法,按照音素的不同,把错误发音分为大的类别,然后在每个大类中再用无监督的方法把错误发音聚类,从而解决了分布比较分散的发音的建模问题,提高了发音错误自动检测系统的性能。
附图是本发明的方法流程图。
具体实施例方式为对本发明的技术内容、特点与功效有更具体的了解,现结合图示的实施方式,详述如下以错误发音建模为例,在使用本发明的半监督的发音模型建模系统及方法建立发音模型之前,需要预先采集一批语音数据,并对每个语音数据进行相应的文本标注,标注出其中的每个发音是正确的还是错误的。然后,按照以下步骤建立发音模型(1)根据语音识别中的最大似然准则(Maximum Likelihood htimation,MLE),对每一种音素的错误发音建立初始的隐马尔科夫(Hidden Markov Model, HMM)声学模型。(2)对训练数据进行强制对齐(Forced Alignment),获得每个音素的时间边界。(3)假设某个音素有N个错误发音样本,并设定初始时,一个错误发音为一类, 则该音素错误发音的类别数的初始值即为N。对每一类错误发音都用一个混合高斯模型 (Gaussian Mixture Model,GMM)来表示其分布。由于一个音素的持续时间很短,因此,这里的GMM模型可以用单高斯或者双高斯来表示。
(4)对步骤(3)中建立的N个GMM模型,两两计算其概率分布函数的距离,生成一张距离表。例如,可以采用Miattacharvya distance (巴塔恰里雅距离)来表示两个高斯概率分布函数Gi和的距离,见下式
Σι+Σ]其中,^和乙i分别为高斯函数&的均值向量及协方差矩阵,μ」和Σ彳分别为高斯函数的均值向量及协方差矩阵。(5)对每个高斯函数,统计距离表的每一横行中,距离值小于预先设定的距离门限值的表项的个数虬。(6)找出Mi中最大的一个,即距离值小于门限的表项个数最多的那一横行,将该横行所代表的高斯函数和与该高斯函数距离最近的这Mi个高斯函数合并为一类。(7)用合并前GMM模型的类别数,减去合并后减少的GMM模型数,计算出剩余GMM 模型的类别数(首次聚类后的剩余类别数为N-Mi),并把已分类个数k的值加1,该k的初始值为0。(8)判断剩余GMM模型的类别是否为0,或者已分类个数是否等于预先设定的已分类个数的上限值K,若是,则继续进行步骤(9);若否,则转到步骤(5)。(9)按照前述步骤中得到的错误发音的聚类结果,更新该音素的标注文件和音素列表,重新训练该音素的错误发音的HMM模型。下面以中文发音“ch”为例,对上述建模方法再做进一步地说明。首先,通过MLE的方法,对所有标注为正确发音的“ch”生成一个HMM模型,对所有标注为错误或不准确发音的“ ch,,生成另一个HMM模型。然后,通过强制对齐,获得每个“ch”的发音的发音边界。假设“ch” 一共有80个错误发音的样本,那么,通过上一步骤获得的这80个发音的准确边界,可以生成80个GMM模型,来描述这80个错误发音。对这80个GMM模型,两两计算其模型的距离,生成一张80X80的距离表。在该距离表中,检查每一横行中,距离值小于预先设定的距离门限值的表项的个数,对距离值小于距离门限值的表项的个数最多(假设最多的个数为21个)的那一横行, 将该横行所代表的模型和这21个模型合并为一类;计算剩余的GMM模型类别为80-21 = 69类,已分类个数k为0+1 = 1。由于上述计算出的剩余GMM模型类别不为0,因此,需要再重复执行上一步骤,继续对“ch”的错误发音进行聚类,直到剩余的GMM模型类别为0,或者已分类个数等于预先设定的已分类个数的上限值K。对“ch”的错误发音完成聚类后,按照聚类结果,更新其标注文件和音素列表,重新训练“ch”的错误发音的HMM模型,并进而建立发音错误自动检测系统的声学模型。综上所述,本发明的半监督的发音模型建模系统及方法,先借助有监督的先验知识某个音素的错误发音总有其类似的地方,与其他音素的错误发音差别会比较大,将错误发音按照音素的不同分为大的类别,然后在每个大类中再用无监督的方法把错误发音聚类,从而解决了分布比较分散的发音的建模问题,提高了发音错误自动检测系统的性能。
权利要求
1.一种半监督的发音模型建模方法,其特征在于,包括以下步骤(1)对音素的错误发音建立初始声学模型;(2)对训练数据做强制对齐,获得该音素的时间边界;(3)对该音素的每一类错误发音建立一个混合高斯模型;(4)对步骤( 建立的混合高斯模型进行聚类;(5)按照步骤的聚类结果,重新训练该音素的错误发音的声学模型。
2.如权利要求1所述的发音模型建模方法,其特征在于所述步骤(1)的声学模型为隐马尔科夫模型。
3.如权利要求2所述的发音模型建模方法,其特征在于所述隐马尔科夫模型根据最大似然准则建立。
4.如权利要求1所述的发音模型建模方法,其特征在于,所述步骤G),进一步包括以下步骤(41)对步骤C3)建立的混合高斯模型,两两计算高斯概率分布函数的距离,并生成一张距离表;(42)统计距离表的每一横行中,距离值小于预先设定的距离门限值的表项的个数;(43)根据步骤02)的统计结果,确定距离值小于距离门限值的表项个数最多的那一横行,将该横行所代表的高斯概率分布函数和这些表项所属纵行所代表的高斯概率分布函数合并为一类;(44)计算剩余混合高斯模型的类别数,并把已分类个数的值加1;(45)判断剩余混合高斯模型的类别是否为0或者已分类个数是否等于预先设定的已分类个数的上限值,若否,则转到步骤G2)。
5.如权利要求4所述的发音模型建模方法,其特征在于所述步骤04)中,已分类个数的初始值为0。
6.一种半监督的发音模型建模系统,其特征在于,包括 初始建模模块,用于对音素的错误发音建立初始声学模型; 强制对齐模块,用于对训练数据做强制对齐,获得音素的时间边界;高斯分布计算模块,用于对音素的每一类错误发音,分别建立一个混合高斯模型;聚类模块,用于对高斯分布计算模块建立的混合高斯模型进行聚类;建模模块,用于根据聚类模块得到的聚类结果,重新训练音素的错误发音的声学模型。
7.如权利要求6所述的发音模型建模系统,其特征在于,所述聚类模块进一步包括 距离表生成模块,用于两两计算混合高斯模型的高斯概率分布函数的距离,并生成一张距离表;统计模块,用于统计距离表的每一横行中,距离值小于预先设定的距离门限值的表项的个数;类别合并模块,用于根据统计模块的统计结果,确定距离值小于距离门限值的表项个数最多的那一横行,将该横行所代表的高斯概率分布函数和这些表项所属纵行所代表的高斯概率分布函数合并为一类;计算模块,用于计算剩余混合高斯模型的类别数和已分类个数; 判断模块,用于根据计算模块的计算结果,判断聚类是否完成。
全文摘要
本发明公开了一种半监督的发音模型建模方法,包括步骤对音素的错误发音建立初始声学模型;强制对齐,获得该音素的时间边界;计算该音素错误发音的GMM模型;对GMM模型聚类;按照聚类结果重新训练该音素的错误发音的声学模型。本发明还公开了实现上述方法的系统。该发音模型建模系统及方法,先采用有监督的方法,把错误发音按照音素的不同分为大的类别,再在每个大类中用无监督的方法对错误发音聚类,从而解决了分布比较分散的发音的建模问题,提高了计算机辅助语言学习系统的性能。
文档编号G10L15/08GK102568477SQ20101061172
公开日2012年7月11日 申请日期2010年12月29日 优先权日2010年12月29日
发明者张峰 申请人:盛乐信息技术(上海)有限公司