语音识别的方法及系统的制作方法

文档序号:10571084阅读:724来源:国知局
语音识别的方法及系统的制作方法
【专利摘要】本发明公开了一种语音识别的方法,终端获取输入语音;所述终端提取所述输入语音的样本特征;所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。本发明还公开了一种语音识别的系统。本发明提高了语音交互过程中语音识别的准确度。
【专利说明】
语音识别的方法及系统
技术领域
[0001 ]本发明涉及语音交互领域,尤其涉及语音识别的方法及系统。
【背景技术】
[0002]随着互联网信息技术的发展,智能硬件的应用越来越广泛,例如智能电视、智能手环、智能机器人等。在智能硬件中,为了便捷的获取信息,大部分智能硬件厂商都提供语音交互这样一种人机交互方式。在进行语音交互时,智能硬件获取用户输入的语音信息,然后通过语音识别输出相应的信息或者执行相应的指令。当语音识别不准确时,智能硬件无法输出正确的信息或者执行正确的指令,降低用户体验,因此提升语音交互过程中语音识别的准确度是一个亟待解决的问题。

【发明内容】

[0003]本发明的主要目的在于提供一种语音识别的方法及系统,旨在实现提高语音交互过程中语音识别的准确度的目的。
[0004]为实现上述目的,本发明提供的一种语音识别的方法包括以下步骤:
[0005]终端获取输入语音;
[0006]所述终端提取所述输入语音的样本特征;
[0007]所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值
口 O
[0008]优选地,所述语音识别输出值集合包含语音的样本特征与语音识别输出值的对应关系;
[0009]所述终端根据所述样本特征和预置的本地数据库识别所述输入语音包括:
[0010]所述终端在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值;
[0011]当搜索到所述样本特征对应的语音识别输出值时,所述终端获取所述语音识别输出值;
[0012]当未搜索到所述样本特征对应的语音识别输出值时,所述终端根据检测到的所述终端的网络信号强度进行语音识别。
[0013]优选地,所述终端在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值包括:
[0014]所述终端判断所述网络信号强度是否大于第一预设值;
[0015]若是,所述终端发送所述样本特征至所述终端的自有云服务器,通过所述自有云服务器进行语音识别;
[0016]若否,所述终端将所述样本特征输入至所述语音识别模型,输出预测的识别结果。
[0017]优选地,所述方法还包括:
[0018]在所述自有云服务器接收到所述样本特征后,在所述自有云服务器中进行搜索;
[0019]当在所述自有云服务器中搜索到所述样本特征对应的识别结果时,所述自有云服务器获取所述识别结果;
[0020]当在所述自有云服务器中未搜索到所述样本特征对应的识别结果时,若所述云服务器检测到所述网络强度大于第二预设值,所述云服务器发送所述样本特征至第三方语音服务器,通过所述第三方语音识别服务器识别所述输入语音。
[0021]优选地,所述终端根据所述样本特征在所述语音识别输出值中搜索是否有与所述样本特征对应的语音识别输出值之前包括:
[0022]所述终端将所述样本特征与预置的样本库进行对比分析;
[0023]当所述样本特征与所述样本库中预置样本特征的相似度高于预设值时,所述终端执行所述根据所述样本特征在所述本地数据库中进行搜索的步骤;
[0024]当所述样本特征与所述样本库中任一预置样本特征的相似度低于预设值时,所述终端执行所述发送所述样本特征至所述终端的自有云服务器,通过所述自有云服务器进行语音识别的步骤。
[0025]此外,为实现上述目的,本发明还提供一种语音识别的系统,所述系统包括:终端;
[0026]所述终端包括:
[0027]获取模块,用于获取输入语音;
[0028]特征提取模块,用于提取所述输入语音的样本特征;
[0029]语音识别模块,用于根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。
[0030]优选地,所述语音识别输出值集合包含语音的样本特征与语音识别输出值的对应关系;
[0031 ]所述语音识别模块包括:
[0032]搜索子模块,用于在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值;
[0033]第一识别子模块,用于当搜索到所述样本特征对应的语音识别输出值时,获取所述语音识别输出值;
[0034]第二识别子模块,用于当未搜索到所述样本特征对应的语音识别输出值时,根据检测到的所述终端的网络信号强度进行语音识别。
[0035]优选地,所述系统还包括所述终端对应的自有云服务器;
[0036]所述第二识别子模块包括:
[0037]判断单元,用于判断所述网络信号强度是否大于第一预设值;
[0038]第一识别单元,用于当所述网络信号强度大于第一预设值时,发送所述样本特征至所述自有云服务器,通过所述自有云服务器进行语音识别;
[0039]第二识别单元,用于当所述网络信号强度小于第一预设值时,将所述样本特征输入至所述语音识别模型,输出预测的识别结果。
[0040]优选地,所述自有云服务器包括:
[0041 ]搜索模块,用于在所述自有云服务器接收到所述样本特征后,在所述自有云服务器中进行搜索;
[0042]识别模块,用于当在所述自有云服务器中搜索到所述样本特征对应的识别结果时,获取所述识别结果;
[0043]发送模块,用于当在所述自有云服务器中未搜索到所述样本特征对应的识别结果时,若检测到所述网络强度大于第二预设值,发送所述样本特征至第三方语音服务器,通过所述第三方语音识别服务器识别所述输入语音。
[0044]优选地,所述终端还包括:
[0045]对比分析模块,用于将所述样本特征与预置的样本库进行对比分析;
[0046]第一触发模块,用于当所述样本特征与所述样本库中预置样本特征的相似度高于预设值时,触发所述搜索子模块根据所述样本特征在所述本地数据库中进行搜索;
[0047]所述第一识别单元,还用于当所述样本特征与所述样本库中预置样本特征的相似度低于预设值时,发送所述样本特征至所述自有云服务器,通过所述自有云服务器进行语首识别;
[0048]本发明实施例通过终端获取输入语音;所述终端提取所述输入语音的样本特征;所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。由于本地数据库包含基于深度学习的语音识别模型和根据语音识别模型得到的语音识别的输出值,因此,在利用该本地数据库识别输入语音时,语音识别的结果更精确,从而实现了在语音交互的过程中提高语音识别的准确度的目的。
【附图说明】
[0049]图1为本发明语音识别的方法第一实施例的步骤流程示意图;
[0050]图2为图1所示实施例中通过基本的声音结构得到某段声音的示意图;
[0051]图3为图1所示实施例中通过稀疏编码表示目标声音的示意图;
[0052]图4为本发明图1所示实施例中步骤S30的细化步骤流程示意图;
[0053]图5为本发明为图4所示实施例中步骤S330中根据检测到的所述终端的网络信号强度进行语音识别的细化步骤流程示意图;
[0054]图6为本发明自有云服务器中进行语音识别的细化步骤流程示意图;
[0055]图7为本发明图6所示实施例中自有云服务器的架构示意图;
[0056]图8为本发明语音识别的系统第一实施例的功能模块示意图;
[0057]图9为图8所示实施例中语音识别模块30的细化功能模块示意图;
[0058]图10为图9所示实施例中第二识别子模块330的细化功能模块示意图;
[0059]图11为本发明自有云服务器12包括的功能模块示意图。
[0060]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
[0061]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0062]本发明提供一种语音识别的方法。参照图1,在第一实施例中,该方法包括:
[0063]步骤SlO,终端获取输入语音;
[0064]步骤S20,所述终端提取所述输入语音的样本特征;
[0065]步骤S30,所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。
[0066]本发明提供的语音识别的方法,用于在语音交互的情况下,对输入的语音进行识另O。在语音交互时,一般需要在终端通过终端的声音输入设备接收用户输入的语音,然后对接收到的声音进行处理,再将输入的声音转化为文字输出,或者是将输入的声音识别后,通过控制指令控制终端的运行。终端可以理解为接收声音输入的载体,终端可以为手机、平板、智能电视、智能空调、智能机器人等各种具备语音交互功能的设备。
[0067]本实施例中上述输入语音是语音交互过程中,用户输入的语音。当终端获取到输入的语音后,对语音进行处理,具体的,获取到的输入语音会以声音数据的形式存在,然后将声音数据进行频谱分析,再提取样本特征存入终端。频谱分析是指,对信号进行傅里叶变换,得到其振幅谱与相位谱,具体的频谱分析的方法有很多,可以根据需要进行选择。对输入语音进行特征提取是为了进一步将语音进行分析,具体进行特征提取的方法属于现有技术,这里不再赘述,可以根据需要进行选择提取语音的方法。
[0068]当提取输入语音的样本特征后,根据样本特征和预置的本地数据库识别输入语音。预置的本地数据库是存在于终端上的本地数据库,无需终端联网,就可以直接访问该数据库,获取数据库中的信息,可以将在本地数据库保存的数据理解为保存声音数据的二级缓存。
[0069]在本地数据库中,包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。深度学习主要是利用类似人工神经网络的特征,人工神经网络时具有层次结构的系统,且层次是递进的,高层表达由低层表达的组合而成。由浅入深完成层次构建。具体的深度学习的实质是通过构建各种学习模型和海量的训练数据来学习重要的特征,从而达到提升判断的准确性。在进行深度学习时,会采集各种声音,对采集到的声音提取其特征,这些采集到的声音作为训练集,再将训练集通过持续学习提高模型预测准确度,训练的过程就是优化模型的权重的过程。在对样本进行了训练优化了模型后,将输入的声音输入给该模型,会得到输出值,该输出值就是对输入的声音进行识别的预测值。
[0070]在建立语音识别模型时,可以采用稀疏编码算法来进行。稀疏编码(SparseCoding)就是将一个信号表示为一组基的线性组合,而且要求只需要较少的几个基就可以将信号表示出来。根据现有技术的研究表明,各种无序的声音中可以找出20种基本的声音结构,其他的声音都可以通过这20种进行合成得出。如图2所示,左边表示20种基本的声音结构,右边表不根据这20种基本的声音结构合成的某一段声音,目标合成声音根据20种基本声音在合成时的权重值决定。在采用稀疏编码表示声音的特征,可以为Target =SUM(a[k]*S[k]),其中,a[k]是在叠加元素S[k]时的权重系数,S[k]是基本声音结构中的一种,如图3所示,为通过稀疏编码表示目标声音的Target = SUM(a[k]*S[k])的示意图,x为某一个时间点的声音,0.9为权重系数,S卩a[k],(i) 36为基本声音结构中的一种,S卩S[k]。通过稀疏编码的方式可以构建音高、音色、音量特征各异的样本集,然后将样本集通过预置的训练算法进行训练,优化语音识别模型的网络权重。常用的基于深度学习的训练算法有很多,可以根据需要进行选择。
[0071]根据所述语音识别模型得到的语音识别输出值集合是指,将若干预先输入的语音通过特征提取经过语音识别模型得到的输出值的集合,这些输出值代表的是输入的语音的识别结果,可以在识别时根据搜索获取得到。
[0072]本发明实施例通过终端获取输入语音;所述终端提取所述输入语音的样本特征;所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。由于本地数据库包含基于深度学习的语音识别模型和根据语音识别模型得到的语音识别的输出值,因此,在利用该本地数据库识别输入语音时,语音识别的结果更精确,从而实现了在语音交互的过程中提高语音识别的准确度的目的。
[0073]参照图4,为步骤S30的细化步骤流程示意图,上述步骤S30包括:
[0074]步骤S310,所述终端在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值;若是,执行步骤S320;若否,执行步骤S330;
[0075]步骤S320,所述终端获取所述语音识别输出值;
[0076]步骤S330,所述终端根据检测到的所述终端的网络信号强度进行语音识别。
[0077]本实施例中,由于将一组语音的样本特征通过语音识别模型得到对应的输出值,因此在语音识别输出值集合中包含语音的样本特征与语音识别输出值的对应关系,在进行语音识别的时候,将所述样本特征在语音识别输出值集合中进行搜索,具体的在搜索时采用预置的搜索引擎,搜索是否存在样本特征对应的语音识别输出值。
[0078]当搜索到所述样本特征对应的语音识别输出值时,获取该语音识别输出值,该语音识别输出值即为该段输入语音的识别结果,然后可以在终端输出识别结果,也可以根据输出结果执行对应的操作,如该语音交互过程是控制智能机器人智能某些指令,则此时控制智能机器人执行对应的操作,又或者是该语音交互过程是在浏览器中进行某些内容的检索,则根据识别出的结果执行对应的检索过程将检索结果显示在用户终端。
[0079]当未搜索到样本特征对应的语音识别输出值时,根据检测到的终端的网络信号强度进行语音识别。上述终端的网络信号的强度的检测方法在现有技术中有很多,可以根据需要选择,不再赘述,对终端的网络信号的强度进行判断的目的是判断此时的网络环境。根据网络环境的状况是否良好进行下一步的操作。
[0080]本实施例通过终端在语音识别输出值集合中搜索是否有与样本特征对应的语音识别输出值,当检索到样本特征对应的语音识别输出值时,获取该语音识别输出值,提高了识别的准确度。同时,当未检索到样本特征对应的语音识别输出值时,根据终端的网络信号的强度进行语音识别,避免网络信号不强的时候尝试发送样本特征至其他服务器或等待其他服务器返回连接请求,提高了语音识别的速度。
[0081]参照图5,为步骤S330中根据检测到的所述终端的网络信号强度进行语音识别的细化步骤流程示意图,所述步骤S330中根据检测到的所述终端的网络信号强度进行语音识别还包括:
[0082]步骤S331,所述终端判断所述网络信号强度是否大于第一预设值;若是,则执行步骤S332 ;若否,则执行步骤S333 ;
[0083]步骤S332,所述终端发送所述样本特征至所述终端的自有云服务器,通过所述自有云服务器进行语音识别;
[0084]步骤S333,所述终端将所述样本特征输入至所述语音识别模型,输出预测的识别结果。
[0085]本实施例是终端根据网络信号强度进行语音识别的细化步骤。具体的判断网络信号强度是否大于预设值,预设值的大小可以根据需要进行设定,可以为固定的值,也可以为变化的值。
[0086]当网络信号强度大于第一预设值时,表明此时终端的网络环境好,此时发送样本特征至终端的自有云服务器,通过自有云服务器进行语音识别。上述自有云服务器是指该终端的网络端云服务器,自有云服务器中存在的数据可以理解为一级缓存。
[0087]当此时网络信号强度不大于第一预设值时,表明此时网络环境可能较差,发送样本特征至自有云服务器可能无法发送成功,因此,直接根据本地数据库中的语音识别模型得到预测的识别结果。可以理解的是,在语音识别模型中若输出的预测结果包括预测值和置信度,则可以在输出时确认通过语音识别模型输出的置信度最高的结果为语音识别的结果O
[0088]本实施例通过终端判断网路信号强度是否大于第一预设值,若是则发送样本特征至终端的自有云服务器,在自有云服务器中进行检索,当网络信号不好的时候,根据语音识别模型输出预测的识别结果,避免相应延时,同时提高网络识别的准确度。结合先在本地数据库搜索再在自有云服务器进行检索的方式,也提高了语音识别的速度。
[0089]参照图6,为自有云服务器中进行语音识别的细化步骤流程示意图,本实施例中,本发明提出的语音识别的方法还包括:
[0090]步骤SlOl,在所述自有云服务器接收到所述样本特征后,在所述自有云服务器中进行搜索;
[0091]步骤S102,当在所述自有云服务器中搜索到所述样本特征对应的识别结果时,所述自有云服务器获取所述识别结果;
[0092]步骤S103,当在所述自有云服务器中未搜索到所述样本特征对应的识别结果时,若所述云服务器检测到所述网络强度大于第二预设值,所述云服务器发送所述样本特征至第三方语音服务器,通过所述第三方语音识别服务器识别所述输入语音。
[0093]本实施例中主要说明了在自有云服务器中进行语音识别的过程。
[0094]当终端发送样本特征到自有云服务器后,在自有云服务器中进行搜索,当搜索到样本特征对应的识别结果时,获取该识别结果。
[0095]在自有云服务器中也可以存放比本地数据库中更复杂的基于深度学习的语音识别模型,和根据该语音识别模型得到的输出值,因为自有云服务器部署在云端,通常有多个分布式缓存服务器,计算能力更强。同时,在本地数据库中存放的语音识别的输出结果,可以根据使用情况存放使用频率最高的,在自有云服务器中存放使用频率略低的。可以理解的是,本地数据库中存放的数据和自有云服务器中存放的数据随着使用进行不断更新,从而使得语音识别的过程更加精确和快速。同时,在获取语音识别的结果时,就可以将识别结果保存至自有云服务器和/或本地数据库,并且根据识别结果进行深度学习,使得随着使用次数增多,语音识别模型的预测度更加精确。
[0096]当在自由云服务器中未检索到样本特征对应的识别结果时,若检测到网络强度大于第二预设值,即终端的网络强度大于第二预设值时,云服务器发送样本特征至第三方语音服务器。这里第二预设值可以根据需要进行设定,第二预设值的大小可以和第一预设值一样,也可以和第二预设值不一样,因为访问自有云服务器和访问第三方云服务器需要的网速可能是不一样的。上述第三方语音服务器为语音识别能力更强的服务器,通常第三方语音服务器可以为专门提供语音识别服务的厂商所提供的服务器,如科大讯飞网络提供的语音识别云服务器。
[0097]可以理解的是,也可以根据使用者的年龄、身份等特征进行分类分析,建立数据库,使得识别结果更准确。
[0098]在实现时,自有云服务器的架构如图7所示,部署CDN服务器提高不同地域访问速度差异的问题,同时CDN服务器也负责将搜索到的缓存中的数据进行返回,用户的访问通过CDN服务器到达反向代理服务器,再通过均衡负载服务器,发送至应用服务器,均衡负载服务器可以适应大量用户的并发访问,实现数据分流,提高稳定性。在应用服务器上还可以增加设置本地缓存,根据历史识别情况快速响应识别结果。在语音交互过程中通过搜索引擎与非关系型数据库配合完成,还可以设置数据库服务器来存储大量用户的账号和设置。同时,向上与第三方语音识别服务器对接,结合第三语音识别服务器的识别能力提高识别的准确度,提高用户体验。
[0099]本实施例通过在自有云服务器接收到样本特征后,在自有云服务器中进行搜索,当在自由云服务器中搜索到样本特征对应的识别结果时,获取识别结果,当未检测到识别结果时且终端的网络强度大于第二预设值时,云服务器发送样本特征至第三方语音服务器,通过在第三方语音服务器进行识别提高语音识别的准确度。并且,只在网络环境较好的情况下才发送样本特征至第三方语音服务器提高避免了语音识别过程中的响应延时。
[0100]本实施例中,上述步骤S310之前包括:
[0101 ]所述终端将所述样本特征与预置的样本库进行对比分析;
[0102]当所述样本特征与所述样本库中预置样本特征的相似度高于预设值时,执行步骤S310;
[0103]当所述样本特征与所述样本库中任一预置样本特征的相似度低于预设值时,执行步骤S332。
[0104]本实施例中在获取到输入语音,提取输入语音的样本特征后,对样本特征与预置的样本库进行对比分析,目的是判断是在本地数据库中直接进行搜索,还是直接发送样本特征至自有云服务器中进行搜索。预置的样本库可以根据需要预先设定。具体的是将样本特征与样本库中的样本特征进行匹配,上述预置样本是指样本库中的预置的样本。
[0105]当样本特征与样本库中预置样本特征的相似度高于预设值时,执行步骤S310,SP终端根据样本特征和终端中预置的本地数据库识别所述输入语音,这里预置样本是指样本库中与样本特征匹配到相似度大于预设值的样本。当样本特征与样本库中任一预置样本特征的相似度低于预设值时,执行步骤S332,即终端发送所述样本特征至所述终端的自有云服务器,通过所述自有云服务器进行语音识别,这里任一样本特征匹配都小于预设值是指样本特征与样本库中任何一个匹配度都小于预设值。
[0106]具体的预设值可以根据需要进行设定,例如可以设置为80%,则当样本特征与样本库中预置样本特征的相似度高于80%时,执行步骤S310,当样本特征与样本库中预置样本特征的相似度低于80 %时,执行步骤S332。
[0107]本实施例通过将样本特征与预置的样本库进行对比分析,当样本特征与样本库中预置样本特征的相似度高于预设值时,根据样本特征在本地数据库中进行搜索,当样本特征与样本库中任一样本特征的相似度低于预设值时,直接发送样本特征至自由云服务器进行匹配,在保证语音识别的准确度的同时提高了语音识别的速度。
[0108]本发明还提供一种语音识别的系统,参照图8,提供了本发明语音识别的系统第一实施例,该实施例中,语音识别的系统包括终端11:所述终端包括:
[0109]获取模块10,用于获取输入语音;
[0110]特征提取模块20,用于提取所述输入语音的样本特征;
[0111]语音识别模块30,用于根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。
[0112]本发明提供的语音识别的系统,用于在语音交互的情况下,对输入的语音进行识另O。在语音交互时,一般需要在终端通过终端的声音输入设备接收用户输入的语音,然后对接收到的声音进行处理,再将输入的声音转化为文字输出,或者是将输入的声音识别后,通过控制指令控制终端的运行。这里语音识别的系统包括终端,终端可以理解为接收声音输入的载体,终端可以为手机、平板、智能电视、智能空调、智能机器人等各种具备语音交互功能的设备。
[0113]本实施例中上述输入语音是语音交互过程中,用户输入的语音。当获取模块10获取到输入的语音后,特征提取模块20对语音进行处理,具体的,获取到的输入语音会以声音数据的形式存在,然后将声音数据进行频谱分析,再提取样本特征存入终端。频谱分析是指,对信号进行傅里叶变换,得到其振幅谱与相位谱,具体的频谱分析的方法有很多,可以根据需要进行选择。对输入语音进行特征提取是为了进一步将语音进行分析,具体进行特征提取的方法属于现有技术,这里不再赘述,可以根据需要进行选择提取语音的方法。
[0114]当提取输入语音的样本特征后,语音识别模块30根据样本特征和预置的本地数据库识别输入语音。预置的本地数据库是存在于终端上的本地数据库,无需终端联网,就可以直接访问该数据库,获取数据库中的信息,可以将在本地数据库保存的数据理解为保存声音数据的二级缓存。
[0115]在本地数据库中,包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。深度学习主要是利用类似人工神经网络的特征,人工神经网络时具有层次结构的系统,且层次是递进的,高层表达由低层表达的组合而成。由浅入深完成层次构建。具体的深度学习的实质是通过构建各种学习模型和海量的训练数据来学习重要的特征,从而达到提升判断的准确性。在进行深度学习时,会采集各种声音,对采集到的声音提取其特征,这些采集到的声音作为训练集,再将训练集通过持续学习提高模型预测准确度,训练的过程就是优化模型的权重的过程。在对样本进行了训练优化了模型后,将输入的声音输入给该模型,会得到输出值,该输出值就是对输入的声音进行识别的预测值。
[0116]在建立语音识别模型时,可以采用稀疏编码算法来进行。稀疏编码(SparseCoding)就是将一个信号表示为一组基的线性组合,而且要求只需要较少的几个基就可以将信号表示出来。根据现有技术的研究表明,各种无序的声音中可以找出20种基本的声音结构,其他的声音都可以通过这20种进行合成得出。如图2所示,左边表示20种基本的声音结构,右边表不根据这20种基本的声音结构合成的某一段声音,目标合成声音根据20种基本声音在合成时的权重值决定。在采用稀疏编码表示声音的特征,可以为Target =SUM(a[k]*S[k]),其中,a[k]是在叠加元素S[k]时的权重系数,S[k]是基本声音结构中的一种,如图3所示,为通过稀疏编码表示目标声音的Target = SUM(a[k]*S[k])的示意图,x为某一个时间点的声音,0.9为权重系数,S卩a[k],(i) 36为基本声音结构中的一种,S卩S[k]。通过稀疏编码的方式可以构建音高、音色、音量特征各异的样本集,然后将样本集通过预置的训练算法进行训练,优化语音识别模型的网络权重。常用的基于深度学习的训练算法有很多,可以根据需要进行选择。
[0117]根据所述语音识别模型得到的语音识别输出值集合是指,将若干预先输入的语音通过特征提取经过语音识别模型得到的输出值的集合,这些输出值代表的是输入的语音的识别结果,可以在识别时根据搜索获取得到。
[0118]本发明实施例通过终端获取输入语音;所述终端提取所述输入语音的样本特征;所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。由于本地数据库包含基于深度学习的语音识别模型和根据语音识别模型得到的语音识别的输出值,因此,在利用该本地数据库识别输入语音时,语音识别的结果更精确,从而实现了在语音交互的过程中提高语音识别的准确度的目的。
[0119]参照图9,为图8所示实施例中语音识别模块30的细化功能模块示意图,上述语音识别t旲块30包括:
[0120]搜索子模块310,用于在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值;
[0121]第一识别子模块320,用于当搜索到所述样本特征对应的语音识别输出值时,获取所述语音识别输出值;
[0122]第二识别子模块330,用于当未搜索到所述样本特征对应的语音识别输出值时,根据检测到的所述终端的网络信号强度进行语音识别。
[0123]本实施例中,由于将一组语音的样本特征通过语音识别模型得到对应的输出值,因此在语音识别输出值集合中包含语音的样本特征与语音识别输出值的对应关系,在进行语音识别的时候,将所述样本特征在语音识别输出值集合中进行搜索,具体的在搜索时采用预置的搜索引擎,搜索是否存在样本特征对应的语音识别输出值。
[0124]当搜索子模块310搜索到所述样本特征对应的语音识别输出值时,第一识别子模块320获取该语音识别输出值,该语音识别输出值即为该段输入语音的识别结果,然后可以在终端输出识别结果,也可以根据输出结果执行对应的操作,如该语音交互过程是控制智能机器人智能某些指令,则此时控制智能机器人执行对应的操作,又或者是该语音交互过程是在浏览器中进行某些内容的检索,则根据识别出的结果执行对应的检索过程将检索结果显示在用户终端。
[0125]当未搜索到样本特征对应的语音识别输出值时,第二识别子模块330根据检测到的终端的网络信号强度进行语音识别。上述终端的网络信号的强度的检测方法在现有技术中有很多,可以根据需要选择,不再赘述,对终端的网络信号的强度进行判断的目的是判断此时的网络环境。根据网络环境的状况是否良好进行下一步的操作。
[0126]本实施例通过终端在语音识别输出值集合中搜索是否有与样本特征对应的语音识别输出值,当检索到样本特征对应的语音识别输出值时,获取该语音识别输出值,提高了识别的准确度。同时,当未检索到样本特征对应的语音识别输出值时,根据终端的网络信号的强度进行语音识别,避免网络信号不强的时候尝试发送样本特征至其他服务器或等待其他服务器返回连接请求,提高了语音识别的速度。
[0127]参照图10,为图9所示实施例中第二识别子模块330的细化功能模块示意图,所述系统还包括所述终端对应的自有云服务器12;
[0128]所述第二识别子模块330包括:
[0129]判断单元331,用于判断所述网络信号强度是否大于第一预设值;
[0130]第一识别单元332,用于当所述网络信号强度大于第一预设值时,发送所述样本特征至所述自有云服务器,通过所述自有云服务器进行语音识别;
[0131]第二识别单元333,用于当所述网络信号强度小于第一预设值时,将所述样本特征输入至所述语音识别模型,输出预测的识别结果。
[0132]本实施例提供的功能模块用于根据网络信号强度进行语音识别。具体的,判断单元331判断网络信号强度是否大于预设值,预设值的大小可以根据需要进行设定,可以为固定的值,也可以为变化的值。
[0133]当网络信号强度大于第一预设值时,表明此时终端的网络环境好,第一识别单元332发送样本特征至终端的自有云服务器,通过自有云服务器进行语音识别。上述自有云服务器是指该终端的网络端云服务器,自有云服务器中存在的数据可以理解为一级缓存。
[0134]当此时网络信号强度不大于第一预设值时,表明此时网络环境可能较差,发送样本特征至自有云服务器可能无法发送成功,因此,第二识别单元333根据本地数据库中的语音识别模型得到预测的识别结果。可以理解的是,在语音识别模型中若输出的预测结果包括预测值和置信度,则可以在输出时确认通过语音识别模型输出的置信度最高的结果为语音识别的结果。
[0135]本实施例通过终端判断网路信号强度是否大于第一预设值,若是则发送样本特征至终端的自有云服务器,在自有云服务器中进行检索,当网络信号不好的时候,根据语音识别模型输出预测的识别结果,避免相应延时,同时提高网络识别的准确度。结合先在本地数据库搜索再在自有云服务器进行检索的方式,也提高了语音识别的速度。
[0136]参照图11,为自有云服务器12包括的功能模块示意图,本实施例中,所述自有云服务器12包括:
[0137]搜索模块201,用于在所述自有云服务器接收到所述样本特征后,在所述自有云服务器中进行搜索;
[0138]识别模块202,用于当在所述自有云服务器中搜索到所述样本特征对应的识别结果时,获取所述识别结果;
[0139]发送模块203,用于当在所述自有云服务器中未搜索到所述样本特征对应的识别结果时,若检测到所述网络强度大于第二预设值,发送所述样本特征至第三方语音服务器,通过所述第三方语音识别服务器识别所述输入语音。
[0140]本实施例中,当终端发送样本特征到自有云服务器后,在自有云服务器中进行搜索,当搜索到样本特征对应的识别结果时,第一识别子单元获取该识别结果。
[0141]在自有云服务器中也可以存放比本地数据库中更复杂的基于深度学习的语音识别模型,和根据该语音识别模型得到的输出值,因为自有云服务器部署在云端,通常有多个分布式缓存服务器,计算能力更强。同时,在本地数据库中存放的语音识别的输出结果,可以根据使用情况存放使用频率最高的,在自有云服务器中存放使用频率略低的。可以理解的是,本地数据库中存放的数据和自有云服务器中存放的数据随着使用进行不断更新,从而使得语音识别的过程更加精确和快速。同时,在获取语音识别的结果时,就可以将识别结果保存至自有云服务器和/或本地数据库,并且根据识别结果进行深度学习,使得随着使用次数增多,语音识别模型的预测度更加精确。
[0142]当在自由云服务器中未检索到样本特征对应的识别结果时,若检测到网络强度大于第二预设值,即终端的网络强度大于第二预设值时,云服务器发送样本特征至第三方语音服务器。这里第二预设值可以根据需要进行设定,第二预设值的大小可以和第一预设值一样,也可以和第二预设值不一样,因为访问自有云服务器和访问第三方云服务器需要的网速可能是不一样的。上述第三方语音服务器为语音识别能力更强的服务器,通常第三方语音服务器可以为专门提供语音识别服务的厂商所提供的服务器,如科大讯飞网络提供的语音识别云服务器。
[0143]可以理解的是,也可以根据使用者的年龄、身份等特征进行分类分析,建立数据库,使得识别结果更准确。
[0144]在实现时,自有云服务器的架构如图7所示,部署CDN服务器提高不同地域访问速度差异的问题,同时CDN服务器也负责将搜索到的缓存中的数据进行返回,用户的访问通过CDN服务器到达反向代理服务器,再通过均衡负载服务器,发送至应用服务器,均衡负载服务器可以适应大量用户的并发访问,实现数据分流,提高稳定性。在应用服务器上还可以增加设置本地缓存,根据历史识别情况快速响应识别结果。在语音交互过程中通过搜索引擎与非关系型数据库配合完成,还可以设置数据库服务器来存储大量用户的账号和设置。同时,向上与第三方语音识别服务器对接,结合第三语音识别服务器的识别能力提高识别的准确度,提高用户体验。
[0145]本实施例通过在自有云服务器接收到样本特征后,在自有云服务器中进行搜索,当在自由云服务器中搜索到样本特征对应的识别结果时,获取识别结果,当未检测到识别结果时且终端的网络强度大于第二预设值时,云服务器发送样本特征至第三方语音服务器,通过在第三方语音服务器进行识别提高语音识别的准确度。并且,只在网络环境较好的情况下才发送样本特征至第三方语音服务器提高避免了语音识别过程中的响应延时。
[0146]本实施例中,本发明提出的语音识别的系统中终端11还包括:
[0147]对比分析模块,用于将所述样本特征与预置的样本库进行对比分析;
[0148]第一触发模块,用于当所述样本特征与所述样本库中预置样本特征的相似度高于预设值时,触发所述搜索子模块根据所述样本特征在所述本地数据库中进行搜索;
[0149]所述第一识别单元,还用于当所述样本特征与所述样本库中预置样本特征的相似度低于预设值时,发送所述样本特征至所述自有云服务器,通过所述自有云服务器进行语首识别;
[0150]本实施例中在获取到输入语音,提取输入语音的样本特征后,对比分析模块对样本特征与预置的样本库进行对比分析,目的是判断是在本地数据库中直接进行搜索,还是直接发送样本特征至自有云服务器中进行搜索。预置的样本库可以根据需要预先设定。具体的是将样本特征与样本库中的样本特征进行匹配,上述预置样本是指样本库中的预置的样本。
[0151]当样本特征与样本库中预置样本特征的相似度高于预设值时,第一触发模块触发搜索子模块310根据样本特征和终端中预置的本地数据库识别所述输入语音,这里预置样本是指样本库中与样本特征匹配到相似度大于预设值的样本。当样本特征与样本库中任一预置样本特征的相似度低于预设值时,终端发送样本特征至终端的自有云服务器,通过自有云服务器进行语音识别,这里是任一样本特征匹配都小于预设值是指样本特征与样本库中任何一个匹配度都小于预设值。
[0152]具体的预设值可以根据需要进行设定,例如可以设置为80%,则当样本特征与样本库中预置样本特征的相似度高于80%时,触发搜索子模块310根据样本特征和终端中预置的本地数据库识别所述输入语音,当样本特征与样本库中预置样本特征的相似度低于80 %时,终端发送样本特征至终端的自有云服务器,通过自有云服务器进行语音识别。
[0153]本实施例通过将样本特征与预置的样本库进行对比分析,当样本特征与样本库中预置样本特征的相似度高于预设值时,根据样本特征在本地数据库中进行搜索,当样本特征与样本库中任一样本特征的相似度低于预设值时,直接发送样本特征至自由云服务器进行匹配,在保证语音识别的准确度的同时提高了语音识别的速度。
[0154]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种语音识别的方法,其特征在于,所述方法包括以下步骤: 终端获取输入语音; 所述终端提取所述输入语音的样本特征; 所述终端根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。2.如权利要求1所述的方法,其特征在于,所述语音识别输出值集合包含语音的样本特征与语音识别输出值的对应关系; 所述终端根据所述样本特征和预置的本地数据库识别所述输入语音包括: 所述终端在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值; 当搜索到所述样本特征对应的语音识别输出值时,所述终端获取所述语音识别输出值; 当未搜索到所述样本特征对应的语音识别输出值时,所述终端根据检测到的所述终端的网络信号强度进行语音识别。3.如权利要求2所述的方法,其特征在于,所述终端在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值包括: 所述终端判断所述网络信号强度是否大于第一预设值; 若是,所述终端发送所述样本特征至所述终端的自有云服务器,通过所述自有云服务器进行语音识别; 若否,所述终端将所述样本特征输入至所述语音识别模型,输出预测的识别结果。4.如权利要求3所述的方法,其特征在于,所述方法还包括: 在所述自有云服务器接收到所述样本特征后,在所述自有云服务器中进行搜索; 当在所述自有云服务器中搜索到所述样本特征对应的识别结果时,所述自有云服务器获取所述识别结果; 当在所述自有云服务器中未搜索到所述样本特征对应的识别结果时,若所述云服务器检测到所述网络强度大于第二预设值,所述云服务器发送所述样本特征至第三方语音服务器,通过所述第三方语音识别服务器识别所述输入语音。5.如权利要求2至4任一项所述的方法,其特征在于,所述终端根据所述样本特征在所述语音识别输出值中搜索是否有与所述样本特征对应的语音识别输出值之前包括: 所述终端将所述样本特征与预置的样本库进行对比分析; 当所述样本特征与所述样本库中预置样本特征的相似度高于预设值时,所述终端执行所述根据所述样本特征在所述本地数据库中进行搜索的步骤; 当所述样本特征与所述样本库中任一预置样本特征的相似度低于预设值时,所述终端执行所述发送所述样本特征至所述终端的自有云服务器,通过所述自有云服务器进行语音识别的步骤。6.一种语音识别的系统,其特征在于,所述系统包括:终端; 所述终端包括: 获取模块,用于获取输入语音; 特征提取模块,用于提取所述输入语音的样本特征; 语音识别模块,用于根据所述样本特征和预置的本地数据库识别所述输入语音,所述本地数据库包含基于深度学习的语音识别模型和根据所述语音识别模型得到的语音识别输出值集合。7.如权利要求6所述的系统,其特征在于,所述语音识别输出值集合包含语音的样本特征与语音识别输出值的对应关系; 所述语音识别模块包括: 搜索子模块,用于在所述语音识别输出值集合中搜索是否有与所述样本特征对应的语音识别输出值; 第一识别子模块,用于当搜索到所述样本特征对应的语音识别输出值时,获取所述语音识别输出值; 第二识别子模块,用于当未搜索到所述样本特征对应的语音识别输出值时,根据检测到的所述终端的网络信号强度进行语音识别。8.如权利要求7所述的系统,其特征在于,所述系统还包括所述终端对应的自有云服务器; 所述第二识别子模块包括: 判断单元,用于判断所述网络信号强度是否大于第一预设值; 第一识别单元,用于当所述网络信号强度大于第一预设值时,发送所述样本特征至所述自有云服务器,通过所述自有云服务器进行语音识别; 第二识别单元,用于当所述网络信号强度小于第一预设值时,将所述样本特征输入至所述语音识别模型,输出预测的识别结果。9.如权利要求8所述的系统,其特征在于,所述自有云服务器包括: 搜索模块,用于在所述自有云服务器接收到所述样本特征后,在所述自有云服务器中进行搜索; 识别模块,用于当在所述自有云服务器中搜索到所述样本特征对应的识别结果时,获取所述识别结果; 发送模块,用于当在所述自有云服务器中未搜索到所述样本特征对应的识别结果时,若检测到所述网络强度大于第二预设值,发送所述样本特征至第三方语音服务器,通过所述第三方语音识别服务器识别所述输入语音。10.如权利要求7至9任一项所述的系统,其特征在于,所述终端还包括: 对比分析模块,用于将所述样本特征与预置的样本库进行对比分析; 第一触发模块,用于当所述样本特征与所述样本库中预置样本特征的相似度高于预设值时,触发所述搜索子模块根据所述样本特征在所述本地数据库中进行搜索; 所述第一识别单元,还用于当所述样本特征与所述样本库中预置样本特征的相似度低于预设值时,发送所述样本特征至所述自有云服务器,通过所述自有云服务器进行语音识别。
【文档编号】G10L15/30GK105931633SQ201610370685
【公开日】2016年9月7日
【申请日】2016年5月30日
【发明人】许永昌, 盛阁
【申请人】深圳市鼎盛智能科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1