HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

一种自动学习优化声学模型的方法与流程

2021-01-28 16:01:33|330|起点商标网
一种自动学习优化声学模型的方法与流程

本发明涉及一种计算机领域,尤其涉及一种自动学习优化声学模型的方法。



背景技术:

语音识别技术就是让智能设备听懂人类的语音。它是一门涉及数字信号处理、人工智能、语言学、数理统计学、声学、情感学及心理学等多学科交叉的科学。这项技术可以提供比如自动客服、自动语音翻译、命令控制、语音验证码等多项应用。近年来,随着人工智能的兴起,语音识别技术在理论和应用方面都取得大突破,开始从实验室走向市场,已逐渐走进我们的日常生活。现在语音识别己用于许多领域,主要包括语音识别听写器、语音寻呼和答疑平台、自主广告平台,智能客服等。

语音识别的本质是一种基于语音特征参数的模式识别,即通过学习,系统能够把输入的语音按一定模式进行分类,进而依据判定准则找出最佳匹配结果。目前,模式匹配原理已经被应用于大多数语音识别系统中。

语音识别算法目前虽已日趋完善,但语音识别系统的性能受多方面影响,如口语化,方言,短词,语速,音量,噪声等。在不同的应用场景中,往往遇到各种各样的问题影响引擎的最终识别结果。

传统的机器学习方法在优化声学模型时,首先需要收集大量数据,然后对数据进行标注、提取特征、选择特征,然后根据所选特征训练模型、对模型进行测试评估,最后部署到应用上,以解决基础声学模型的口音识别问题。

例如,一种在中国专利文献上公开的“一种优化语音识别声学模型的方法及系统”,其公告号cn103165129b,包括:a1、采用语音识别声学模型对输入的语音段进行识别得到识别结果,以及获取所述输入的语音段的标注脚本;a2、将所述识别结果和标注脚本进行比对,获取被识别错误的语音段;a3、以所述被识别错误的语音段及其标注脚本更新语音识别声学模型的训练数据;a4、以更新后的训练数据对所述语音识别声学模型进行重训练。

该方法的声学优化过程需要大量的标注语料,耗费大量的人力和时间;优化声学模型的过程繁琐耗时,且准入门槛高。



技术实现要素:

本发明主要解决现有技术优化声学模型的过程繁琐耗时,成本大且准入门槛高的问题;提供一种自动学习优化声学模型的方法,自动训练、自动测试和迭代优化,降低声学模型优化过程的耗时和成本,降低准入门槛。

本发明的上述技术问题主要是通过下述技术方案得以解决的:

本发明包括以下步骤:

s1:从数据库中将部分标注数据选入测试池中,将剩余部分标注数据和未标注数据筛选入训练池;

s2:将训练池中的数据分批训练,使用测试池中的数据对每次训练产生的声学模型进行识别率测试,将识别率测试结果录入数据库,并生成测试报告;

s3:以识别率最高的声学模型为基础进行循环迭代训练,利用已有数据完成最优声学模型。

本方案自动训练、自动测试,每次训练生成一个声学模型便会测试该模型的整体识别率,下一次训练以之前已经训练好的模型中识别率最高的模型为基础模型开始训练,如此循环迭代,自动学习,降低声学模型优化过程的耗时和成本,降低准入门槛。

作为优选,所述的步骤s1包括以下步骤:

s11:从数据库中随机挑选标注数据选入测试池,剩余的标注数据经过语音增强后选入训练池;

s12:对数据库中未标注数据通过非线性回归算法进行识别率的预测,并将识别率高于阈值的数据放入训练池;

s13:以识别结果充当标注数据,并通过语音增强扩充训练池数据。

本方案中识别率的阈值为80%,将识别率高的识别音频的识别结果作为标注数据扩充进入训练池,减少人工标注的成本,节省人力,提高效率。

作为优选,所述的非线性回归算法为:

其中,y为音频数据的预测识别准确率;x1为音频数据识别结果的困惑度;x2为音频数据的音频实时测试速度;ε为服从均值为零,方差为σ2分布的随机误差;βi,βij为待估参数;i,j为自然数下标。

采用非线性回归算法预测音频数据的识别率,筛选音频数据进入训练池,提高通过训练池得到的声学模型的识别率。

作为优选,所述的待估参数βi,βij通过极大然似估计;对于给定的x和待估参数βi,βij,y的密度函数为:

n个观测值的对数然似函数为:

最大化上述函数得到待估参数βi,βij的估计值:

