一种语音识别模型的训练方法和装置
万方数据知识服务平台
应用市场
我的应用
会员HOT
万方专利
×

点击收藏,不怕下次找不到~

@万方数据
会员HOT

专利专题

一种语音识别模型的训练方法和装置

引用
本发明提供了一种语音识别模型的训练方法和装置,该方法中,按照各建模项在语音样本中的出现频率从高到低排序构成频率表,利用滑动窗口在频率表上滑动,对每个滑动窗口进行适用于第一训练阶段或第二训练阶段的判断,将语音识别模型的训练过程分为两个训练阶段,在第一训练阶段以高频建模项为学习目标实施简单的语音识别模型训练,在第二训练阶段以低频建模项为学习目标,对出现频率较低的建模项通过重用相关低频语音数据来增加被学习的次数。本发明能够在参与训练的语音数据不充足或语音数据类别不均衡的情况下,提高训练得到的语音识别模型的语音识别准确率。

发明专利

CN201910193085.2

2019-03-14

CN111768761A

2020-10-13

G10L15/06(2013.01)

京东数字科技控股有限公司

穆玉芝;王虎

100176 北京市经济技术开发区科创十一街18号C座2层221室

北京德琦知识产权代理有限公司

谢安昆%宋志强

北京;11

1.一种语音识别模型的训练方法,其特征在于,预先基于设定的建模粒度配置建模字典,建模字典中包括该建模粒度下的所有建模项;该方法包括: 获取多条语音数据及每条语音数据的语音文本; 提取每条语音数据的声音特征信息,并根据所有语音数据的语音文本统计建模字典中每个建模项的出现频率和权重,将所有建模项按照出现频率从高到低排序构成频率表; 利用滑动窗口在所述频率表中按照预设步长滑动,并对滑动到的每个滑动窗口进行适用于第一训练阶段或第二训练阶段的判断; 如果该滑动窗口适用于第一训练阶段,则根据该滑动窗口中所有建模项的权重确定一权重参数,将所有语音数据的声音特征信息作为训练样本,执行基于该权重参数的语音识别模型训练; 如果该滑动窗口适用于第二训练阶段,则根据该滑动窗口确定低频语音数据及其重用次数,根据低频语音数据的重用次数调整建模字典中所有建模项的权重,根据该滑动窗口中所有建模项调整后的权重确定一权重参数,将所有语音数据的声音特征信息作为训练样本,根据低频语音数据的重用次数执行基于该权重参数的语音识别模型训练。 2.根据权利要求1所述的方法,其特征在于, 根据所有语音数据的语音文本统计建模字典中每个建模项的出现频率和权重的方法为: 对每个建模项,统计语音样本中包含该建模项的语音数据的条数,将统计结果作为该建模项的出现频率,并采用公式weight=n_sample/class_per_count计算该建模项的权重;其中,weight为该建模项的权重,n_sample为语音数据总条数,class_per_count为该建模项的出现频率。 3.根据权利要求1所述的方法,其特征在于, 对滑动到的每个滑动窗口进行适用于第一训练阶段或第二训练阶段的判断,包括: 统计包含该滑动窗口中至少一个建模项的语音数据的条数,计算统计结果与语音数据总条数的比值,如果该比值大于预设比例阈值,则确定该滑动窗口适用于第一训练阶段,否则,确定该滑动窗口适用于第二训练阶段。 4.根据权利要求3所述的方法,其特征在于, 根据该滑动窗口确定低频语音数据的方法为:将包含该滑动窗口中的至少一个建模项的各语音数据确定为低频语音数据,其它各语音数据则作为高频语音数据。 5.根据权利要求4所述的方法,其特征在于, 预先设置每次迭代中参与训练的高频语音数据条数和低频语音数据条数; 确定低频语音数据的重用次数的方法为: 计算被划分为高频语音数据的语音数据条数与每次迭代中参与训练的高频语音数据条数的商QH; 计算被划分为低频语音数据的语音数据条数与每次迭代中参与训练的低频语音数据条数的商QL; 计算QH与QL的商,将该商值向上取整后得到的值确定为低频语音数据的重用次数。 6.根据权利要求5所述的方法,其特征在于, 根据该滑动窗口将所有语音数据划分为低频语音数据和高频语音数据并确定低频语音数据的重用次数之后,根据低频语音数据的重用次数调整建模字典中所有建模项的权重的方法为: 对每个建模项,统计包含该建模项的语音数据条数,如果该建模项属于该滑动窗口,则将包含该建模项的语音数据条数与低频语音数据的重用次数的乘积作为该建模项的出现频率,否则,将包含该建模项的语音数据条数作为该建模项的出现频率; 采用公式weight’=(m_count+N×n_count)/class_per_count’计算该建模项调整后的权重;其中,weight’为该建模项调整后的权重,m_count为被划分为高频语音数据的语音数据条数,N为低频语音数据的重用次数,n_count为被划分为低频语音数据的语音数据条数,class_per_count’为该建模项的出现频率。 7.根据权利要求1所述的方法,其特征在于, 预先设置每次迭代中参与训练的语音数据条数batch_size; 所述权重参数为一标量; 根据该滑动窗口中所有建模项的权重确定一权重参数的方法为:将该滑动窗口中所有建模项的权重的平均值确定为该权重参数; 将所有语音数据的声音特征信息作为训练样本,执行基于该权重参数的语音识别模型训练的方法为: 根据语音数据的总条数和预先设置的batch_size确定一轮训练所需的迭代次数,根据该迭代次数将所有语音数据平均划分为多组; 针对每组语音数据,将该权重参数作为本次迭代过程中所有建模项的权重参数,将该组语音数据的声音特征信息作为训练样本对语音识别模型进行一次迭代训练。 8.根据权利要求1所述的方法,其特征在于, 预先设置每次迭代中参与训练的高频语音数据条数NH和低频语音数据条数NL; 所述权重参数为一标量; 根据该滑动窗口中所有建模项调整后的权重确定一权重参数的方法为:将该滑动窗口中所有建模项调整后的权重的平均值确定为该权重参数; 将所有语音数据的声音特征信息作为训练样本,根据低频语音数据的重用次数执行基于该权重参数的语音识别模型训练的方法为: 计算被划分为高频语音数据的语音数据条数与每次迭代中参与训练的高频语音数据条数的商QH,将所有高频语音数据平均划分为QH组; 针对每组高频语音数据,选择NL条语音数据加入到该组高频语音数据,将该权重参数作为本次迭代过程中所有建模项的权重参数,将该组语音数据的声音特征信息作为训练样本,对语音识别模型进行一次迭代训练;其中,每条低频语音数据参与训练的迭代次数不超过低频语音数据的重用次数,且每次迭代中参与训练的NL条低频语音数据互不相同。 9.根据权利要求1所述的方法,其特征在于, 预先设置每次迭代中参与训练的语音数据条数batch_size; 所述权重参数为一向量,该向量中包括建模字典中所有建模项的权重参数; 根据该滑动窗口中所有建模项的权重确定一权重参数的方法为:针对建模字典中的每个建模项,如果该建模项属于该滑动窗口,则将所述向量中该建模项的权重参数设置为该建模项的权重,如果该建模项不属于该滑动窗口,则若该建模项的权重小于预设权重阈值,则将所述向量中该建模项的权重参数设置为该建模项的权重,若该建模项的权重不小于预设权重阈值,则将所述向量中该建模项的权重参数设置为预设权重阈值; 将所有语音数据的声音特征信息作为训练样本,执行基于该权重参数的语音识别模型训练的方法为: 根据语音数据总条数和预先设置的batch_size确定一轮训练所需的迭代次数,根据该迭代次数将所有语音数据平均划分为多组; 针对每组语音数据,将所述向量中各建模项的权重参数作为本次迭代过程中各建模项的权重参数,将该组语音数据的声音特征信息作为训练样本,对语音识别模型进行一次迭代训练。 10.根据权利要求1所述的方法,其特征在于, 预先设置每次迭代中参与训练的高频语音数据条数NH和低频语音数据条数NL; 所述权重参数为一向量,该向量中包括建模字典中所有建模项的权重参数; 根据该滑动窗口中所有建模项调整后的权重确定权重参数的方法为:针对建模字典中的每个建模项,如果该建模项属于该滑动窗口,则将所述向量中该建模项的权重参数设置为该建模项调整后的权重,如果该建模项不属于该滑动窗口,则若该建模项调整后的权重小于W,则将所述向量中该建模项的权重参数设置为该建模项调整后的权重,若该建模项的权重不小于W,则将所述向量中该建模项的权重参数设置为权重值W;其中,W是该滑动窗口中各建模项调整后的权重中的最大值; 将所有语音数据的声音特征信息作为训练样本,根据低频语音数据的重用次数执行基于该权重参数的语音识别模型训练的方法为: 计算被划分为高频语音数据的语音数据条数与每次迭代中参与训练的高频语音数据条数的商QH,将所有高频语音数据平均划分为QH组; 针对每组高频语音数据,选择NL条低频语音数据加入到该组高频语音数据中,将所述向量中各建模项的权重参数作为本次迭代过程中各建模项的权重参数,将该组语音数据的声音特征信息作为训练样本,对语音识别模型进行一次迭代训练;其中,每条低频语音数据参与训练的迭代次数不超过低频语音数据的重用次数,且每次迭代中参与训练的NL条低频语音数据互不相同。 11.根据权利要求1-10任一权项所述的方法,其特征在于, 所述建模粒度为音素、音节、或字。 12.一种语音识别模型的训练装置,其特征在于,该装置包括: 配置单元,用于预先基于设定的建模粒度配置建模字典,建模字典中包括该建模粒度下的所有建模项; 获取单元,用于获取多条语音数据及每条语音数据的语音文本; 提取单元,用于提取每条语音数据的声音特征信息; 统计单元,用于根据所有语音数据的语音文本统计建模字典中每个建模项的出现频率和权重,将所有建模项按照出现频率从高到低排序构成频率表; 判断单元,用于利用滑动窗口在所述频率表中按照预设步长滑动,并对滑动到的每个滑动窗口进行适用于第一训练阶段或第二训练阶段的判断; 第一训练单元,用于如果判断单元判断该滑动窗口适用于第一训练阶段,则根据该滑动窗口中所有建模项的权重确定一权重参数,将所有语音数据的声音特征信息作为训练样本,执行基于该权重参数的语音识别模型训练; 第二训练单元,用于如果判断单元判断该滑动窗口适用于第二训练阶段,则根据该滑动窗口确定低频语音数据及其重用次数,根据低频语音数据的重用次数调整建模字典中所有建模项的权重,根据该滑动窗口中所有建模项调整后的权重确定一权重参数,将所有语音数据的声音特征信息作为训练样本,根据低频语音数据的重用次数执行基于该权重参数的语音识别模型训练。 13.根据权利要求12所述的装置,其特征在于, 所述统计单元,根据所有语音数据的语音文本统计建模字典中每个建模项的出现频率和权重时,用于: 对每个建模项,统计语音样本中包含该建模项的语音数据的条数,将统计结果作为该建模项的出现频率,并采用公式weight=n_sample/class_per_count计算该建模项的权重;其中,weight为该建模项的权重,n_sample为语音数据总条数,class_per_count为该建模项的出现频率。 14.根据权利要求12所述的装置,其特征在于, 所述判断单元,对滑动到的每个滑动窗口进行适用于第一训练阶段或第二训练阶段的判断,包括: 统计包含该滑动窗口中至少一个建模项的语音数据的条数,计算统计结果与语音数据总条数的比值,如果该比值大于预设比例阈值,则确定该滑动窗口适用于第一训练阶段,否则,确定该滑动窗口适用于第二训练阶段。 15.根据权利要求14所述的装置,其特征在于, 所述第二训练单元,根据该滑动窗口确定低频语音数据时,用于:将包含该滑动窗口中的至少一个建模项的各语音数据确定为低频语音数据,其它各语音数据则作为高频语音数据。 16.根据权利要求15所述的装置,其特征在于, 所述配置单元,用于预先设置每次迭代中参与训练的高频语音数据条数和低频语音数据条数; 所述第二训练单元,确定低频语音数据的重用次数时,用于: 计算被划分为高频语音数据的语音数据条数与每次迭代中参与训练的高频语音数据条数的商QH; 计算被划分为低频语音数据的语音数据条数与每次迭代中参与训练的低频语音数据条数的商QL; 计算QH与QL的商,将该商值向上取整后得到的值确定为低频语音数据的重用次数。 17.根据权利要求16所述的装置,其特征在于, 所述第二训练单元,根据该滑动窗口将所有语音数据划分为低频语音数据和高频语音数据并确定低频语音数据的重用次数之后,根据低频语音数据的重用次数调整建模字典中所有建模项的权重时,用于: 对每个建模项,统计包含该建模项的语音数据条数,如果该建模项属于该滑动窗口,则将包含该建模项的语音数据条数与低频语音数据的重用次数的乘积作为该建模项的出现频率,否则,将包含该建模项的语音数据条数作为该建模项的出现频率; 采用公式weight’=(m_count+N×n_count)/class_per_count’计算该建模项调整后的权重;其中,weight’为该建模项调整后的权重,m_count为被划分为高频语音数据的语音数据条数,N为低频语音数据的重用次数,n_count为被划分为低频语音数据的语音数据条数,class_per_count’为该建模项的出现频率。 18.根据权利要求12所述的装置,其特征在于, 所述配置单元,预先设置每次迭代中参与训练的语音数据条数batch_size; 所述权重参数为一标量; 所述第一训练单元,根据该滑动窗口中所有建模项的权重确定一权重参数的方法为:将该滑动窗口中所有建模项的权重的平均值确定为该权重参数; 所述第一训练单元,将所有语音数据的声音特征信息作为训练样本,执行基于该权重参数的语音识别模型训练时,用于: 根据语音数据的总条数和预先设置的batch_size确定一轮训练所需的迭代次数,根据该迭代次数将所有语音数据平均划分为多组; 针对每组语音数据,将该权重参数作为本次迭代过程中所有建模项的权重参数,将该组语音数据的声音特征信息作为训练样本对语音识别模型进行一次迭代训练。 19.根据权利要求12所述的装置,其特征在于, 所述配置单元,用于预先设置每次迭代中参与训练的高频语音数据条数NH和低频语音数据条数NL; 所述权重参数为一标量; 所述第二训练单元,根据该滑动窗口中所有建模项调整后的权重确定一权重参数时,用于:将该滑动窗口中所有建模项调整后的权重的平均值确定为该权重参数; 所述第二训练单元,将所有语音数据的声音特征信息作为训练样本,根据低频语音数据的重用次数执行基于该权重参数的语音识别模型训练时,用于: 计算被划分为高频语音数据的语音数据条数与每次迭代中参与训练的高频语音数据条数的商QH,将所有高频语音数据平均划分为QH组; 针对每组高频语音数据,选择NL条语音数据加入到该组高频语音数据,将该权重参数作为本次迭代过程中所有建模项的权重参数,将该组语音数据的声音特征信息作为训练样本,对语音识别模型进行一次迭代训练;其中,每条低频语音数据参与训练的迭代次数不超过低频语音数据的重用次数,且每次迭代中参与训练的NL条低频语音数据互不相同。 20.根据权利要求12所述的装置,其特征在于, 所述配置单元,用于预先设置每次迭代中参与训练的语音数据条数batch_size; 所述权重参数为一向量,该向量中包括建模字典中所有建模项的权重参数; 所述第一训练单元,根据该滑动窗口中所有建模项的权重确定一权重参数时,用于:针对建模字典中的每个建模项,如果该建模项属于该滑动窗口,则将所述向量中该建模项的权重参数设置为该建模项的权重,如果该建模项不属于该滑动窗口,则若该建模项的权重小于预设权重阈值,则将所述向量中该建模项的权重参数设置为该建模项的权重,若该建模项的权重不小于预设权重阈值,则将所述向量中该建模项的权重参数设置为预设权重阈值; 所述第一训练单元,将所有语音数据的声音特征信息作为训练样本,执行基于该权重参数的语音识别模型训练时,用于: 根据语音数据总条数和预先设置的batch_size确定一轮训练所需的迭代次数,根据该迭代次数将所有语音数据平均划分为多组; 针对每组语音数据,将所述向量中各建模项的权重参数作为本次迭代过程中各建模项的权重参数,将该组语音数据的声音特征信息作为训练样本,对语音识别模型进行一次迭代训练。 21.根据权利要求12所述的装置,其特征在于, 所述配置单元,用于预先设置每次迭代中参与训练的高频语音数据条数NH和低频语音数据条数NL; 所述权重参数为一向量,该向量中包括建模字典中所有建模项的权重参数; 所述第二训练单元,根据该滑动窗口中所有建模项调整后的权重确定权重参数时,用于:针对建模字典中的每个建模项,如果该建模项属于该滑动窗口,则将所述向量中该建模项的权重参数设置为该建模项调整后的权重,如果该建模项不属于该滑动窗口,则若该建模项调整后的权重小于W,则将所述向量中该建模项的权重参数设置为该建模项调整后的权重,若该建模项的权重不小于W,则将所述向量中该建模项的权重参数设置为权重值W;其中,W是该滑动窗口中各建模项调整后的权重中的最大值; 所述第二训练单元,将所有语音数据的声音特征信息作为训练样本,根据低频语音数据的重用次数执行基于该权重参数的语音识别模型训练时,用于: 计算被划分为高频语音数据的语音数据条数与每次迭代中参与训练的高频语音数据条数的商QH,将所有高频语音数据平均划分为QH组; 针对每组高频语音数据,选择NL条低频语音数据加入到该组高频语音数据中,将所述向量中各建模项的权重参数作为本次迭代过程中各建模项的权重参数,将该组语音数据的声音特征信息作为训练样本,对语音识别模型进行一次迭代训练;其中,每条低频语音数据参与训练的迭代次数不超过低频语音数据的重用次数,且每次迭代中参与训练的NL条低频语音数据互不相同。 22.根据权利要求12-21任一权项所述的装置,其特征在于, 所述建模粒度为音素、音节、或字。 23.一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通过总线相连的存储器;所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序;其特征在于,所述至少一个处理器执行所述一个或多个计算机程序时实现权利要求1至11任一权项所述的方法步骤。 24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现权利要求1至11中任一权项所述的方法。
相关文献
评论
法律状态详情>>
2020-10-13公开
相关作者
相关机构