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

语音识别方法、装置、电子设备及存储介质与流程

2021-01-28 13:01:30|276|起点商标网
语音识别方法、装置、电子设备及存储介质与流程

本发明涉及语音识别技术领域,尤其涉及一种语音识别方法、装置、电子设备及存储介质。



背景技术:

随着智能交互技术的快速发展和市场需求的不断扩展,语音识别技术在近年来取得长足发展,至今已经在多个领域中得到广泛的应用。语音识别技术,是对输入的语音信号进行识别,从而转换成计算机可处理的文本信息。利用语音识别技术可以实现众多应用场景中的智能语音交互,例如语音输入,基于语音识别的智能控制等。

现有的语音识别技术一般是系统接收到语音信号后结合加权有限状态机(wfst,weightedfinite-statetransducer)进行解码输出语音识别结果。然而,识别结果准确率、效率以及计算资源消耗仍然有待提高。



技术实现要素:

本发明的主要目的在于提供一种语音识别方法、装置、电子设备及存储介质。

为实现上述目的,本发明实施例第一方面提供一种语音识别方法,包括:

分别构建多个不同领域下的wfst解码图;

获取语音信号,对所获取的语音信号进行处理,得到似然分布;

同时加载多个不同领域下的wfst解码图,在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径;

回溯所述目标路径,确定所述语音信号的语音识别结果。

进一步地,所述对所获取的语音信号进行处理,得到似然分布包括:

对所述语音信号每一帧进行声学特征提取,得到对应的声学特征;

将所述声学特征输入给预置的声学模型,得到所述声学特征在各个声学建模单元上的似然分布。

进一步地,所述帧同步搜索采用维特比算法。

进一步地,在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制中,采用动态的剪枝策略。

进一步地,所述动态的剪枝策略包括:

帧同步搜索过程中设定语言模型代价剪枝阈值和声学模型代价剪枝阈值,以及所述语言模型代价与声学模型代价之和的阈值;

在每一次帧同步搜索中,获取当前路径的历史语言模型代价,所述历史语言模型代价大于所设语言模型代价剪枝阈值,则删除该路径;

在每一次帧同步搜索中,获取当前路径的历史声学模型代价,所述历史声学模型代价大于所设声学模型代价剪枝阈值,则删除该路径;

在每一次帧同步搜索中,获取当前路径的历史语言模型代价与历史声学模型代价之和,所述历史语言模型代价与历史声学模型代价之和大于所设语言模型代价与声学模型代价之和的阈值,则删除该路径;

在每一次帧同步搜索中,对下一帧路径进行语言模型代价和声学模型代价预测,获得语言模型代价和声学模型代价预测值;

所述预测语言模型代价大于所设语言模型代价剪枝阈值,则删除该路径;

所述预测声学模型代价大于所设声学模型代价剪枝阈值,则删除该路径。

进一步地,所述动态的剪枝策略包括:每一次帧同步搜索中,保留n条代价最小的解码路径。

进一步地,所述动态的剪枝策略包括:

预设的多个子领域中,每个子领域在每次帧同步搜索过程中至少保留一条解码路径。

本发明实施例第二方面提供一种语音识别装置,包括:

构建模块,用于分别构建多个不同领域下的wfst解码图;

获取模块,用于获取语音信号,对所获取的语音信号进行处理,得到似然分布;

解码模块,同时加载多个不同领域下的wfst解码图,在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径;

确定模块,回溯所述目标路径,确定所述语音信号的语音识别结果。

进一步地,所述解码模块包括:

提取模块,用于对所述语音信号每一帧进行声学特征提取,得到对应的声学特征;

输入模块,用于将所述声学特征输入给预置的声学模型,得到所述声学特征在各个声学建模单元上的似然分布。

进一步地,所述解码模块具体用于在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制中,采用动态的剪枝策略。

本发明实施例第三方面提供了一种电子设备,包括:

存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本发明实施例第一方面提供的语音识别方法。

