n-gram语言模型的优化方法、装置、计算机设备和存储介质

文档序号:1273695 发布日期:2020-08-25 浏览:12次 >En<

阅读说明:本技术 n-gram语言模型的优化方法、装置、计算机设备和存储介质 (Optimization method and device of n-gram language model, computer equipment and storage medium ) 是由 张旭华 齐欣 孙泽明 朱林林 王宁 于 2020-04-07 设计创作,主要内容包括:本发明公开了一种n-gram语言模型的优化方法、装置、计算机设备及存储介质,该方法包括:从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;从待优化的n-gram语言模型的原模型文件中获取与相似语料对应的原n-gram;根据原n-gram的最高阶数与目标语料的分词数的关系以及原n-gram的概率生成与目标语料对应的目标n-gram;将目标n-gram添加至所述原模型文件中。本发明在不改变声学模型及发音词典的基础上,快速优化了原有n-gram语言模型对目标语料的识别效果。(The invention discloses an optimization method, a device, computer equipment and a storage medium of an n-gram language model, wherein the method comprises the following steps: screening out similar corpora matched with the target corpora from a primitive corpus table of the n-gram language model to be optimized; acquiring an original n-gram corresponding to the similar corpus from an original model file of the n-gram language model to be optimized; generating a target n-gram corresponding to the target corpus according to the relation between the highest order of the original n-gram and the word segmentation number of the target corpus and the probability of the original n-gram; adding a target n-gram to the original model file. The method quickly optimizes the recognition effect of the original n-gram language model on the target corpus on the basis of not changing the acoustic model and the pronunciation dictionary.)

n-gram语言模型的优化方法、装置、计算机设备和存储介质

技术领域

本发明涉及技术领域,特别涉及一种n-gram语言模型的优化方法、装置、计算机设备和存储介质。

背景技术

在语音识别任务中,有两个重要的模型:声学模型和语言模型。语音解码的基本原理为:通过声学模型给声学特征进行打分,并输出音素串的概率,通过语言模型给对应的文本串进行打分。最后,结合两者的分数,给出概率最高的文本串作为识别结果。常见的公式如下:

由此可见,语言模型对最终的解码结果起到非常重要的作用。目前使用最多的语言模型是基于统计的n-gram语言模型。n-Gram是大词汇连续语音识别中常用的一种语言模型实现的是音素到词的转化,词可以是中文词,也可以是英文。通常声学模型给出音素序列的概率,语言模型通过统计词之间的概率,在音素序列上使用语言模型概率进行scale,使得更符合语言习惯的词序列得以输出。

想要训练出较好的针对特定场景的语言模型通常需要大量的相关语料,然而现实情况是,我们能够使用的训练语料大多是通用语料,要想找到大量的与场景相关的自然语料是非常困难的。并且在一些场景中,往往有许多专有名词难以识别,虽然可以通过修改分词词典及发音词典的方式来进行改善,但在训练语言模型的同时,声学模型也时需要进行迭代才能实现较好的效果。但是,不断的修改词典,会导致词典越来越大,甚至有可能会影响其他词的识别。

因此,如何提高n-gram语言模型对特定词汇的识别效果是目前需要解决的问题。

发明内容

为了解决现有技术的问题,本发明实施例提供了一种n-gram语言模型的优化方法、装置、计算机设备和存储介质,以克服现有技术中存在的特定场景中的一些特殊词汇难以识别等问题。

为解决上述一个或多个技术问题,本发明采用的技术方案是:

第一方面,提供了一种n-gram语言模型的优化方法,该方法包括如下步骤:

从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

将所述目标n-gram添加至所述原模型文件中。

进一步的,所述从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料包括:

利用预先训练的词向量模型分别对待优化的n-gram语言模型的原语料表中每条语料以及目标语料进行向量化,获取所述原语料表中每条语料的词向量以及所述目标语料的词向量;

根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度;