为待估参数βi,βij的估计值。

待估参数βi,βij的估计值即为非线性回归算法中的待估参数βi,βij。

作为优选,所述的语音增强包括音量增强和语音去噪以及语音转换。先将音频数据进行音量增强和语音去噪,提高音频数据的质量,提高语音识别的准确率。再将质量提高后的音频数据进行语音转换,丰富训练池中的语料,通过语音转化解决声学模型识别口音的问题。

作为优选,所述的步骤s2和步骤s3包括以下步骤:

s21:对训练池中的数据进行分批训练,每次训练产生一个声学模型;

s22:利用测试池中的数据对每个声学模型进行整体识别率的测试;

s23:将识别率测试结果录入数据库,并生成测试报告;

s31:比较声学模型的识别率,以识别率最高的声学模型作为基础开始下次训练,并循环迭代;

s32:利用已有数据完成最优识别率的声学模型的训练学习。

以本次识别率最高的声学模型作为下一次训练学习基础,依次循环迭代,以识别率为判断基础自动训练、自动迭代,降低声学模型优化过程的耗时和成本,降低准入门槛。

作为优选,将对所述的最优声学模型的测试结果录入数据库,并提取重要测试信息,绘制句错误率分布图和引擎测试实时率分布图,自动生成markdown文件测试报告。生成报告以及句错误率分布图和引擎测试实时率分布图,给开发者一个直观的反馈,方便进行之后的优化。

作为优选,所述的提取重要测试信息包括提取测试时间、测试所用模型、测试音频的总字错误率和测试音频总的加权音频的实时测试速度,并提取每个测试音频的句错误率;以音频句错误率为横轴,音频个数占比为纵轴,绘制音频的句错误率分布图;以音频的实时测试速度为横轴,以音频个数占比为纵轴,绘制音频的引擎测试实时率分布图。提取重要信息,对数据库进行反馈以及给开发者直观的反馈,方便之后的声学模型的优化。

作为优选,用于完成所述自动学习优化声学模型方法的系统采用docker封装。系统采用docker封装,将自学习代码与数据库代码打包成镜像,方便系统更新升级;再把配置文件、训练包、数据等外部文件挂载到docker内部,降低docker存储量,并编写docker系统封装代码,实现系统的一键启动、停止、删除和重启,方便操作。

本发明的有益效果是:

1.通过语音增强扩充标注数据以及通过非线性回归预测识别音频的识别率来挑选数据,以此扩充训练数据,减少人工标注成本。

2.语音增强算法通过音量增强、语音去噪及语音转换等多种方法来抑制背景噪声,改善音频质量,以及减少口音对语音识别结果的影响,从而提供了提高语音识别结果准确率的基础。

3.自动训练、自动测试,每次训练生成一个声学模型便会测试该模型的整体识别率,下一次训练以之前已经训练好的模型中识别率最高的模型为基础模型开始训练,如此循环迭代,自动学习,降低声学模型优化过程的耗时和成本,降低准入门槛。

附图说明

图1是本发明的一种自动学习优化声学模型的方法流程图。

具体实施方式

下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。

实施例:

本实施例的一种自动学习优化声学模型的方法,如图1所示,包括以下步骤:

s1:从数据库中将部分标注数据选入测试池中,将剩余部分标注数据和未标注数据筛选入训练池。

s11:从数据库中随机挑选标注数据选入测试池,剩余的标注数据经过语音增强后选入训练池。

s12:对数据库中未标注数据通过非线性回归算法进行识别率的预测,并将识别率高于阈值的数据放入训练池。在本实施例中,阈值为80%。

非线性回归算法为:

其中,y为音频数据的预测识别准确率;x1为音频数据识别结果的ppl,即困惑度;x2为音频数据的rtf,即音频的实时测试速度;ε为服从均值为零,方差为σ2分布的随机误差;βi,βij为待估参数;i,j为自然数下标。

待估参数βi,βij通过极大然似估计;对于给定的x和待估参数βi,βij,y的密度函数为:

n个观测值的对数然似函数为:

最大化上述函数得到待估参数βi,βij的估计值:

为待估参数βi,βij的估计值。

待估参数βi,βij的估计值即为非线性回归算法中的待估参数βi,βij。

采用非线性回归算法预测音频数据的识别率,筛选音频数据进入训练池,提高通过训练池得到的声学模型的识别率。

s13:以识别结果充当标注数据,并通过语音增强扩充训练池数据。