本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的语音识别方法。

从上述本发明实施例可知,本发明提供的语音识别方法、装置、电子设备及存储介质,分别构建多个不同领域下的wfst解码图,获取语音信号,对所获取的语音信号进行处理,得到似然分布,同时加载多个不同领域下的wfst解码图,在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径,回溯该目标路径,确定语音信号的语音识别结果,相对于在一整个不分类的解码图中搜索,本方案划分不同领域下的wfst解码图,在解码时不同领域相互不干扰,可提高解码速度和语音识别率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的语音识别方法的流程示意图;

图2为本发明一实施例提供的语音识别方法中步骤s102的流程示意图;

图3为本发明一实施例提供的语音识别装置的结构示意图;

图4为本发明一实施例提供的语音识别装置中解码模块203的结构示意图;

图5示出了一种电子设备的硬件结构图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

语音识别技术,也可以称为自动语音识别(automaticspeechrecognition,asr),其任务是把人所发出的语音中的词汇内容转换为计算机可读入的文本。例如,用户可以通过手机讲一段话,手机会将输入的这段语音送到服务器进行语音识别后,接收服务器返回的语音识别结果,最终用户在手机上看到的是一段与输入的语音对应的文字或者手机显示对应文字后执行对应的控制操作,例如开启对应的应用等。其中,上述的终端还可以是各种带有语音录入功能的智能设备,例如,智能电视、平板甚至是其他各种智能家电、智能办公设备等。

请参阅图1,图1为本发明一实施例提供的语音识别方法的流程示意图,该方法主要包括以下步骤:

s101、分别构建多个不同领域下的wfst解码图;

wfst解码图是指可以将输入的语音信号解码,输出得到对应文字结果的软件程序或装置,其包含有多条解码路径。可理解的,多个不同领域下的wfst解码图可以集合在一个软件程序或装置内,也可以分开在多个软件程序或装置内。

具体的,采集不同领域下的语料及语法信息,对词句进行分词处理,得到分词处理结果,对语法信息进行统计训练,得到对应的语言模型,根据分词处理结果和语言模型,得到不同领域下的wfst解码图。其中,语言模型的统计训练也可以采用本领域的常规方法,例如n-gram语言模型。

wfst定义的是一种有向图。图的边有输入label,输出label,权重。它有最初的输入状态,有最终的结束状态。wfst在语音识别解码器中有一些重要的操作,确定化,最小化,权重前移,输出前移等,这些操作对wfst进行优化,去掉冗余路径,重新分布权重即输出label。可以减少内存的消耗,同时提升解码效率。

通过收集的大量文本语料,训练语言模型,结合发音词典、上下文相关音素、隐马尔科夫模型编译得到各个领域的wfst解码图。从而通过在各个领域的wfst解码图进行搜索,输出准确度较高的语音识别结果。

不同领域下可以是学科领域、生活领域等。例如,对于化学领域的文本语料,会构建化学类的wfst解码图;对于天气领域的文本语料,会构建天气类的wfst解码图;对于物理领域的文本语料,同样会构建物理的wfst解码图。通常每一个领域内都会有对应的专业词、常用词等区别于其它领域的话术,同时,不同领域内的同一词句的发音也会有所不同。

其中,在本发明实施例中,构建解码图的方法不受限制,可以采用本领域的常用方法。

本发明实施例分领域构建解码图,把各个领域之间的解码图隔离开,即,各个领域的解码图之间不进行连接,减小无意义的关联,降低图生成的开销。例如,生成一个多个领域之间相互关联的解码图需要消耗几百g的机器内存,而将该多个领域之间相互关联的解码图根据不同领域进行拆分,生成不同领域之间的解码图,各解码图之间不相关联,则只需要几十g的机器内存。同时,同一领域的解码图内仍然相互连接,进行识别时分别在各个领域内的解码图内进行检索比对,相比在一个大的解码图内(即各领域相互关联的解码图)内进行搜索,提高搜索效率,减小搜索量,降低搜索开销和资源消耗。同时,在动态更新解码图时,只需在对应领域内进行更新升级,无需牵涉整个领域的解码图,极大提升了效率。