从所述相似度中筛选出满足预设阈值的目标相似度,将所述原语料表中与所述目标相似度对应的语料作为与所述目标语料相匹配的相似语料。

进一步的,所述根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram包括:

对所述目标语料进行分词处理,获取分词结果,并获取所述目标语料的分词数;

判断所述目标语料的分词数是否大于所述原n-gram的最高阶数;

若是,则将所述分词结果拆分为分词数与所述原n-gram的最高阶数相同的目标分词结果,否则,直接将所述分词结果作为目标分词结果;

将所述原n-gram中的词组替换成所述目标分词结果,生成目标n-gram,并根据所述原n-gram的概率确定所述目标n-gram的概率。

进一步的,所述根据所述原n-gram的概率确定所述目标n-gram的概率包括:

获取与所述目标n-gram同阶的原n-gram的概率作为所述目标n-gram的概率。

进一步的,所述根据所述原n-gram的概率确定所述目标n-gram的概率还包括:

获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率。

进一步的,在将所述目标n-gram添加至所述原模型文件中前,所述方法还包括:

判断所述原模型文件中是否存在所述目标n-gram;

若存在,则获取所述原模型文件中与目标n-gram对应的n-gram的概率,否则,直接将所述目标n-gram添加至所述原模型文件中;

判断所述目标n-gram的概率是否大于所述原模型文件中与目标n-gram对应的n-gram的概率,若是,则使用所述目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram。

第二方面,提供了一种n-gram语言模型的优化装置,所述装置包括:

语料匹配模块,用于从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

n-gram获取模块,用于从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

n-gram生成模块,用于根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

文件添加模块,用于将所述目标n-gram添加至所述原模型文件中。

进一步的,所述语料匹配模块包括:

向量生成单元,用于利用预先训练的词向量模型分别对待优化的n-gram语言模型的原语料表中每条语料以及目标语料进行向量化,获取所述原语料表中每条语料的词向量以及所述目标语料的词向量;

相似度计算单元,用于根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度;

语料筛选单元,用于从所述相似度中筛选出满足预设阈值的目标相似度,将所述原语料表中与所述目标相似度对应的语料作为与所述目标语料相匹配的相似语料。

第三方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:

从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

将所述目标n-gram添加至所述原模型文件中。

第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如下步骤:

从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

将所述目标n-gram添加至所述原模型文件中。

本发明实施例提供的技术方案带来的有益效果是:

1、本发明实施例提供的n-gram语言模型的优化方法、装置、计算机设备和存储介质,通过从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料,然后从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram,再根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram,最后将所述目标n-gram添加至所述原模型文件中,实现在不改变声学模型及发音词典的基础上,快速优化了原有n-gram语言模型对目标语料的识别效果;

2、本发明实施例提供的n-gram语言模型的优化方法、装置、计算机设备和存储介质,通过根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度,提高了计算原语料表中的语料与目标语料的相似度的效率以及准确率;

3、本发明实施例提供的n-gram语言模型的优化方法、装置、计算机设备和存储介质,通过获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率,从而使得不同的相似语料的权重不同,保证了n-gram语言模型的区分性。

附图说明

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

图1是根据一示例性实施例示出的n-gram语言模型的优化方法的流程图;

图2是根据一示例性实施例示出的从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料的流程图;

图3是根据一示例性实施例示出的根据原n-gram的最高阶数与目标语料的分词数的关系以及原n-gram的概率生成与所述目标语料对应的目标n-gram的流程图;

图4是根据一示例性实施例示出的n-gram语言模型的优化装置的结构示意图;

图5是根据一示例性实施例示出的计算机设备的内部结构示意图。

具体实施方式

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

目前,在语音识别任务中,使用最多的语言模型是基于统计的n-gram语言模型。与其他的模型训练相似,n-gram语言模型的在训练过程中一般能够使用的训练语料大多是通用语料。但是,想要训练出针对特定场景的较好的n-gram语言模型就需要大量的相关语料,然而现实情况是,我们要想找大量的与场景相关的自然语料是非常困难的。一些场景中,往往有许多专有名词难以识别,因而在分词时会被分为单字,这样会导致后续在计算语言模型概率时对计算结果产生一定影响。

