解码方法、语音识别方法及装置与流程
- 国知局
- 2024-06-21 11:52:13
本公开涉及计算机,特别是涉及一种解码方法、语音识别方法及装置。
背景技术:
1、在语音识别领域,目前最流行的方案是采用端到端(end-to-end)的深度神经网络模型,其中以连接时序分类(connectionist temporal classification,ctc)模型为典型代表。
2、ctc模型通常可以称作声学模型,即根据发音的特征对当前字进行预测。由于在训练过程中,模型能够学习到训练语料的上下文信息,因此ctc模型也具备一定的语言模型能力。在大多数情况下,ctc模型单独使用,即可满足大多数的语音识别场景。
3、在效果要求更高,或者特定的使用场景下,仅使用训练语料得到的ctc模型表现可能会大幅下降,原因在于新场景涉及到新的词汇、新的语法。通常的做法是在声学模型的基础上,嵌入一个与场景相关的语言模型,提升语音识别的整体水平。
4、可以把ctc声学模型理解为一张fst(finite-state transducer,有限状态转换器)图,从当前节点接收音频特征输入,节点有不同的边,每条边对应不同的输出,根据ctc模型对不同输出的预测,为每条边赋予一个权重值,即概率,解码的过程就是找到在时间序列上总权重最大的路径输出。同理,语言模型就是刻画了一个词(字)与词(字)之间发生概率的分布,也可以用一个fst图来表示,图上的边权重则表示为上一个词(字)发生时,当前词(字)发生的概率。我们可以把这两张图进行合并,得到tlg解码图。则解码时,不仅仅要看ctc模型预测的概率大小,还要加上语言模型的概率,通过这种方式,可以对声学模型的输出结果进行修正,使之更符合具有当前声景的语言特性,识别更准确。
5、但是,融合语言模型需要考虑几个问题。一是融合声学和语言模型时,各自的比重影响很大,需要人为设定一个较好的权重值,声学权重过高,语言模型发挥的作用就小,反之亦然;二是针对不同的句子长度,总体的概率数值不稳定,即对于长句子,其所累乘的语言概率就会更多,总的概率就会更小,相比短句,哪怕是更正确的预测,也会被过滤掉。一般认为问题一是一个经验值超参,都是人工根据经验或者实验调出来的值。问题二则可以通过额外增加一个固定的超参,即句长惩罚因子在每次语言模型概率基础上进行补偿,相当于减少更长句子相对于短句多出来的部分的影响。
6、由于多出一个超参数,模型的表现变得不太稳定,因为这个参数并不鲁棒。对于不同的句长效果表现不一。假设在一个句子长度普遍较大的语料中,句长影响较大,那么使用较大的句长惩罚因子可以减少与短句比较时的劣势,但是对于句长差不多的候选结果,只能依靠声学概率了,因为语言概差异率被惩罚因子掩盖了。如果惩罚因子过小,又可能不足以解决句长引起的问题。所以,惩罚因子与语料中的句长也有关系,但这在实际的解码场景中,是无法预知的,因此惩罚因子不仅要试,而且不鲁棒。
7、因此,需要一种能够在消除句长劣势的同时具有较好的鲁棒性的句长惩罚优化方案。
技术实现思路
1、本公开要解决的一个技术问题是,如何在消除句长劣势的同时具有较好的鲁棒性。
2、根据本公开的第一个方面,提供了一种解码方法,用于基于分类结果对基于语言模型确定的解码空间进行解码,分类结果为声学模型对语音输入进行处理得到的分类结果,分类结果用于表征语音输入中不同时间步对应的建模单元为不同建模单元的声学概率,解码空间包括多个节点和多条边,从一个节点出发且指向该节点的边为自指向边,从一个节点出发且指向另一个节点的边为非自指向边,非自指向边表示有新增建模单元,非自指向边的权重用于表征新增建模单元的语言概率,自指向边表示无新增建模单元,自指向边不存在权重,解码方法包括:针对至少部分解码路径中的任意一条解码路径,遍历任意一条解码路径中的所有边;其中,若当前时间步遍历的边为自指向边,则基于上一时间步解码路径的累计得分、自指向边指向的建模单元的声学概率以及自指向边的权重补偿,确定当前时间步解码路径的累计得分;若当前时间步遍历的边为非自指向边,则基于上一时间步解码路径的累计得分、非自指向边指向的建模单元的声学概率以及非自指向边的权重,确定当前时间步解码路径的累计得分。
3、可选地,解码方法还包括:基于自指向边指向的建模单元的声学概率,确定自指向边的权重补偿,其中,自指向边的权重补偿的大小与自指向边指向的建模单元的声学概率正相关;或者将自指向边的权重补偿设置为固定数值;或者基于当前解码路径遍历过的至少部分边的权重,确定自指向边的权重补偿;或者基于自指向边指向的建模单元的声学概率、固定数值以及当前解码路径遍历过的至少部分边的权重中的至少两项,确定自指向边的权重补偿。
4、可选地,累计得分用于表征解码路径的累计代价,基于上一时间步解码路径的累计得分、自指向边指向的建模单元的声学概率以及自指向边的权重补偿,确定当前时间步解码路径的累计得分,包括:基于自指向边指向的建模单元的声学概率,确定声学代价,声学代价的大小与声学概率负相关;基于自指向边的权重补偿,确定权重补偿代价,权重补偿代价的大小与权重补偿负相关;将上一时间步解码路径的累计代价、声学代价以及权重补偿代价的和,作为当前时间步解码路径的累计代价。
5、可选地,累计得分用于表征解码路径的累计代价,基于上一时间步解码路径的累计得分、非自指向边指向的建模单元的声学概率以及非自指向边的权重,确定当前时间步解码路径的累计得分,包括:基于非自指向边指向的建模单元的声学概率,确定声学代价,声学代价的大小与声学概率负相关;基于非自指向边的权重,确定权重代价,权重代价的大小与权重负相关;将上一时间步解码路径的累计代价、声学代价以及权重代价的和,作为下一时间步解码路径的累计代价。
6、可选地,累计得分用于表征解码路径的累计概率,基于上一时间步解码路径的累计得分、自指向边指向的建模单元的声学概率以及自指向边的权重补偿,确定当前时间步解码路径的累计得分,包括:将上一时间步解码路径的累计概率、自指向边指向的建模单元的声学概率以及自指向边的权重补偿的乘积,作为当前时间步解码路径的累计代价。
7、可选地,累计得分用于表征解码路径的累计概率,基于上一时间步解码路径的累计得分、非自指向边指向的建模单元的声学概率以及非自指向边的权重,确定当前时间步解码路径的累计得分,包括:将上一时间步解码路径的累计概率、非自指向边指向的建模单元的声学概率以及非自指向边的权重的乘积,作为当前时间步解码路径的累计代价。
8、根据本公开的第二个方面,提供了一种语音识别方法,包括:利用上述第一个方面所描述的解码方法,得到至少部分解码路径的累计得分;根据至少部分解码路径的累计得分,确定目标解码路径;以及将目标解码路径对应的建模单元序列作为语音输入的语音识别结果。
9、根据本公开的第三个方面,提供了一种解码装置,用于基于分类结果对基于语言模型确定的解码空间进行解码,分类结果为声学模型对语音输入进行处理得到的分类结果,分类结果用于表征语音输入中不同时间步对应的建模单元为不同建模单元的声学概率,解码空间包括多个节点和多条边,从一个节点出发且指向该节点的边为自指向边,从一个节点出发且指向另一个节点的边为非自指向边,非自指向边表示有新增建模单元,非自指向边的权重用于表征新增建模单元的语言概率,自指向边表示无新增建模单元,自指向边不存在权重,解码装置针对至少部分解码路径中的任意一条解码路径,遍历任意一条解码路径中的所有边,解码装置包括:第一计算模块,用于若当前时间步遍历的边为自指向边,则基于上一时间步解码路径的累计得分、自指向边指向的建模单元的声学概率以及自指向边的权重补偿,确定当前时间步解码路径的累计得分;第二计算模块,用于若当前时间步遍历的边为非自指向边,则累计得分计算模块基于上一时间步解码路径的累计得分、非自指向边指向的建模单元的声学概率以及非自指向边的权重,确定当前时间步解码路径的累计得分。
10、可选地,解码装置还包括权重补偿确定模块,权重补偿确定模块基于自指向边指向的建模单元的声学概率,确定自指向边的权重补偿,其中,自指向边的权重补偿的大小与自指向边指向的建模单元的声学概率正相关;或者权重补偿确定模块将自指向边的权重补偿设置为固定数值;或者权重补偿确定模块基于当前解码路径遍历过的至少部分边的权重,确定自指向边的权重补偿;或者权重补偿确定模块基于自指向边指向的建模单元的声学概率、固定数值以及当前解码路径遍历过的至少部分边的权重中的至少两项,确定自指向边的权重补偿。
11、可选地,累计得分用于表征解码路径的累计代价,第一计算模块基于自指向边指向的建模单元的声学概率,确定声学代价,声学代价的大小与声学概率负相关;基于自指向边的权重补偿,确定权重补偿代价,权重补偿代价的大小与权重补偿负相关;将上一时间步解码路径的累计代价、声学代价以及权重补偿代价的和,作为当前时间步解码路径的累计代价。
12、可选地,累计得分用于表征解码路径的累计代价,第二计算模块基于非自指向边指向的建模单元的声学概率,确定声学代价,声学代价的大小与声学概率负相关;基于非自指向边的权重,确定权重代价,权重代价的大小与权重负相关;将上一时间步解码路径的累计代价、声学代价以及权重代价的和,作为下一时间步解码路径的累计代价。
13、可选地,累计得分用于表征解码路径的累计概率,第一计算模块将上一时间步解码路径的累计概率、自指向边指向的建模单元的声学概率以及自指向边的权重补偿的乘积,作为当前时间步解码路径的累计代价。
14、可选地,累计得分用于表征解码路径的累计概率,第二计算模块将上一时间步解码路径的累计概率、非自指向边指向的建模单元的声学概率以及非自指向边的权重的乘积,作为当前时间步解码路径的累计代价。
15、根据本公开的第四个方面,提供了一种语音识别装置,包括:上述第三个方面述及的解码装置,用于获取至少部分解码路径的累计得分;确定模块,用于根据至少部分解码路径的累计得分,确定目标解码路径;获取模块,用于将目标解码路径对应的建模单元序列作为语音输入的语音识别结果。
16、根据本公开的第五个方面,提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如上述第一方面或第二个方面所描述的方法。
17、根据本公开的第六个方面,提供了一种计算机程序产品,包括可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一方面或第二个方面所描述的方法。
18、根据本公开的第七个方面,提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一方面或第二个方面所描述的方法。
19、由此,在解码过程中遍历的边为自指向边时,通过基于上一时间步解码路径的累计得分、自指向边指向的建模单元的声学概率以及自指向边的权重补偿,确定当前时间步解码路径的累计得分,使得选择自指向边的路径和选择非自指向边的路径所累积的边的权重数量一致,而边的权重数量也即语言概率数量,因此能够消除句长劣势。
本文地址:https://www.jishuxx.com/zhuanli/20240618/24125.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表