s102、获取语音信号,对所获取的语音信号进行处理,得到似然分布;

s103、同时加载多个不同领域下的wfst解码图,在多个不同领域下的wfst解码图内对语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径;

进行语音识别时,基于该多个不同领域下的wfst解码图,同时对该语音信号进行解码。所述的同时加载指的是不同领域下的wfst解码图之间同时或同步加载,而不是限定本步骤的解码过程与其他操作如语音信号处理同时。对语音信号进行解码搜索的过程,为本领域技术人员所熟知,故在此不再赘述。不同的是,在利用解码图进行解码时,对于各领域的路径同时开始搜索。多领域下不同解码路径形成竞争机制,即所述的帧同步搜索时,每一次搜索时,不同子领域间处于完全竞争状态,当前所有解码路径中代价最小前若干条解码路径会胜出,获得继续帧同步搜索的资格。当然保留继续搜索资格解码路径的数量或方法是不同的,这也是本公开的一个独特特点。所谓的代价最小指的是获得或选中这条路径的可能性最大。代价与获得该路径的可能性或概率的负对数关系,即概率越大,代价越小。可将各个声学特征的似然分布,同时输入到多个不同领域下的wfst解码图。进行路径搜索获取目标路径的方式可以采用维特比算法,为了减少算法的资源消耗量,可以采用beamsearch和直方图进行剪枝,对算法进行优化。其中,维特比算法是一种动态规划算法,可解决从图中搜索最优路径问题。而beamsearch的算法中要考虑每一个beam的大小(size),这将影响剪枝的效率和算法的速度,每个beam的大小通过不同场景或应用领域可调整。所谓直方图剪枝是指在每次帧同步搜索中,都保留固定条数解码路径作为下一次搜索的起点。

例如,结合维特比算法,对每一帧信号进行帧同步搜索,并采用一定的剪枝策略,每帧结束后选取代价最小的n条路径进行搜索,直至整条音频信号搜索完成,回溯最优路径,即可得到最后的识别结果。

其中,代价最小是指对应的概率的最高。在本实施例中,即概率最高的路径为目标路径。

s103、回溯该目标路径,确定该语音信号的语音识别结果。

识别结束后,我们到达最优路径的尾状态,通过回溯该路径上的输出即可得到我们所要的结果。识别的结果可以是词序列,也可以是词序列对应控制指令。其中,词序列可以是目标路径对应的具有相应概率、且具有网格结构的字符串,具体可以是解码搜索后得到的文本信息。如此,对其进行文字显示,也可以是执行相应的控制操作。例如,用户可以对着手机说一段语音,系统可以快速、准确的将用户说的语音转换成文字,并且显示出来。或者例如终端是电视机时,用户可以对着电视机说出一个语音指令,系统可以快速、准确的识别用户的语音指令识别,得到对应的控制指令并返回到电视机上,使电视机执行相应控制操作,如切换节目等。

在公开的一个实施例中,在wfst解码过程中,可以采用一个动态的剪枝策略。

剪枝是指在搜索过程中,根据不同策略,删除一些代价大的路径。