以下表1中的一些场景词举例说明,如下表1所示,可以看到有很多专用名词在分词时被拆为单字。比如,对于表中的第1行和第2行的“拆违办”和“汗阿巴德”等词,在某些场景下还比较常见,虽然可以通过修改分词词典及发音词典的方式来改善,但在训练语言模型的同时,声学模型也时需要进行迭代才能实现较好的效果,这样实施起来比较繁琐;再比如,对于表中的第3、4、5行中包含的人名及地名属于开放的集合。如果通过不断的修改词典来改善,那么会导致词典越来越大,甚至有可能会影响其他词的识别。因此我们需要提供一种n-gram语言模型的优化方法,使得可以在不涉及词表的更新和声学模型的训练的情况下,快速的改善模型对于特定的场景词的识别效果。

表1

1 龙岗区拆违办 龙 岗 区 拆 违 办
2 汗阿巴德军用机场 汗 阿 巴德 军用 机场
3 余则成副市长 余 则 成 副市长
4 圣廷苑酒店 圣 廷 苑 酒店
5 乌克兰新任总理叶哈努罗夫 乌克兰 新任 总理 叶 哈 努 罗夫

本申请创造性的提出,将通过找到n-gram语言模型中与目标语料(即特定的场景词)相关的词对应的n-gram,用目标语料替换找到的n-gram中的相关词,形成新的n-gram及对应的低阶gram。最后将生成的所有新的n-gram添加到模型文件中,这里对于新生成的n-gram的概率可以使用原有的相关同阶n-gram的概率的加权表示。由于该过程中不涉及词表的更新和声学模型的训练,因此可以快速的改善模型对于目标语料的识别效果。

图1是根据一示例性实施例示出的n-gram语言模型的优化方法的流程图,参照图1所示,该方法包括如下步骤:

S1:从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

S2:从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

S3:根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

S4:将所述目标n-gram添加至所述原模型文件中。

具体的,当需要原有的n-gram语言模型能够实现对目标语料(如一些特定的场景词)进行准确率较高的识别时,为了在不改变发音词典及声学模型的基础上快速实现模型的优化,本发明实施例中,采用的是生成与目标语料对应的n-gram添加至原有的n-gram语言模型的模型文件中的方式。为了能够快速生成与目标语料对应的n-gram,,本发明实施例中,通过先找到待优化n-gram语言模型中与目标语料相似的词,然后用目标语料替换找到的n-gram中的相关词,形成新的n-gram及对应的低阶gram。

具体实施时,首先需要从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料,这里的相似语料可以是一个或多个,本发明实施例中不做具体限制。其次,再从待优化的n-gram语言模型的原模型文件中提取出与上述相似语料对应的原n-gram。然后用目标语料替换找到的原n-gram中的相关词,生成与目标语料对应的目标n-gram。这里对于新生成的n-gram的概率可以参照相关同阶原n-gram的概率,例如可以根据原n-gram的概率的加权,也可以直接沿用原n-gram的概率等。这里需要说明的是,在生成与目标语料对应的n-gram时,还需要考虑到原n-gram的最高阶数与目标语料的分词数的关系,生成的目标n-gram的阶数需要与原n-gram的阶数对应,即目标n-gram包括原n-gram的最高阶数对应的n-gram,还包括相应的低阶n-gram。最后,将目标n-gram添加至原模型文件中,这里的原模型文件主要包括arpa等文件。这样,在不改变发音词典及声学模型的基础上,快速改善了待优化的n-gram语言模型对目标语料的识别效果,即完成了对n-gram语言模型的优化。

图2是根据一示例性实施例示出的从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料的流程图,参照图2所示,作为一种较优的实施方式,本发明实施例中,所述从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料包括:

S1.1:利用预先训练的词向量模型分别对待优化的n-gram语言模型的原语料表中每条语料以及目标语料进行向量化,获取所述原语料表中每条语料的词向量以及所述目标语料的词向量。

具体的,为了解决手动给定目标语料与原语料表中每条语料的相似度的低效问题,本发明实施例中,采用通过计算词向量的方式获取语料间的相似度。具体实施时,可以预先使用收集训练语料训练一词向量模型,例如,利用word2vec、glove或fasttext等词向量技术,结合训练语料或者其他中文语料训练词向量模型。然后采用中文分词器等方式对原语料表中每条语料以及目标语料进行分词处理,并在分词结果中移除标点符号等。最后,利用该词向量模型分别对原语料表中每条语料以及目标语料对应的分词结果进行向量化,获取原语料表中每条语料以及目标语料的词向量。

S1.2:根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度。

具体的,在基于原语料表中每条语料的词向量以及目标语料的词向量分别计算目标语料与原语料表中每条语料的相似度时,可以通过计算两个向量的距离方式。例如,可以计算夹角余弦作为向量距离(即相似度),也可以计算两个向量的欧式距离作为向量距离,也可以选用其他的距离计算方式,如braycurits距离、chebyshev距离、canberra距离、cityblock距离等,这里不再一一列举。

S1.3:从所述相似度中筛选出满足预设阈值的目标相似度,将所述原语料表中与所述目标相似度对应的语料作为与所述目标语料相匹配的相似语料。

具体的,为了避免修改不相关的n-gram,影响其他词的识别,本发明实施例中,在通过相似度从原语料表中筛选与出目标语料相匹配的相似语料时,为相似度设置了一预设阈值。具体筛选时,先从上述步骤计算获取的相似度中筛选出满足预设阈值的目标相似度,然后将原语料表中与该目标相似度对应的语料提取出来作为与目标语料相匹配的相似语料。这里需要说明的时,本发明实施例中,在通过相似度从原语料表中筛选与出目标语料相匹配的相似语料时,除了设置预设阈值外,还可以设置筛选条件,如设置选取排名为前N位的相似度为目标相似度等,这里不再一一列举。

图3是根据一示例性实施例示出的根据原n-gram的最高阶数与目标语料的分词数的关系以及原n-gram的概率生成与所述目标语料对应的目标n-gram的流程图,参照图3所示,作为一种较优的实施方式,本发明实施例中,所述根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram包括:

S301:对所述目标语料进行分词处理,获取分词结果,并获取所述目标语料的分词数。

具体的,由于目标语料对应的分词数不一定与相似语料的分词数相同,而为了保证生成的目标n-gram的最高阶数不大于与相似语料对应的原n-gram的最高阶数,因此,在生成目标n-gram时,需要考虑到原n-gram的最高阶数与目标语料的分词数的关系。具体在实施时,可以先对目标语料进行分词处理,获取分词结果,根据分词结果可以获取目标语料的分词数,目标语料的分词数为分词结果中包含的分词的个数,如分词结果中有5个分词,则目标语料的分词数为5。

S302:判断所述目标语料的分词数是否大于所述原n-gram的最高阶数。

具体的,然后判断目标语料的分词数是否大于原n-gram的最高阶数,n-gram的阶数即为n,如5-gram的阶数即为5,原n-gram的最高阶数即为获取到的n-gram的最高阶数。

S303:若是,则将所述分词结果拆分为分词数与所述原n-gram的最高阶数相同的目标分词结果,否则,直接将所述分词结果作为目标分词结果。

具体的,若是目标语料的分词数大于原n-gram的最高阶数,此时需要将分词结果拆分为分词数与原n-gram的最高阶数相同的目标分词结果。例如,目标语料的分词数为5,原n-gram的最高阶数为4,此时目标语料的分词数大于原n-gram的最高阶数,因此,需要将该分词结果拆分为与原n-gram的最高阶数相同的的目标分词结果。若是目标语料的分词数不大于原n-gram的最高阶数,此时不需要对分词结果进行处理,可以直接将分词结果作为目标分词结果用于后续的生成目标n-gram。

