一种语言模型建立方法及装置
技术领域
本发明涉及计算机语言技术领域,尤其涉及一种语言模型建立方法及装置。
背景技术
目前,随着电子科技的发展,语音输入越来越被人们推崇,语音输入是通过语音识别将人说话的内容转换为文本的一种输入方式。很多应用中的语音输入还局限在语音输入语音输出,还不能很好的将语音输入转化为文字。由于在实际应用中,语音识别面对的环境十分复杂,需要处理各种不同领域的说话内容,识别性能很难达到百分之百,尤其是对于一些特殊领域,例如医疗领域、金融领域、通信领域等,存在很多专业术语在语音输入中出现的几率较低,电子设备将说话的内容转换为文本时也很难准确地将语音转换为专业术语。
发明内容
本发明实施例提供一种语言模型建立方法及装置,用于实现不同领域中个性化语言模型的建立,从而提高个性化语言模型识别文字的准确率。
一种语言模型建立方法,包括以下步骤:
获取预设领域的语料库和通用语言模型,所述语料库包括所述预设领域的多个元素以及每个元素在所述语料库中所占的第一概率,所述通用语言模型包括多个元素以及每个元素在所述通用语言模型中所占的第二概率,所述元素包括字、词以及字和/或词的组合中的至少一种;
判断所述元素是否存在于所述语料库和/或所述通用语言模型中;
根据所述判断结果,确定所述元素对应的第三概率;
根据所述元素对应的第三概率,建立所述预设领域的个性化语言模型。
本发明实施例的一些有益效果可以包括:
上述技术方案,能够根据元素在语料库和通用语言模型中存在的不同情况来确定元素对应的第三概率,进而根据第三概率建立个性化语言模型,使得个性化语言模型中元素所占的概率更加符合预设领域所在场景,从而实现了语言模型在不同领域中的个性化,提高了使用个性化语言模型识别文字的准确率。
在一个实施例中,所述根据所述判断结果,确定所述元素对应的第三概率,包括:
当所述元素只存在于所述语料库中时,将所述元素在所述语料库中所占的第一概率乘以第一预设系数,获得所述元素对应的第三概率,所述第一预设系数为小于1的正数。
该实施例中,当元素只存在于语料库中时,通过将该元素在语料库中所占的概率乘以小于1的系数,从而降低该元素的概率,避免了由于语料库的数量级较低而导致元素在个性化语言模型中概率过高的情况,从而避免了将不属于语料库中的元素识别为语料库中元素的情况,提高了使用个性化语言模型识别文字的准确率。
在一个实施例中,所述根据所述判断结果,确定所述元素对应的第三概率,包括:
当所述元素只存在于所述通用语言模型中时,将所述元素在所述通用语言模型中对应的第二概率乘以第二预设系数,获得所述元素对应的第三概率,所述第二预设系数大于所述第一预设系数,所述第二预设系数为小于1的正数。
该实施例中,当元素只存在于通用语言模型中时,通过将该元素在通用语言模型中所占的概率乘以小于1的系数,从而降低了该元素的概率,使得建立的个性化语言模型中元素的概率更加准确,提高了使用个性化语言模型识别文字的准确率。
在一个实施例中,所述根据所述判断结果,确定所述元素对应的第三概率,包括:
当所述元素同时存在于所述语料库和所述通用语言模型中时,将所述元素在所述语料库中所占的第一概率乘以第三预设系数,得到第一中间概率;
将所述元素在所述通用语言模型中所占的第二概率乘以第四预设系数,得到第二中间概率;
将所述第一中间概率和所述第二中间概率相加,得到所述元素对应的第三概率;
其中,所述第三预设系数和所述第四预设系数为小于1的正数,所述第四预设系数大于所述第三预设系数,所述第三预设系数和所述第四预设系数的和为1。
该实施例中,当元素同时存在于语料库和通用语言模型中时,通过将该元素在语料库中所占的概率和在通用语言模型中所占的概率进行归一化计算,使得该元素在个性化语言模型中对应的概率既能符合通用语言模型的场景,也能符合预设领域的语料库所在场景,从而使个性化语言模型中元素的概率更加准确,提高了使用个性化语言模型识别文字的准确率。
在一个实施例中,所述根据所述第三概率,建立所述预设领域的个性化语言模型,包括:
将所述元素对应的第三概率确定为所述元素在所述个性化语言模型中所占的概率;
根据所述元素在所述个性化语言模型中所占的概率,融合所述语料库中的元素和所述通用语言模型中的元素,得到所述预设领域的个性化语言模型。
该实施例中,通过根据元素在个性化语言模型所占的概率来融合语料库中的元素和通用语言模型中的元素,使得个性化语言模型中元素对应的概率既能符合通用语言模型的场景,也能符合预设领域的语料库所在场景,从而使个性化语言模型中元素的概率更加准确,提高了使用个性化语言模型识别文字的准确率。
一种语言模型建立装置,包括:
获取模块,用于获取预设领域的语料库和通用语言模型,所述语料库包括所述预设领域的多个元素以及每个元素在所述语料库中所占的第一概率,所述通用语言模型包括多个元素以及每个元素在所述通用语言模型中所占的第二概率,所述元素包括字、词以及字和/或词的组合中的至少一种;
判断模块,用于判断所述元素是否存在于所述语料库和/或所述通用语言模型中;
确定模块,用于根据所述判断结果,确定所述元素对应的第三概率;
建立模块,用于根据所述元素对应的第三概率,建立所述预设领域的个性化语言模型。
在一个实施例中,所述判断模块包括:
第一计算子模块,用于当所述元素只存在于所述语料库中时,将所述元素在所述语料库中所占的第一概率乘以第一预设系数,获得所述元素对应的第三概率,所述第一预设系数为小于1的正数。
在一个实施例中,所述判断模块包括:
第二计算子模块,用于当所述元素只存在于所述通用语言模型中时,将所述元素在所述通用语言模型中对应的第二概率乘以第二预设系数,获得所述元素对应的第三概率,所述第二预设系数大于所述第一预设系数,所述第二预设系数为小于1的正数。
在一个实施例中,所述判断模块包括:
第三计算子模块,用于当所述元素同时存在于所述语料库和所述通用语言模型中时,将所述元素在所述语料库中所占的第一概率乘以第三预设系数,得到第一中间概率;
第四计算子模块,用于将所述元素在所述通用语言模型中所占的第二概率乘以第四预设系数,得到第二中间概率;
第五计算子模块,用于将所述第一中间概率和所述第二中间概率相加,得到所述元素对应的第三概率;
其中,所述第三预设系数和所述第四预设系数为小于1的正数,所述第四预设系数大于所述第三预设系数,所述第三预设系数和所述第四预设系数的和为1。
在一个实施例中,所述建立模块包括:
确定子模块,用于将所述元素对应的第三概率确定为所述元素在所述个性化语言模型中所占的概率;
融合子模块,用于根据所述元素在所述个性化语言模型中所占的概率,融合所述语料库中的元素和所述通用语言模型中的元素,得到所述预设领域的个性化语言模型。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种语言模型建立方法的流程图;
图2为本发明实施例中一种语言模型建立方法中步骤S14的流程图;
图3为本发明实施例中一种语言模型建立方法的流程图;
图4为本发明实施例中一种语言模型建立装置的框图;
图5为本发明实施例中一种语言模型建立装置中判断模块的框图;
图6为本发明实施例中一种语言模型建立装置中判断模块的框图;
图7为本发明实施例中一种语言模型建立装置中判断模块的框图;
图8为本发明实施例中一种语言模型建立装置中建立模块的框图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为本发明实施例中一种语言模型建立方法的流程图。如图1所示,该方法包括以下步骤S11-S14:
步骤S11,获取预设领域的语料库和通用语言模型。
其中,语料库包括预设领域的多个元素以及每个元素在语料库中所占的第一概率,通用语言模型包括多个元素以及每个元素在通用语言模型中所占的第二概率,元素包括字、词以及字和/或词的组合中的至少一种。预设领域的多个元素中包括属于该预设领域的特殊术语。
字和/或词的组合用以表征某个字或词与其他元素组合出现的情况,因此字和/或词的组合的概率即为条件概率。例如,以P表示概率,则P(米粉)表示词“米粉”所出现的概率,而P(米粉|爱吃)表示词“米粉”在词“爱吃”出现的前提下所出现的概率,显然,P(米粉|爱吃)的值小于P(米粉)的值。
预设领域的语料库的获取过程如下:采集预设领域的语料,并对采集的语料中的句子进行分词处理,然后统计每个字、词以及字和/或词的组合在所有语料中出现的概率,即可得到该预设领域的语料库。
其中,预设领域可以是医学领域、银行领域、建筑领域等任一领域,还可以是同一领域内所划分的小领域,例如,在医学领域中划分为多个科室,包括内科、外科、骨科等。
预设领域中包括的元素由于有该领域的特殊术语,因此通用语言模型中不一定包括该特殊术语。
步骤S12,判断元素是否存在于语料库和/或通用语言模型中。
步骤S13,根据判断结果,确定元素对应的第三概率。
步骤S14,根据元素对应的第三概率,建立预设领域的个性化语言模型。
该步骤S14可执行为如图2所示的步骤S141-S142:
步骤S141,将元素对应的第三概率确定为元素在个性化语言模型中所占的概率。
步骤S142,根据元素在个性化语言模型中所占的概率,融合语料库中的元素和通用语言模型中的元素,得到预设领域的个性化语言模型。
采用本发明实施例提供的技术方案,能够根据元素在语料库和通用语言模型中存在的不同情况来确定元素对应的第三概率,进而根据第三概率建立个性化语言模型,使得个性化语言模型中元素所占的概率更加符合预设领域所在场景,从而实现了语言模型在不同领域中的个性化,提高了使用个性化语言模型识别文字的准确率。
根据步骤S12的判断结果的不同,步骤S13的具体实施方式也不同。以下通过具体实施例来说明上述建立个性化语言模型的方法。
图3为本发明一具体实施例中一种语言模型建立方法的流程图。如图3所示,该方法包括以下步骤S31-S38:
步骤S31,获取预设领域的语料库和通用语言模型。
其中,语料库包括预设领域的多个元素以及每个元素在语料库中所占的第一概率,通用语言模型包括多个元素以及每个元素在通用语言模型中所占的第二概率,元素包括字、词以及字和/或词的组合中的至少一种。
步骤S32,判断元素是否存在于语料库和/或通用语言模型中。如果元素只存在于语料库中,则执行步骤S33;如果元素只存在于通用语言模型中,则执行步骤S34;如果元素同时存在于语料库和通用语言模型中,则执行步骤S35。
步骤S33,将该元素在语料库中所占的第一概率乘以第一预设系数,获得元素对应的第三概率;第一预设系数为小于1的正数。继续执行步骤S37。
其中,元素对应的第三概率也就是该元素在待建立的个性化语言模型中所占的概率。
由于语料库相较于通用语言模型来说,数量级要小很多(通用语言模型的数量级为4G~8G,语料库的数量级为10M~1G,),因此,为使仅存在于语料库中的元素融合至通用语言模型后的概率平稳,不会出现概率凸点,第一预设系数可设定为远小于1的系数值。例如,第一预设系数为0.2,对于仅存在与语料库中的元素,其在语料库中所占的第一概率为x,则该元素对应的第三概率则为0.2x。可见,该步骤能够降低该元素对应的概率,避免了由于语料库的数量级较低而导致元素在个性化语言模型中概率过高的情况,从而避免了将不属于语料库中的元素识别为语料库中元素的情况,使得建立的个性化语言模型中元素的概率更加准确。
步骤S34,将该元素在通用语言模型中对应的第二概率乘以第二预设系数,获得元素对应的第三概率;第二预设系数大于第一预设系数,第二预设系数为小于1的正数。继续执行步骤S37。
由于语料库相较于通用语言模型来说,数量级要小很多(通用语言模型的数量级为4G~8G,语料库的数量级为10M~1G,),因此,为避免仅存在于通用语言模型中的元素在语料库和通用语言模型融合后的概率更加准确,第二预设系数应设置为大于第一预设系数的系数值,优选的,可以是略小于1的系数值。例如,第二预设系数设置为0.9,对于仅存在于通用语言模型中的元素,其在通用语言模型中所占的概率为y,则该元素对于的第三概率为0.9y。可见,该步骤略微降低了元素对应的概率,使得建立的个性化语言模型中元素的概率更加准确。
步骤S35,将该元素在语料库中所占的第一概率乘以第三预设系数,得到第一中间概率,并将该元素在通用语言模型中所占的第二概率乘以第四预设系数,得到第二中间概率。
其中,第三预设系数和第四预设系数为小于1的正数。
由于语料库相较于通用语言模型来说,数量级要小很多(通用语言模型的数量级为4G~8G,语料库的数量级为10M~1G,),因此,为使语料库和通用语言模型融合之后元素对应的概率更加准确,不会出现概率凸点,第四预设系数应大于第三预设系数,且第三预设系数和第四预设系数的和为1,优选的,可设定第三预设系数为远小于1的系数值,而第四预设系数为略小于1的系数值。
步骤S36,将第一中间概率和第二中间概率相加,得到该元素对应的第三概率。
例如,第三预设系数为0.2,第四预设系数为0.8,对于同时存在于语料库和通用语言模型中的元素,其在语料库中所占的第一概率为x,在通用语言模型中所占的第二概率为y,则该元素对应的第三概率为0.2x+0.8y。可见,步骤S35-S36使得元素在待建立的个性化语言模型中对应的概率既能符合通用语言模型的场景,也能符合预设领域的语料库所在场景,从而使个性化语言模型中元素的概率更加准确。
步骤S37,将元素对应的第三概率确定为元素在个性化语言模型中所占的概率。
步骤S38,根据元素在个性化语言模型中所占的概率,融合语料库中的元素和通用语言模型中的元素,得到预设领域的个性化语言模型。
该步骤中,在融合语料库中的元素和通用语言模型中的元素时,如果该元素仅存在于语料库中,则直接将该元素添加至通用语言模型中、并将其对应的概率更新为第三概率即可,如果该元素仅存在于通用语言模型中或者同时存在于语料库和通用语言模型中,则仅需将该元素在通用语言模型中对应的概率更新为其对应的第三概率,即可完成融合过程。
对应于上述实施例中的语言模型建立方法,本发明还提供一种语言模型建立装置,用以执行上述方法。
图4为本发明实施例中一种语言模型建立装置的框图。如图4所示,该装置包括:
获取模块41,用于获取预设领域的语料库和通用语言模型,所述语料库包括所述预设领域的多个元素以及每个元素在所述语料库中所占的第一概率,所述通用语言模型包括多个元素以及每个元素在所述通用语言模型中所占的第二概率,所述元素包括字、词以及字和/或词的组合中的至少一种;
判断模块42,用于判断所述元素是否存在于所述语料库和/或所述通用语言模型中;
确定模块43,用于根据所述判断结果,确定所述元素对应的第三概率;
建立模块44,用于根据所述元素对应的第三概率,建立所述预设领域的个性化语言模型。
在一个实施例中,如图5所示,所述判断模块42包括:
第一计算子模块421,用于当所述元素只存在于所述语料库中时,将所述元素在所述语料库中所占的第一概率乘以第一预设系数,获得所述元素对应的第三概率,所述第一预设系数为小于1的正数。
在一个实施例中,如图6所示,所述判断模块42包括:
第二计算子模块422,用于当所述元素只存在于所述通用语言模型中时,将所述元素在所述通用语言模型中对应的第二概率乘以第二预设系数,获得所述元素对应的第三概率,所述第二预设系数大于所述第一预设系数,所述第二预设系数为小于1的正数。
在一个实施例中,如图7所示,所述判断模块42包括:
第三计算子模块423,用于当所述元素同时存在于所述语料库和所述通用语言模型中时,将所述元素在所述语料库中所占的第一概率乘以第三预设系数,得到第一中间概率;
第四计算子模块424,用于将所述元素在所述通用语言模型中所占的第二概率乘以第四预设系数,得到第二中间概率;
第五计算子模块425,用于将所述第一中间概率和所述第二中间概率相加,得到所述元素对应的第三概率;
其中,所述第三预设系数和所述第四预设系数为小于1的正数,所述第四预设系数大于所述第三预设系数,所述第三预设系数和所述第四预设系数的和为1。
在一个实施例中,如图8所示,所述建立模块44包括:
确定子模块441,用于将所述元素对应的第三概率确定为所述元素在所述个性化语言模型中所占的概率;
融合子模块442,用于根据所述元素在所述个性化语言模型中所占的概率,融合所述语料库中的元素和所述通用语言模型中的元素,得到所述预设领域的个性化语言模型。
采用本发明实施例提供的装置,能够根据元素在语料库和通用语言模型中存在的不同情况来确定元素对应的第三概率,进而根据第三概率建立个性化语言模型,使得个性化语言模型中元素所占的概率更加符合预设领域所在场景,从而实现了语言模型在不同领域中的个性化,提高了使用个性化语言模型识别文字的准确率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。