在利用本实施例提供的解码图进行解码时,对于各领域的路径同时或同步开始扩展。进行扩展时,不同领域间处于竞争状态,所有路径中得分较高的路径会胜出。例如,在某时刻存在n条路径,在n条路径中挑选出得分最高的m条路径。然后,继续对得分最高的m条路径进行搜索,每一帧执行相同的操作。最后,代价最小的那条路径会在搜索过程中中自动胜出,并获得所在领域的结果。更多的,在本公开中,还可以采用其他的路径剪枝策略,例如选择最高的路径概率值的60%作为分界点,高于这个值的保留继续搜索。其中,该最高的路径概率值为根据历史训练数据的研究,得到的一个经验系数。本公开中选择的系数,比较灵活的可以设置不同领域不同的系数或选择方法,如在金融领域选择前10得分高的,而在体育领域选择最高得分的50%为比较阈值,甚至不同领域之间的值可以存在联系,例如在两个相近的领域羽毛球和网球,存在类似的专业术语,其进行扩展选择或维特比时对于发球这一术语的概率定义存在相关性,减值的方法是两个领域概率加权平均后再乘以一个系数。相对于在一整个不分类的解码图中搜索,本方案划分不同领域下的wfst解码图,在解码时不同领域相互不干扰,可提高解码速度和语音识别率。

在一个实施中,每一次帧同步搜索中,保留n条代价最小的解码路径,其中n为4000-6000为语音识别中采用较为合理的策略。

其中,涉及到有两个有关联的领域时,如羽毛球和网球,保留枝数可以增加调整项,羽毛球的调整系数为j,网球的调整系数为k,j+k=1,调整前确认的保留枝数分别为xj和xk,调整公式,调整后xj’=xj*j+xk*j,调整后xk’=xj*k+xk*k。

即在本发明实施例中,在多个解码图中进行目标路径搜索。其在每一步的所有选择都保存了前续所有步骤到当前步骤的最小总代价(或者最大价值)以及当前代价的情况下前继步骤的选择。依次计算完后,通过回溯的方法找到目标路径。

在其中一个实施例中,分别在所述多个不同领域下的wfst解码图内进行搜索包括:

预设的多个子领域中,每个子领域在每次搜索过程中至少保留一条可搜索路径。

在其中一个实施例中,在多个不同领域下的wfst解码图内对语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制中,采用动态的剪枝策略。动态的剪枝策略具体包括:

帧同步搜索过程中设定语言模型代价剪枝阈值和声学模型代价剪枝阈值,以及语言模型代价与声学模型代价之和的阈值;

在每一次帧同步搜索中,获取当前路径的历史语言模型代价,历史语言模型代价大于所设语言模型代价剪枝阈值,则删除该路径;

在每一次帧同步搜索中,获取当前路径的历史声学模型代价,历史声学模型代价大于所设声学模型代价剪枝阈值,则删除该路径;

在每一次帧同步搜索中,获取当前路径的历史语言模型代价与历史声学模型代价之和,历史语言模型代价与历史声学模型代价之和大于所设语言模型代价与声学模型代价之和的阈值,则删除该路径;

在每一次帧同步搜索中,对下一帧路径进行语言模型代价和声学模型代价预测,获得语言模型代价和声学模型代价预测值;

预测语言模型代价大于所设语言模型代价剪枝阈值,则删除该路径;

预测声学模型代价大于所设声学模型代价剪枝阈值,则删除该路径。

一个可选的实施方式是:

预设有n个子领域,在一次扩展后,各子领域的枝数为si,0<i≤n,代价和最小的子领域的枝数设为sx;根据历史数据或模型训练确定最大的子领域保留枝数的系数为x,0<x<1,则最终的该子领域保留枝数为sxx,向上取整;

代价和次小的子领域保留枝数的系数为x*(n-1)/n,后面子领域保留枝数依次类推,代价和最大的子领域的保留系数为x/n。各子领域的保留枝数为上述扩展后获得的枝数乘以保留系数,向上取整。

在本发明实施例中,分别构建多个不同领域下的wfst解码图,获取语音信号,对所获取的语音信号进行处理,得到似然分布,同时加载多个不同领域下的wfst解码图,在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径,回溯该目标路径,确定语音信号的语音识别结果,相对于在一整个不分类的解码图中搜索,本方案划分不同领域下的wfst解码图,在解码时不同领域相互不干扰,可提高解码速度和语音识别率。

请参阅图2,本实施例中,步骤s102主要包括:

s1021、对该语音信号每一帧进行声学特征提取,得到对应的声学特征;

对语音信号进行声学特征提取,得到该语音信号的声学特征。特征提取的过程可以采用本领域常规技术手段来完成,本说明书实施例不对提取声学特征所采用的方法进行限定,例如,可以采用线性预测倒谱系数法(lpcc,linearpredictioncepstrumcoefficient)、美尔频率倒谱系数法(mfcc,melfrequencycepstrumcoefficient)、感知线性预测参数法(plp,perceptuallinearpredictive)和梅尔标度滤波法(fbank,mel-scalefilterbank)中的任意一种。

s1022、将该声学特征输入给预置的声学模型,得到声学特征在各声学建模单元上的似然分布。

其中,预置的声学模型可以采用例如基于卷积神经网络、循环神经网络、高斯混合模型和长短期记忆网络中的任一种方法进行声学模型的构建。

声学建模单元是指在声学模型在建模的过程中的建模单元,例如音素、字、短语、句子、隐马尔科夫模型的隐藏状态等,具体可根据时间尺度的长短进行选择。在本发明实施例中,对声学建模单元不做限定。

请参阅图3,图3是本发明一实施例提供的语音识别装置的结构示意图,该装置可内置于电子设备中,该装置主要包括:

构建模块201,用于分别构建多个不同领域下的wfst解码图;

获取模块202,用于获取语音信号,对所获取的语音信号进行处理,得到似然分布;

解码模块203,用于同时加载多个不同领域下的wfst解码图,在多个不同领域下的wfst解码图内对语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径;

确定模块204,用于根据目标路径,确定语音信号的语音识别结果。

进一步地,请参阅图4,在一实施例中,解码模块203包括:

提取模块2031,用于对该语音信号每一帧进行声学特征提取,得到对应的声学特征;

输入模块2032,用于将该声学特征输入给预置的声学模型,得到声学特征再各个声学建模单元上的似然分布;

本实施例未尽之细节,请参阅前述图1至图2所示实施例的描述,此处不再赘述。

在本发明实施例中,分别构建多个不同领域下的wfst解码图,获取语音信号,对所获取的语音信号进行处理,得到似然分布,同时加载多个不同领域下的wfst解码图,在所述的多个不同领域下的wfst解码图内对所述语音信号进行帧同步搜索,多领域下不同解码路径形成竞争机制,最终代价最小的路径为目标路径,回溯该目标路径,确定语音信号的语音识别结果,相对于在一整个不分类的解码图中搜索,本方案划分不同领域下的wfst解码图,在解码时不同领域相互不干扰,可提高解码速度和语音识别率。

请参见图5,图5示出了一种电子设备的硬件结构图。

本实施例中所描述的电子设备,包括:

存储器31、处理器32及存储在存储器31上并可在处理器上运行的计算机程序,处理器执行该程序时实现前述图1~图2所示实施例中描述的语音识别方法。

进一步地,该电子设备还包括:

至少一个输入设备33;至少一个输出设备34。

上述存储器31、处理器32输入设备33和输出设备34通过总线35连接。

其中,输入设备33具体可为麦克风或麦克风阵列等等。输出设备34具体可为显示屏。

存储器31可以是高速随机存取记忆体(ram,randomaccessmemory)存储器,也可为非不稳定的存储器(non-volatilememory),例如磁盘存储器。存储器31用于存储一组可执行程序代码,处理器32与存储器31耦合。

进一步地,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是设置于上述各实施例中的终端中,该计算机可读存储介质可以是前述图5所示实施例中的存储器。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述图1~图2所示实施例中描述的语音识别方法。进一步地,该计算机可存储介质还可以是u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

在本申请所提供的多个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,模块的间接耦合或通信链接,可以是电性,机械或其它的形式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上为对本发明所提供的语音识别方法、装置、电子设备及存储介质的描述,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

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

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

相关标签: 语音识别语言描述
tips