这是由于本发明实施例中,目标n-gram的概率是通过原n-gram的概率计算获得的,若目标n-gram的最高阶数大于原n-gram的最高阶数,则无法通过原gram的同阶概率获得目标gram的概率。

S304:将所述原n-gram中的词组替换成所述目标分词结果,生成目标n-gram,并根据所述原n-gram的概率确定所述目标n-gram的概率。

具体的,在生成目标n-gram时,可以目标分词结果替换原n-gram中的词组,形成新的n-gram及对应的低阶gram,并且可以根据原n-gram的概率确定目标n-gram的概率,这里需要说明的是,目标n-gram的概率需参照与之同阶的原n-gram的概率。

为了方便对上述步骤的理解,以下举例进行说明:

假设目标语料为“汗阿巴德军用机场”,匹配到的其中一条相似语料为“北京通州军用机场”,从原模型文件中获取到的与“北京通州军用机场”对应的部分原n-gram如下表2所示:

表2

对目标语料“汗阿巴德军用机场”进行分词处理,获取到的分词结果为“汗阿巴德军用机场”,由分词结果可知,目标语料的分词数为5。而由上表2可知,相似语料“北京通州军用机场”的原n-gram的最高阶数为4。此时,可以得出目标语料的分词数大于原n-gram的最高阶数。因此,需要先将目标语料的分词结果拆分为与原n-gram的最高阶数相同的目标分词结果,然后将原n-gram中的词组替换成目标分词结果,生成目标n-gram,同时根据原n-gram的概率确定目标n-gram的概率。具体实施时,目标n-gram的概率可以取同阶的原n-gram的概率。生成的部分目标n-gram如下:

对应的4-grams,概率取上表中4-grams的最大的概率:

-0.04 汗 阿 巴德 军用

-0.04 阿 巴德 军用 机场

对应的3-grams如下,概率取上表中3-grams最大的概率:

-0.01 汗 阿 巴德

-0.01 阿 巴德 军用

-0.01 巴德 军用 机场

以此类推,进而生成对应的2-grams,1-gram,这里不再一一列举。

作为一种较优的实施方式,本发明实施例中,所述根据所述原n-gram的概率确定所述目标n-gram的概率包括:

获取与所述目标n-gram同阶的原n-gram的概率作为所述目标n-gram的概率。

具体的,在生成目标n-gram的过程中,是根据对应的原n-gram的概率确定目标n-gram的概率的。具体实施时,作为一种较优的实施方式,可以直接获取述目标n-gram同阶的原n-gram的概率作为目标n-gram的概率。例如,本发明实施例中,原4-gram的概率为-0.04,则可以设置生成的目标n-gram的概率也为-0.04。

作为一种较优的实施方式,本发明实施例中,所述根据所述原n-gram的概率确定所述目标n-gram的概率还包括:

获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率。

具体的,作为另一种较优的实施方式,生成的目标n-gram的概率还可以根据与之同阶的原n-gram的概率的加权来获取。具体实施时,可以先目标语料与相似语料之间的相似度的值为目标语料对应的目标n-gram确定一权重值,例如,相似度越大可以设置权重值越大等。然后将原n-gram的概率乘以上述目标n-gram的权重值作为目标n-gram的概率。这里需要说明的是,目标n-gram的权重值除了按照上述方式中所说的根据相似度值获取外,也可以预先直接给定,这里不做具体限制。

作为一种较优的实施方式,本发明实施例中,在将所述目标n-gram添加至所述原模型文件中前,所述方法还包括:

判断所述原模型文件中是否存在所述目标n-gram;

若存在,则获取所述原模型文件中与目标n-gram对应的n-gram的概率,否则,直接将所述目标n-gram添加至所述原模型文件中;