语音增强包括音量增强和语音去噪以及语音转换。先通过音量增强、语音去噪改善音频质量,随后对优化后的音频进行语音转换来扩充数据。

音量增强通过自适应音量增强算法实现。

首先预设音频的强度阈值,包括最低值和最高值,一般为5000-30000smpl,其中,smpl为最大允许电平。之后对原音频进行分帧,并以每十帧为一段。对每段音频进行音量检测,若某段音频声音强度低于最低值,对其进行增强处理,反之,减弱其声音强度。

语音去噪包括提取各语音帧的声学特征;利用干净语音的与噪声语音的样本对渐进式双输出神经网络模型进行训练,利用训练后的渐进式双输出神经网络模型估计各语音帧的理想软掩蔽,并进行声学特征的增强处理;如果应用到人耳,则利用增强后的声学特征对波形进行重构,得到可主观测听的波形;如果应用到语音识别系统,则将估计到的理想软掩蔽应用到输入语音的声学特征上上,得到掩蔽后的声学特征,然后对波形进行重构得到增强后的语音。

语音转换分为指向性声音转换和非指向性声音转换,在保持原说话人的语调、语速等特征不变的前提下,将原音频中说话人的声音转换为另外指定人的声音,或随机转换为其他人声音。其中,指向性声音转换采用cyclegan算法,对说话人声音进行风格转移,从而达到对两个人的声音风格进行转换的目的。而非指向性声音转换,是通过调整音频的基频和共振峰,在保持说话人语速不变、内容不变的情况下改变说话人声音。

通过语音增强扩充标注数据以及通过非线性回归预测识别音频的识别率来挑选数据,以此扩充训练数据,减少人工标注成本。

语音增强算法通过音量增强、语音去噪及语音转换等多种方法来抑制背景噪声,改善音频质量,以及减少口音对语音识别结果的影响,从而提高了语音识别结果的准确率。

s2:将训练池中的数据分批训练,使用测试池中的数据对每次训练产生的声学模型进行识别率测试,将识别率测试结果录入数据库,并生成测试报告。

s21:对训练池中的数据进行分批训练,每次训练产生一个声学模型。

s22:利用测试池中的数据对每个声学模型进行整体识别率的测试。

s23:将识别率测试结果录入数据库,并生成测试报告。

将对最优声学模型的测试结果录入数据库,并提取重要测试信息,绘制句错误率分布图和引擎测试实时率分布图,自动生成markdown文件测试报告。提取重要信息反馈给数据库,便于之后的声学模型优化。

提取重要测试信息包括提取测试时间、测试所用模型、测试音频的总字错误率和测试音频总的加权rtf,即音频的实时测试速度,并提取每个测试音频的句错误率。

以音频句错误率为横轴,音频个数占比为纵轴,绘制音频的句错误率分布图;以音频rtf为横轴,以音频个数占比为纵轴,绘制音频的引擎测试实时率分布图。

生成报告以及句错误率分布图和引擎测试实时率分布图,给开发者一个直观的反馈,方便进行之后的声学模型优化。

s3:以识别率最高的声学模型为基础进行循环迭代训练,利用已有数据完成最优声学模型。

s31:比较声学模型的识别率,以识别率最高的声学模型作为基础开始下次训练,并循环迭代。

s32:利用已有数据完成最优识别率的声学模型的训练学习。

以本次识别率最高的声学模型作为下一次训练学习基础,依次循环迭代,以识别率为判断基础自动训练、自动迭代,降低声学模型优化过程的耗时和成本,降低准入门槛。

用于完成自动学习优化声学模型方法的系统采用docker封装。系统采用docker封装,将自学习代码与数据库代码打包成镜像,方便系统更新升级;再把配置文件、训练包、数据等外部文件挂载到docker内部,降低docker存储量,并编写docker系统封装代码,实现系统的一键启动、停止、删除和重启,方便操作。

本发明通过语音增强扩充标注数据以及通过非线性回归预测识别音频的识别率来挑选数据,以此扩充训练数据,减少人工标注成本。语音增强算法通过音量增强、语音去噪及语音转换等多种方法来抑制背景噪声,改善音频质量,以及减少口音对语音识别结果的影响,从而提供了提高语音识别结果的准确率的基础。自动训练、自动测试,每次训练生成一个声学模型便会测试该模型的整体识别率,下一次训练以之前已经训练好的模型中识别率最高的模型为基础模型开始训练,如此循环迭代,自动学习,降低声学模型优化过程的耗时和成本,降低准入门槛。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips