会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利分类库 / 乐器;声学 / 语音识别结果的校正方法及装置、电子设备、存储介质

语音识别结果的校正方法及装置、电子设备、存储介质

申请号 CN202011566768.7 申请日 2020-12-25 公开(公告)号 CN112669845B 公开(公告)日 2024-04-12
申请人 竹间智能科技(上海)有限公司; 发明人 简仁贤; 陈映文; 张嘉恬; 林长洲;
摘要 本 申请 提供一种 语音识别 结果的校正方法及装置、 电子 设备、存储介质,该方法包括:获取同一语音输入的多种候选词序列;针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算候选词序列中每个词汇的出现概率;根据每种候选词序列中每个词汇的出现概率,选取最佳词序列;计算最佳词序列中每个词汇与目标场景对应的关键词之间的 音素 相似度;根据关键词对应配置的 阈值 ,用关键词替换最佳词序列中与关键词之间的音素相似度大于阈值的词汇。该方案可以提高语音识别结果的准确性。
权利要求

1.一种语音识别结果的校正方法,其特征在于,包括:
获取同一语音输入的多种候选词序列;
针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率;
根据每种候选词序列中每个词汇的出现概率,选取最佳词序列;
计算所述最佳词序列中每个词汇与所述目标场景对应的关键词之间的音素相似度;
根据所述关键词对应配置的阈值,用所述关键词替换所述最佳词序列中与所述关键词之间的音素相似度大于阈值的词汇;
其中,在所述针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率之前,所述方法还包括:
获取所述目标场景对应的文本语料、关键词以及每个关键词对应的权重;
通过N元语言模型的统计方法统计所述文本语料中每个词汇的出现概率,得到文本语言模型;
将已有语言模型与所述文本语言模型通过插补法融合得到文本模型;
根据每个关键词的权重,增加所述文本模型中关键词对应的概率,得到所述个性化模型;
其中,所述根据每个关键词的权重,增加所述文本模型中关键词对应的概率,得到所述个性化模型,包括:
针对任一所述关键词,若所述关键词存在于所述已有语言模型,根据所述关键词在所述已有语言模型中的旧概率值以及所述关键词的权重和长度,计算所述关键词在所述个性化模型中的新概率值;
具体计算公式如下: 式中, 表示关键词在个
性化模型中的新概率值, 表示关键词在已有语言模型中的旧概率值,log表示取对数值,w表示关键词的权重,n表示关键词的长度,r表示权重之间的差异程度;
针对任一所述关键词,若所述关键词不在所述已有语言模型中,根据所述关键词的长度,计算基础概率值;根据所述基础概率值,以及所述关键词的权重和长度,计算所述关键词在所述个性化模型中的新概率值;
其中,基础概率值采用以下公式计算得到: ;
式中,n表示关键词的长度, 表示基础概率值;
式中, 表示关键词在个性化模型中的新概率值,log表示取对数值,w表示关键词的权重,n表示关键词的长度,r表示权重之间的差异程度。
2.根据权利要求1所述的方法,其特征在于,所述将已有语言模型与所述文本语言模型通过插补法融合得到文本模型,包括:
针对所述文本语料中的每个词汇,根据所述词汇在所述已有语言模型中的概率值以及在所述文本语言模型中的概率值,加权相加得到所述词汇在所述文本模型中的概率值。
3.根据权利要求1所述的方法,其特征在于,所述根据每种候选词序列中每个词汇的出现概率,选取最佳词序列,包括:
针对每种候选词序列,根据所述候选词序列中每个词汇的出现概率,通过将每个词汇的出现概率相乘,并将相乘的结果取对数,得到所述候选词序列的正确率得分;
选取所述正确率得分最高的候选词序列,作为所述最佳词序列。
4.根据权利要求1所述的方法,其特征在于,所述计算所述最佳词序列中每个词汇与所述目标场景对应的关键词之间的音素相似度,包括:
计算所述最佳词序列中任一词汇的音素与所述关键词的音素之间的声母相似度、韵母相似度和声调相似度;
根据所述声母相似度、韵母相似度和声调相似度,计算得到所述任一词汇与所述关键词之间的音素相似度。
5.一种语音识别结果的校正装置,其特征在于,包括:
识别结果获取模,用于获取同一语音输入的多种候选词序列;
词汇概率计算模块,用于针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率;
最佳结果筛选模块,用于根据每种候选词序列中每个词汇的出现概率,选取最佳词序列;
音素相似度计算模块,用于计算所述最佳词序列中每个词汇与所述目标场景对应的关键词之间的音素相似度;
关键词替换模块,用于根据所述关键词对应配置的阈值,用所述关键词替换所述最佳词序列中与所述关键词之间的音素相似度大于阈值的词汇;
其中,在所述针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率之前,方法还包括:
获取所述目标场景对应的文本语料、关键词以及每个关键词对应的权重;
通过N元语言模型的统计方法统计所述文本语料中每个词汇的出现概率,得到文本语言模型;
将已有语言模型与所述文本语言模型通过插补法融合得到文本模型;
根据每个关键词的权重,增加所述文本模型中关键词对应的概率,得到所述个性化模型;
其中,所述根据每个关键词的权重,增加所述文本模型中关键词对应的概率,得到所述个性化模型,包括:
针对任一所述关键词,若所述关键词存在于所述已有语言模型,根据所述关键词在所述已有语言模型中的旧概率值以及所述关键词的权重和长度,计算所述关键词在所述个性化模型中的新概率值;
具体计算公式如下: 式中, 表示关键词在个
性化模型中的新概率值, 表示关键词在已有语言模型中的旧概率值,log表示取对数值,w表示关键词的权重,n表示关键词的长度,r表示权重之间的差异程度;
针对任一所述关键词,若所述关键词不在所述已有语言模型中,根据所述关键词的长度,计算基础概率值;根据所述基础概率值,以及所述关键词的权重和长度,计算所述关键词在所述个性化模型中的新概率值;
其中,基础概率值采用以下公式计算得到: ;
式中,n表示关键词的长度, 表示基础概率值;
式中, 表示关键词在个性化模型中的新概率值,log表示取对数值,w表示关键词的权重,n表示关键词的长度,r表示权重之间的差异程度。
6.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器
其中,所述处理器被配置为执行权利要求1‑4任意一项所述的语音识别结果的校正方法。
7.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1‑4任意一项所述的语音识别结果的校正方法。

说明书全文

语音识别结果的校正方法及装置、电子设备、存储介质

技术领域

[0001] 本申请涉及语音识别技术领域,特别涉及一种语音识别结果的校正方法及装置、电子设备、存储介质。

背景技术

[0002] 随着科技的发展,人类已进入人工智能时代,人工智能用于延展人类的智慧和能,模拟人类的思维过程和智能行为,使机器能够胜任通常需要人类智能才能完成的复杂工作。人工智能的其中一个重要分支包括语音识别,语音识别技术是机器通过识别和理解过程把输入的语音信号转变成相应的文本,实现人与机器的交流。
[0003] 目前,部分公司研制出的语音识别技术是基于具有庞大的数据处理能力的大数据平台计算而来,数据量具有大而广的特点,可以基本实现人机语言交互,但是,在语音识别系统中,时常出现以下情况,例如,接收到用户的语音“lihua”,通过初始识别获取的对应文本为“李华”,可能校正为“梨花”、“理化”或者“礼花”多种文本,导致校正正确率低下,或是矫枉过正。发明内容
[0004] 本申请实施例提供了语音识别结果的校正方法,用以提高语音识别结果的准确度。
[0005] 本申请实施例提供了一种语音识别结果的校正方法,包括:
[0006] 获取同一语音输入的多种候选词序列;
[0007] 针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率;
[0008] 根据每种候选词序列中每个词汇的出现概率,选取最佳词序列;
[0009] 计算所述最佳词序列中每个词汇与所述目标场景对应的关键词之间的音素相似度;
[0010] 根据所述关键词对应配置的阈值,用所述关键词替换所述最佳词序列中与所述关键词之间的音素相似度大于阈值的词汇。
[0011] 在一实施例中,在所述针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率之前,所述方法还包括:
[0012] 获取所述目标场景对应的文本语料、关键词以及每个关键词对应的权重;
[0013] 通过N元语言模型的统计方法统计所述文本语料中每个词汇的出现概率,得到文本语言模型;
[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] 图1为本申请实施例提供的电子设备的结构示意图;
[0043] 图2是本申请实施例提供的语音识别结果的校正方法的流程示意图
[0044] 图3是本申请实施例提供的个性化模型的生成流程示意图;
[0045] 图4是本申请实施例提供的语音识别结果的校正方法的整体流程架构示意图;
[0046] 图5是本申请实施例提供的语音识别结果的校正装置的框图

具体实施方式

[0047] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0048] 相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0049] 图1为本申请实施例提供的电子设备的结构示意图。该电子设备100可以用于执行本申请实施例提供的语音识别结果的校正方法。如图1所示,该电子设备100包括:一个或多个处理器102、一个或多个存储处理器可执行指令的存储器104。其中,所述处理器102被配置为执行本申请下述实施例提供的语音识别结果的校正方法。
[0050] 所述处理器102可以是网关,也可以为智能终端,或者是包含中央处理单元(CPU)、图像处理单元(GPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对所述电子设备100中的其它组件的数据进行处理,还可以控制所述电子设备100中的其它组件以执行期望的功能。
[0051] 所述存储器104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的语音识别结果的校正方法。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
[0052] 在一实施例中,图1所示电子设备100还可以包括输入装置106、输出装置108以及数据采集装置110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备100也可以具有其他组件和结构。
[0053] 所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘鼠标、麦克触摸屏等中的一个或多个。所述输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。所述数据采集装置110可以采集对象的图像,并且将所采集的图像存储在所述存储器104中以供其它组件使用。示例性地,该数据采集装置110可以为摄像头。
[0054] 在一实施例中,用于实现本申请实施例的语音识别结果的校正方法的示例电子设备100中的各器件可以集成设置,也可以分散设置,诸如将处理器102、存储器104、输入装置106和输出装置108集成设置于一体,而将数据采集装置110分离设置。
[0055] 在一实施例中,用于实现本申请实施例的语音识别结果的校正方法的示例电子设备100可以被实现为诸如智能手机、平板电脑、智能手表、车载设备、智能电视等智能终端。
[0056] 图2是本申请实施例提供的语音识别结果的校正方法的流程示意图,如图2所示,该方法包括以下步骤S210‑步骤S250。
[0057] 步骤S210:获取同一语音输入的多种候选词序列。
[0058] 候选词序列可以认为是语音输入的初步的语音识别结果。候选词序列是指多个词按照一定先后顺序排列。同一语音输入,通过采用光束搜索(beam search)策略可以存在多种候选词序列。多种候选词序列可以以词网格的形式呈现,语音识别过程中,语音输入会经由声学模型、语言模型、辞典等信息将进来的声音识别成,以词为路径的可能性网络,即词网格(word lattice)。一条路径代表一种候选词序列,词网格中的多条路径,代表多种候选词序列。
[0059] 步骤S220:针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率。
[0060] 其中,个性化模型可以提前训练得到,训练过程具体可以参见下文。个性化模型与场景对应,语音输入针对什么场景,即可采用该场景对应的个性化模型。目标场景是指语音输入对应的场景,目标场景可以认为是已知的。个性化模型可以认为是一种几率模型,用于指示各种词汇在该目标场景中出现的概率,故针对候选词序列,通过个性化模型可以确定候选词序列中每个词汇在目标场景中出现的概率。
[0061] 步骤S230:根据每种候选词序列中每个词汇的出现概率,选取最佳词序列。
[0062] 其中,最佳词序列是指从多种候选词序列中选取的可能性最高的词序列。
[0063] 在一实施例中,针对每种候选词序列,可以根据该候选词序列中每个词汇的出现概率,通过将每个词汇的出现概率相乘,并将相乘的结果取对数,得到该候选词序列的正确率得分;进而选取所述正确率得分最高的候选词序列,作为所述最佳词序列。
[0064] 举例来说,候选词序列a‑b‑c,存在词汇a、b、c,用P(a)、P(b)、P(c)分别代表词汇a、b、c的出现概率,则正确率得分score=log(P(a)×P(b)×P(c)),log表示取对数值。针对每种候选词序列,均可用相同的方式,计算正确率得分,进而可以将正确率得分最高的候选词序列作为最佳词序列。
[0065] 步骤S240:计算所述最佳词序列中每个词汇与所述目标场景对应的关键词之间的音素相似度。
[0066] 其中,目标场景的关键词可以认为是已知的。例如,餐厅场景的关键词可以是餐厅地点、餐厅名称等。音素相似度用于表征最佳词序列中任一词汇与关键词的发音的相似度。通常,关键词可以认为是目标场景内出现几率非常高的词汇,故如果某个词汇与关键词的发音非常近似,在目标场景内,可以用关键词来代替该词汇。
[0067] 在一实施例中,上述步骤S240具体可以通过:计算最佳词序列中任一词汇的音素与所述关键词的音素之间的声母相似度、韵母相似度和声调相似度;根据所述声母相似度、韵母相似度和声调相似度,计算得到所述任一词汇与所述关键词之间的音素相似度。
[0068] 举例来说,克劳特的音素为「ke4,l ao2,te2」,数字1,2,3,4,5用于代表声调。“ke4”代表一个音节,lao2代表一个音节,te2代表一个音节。针对有多个音节的词汇,可以计算出该词汇的多个音节与关键词的对应音节之间的音节相似度后,通过求平均值得到该词汇与关键词之间的音素相似度。
[0069] 在一实施例中,考虑声韵学依据发音部位,可以定义出以下声母关系表:
[0070] "b":(1,0,0),"p":(1,0,1),"m":(1,0,2),"f":(1,0,3),"d":(1,1,0),"t":(1,1,1),"n":(1,1,2),"l":(1,1,3),"g":(1,2,0),"k":(1,2,1),"h":(1,2,2),"j":(2,3,0),"q":(2,3,1),"x":(2,3,2),"zh":(2,4,0),"ch":(2,4,1),"sh":(2,4,2),"r":(2,4,3),"z":(2,5,0),"c":(2,5,1),"s":(2,5,2),"y":(3,0,0),"w":(4,0,0)。即每个声母可以用一个三维向量来表示,依据发音部位的不同,所有声母可以分为四个大组,大组内的声母可以分为几个小组,小组内的声母可以按序排列。从而,每个声母的三维向量,由左至右依次代表的是基于发音部位所分的大组、大组内再细分的小组、小组内所在的位置。即,可以用(1,
0,0)表示声母“b”,用(1,0,1)表示声母“p”,以此类推。
[0071] 假设最佳词序列中任一词汇的某一音节用p表示,关键词的某一音节q表示,则p与q用之间的声母(initial)相似度可以用以下公式(1)计算得到:
[0072]
[0073] 式中,pij和qij表示音节p和q针对声母i在第j位的差异,从声母关系表中可以看出,一个声母可以用三维向量表示,j可以是1、2、3,即分别对声母的第一维向量进行比较计算差异,对声母的第二维向量进行比较计算差异,对声母的第三维向量进行比较,计算差异,在计算出每一维的差异后再和θj相乘求和,得出声母之间的相似度Qinitial(p,q)。θj可以为预设参数。
[0074] 在一实施例中,最佳词序列中任一词汇(音节p)与关键词(音节q)之间的韵母(final)相似度可以用以下公式(2)计算得到:
[0075]
[0076] 其中,韵母(final)可以拆分成元音(vowel)以及鼻音(nasals),分别判断元音是否一样,鼻音是否一样,一样为1,不一样为0,再乘以参数θk后相加,得出韵母相似度Qfinal(p,q)。参数θk可以为预设参数。
[0077] 在一实施例中,最佳词序列中任一词汇(音节p)与关键词(音节q)之间的声调(tone)相似度可以用以下公式(3)计算得到:
[0078] Qtone(p,q)=1‑|pt‑qt|/4   (3)
[0079] 其中,Qtone(p,q)代表音节p和q的音调相似度。音节p的声调为pt,音节q的声调为qt,一声可以为1、二声可以为2、三声可以为3、四声可以为4、轻声可以为5,带入上述公式(3),即可计算得到音节p和q的音调相似度。
[0080] 之后,将音节p和音节q的声母相似度、韵母相似度和音调相似度通过对应的参数θi相乘后求和,作为音节p和音节q之间的音节相似度Q(p,q),具体公式如下。
[0081]
[0082] 式中,Qinitial(p,q)表示声母相似度,Qfinal(p,q)表示韵母相似度,Qtone(p,q)表示声调相似度。
[0083] 在一实施例中,如果关键词由多个音节(例如ke4,lao2,te2)构成,则可以采用上述方式计算出单个音节的音节相似度后,通过求平均,得到任一词汇与关键词之间的音素相似度。
[0084] 步骤S250:根据所述关键词对应配置的阈值,用所述关键词替换所述最佳词序列中与所述关键词之间的音素相似度大于阈值的词汇。
[0085] 其中,不同的关键词可以配置不同的阈值。在一实施例中,阈值可以与关键词的权重相关。其中,阈值计算公式可以如下:
[0086] threshold(w)=1‑w·θt   (5)
[0087] 式中,threshold(w)表示阈值,w表示关键词的权重。θt为控制权重之间阈值差异的参数,;θt越大代表每个阈值之间差异越大,w·θt不得大于1。
[0088] 如果最佳词序列中某个词汇与关键词之间的音素相似度大于阈值,则可以用该关键词替换最佳词序列中的该词汇,替换后得到的词序列可以认为是输入语音的语音识别结果校正后得到的文本。校正后的文本可以认为是符合目标场景的说话方式,符合语言学的语音识别结果。提供语音识别结果的准确性。
[0089] 图3是个性化模型的训练过程示意图。如图3所示,在上述步骤S210之前,本申请实施例提供的校正方法还包括以下步骤S310‑步骤S340。
[0090] 步骤S310:获取所述目标场景对应的文本语料、关键词以及每个关键词对应的权重。
[0091] 其中,文本语料是指文本格式的在目标场景中出现过的语料。举例来说,要改善一个餐厅智能客服的语音识别正确率,餐厅可以提供服务员与客户对答的文本,作为目标场景对应的文本语料。关键词可以有一个或多个,例如餐厅相关的关键词可以包括餐厅地点,餐点名称等。每个关键词具有对应的权重,每个关键词的权重可以提前设定并存储在数据库中。权重用于表征每个关键词的重要程度,权重越大表示该关键词更重要,出现概率更大。
[0092] 智能终端可以从数据库中获取提前存储的文本语料、关键词以及关键词对应的权重,进行个性化模型训练。
[0093] 步骤S320:通过N元语言模型的统计方法统计所述文本语料中每个词汇的出现概率,得到文本语言模型。
[0094] 语言模型是整个语音识别模型的一环,语言模型将用语、语法等语言信息建模成一个机率模型,使语音识别的结果在口语上更合理。N元语言模型的统计方法依据尔科夫假设建模,一个词的出现只与这个词前的n个词关联,建模公式如下:
[0095]
[0096] 式中,wi表示第i个词汇,P(wi|wi‑n+1,...,wi‑1)表示词汇wi出现的概率,count表示频次,count(wi‑n+1,...,wi‑1,wi)表示wi‑n+1,...,wi‑1,wi的词汇组合出现的次数。例如:一个二元语言模型的训练,训练文本里头,「你」占1000个,「你好」占200个,依据上面的公式便可得到,
[0097] 故基于上述公式(6),可以一一计算出文本语料中每个词的出现概率。将文本语料中每个词的出现概率进行存储,作为文本语言模型。故文本语言模型可以用于指示文本语料中每个词的出现概率。
[0098] 步骤S330:将已有语言模型与所述文本语言模型通过插补法融合得到文本模型。
[0099] 已有语言模型是指现有语音识别模型中的语言模型。已有语言模型也是一种几率模型,用于指示不同词汇出现的概率。
[0100] 其中,通过插补法融合是指将某个词汇在文本语言模型中概率值与已有语言模型中的概率值,融合得到一个新的概率值。每个词汇的新的概率值构成文本模型。故文本模型可以认为是已有语言模型和文本语言模型融合后得到的语言模型。融合后的文本模型可以认为符合测试场景也不失去训练场景的信息。
[0101] 本申请实施例提及的文本语言模型、已有语言模型、文本模型以及个性化模型均是语言模型,即一种几率模型,用于指示不同词汇的出现概率,为区分不同的语言模型,本申请实施例中分别称为文本语言模型、已有语言模型、文本模型以及个性化模型。
[0102] 在一实施例中,插补法融合过程具体可以通过针对文本语料中的每个词汇,根据所述词汇在所述已有语言模型中的概率值以及在所述文本语言模型中的概率值,加权相加得到所述词汇在所述文本模型中的概率值。
[0103] 具体公式可以如下:
[0104] P(wi|wi‑1)=λ1P1(wi|wi‑1)+λ2P2(wi|wi‑1),λ1+λ2=1,0≤λ1,λ2≤1   (7)[0105] 其中,P1(wi|wi‑1)表示词wi在已有语言模型中的概率值,P2(wi|wi‑1)表示词wi在文本语言模型中的概率值,λ1和λ2表示两个模型各自的权重值。P(wi|wi‑1)表示词wi在文本模型中的概率值。
[0106] 步骤S340:根据每个关键词的权重,增加所述文本模型中关键词对应的概率,得到所述个性化模型。
[0107] 个性化模型是文本模型经过关键词强化后得到的语言模型。关键词可以认为在目标场景中的出现概率较高,故为提高语音识别结果的准确性,可以提高关键词在个性化模型中指示的出现概率。具体增加概率的程度可以基于关键词的权重大小。
[0108] 在一实施例中,关键词可以分为两类,一类为已有语言模型中本来就有的词汇,另一类为已有语言模型中没有出现的词汇。
[0109] 在一实施例中,针对任一所述关键词,若所述关键词存在于所述已有语言模型(即属于第一类),根据所述关键词在所述已有语言模型中的旧概率值以及所述关键词的权重和长度,计算所述关键词在所述个性化模型中的新概率值。
[0110] 具体计算公式如下:log(Pnew)=log(Pold)+w·r·(1+0.2·n)   (8)
[0111] 式中,Pnew表示关键词在个性化模型中的新概率值,Pold表示关键词在已有语言模型中的旧概率值。log表示取对数值,w表示关键词的权重,n表示关键词的长度,r表示权重之间的差异程度,可以由系统人员设定,越大代表每个权重表现出来的效果差异越大。(1+0.2*n)则是因为越长的关键词,应该要有越高的权重加成。本申请实施例将几率取对数运算,可以避免浮点数计算难度等问题。
[0112] 在另一实施例中,针对任一所述关键词,若所述关键词不在所述已有语言模型中(即属于第二类),可以根据所述关键词的长度,计算基础概率值;之后根据所述基础概率值,以及所述关键词的权重和长度,计算所述关键词在所述个性化模型中的新概率值。
[0113] 其中,基础概率值可以采用以下公式(9)计算得到
[0114] log(Pbasic)=10·log(0.2·n)   (9)
[0115] 式中,n表示关键词的长度,Pbasic表示基础概率值。
[0116] log(Pnew)=log(Pbasic)+w·r·(1+0.2·n)   (10)
[0117] 式中,Pnew表示关键词在个性化模型中的新概率值,log表示取对数值,w表示关键词的权重,n表示关键词的长度,r表示权重之间的差异程度。
[0118] 通过上述公式(8)或(10)可以计算出关键词在个性化模型中的新概率值,在个性化模型中给关键词一个相对其他词来说更高的出现概率。
[0119] 过去许多方法主要通过调整已有语音识别模型中的语言模型来提供语音识别结果的准确性,但是这种方式会造成整个语音识别模型必须重新训练以及重新建置,提高成本。而本申请实施例提供的技术方案,提供结合机器学习以及语言学的词汇校正技术:将给定的文本语料以及关键词结合成个性化模型,并用于校正语音识别的结果,此方法可以不需重新训练整个语音识别模型,借由该技术可以得到低成本、高准确度的语音识别结果。
[0120] 图4是本申请实施例提供的语音识别结果的校正方法的流程架构图,如图4所示,主要分为两部分,第一部分,生成个性化模型,第二部分,利用个性化模型校正语音识别结果。
[0121] 第一部分,生成个性化流程:
[0122] (1)获取预先给定的文本语料、关键词及其权重;
[0123] (2)利用文本语料通过N元语言模型的统计方法训练成文本语言模型;
[0124] (3)现有语音系统中已有的语言模型和上述文本语言模型通过插补法融合得到文本模型;
[0125] (4)根据关键词及其权重,对文本模型进行关键词强化(即增加关键词的几率),生成个性化模型。
[0126] 第二部分,利用个性化模型校正语音识别结果:
[0127] (5)获取用户输入的语音,进行语音识别,得到初步识别结果(即多种候选词序列);
[0128] (6)借由个性化模型进行N元语言模型的校正,得到文本修正识别结果,即基于候选词序列中每个词的概率值,重新进行打分,选取最佳词序列;
[0129] (7)对文本修正识别结果进行关键词校正,即计算关键词和最佳词序列中任一词汇的音素相似度,用关键词替换与关键词之间的音素相似度大于阈值的词汇,将校正后的结果作为用户输入语音的最终识别结果。
[0130] 下面是采用本申请实施例提供的语音识别结果的校正方法的实际应用举例。
[0131] 例1
[0132] 用户输入语音,“呃我要查一下外币的汇率”,初步语音识别的结果为“呃我要查意甲外地的汇率”。
[0133] 用户预先给定行相关的文本语料,经由N元语言模型的统计方法,训练成银行相关的文本语言模型,再将现有语音识别模型中的已有语言模型进行插补法(LMinterpolation)加入文本语言模型,形成符合银行场景也不失去训练场景信息的与银行场景对应的文本模型,因为用户没有提供关键词,所以银行对应的文本模型就直接当作银行场景的个性化模型。
[0134] 通过银行场景的个性化模型进行N元语言模型的校正,即选取一个正确率得分最高的最佳词序列,使“呃我要查一下外币的汇率”校正为“呃我要查一下外币的汇率”。
[0135] 例2
[0136] 用户输入语音,“登录cloud服务失败”,初步语音识别的结果为“登录克劳德服务失败”。
[0137] 用户给定关键词汇:cloud,权重为3,因未给予场景文本,所以直接将现有语音识别模型中的已有语言模型经过公式(8)或公式(10)关键词强化、训练成个性化模型。
[0138] 借由个性化模型进行N元语言模型的校正,即选取得分最高的最佳词序列,再以语言学的知识,加强关键词校正。
[0139] 具体的,cloud的音素为「ke3,lou4,de5」,与克劳特的音素「ke4,lao2,te2」,做相似度匹配,在这边设定θinitial=0.4,θfinal=0.4,θtone=0.2,ke3与ke4差别在于声调,声母、韵母相似度均为1,依据公式(3),计算出声调相似度为0.75,依据公式(4)与参数相乘加总后,得到音节ke3与ke4之间的音节相似度为0.95。
[0140] lou4与lao2差别在韵母及声调,声母相似度为1,依据公式(2),ou与ao不一样,因此相似度为0,依据公式(3),得到声调相似度则为0.5,依据公式(4),与参数相乘加总后,得到音节lou4与lao2之间的音节相似度为0.5。
[0141] de5与te2差别在于声母、声调,韵母相似度为1,依据公式(1),设定θ1=0.7,θ2=0.2,θ3=0.1,计算得到声母相似度为0.93,依据公式(3),计算得到声调相似度为0.25,再依据公式(1)与参数相乘加总后,得到音节de5与te2之间的音节相似度为0.82。
[0142] 最后将三个音节相似度取平均,即ke3与ke4之间的音节相似度、lou4与lao2之间的音节相似度、de5与te2之间的音节相似度,三个音节相似度的平均值,得到“cloud”与“克劳特”的音素相似度为0.76。
[0143] 依据公式(5),设定θt=0.1,权重为3的“cloud”计算出的阈值值为0.7,“cloud”与“克劳特”的音素相似度0.76>阈值0.7,故结果校正为“登录cloud服务失败”。
[0144] 本申请实施例提供的技术方案,结合语言学的知识以及机器学习的概念,可以在不重新训练语音识别模型的基础下改善语音识别的结果,达到高准确度、低纠错的识别结果。
[0145] 下述为本申请装置实施例,可以用于执行本申请上述语音识别结果的校正方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请语音识别结果的校正方法实施例。
[0146] 图5为本申请一实施例示出的语音识别结果的校正装置的框图。如图5所示,该装置包括:识别结果获取模块510、词汇概率计算模块520、最佳结果筛选模块530、音素相似度计算模块540以及关键词替换模块550。
[0147] 识别结果获取模块510,用于获取同一语音输入的多种候选词序列;
[0148] 词汇概率计算模块520,用于针对每种候选词序列,利用已训练的与目标场景对应的个性化模型,计算所述候选词序列中每个词汇的出现概率;
[0149] 最佳结果筛选模块530,用于根据每种候选词序列中每个词汇的出现概率,选取最佳词序列;
[0150] 音素相似度计算模块540,用于计算所述最佳词序列中每个词汇与所述目标场景对应的关键词之间的音素相似度;
[0151] 关键词替换模块550,用于根据所述关键词对应配置的阈值,用所述关键词替换所述最佳词序列中与所述关键词之间的音素相似度大于阈值的词汇。
[0152] 上述装置中各个模块的功能和作用的实现过程具体详见上述语音识别结果的校正方法中对应步骤的实现过程,在此不再赘述。
[0153] 在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0154] 另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0155] 功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。