判断所述目标n-gram的概率是否大于所述原模型文件中与目标n-gram对应的n-gram的概率,若是,则使用所述目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram。

具体的,为了防止生成的目标n-gram与原模型文件中存在的n-gram重复等问题,在将目标n-gram添加至原模型文件中前,还需要确定原模型文件中是否存在与目标n-gram相同的n-gram。具体实施时,可以通过将目标n-gram与原模型文件中的n-gram进行比较的方式来判定。当原模型文件中不存在与目标n-gram相同的n-gram时,则直接将目标n-gram添加至原模型文件中,不需再考虑其他因素。而当原模型文件中存在与目标n-gram相同的n-gram时,此时,需要考虑到原模型文件中与目标n-gram对应的n-gram的概率与目标n-gram的概率之间的关系,若是目标n-gram的概率大于原模型文件中与目标n-gram对应的n-gram的概率,此时使用所述目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram,对原模型文件中的n-gram进行更新,反之,若是目标n-gram的概率小于或等于原模型文件中与目标n-gram对应的n-gram的概率,此时,不使用目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram。

图4是根据一示例性实施例示出的n-gram语言模型的优化装置的结构示意图,参照图4所示,该装置包括:

语料匹配模块,用于从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

n-gram获取模块,用于从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

n-gram生成模块,用于根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

文件添加模块,用于将所述目标n-gram添加至所述原模型文件中。

作为一种较优的实施方式,本发明实施例中,所述语料匹配模块包括:

向量生成单元,用于利用预先训练的词向量模型分别对待优化的n-gram语言模型的原语料表中每条语料以及目标语料进行向量化,获取所述原语料表中每条语料的词向量以及所述目标语料的词向量;

相似度计算单元,用于根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度;

语料筛选单元,用于从所述相似度中筛选出满足预设阈值的目标相似度,将所述原语料表中与所述目标相似度对应的语料作为与所述目标语料相匹配的相似语料。

作为一种较优的实施方式,本发明实施例中,所述n-gram生成模块包括:

分词处理单元,用于对所述目标语料进行分词处理,获取分词结果,并获取所述目标语料的分词数;

阶数判断单元,用于判断所述目标语料的分词数是否大于所述原n-gram的最高阶数;

分词拆分单元,用于将所述分词结果拆分为分词数与所述原n-gram的最高阶数相同的目标分词结果;

n-gram生成单元,用于将所述原n-gram中的词组替换成所述目标分词结果,生成目标n-gram,并根据所述原n-gram的概率确定所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,所述n-gram生成单元还用于:

获取与所述目标n-gram同阶的原n-gram的概率作为所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,所述n-gram生成单元还用于:

获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,所述装置还包括:

文件判断模块,用于判断所述原模型文件中是否存在所述目标n-gram;

概率获取模块,用于获取所述原模型文件中与目标n-gram对应的n-gram的概率;

概率判断模块,用于判断所述目标n-gram的概率是否大于所述原模型文件中与目标n-gram对应的n-gram的概率,若是,则使用所述目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram。

图5是根据一示例性实施例示出的计算机设备的内部结构示意图,参照图5所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种执行计划的优化方法。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

作为一种较优的实施方式,本发明实施例中,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

将所述目标n-gram添加至所述原模型文件中。

作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:

利用预先训练的词向量模型分别对待优化的n-gram语言模型的原语料表中每条语料以及目标语料进行向量化,获取所述原语料表中每条语料的词向量以及所述目标语料的词向量;

根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度;

从所述相似度中筛选出满足预设阈值的目标相似度,将所述原语料表中与所述目标相似度对应的语料作为与所述目标语料相匹配的相似语料。

作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:

对所述目标语料进行分词处理,获取分词结果,并获取所述目标语料的分词数;

判断所述目标语料的分词数是否大于所述原n-gram的最高阶数;

若是,则将所述分词结果拆分为分词数与所述原n-gram的最高阶数相同的目标分词结果,否则,直接将所述分词结果作为目标分词结果;

将所述原n-gram中的词组替换成所述目标分词结果,生成目标n-gram,并根据所述原n-gram的概率确定所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:

获取与所述目标n-gram同阶的原n-gram的概率作为所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:

获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:

判断所述原模型文件中是否存在所述目标n-gram;

若存在,则获取所述原模型文件中与目标n-gram对应的n-gram的概率,否则,直接将所述目标n-gram添加至所述原模型文件中;

判断所述目标n-gram的概率是否大于所述原模型文件中与目标n-gram对应的n-gram的概率,若是,则使用所述目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram。

本发明实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如下步骤:

从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料;

从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram;

根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram;

将所述目标n-gram添加至所述原模型文件中。

作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:

利用预先训练的词向量模型分别对待优化的n-gram语言模型的原语料表中每条语料以及目标语料进行向量化,获取所述原语料表中每条语料的词向量以及所述目标语料的词向量;

根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度;

从所述相似度中筛选出满足预设阈值的目标相似度,将所述原语料表中与所述目标相似度对应的语料作为与所述目标语料相匹配的相似语料。

作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:

对所述目标语料进行分词处理,获取分词结果,并获取所述目标语料的分词数;

判断所述目标语料的分词数是否大于所述原n-gram的最高阶数;

若是,则将所述分词结果拆分为分词数与所述原n-gram的最高阶数相同的目标分词结果,否则,直接将所述分词结果作为目标分词结果;

将所述原n-gram中的词组替换成所述目标分词结果,生成目标n-gram,并根据所述原n-gram的概率确定所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:

获取与所述目标n-gram同阶的原n-gram的概率作为所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:

获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率。

作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:

判断所述原模型文件中是否存在所述目标n-gram;

若存在,则获取所述原模型文件中与目标n-gram对应的n-gram的概率,否则,直接将所述目标n-gram添加至所述原模型文件中;

判断所述目标n-gram的概率是否大于所述原模型文件中与目标n-gram对应的n-gram的概率,若是,则使用所述目标n-gram替换所述原模型文件中与所述目标n-gram对应的n-gram。

综上所述,本发明实施例提供的技术方案带来的有益效果是:

1、本发明实施例提供的n-gram语言模型的优化方法、装置、计算机设备和存储介质,通过从待优化的n-gram语言模型的原语料表中筛选出与目标语料相匹配的相似语料,然后从所述待优化的n-gram语言模型的原模型文件中获取与所述相似语料对应的原n-gram,再根据所述原n-gram的最高阶数与所述目标语料的分词数的关系以及所述原n-gram的概率生成与所述目标语料对应的目标n-gram,最后将所述目标n-gram添加至所述原模型文件中,实现在不改变声学模型及发音词典的基础上,快速优化了原有n-gram语言模型对目标语料的识别效果;

2、本发明实施例提供的n-gram语言模型的优化方法、装置、计算机设备和存储介质,通过根据所述原语料表中每条语料的词向量以及所述目标语料的词向量分别计算所述目标语料与所述原语料表中每条语料的相似度,提高了计算原语料表中的语料与目标语料的相似度的效率以及准确率;

3、本发明实施例提供的n-gram语言模型的优化方法、装置、计算机设备和存储介质,通过获取与所述目标n-gram同阶的原n-gram的概率,并根据相应的目标相似度确定所述目标n-gram的权重值,根据所述原n-gram的概率以及所述目标n-gram的权重值计算得到所述目标n-gram的概率,从而使得不同的相似语料的权重不同,保证了n-gram语言模型的区分性。

需要说明的是:上述实施例提供的n-gram语言模型的优化装置在触发优化业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的n-gram语言模型的优化装置与n-gram语言模型的优化方法实施例属于同一构思,即该装置是基于该n-gram语言模型的优化方法的,其具体实现过程详见方法实施例,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

19页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种语音识别方法、装置、设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!