首页 / 专利库 / 人工智能 / n元语法 / 语句识别方法、装置以及计算机可读介质

语句识别方法、装置以及计算机可读介质

阅读:356发布:2020-05-16

专利汇可以提供语句识别方法、装置以及计算机可读介质专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种语句识别方法、装置以及计算机可读介质,通过获取按照语序排列的多个词的原始组合;将原始组合输入至目标N元语法模型中,若原始组合中含有人名地名列表中的名称,则目标N元语法模型将原始组合中含有的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,并计算得到替换后的类别标签相关的概率,根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。相较于现有的N元语法模型,本申请的目标N元语法模型使得含有人名或者地名的语句更容易被正确识别出来。,下面是语句识别方法、装置以及计算机可读介质专利的具体信息内容。

1.一种语句识别方法,其特征在于,包括:
获取按照语序排列的多个词的原始组合;
将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的概率;
其中,若所述原始组合中含有人名地名列表中的名称,则所述目标N元语法模型将所述原始组合中含有的名称替换成所述人名地名列表中对应的类别标签,得到替换后的组合,并计算得到所述替换后的组合中的所述类别标签相关的概率,根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率;
所述人名地名列表中的名称包括:人名和地名;所述人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。
2.根据权利要求1所述的方法,其特征在于,所述目标N元语法模型的构建方法,包括:
创建第一语料集;其中,所述第一语料集的每一个句子均含有名称;所述名称包括人名和/或地名;
根据所述预设的分类规则,将所述第一语料集中的名称替换成对应的类别标签,得到替换后的第一语料集;
根据所述替换后的第一语料集,训练得到初始N元语法模型;其中,所述初始N元语法模型用于计算含有替换后的类别标签的组合中每一个词的词相关的概率、以及所述替换后的类别标签相关的概率;
根据所述人名地名列表和所述初始N元语法模型,得到所述目标N元语法模型;其中,所述目标N元语法模型用于计算得到含有所述人名地名列表中的名称的多个词的组合作为一个句子的概率;所述人名地名列表中至少包括所述第一语料集中的每一个句子包括的人名和地名。
3.根据权利要求1所述的方法,其特征在于,所述根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率,包括:
根据所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合中的名称相关的概率;
根据所述原始组合中的名称相关的概率、以及所述替换后的组合中每一个词的词相关的概率,得到所述原始组合作为一个句子的概率。
4.根据权利要求1所述的方法,其特征在于,所述根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率,包括:
根据所述替换后的组合中的类别标签在所述人名地名列表中对应的名称个数,得到所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比;
将所述类别标签相关的概率,与所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比作乘,得到所述原始组合中的名称相关的概率;
将所述原始组合中的名称相关的概率,与所述替换后的组合中每一个词的词相关的概率作乘,得到所述原始组合作为一个句子的概率。
5.根据权利要求1所述的方法,其特征在于,所述人名地名列表中还包括:所述人名地名列表中的每一个名称所对应的权重值;
其中,所述根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率,包括:
根据所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称对应的权重值,得到所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比;
将所述类别标签相关的概率,与所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比作乘,得到所述原始组合中的名称相关的概率;
将所述原始组合中的名称相关的概率,与所述替换后的组合中每一个词的词相关的概率作乘,得到所述原始组合作为一个句子的概率。
6.根据权利要求2所述的方法,其特征在于,若所述第一语料集的句子含有名称的黏着语,则所述根据所述预设的分类规则,将所述语料集中的名称替换成对应的类别标签,得到替换后的第一语料集,包括:
将所述第一语料集的句子中的含有名称的黏着语,切分为词根和词缀部分;其中,所述词根部分为名称;
根据所述预设的分类规则,将所述黏着语的词根部分替换成对应的类别标签,得到替换后的第一语料集。
7.根据权利要求1所述的方法,其特征在于,所述将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的概率,包括:
将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的第一概率;
将所述原始组合输入至通用N元语法模型中,得到所述原始组合作为一个句子的第二概率;其中,所述通用N元语法模型由通用语料集训练得到;所述通用语料集中包括含有名称的句子、以及不含有名称的句子;
根据预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率,得到所述原始组合作为一个句子的概率。
8.根据权利要求7所述的方法,其特征在于,所述根据预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率,得到所述原始组合作为一个句子的概率,包括:
将所述预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率代入第一公式中,得到所述原始组合作为一个句子的概率;
其中,所述第一公式为:P=a×P1+(1-a)×P2;P为所述原始组合作为一个句子的概率,a为所述预设的权重系数,a为小于1的数;P1为所述原始组合作为一个句子的第一概率;P2为所述原始组合作为一个句子的第二概率。
9.一种语句识别装置,其特征在于,包括:
获取单元,用于获取按照语序排列的多个词的原始组合;
计算单元,用于将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的概率;其中,若所述原始组合中含有人名地名列表中的名称,则所述目标N元语法模型将所述原始组合中含有的名称替换成所述人名地名列表中对应的类别标签,得到替换后的组合,并计算得到所述替换后的组合中的所述类别标签相关的概率,根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率;
所述人名地名列表中的名称包括:人名和地名;所述人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。
10.一种计算机可读介质,其特征在于,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1至8中任一所述的方法。

说明书全文

语句识别方法、装置以及计算机可读介质

技术领域

[0001] 本发明涉及语言识别技术领域,尤其涉及一种语句识别方法、装置以及计算机可读介质。

背景技术

[0002] 语言模型用于计算多个词的组合作为一个句子出现的概率,是语音识别、手写识别、输入法等应用中的重要模。N元语法是语言模型中较为常见的一种建模方法,它假设当前词出现的概率仅依赖于前面N-1个词,由此计算得到多个词的组合作为一个句子出现的概率。例如,在二元语法的情况下,“我是小明”这句话的概率P(我是小明)等于P(我)、P(是/我)以及P(小明/是)的乘积。
[0003] 然而,由于人名和地名这类具有特定标识性的词比较罕见,即使对大量的人名和地名进行了收集,使得语言模型能够识别出人名和地名的语义,但用于训练模型的语句中不可能包含所有的人名和地名的使用形式,导致包含了人名或者地名的语句很难被正确识别出来,即人名地名相关的语言模型的稀疏问题比较严重。例如,语言模型中虽然有收集“小明”这一人名,但训练模型的语句集中没有收集到“我是小明”这类的语句,因此P(小明/是)的概率,即“是”字后面跟着“小明”的概率为0,“我是小明”这句话作为一个句子的概率也为0,无法被语言模型识别出来。

发明内容

[0004] 基于上述现有技术的不足,本申请提出了一种语句识别方法、装置以及计算机可读介质,以实现解决人名地名相关的语言模型的稀疏问题。
[0005] 本发明第一方面公开了一种语句识别方法,包括:
[0006] 获取按照语序排列的多个词的原始组合;
[0007] 将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的概率;其中,若所述原始组合中含有人名地名列表中的名称,则所述目标N元语法模型将所述原始组合中含有的名称替换成所述人名地名列表中对应的类别标签,得到替换后的组合,并计算得到所述替换后的组合中的所述类别标签相关的概率,根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率;
[0008] 所述人名地名列表中的名称包括:人名和地名;所述人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。
[0009] 可选地,在上述语句识别方法中,所述目标N元语法模型的构建方法,包括:
[0010] 创建第一语料集;其中,所述第一语料集的每一个句子均含有名称;所述名称包括人名和/或地名;
[0011] 根据所述预设的分类规则,将所述第一语料集中的名称替换成对应的类别标签,得到替换后的第一语料集;
[0012] 根据所述替换后的第一语料集,训练得到初始N元语法模型;其中,所述初始N元语法模型用于计算含有替换后的类别标签的组合中每一个词的词相关的概率、以及所述替换后的类别标签相关的概率;
[0013] 根据所述人名地名列表和所述初始N元语法模型,得到所述目标N元语法模型;其中,所述目标N元语法模型用于计算得到含有所述人名地名列表中的名称的多个词的组合作为一个句子的概率;所述人名地名列表中至少包括所述第一语料集中的每一个句子包括的人名和地名。
[0014] 可选地,在上述语句识别方法中,所述根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率,包括:
[0015] 根据所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合中的名称相关的概率;
[0016] 根据所述原始组合中的名称相关的概率、以及所述替换后的组合中每一个词的词相关的概率,得到所述原始组合作为一个句子的概率。
[0017] 可选地,在上述语句识别方法中,所述根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率,包括:
[0018] 根据所述替换后的组合中的类别标签在所述人名地名列表中对应的名称个数,得到所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比;
[0019] 将所述类别标签相关的概率,与所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比作乘,得到所述原始组合中的名称相关的概率;
[0020] 将所述原始组合中的名称相关的概率,与所述替换后的组合中每一个词的词相关的概率作乘,得到所述原始组合作为一个句子的概率。
[0021] 可选地,在上述语句识别方法中,所述人名地名列表中还包括:所述人名地名列表中的每一个名称所对应的权重值;
[0022] 其中,所述根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率,包括:
[0023] 根据所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称对应的权重值,得到所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比;
[0024] 将所述类别标签相关的概率,与所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比作乘,得到所述原始组合中的名称相关的概率;
[0025] 将所述原始组合中的名称相关的概率,与所述替换后的组合中每一个词的词相关的概率作乘,得到所述原始组合作为一个句子的概率。
[0026] 可选地,在上述语句识别方法中,若所述第一语料集的句子含有名称的黏着语,则所述根据所述预设的分类规则,将所述语料集中的名称替换成对应的类别标签,得到替换后的第一语料集,包括:
[0027] 将所述第一语料集的句子中的含有名称的黏着语,切分为词根和词缀部分;其中,所述词根部分为名称;
[0028] 根据所述预设的分类规则,将所述黏着语的词根部分替换成对应的类别标签,得到替换后的第一语料集。
[0029] 可选地,在上述语句识别方法中,所述将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的概率,包括:
[0030] 将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的第一概率;
[0031] 将所述原始组合输入至通用N元语法模型中,得到所述原始组合作为一个句子的第二概率;其中,所述通用N元语法模型由通用语料集训练得到;所述通用语料集中包括含有名称的句子、以及不含有名称的句子;
[0032] 根据预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率,得到所述原始组合作为一个句子的概率。
[0033] 可选地,在上述语句识别方法中,所述根据预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率,得到所述原始组合作为一个句子的概率,包括:
[0034] 将所述预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率代入第一公式中,得到所述原始组合作为一个句子的概率;
[0035] 其中,所述第一公式为:P=a×P1+(1-a)×P2;P为所述原始组合作为一个句子的概率,a为所述预设的权重系数,a为小于1的数;P1为所述原始组合作为一个句子的第一概率;P2为所述原始组合作为一个句子的第二概率。
[0036] 本发明第二方面公开了一种语句识别装置,包括:
[0037] 获取单元,用于获取按照语序排列的多个词的原始组合;
[0038] 计算单元,用于将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的概率;其中,若所述原始组合中含有人名地名列表中的名称,则所述目标N元语法模型将所述原始组合中含有的名称替换成所述人名地名列表中对应的类别标签,得到替换后的组合,并计算得到所述替换后的组合中的所述类别标签相关的概率,根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率;
[0039] 所述人名地名列表中的名称包括:人名和地名;所述人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。
[0040] 可选地,在上述语句识别装置中,还包括:
[0041] 创建单元,用于创建第一语料集;其中,所述第一语料集的每一个句子均含有名称;所述名称包括人名和/或地名;
[0042] 替换单元,用于根据所述预设的分类规则,将所述第一语料集中的名称替换成对应的类别标签,得到替换后的第一语料集;
[0043] 第一建模单元,用于根据所述替换后的第一语料集,训练得到初始N元语法模型;其中,所述初始N元语法模型用于计算含有替换后的类别标签的组合中每一个词的词相关的概率、以及所述替换后的类别标签相关的概率;
[0044] 第二建模单元,用于根据所述人名地名列表和所述初始N元语法模型,得到所述目标N元语法模型;其中,所述目标N元语法模型用于计算得到含有所述人名地名列表中的名称的多个词的组合作为一个句子的概率;所述人名地名列表中至少包括所述第一语料集中的每一个句子包括的人名和地名。
[0045] 可选地,在上述语句识别装置中,所述计算单元执行根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率时,用于:
[0046] 根据所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合中的名称相关的概率;
[0047] 根据所述原始组合中的名称相关的概率、以及所述替换后的组合中每一个词的词相关的概率,得到所述原始组合作为一个句子的概率。
[0048] 可选地,在上述语句识别装置中,所述计算单元执行根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率时,用于:
[0049] 根据所述替换后的组合中的类别标签在所述人名地名列表中对应的名称个数,得到所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比;
[0050] 将所述类别标签相关的概率,与所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比作乘,得到所述原始组合中的名称相关的概率;
[0051] 将所述原始组合中的名称相关的概率,与所述替换后的组合中每一个词的词相关的概率作乘,得到所述原始组合作为一个句子的概率。
[0052] 可选地,在上述语句识别装置中,所述人名地名列表中还包括:所述人名地名列表中的每一个名称所对应的权重值;
[0053] 其中,所述计算单元执行根据所述替换后的组合中每一个词的词相关的概率、所述类别标签相关的概率、以及所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比,得到所述原始组合作为一个句子的概率时,用于:
[0054] 根据所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称对应的权重值,得到所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比;
[0055] 将所述类别标签相关的概率,与所述原始组合中的名称在所述人名地名列表中对应的类别标签下的所有名称的占比作乘,得到所述原始组合中的名称相关的概率;
[0056] 将所述原始组合中的名称相关的概率,与所述替换后的组合中每一个词的词相关的概率作乘,得到所述原始组合作为一个句子的概率。
[0057] 可选地,在上述语句识别装置中,若所述第一语料集的句子含有名称的黏着语,则所述替换单元,包括:
[0058] 切分单元,用于将所述第一语料集的句子中的含有名称的黏着语,切分为词根和词缀部分;其中,所述词根部分为名称;
[0059] 替换子单元,用于根据所述预设的分类规则,将所述黏着语的词根部分替换成对应的类别标签,得到替换后的第一语料集。
[0060] 可选地,在上述语句识别装置中,所述计算单元,包括:
[0061] 第一计算子单元,用于将所述原始组合输入至目标N元语法模型中,得到所述原始组合作为一个句子的第一概率;
[0062] 第二计算子单元,用于将所述原始组合输入至通用N元语法模型中,得到所述原始组合作为一个句子的第二概率;其中,所述通用N元语法模型由通用语料集训练得到;所述通用语料集中包括含有名称的句子、以及不含有名称的句子;
[0063] 第三计算子单元,用于根据预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率,得到所述原始组合作为一个句子的概率。
[0064] 可选地,在上述语句识别装置中,所述第三计算子单元,包括:
[0065] 第四计算子单元,用于将所述预设的权重系数、所述原始组合作为一个句子的第一概率、以及所述原始组合作为一个句子的第二概率代入第一公式中,得到所述原始组合作为一个句子的概率;
[0066] 其中,所述第一公式为:P=a×P1+(1-a)×P2;P为所述原始组合作为一个句子的概率,a为所述预设的权重系数,a为小于1的数;P1为所述原始组合作为一个句子的第一概率;P2为所述原始组合作为一个句子的第二概率。
[0067] 本发明第三方面公开了一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述第一方面中任一所述的方法。
[0068] 从上述的技术方案可以看出,本申请提出的语句识别方法中,通过获取按照语序排列的多个词的原始组合,将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的概率。由于本申请中的目标N元语法模型会在原始组合中含有人名地名列表中的名称的情况下,将原始组合中的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,并计算得到替换后的组合中的类别标签相关的概率。进而根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。其中人名地名列表中的名称包括:人名和地名;人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。相较于现有技术中的N元语法模型直接计算原始组合中的名称相关概率来得到原始组合作为句子的概率的方式,本申请的目标N元语法模型通过计算名称对应的类别标签相关的概率来得到原始组合的句子概率的方式,解决了人名地名相关的语言模型的稀疏问题,使得含有人名或者地名的语句更容易被正确识别出来。附图说明
[0069] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0070] 图1为本发明实施例公开的一种语句识别方法的流程示意图;
[0071] 图2为本发明实施例公开的一种输入法应用的示意图;
[0072] 图3为本发明实施例公开的一种得到原始组合作为一个句子的概率的方法的流程示意图;
[0073] 图4为本发明实施例公开的一种得到原始组合中的名称相关的概率的方法的流程示意图;
[0074] 图5为本发明实施例公开的另一种得到原始组合中的名称相关的概率的方法的流程示意图;
[0075] 图6为本发明实施例公开的一种目标N元语法模型的构建方法的流程示意图;
[0076] 图7为本发明实施例公开的一种得到替换后的第一语料集的方法的流程示意图;
[0077] 图8为本发明实施例公开的含有黏着语的语句替换类别标签的流程示意图;
[0078] 图9为本发明实施例公开的另一种得到原始组合作为一个句子的概率的方法的流程示意图;
[0079] 图10为本发明实施例公开的一种语句识别装置的结构示意图。

具体实施方式

[0080] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0081] 自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译机器人问答、知识图谱等技术。
[0082] 自然语言处理技术通常需要使用语言模型对自然语言进行处理。语言模型主要用于计算多个词的组合作为一个句子出现的概率,是语音识别、手写识别、输入法等涉及自然语言处理技术的应用中的重要模块。
[0083] N元语法是语言模型中较为常见的一种建模方法,它假设当前词出现的概率仅依赖于前面N-1个词,由此计算得到多个词的组合作为一个句子出现的概率。
[0084] 然而,由于人名和地名这类具有特定标识性的词比较罕见,即使对大量的人名和地名进行了收集,使得语言模型能够识别出人名和地名的语义,但用于训练模型的语句中不可能包含所有的人名和地名的使用形式,导致包含了人名或者地名的语句很难被正确识别出来,即人名地名相关的N元语法模型的稀疏问题比较严重。
[0085] 针对上述问题,本申请提出了一种语句识别方法、装置以及计算机可读介质,以实现解决人名地名相关的语言模型的稀疏问题。
[0086] 本申请实施例提供的方案涉及人工智能的自然语言处理等技术,具体通过如下实施例进行说明:
[0087] 参阅图1,本申请实施例公开了一种语句识别方法,具体包括以下步骤:
[0088] S101、获取按照语序排列的多个词的原始组合。
[0089] 在语音识别、输入法、手写识别等多种语句识别的应用中,语句识别系统会根据接收到的语句信息,获取多个按照语序排列的多个词的原始组合。例如,参阅图2,当用户使用输入法应用时,向语句识别系统按语句顺序输入了“你现在干什么”的拼音,由于每一个字的拼音会对应于多个字,比如,拼音“ni”会对应于“你”、“尼”、“逆”等多个字,因此语句识别系统将每个拼音识别出的字按照语序排列,最终获取到多个词的原始组合。又例如用户使用语音识别应用时,一个字的读音与多个字相对应,因此语句识别系统也会得到多个按照语序排列的多个词的原始组合。
[0090] 因此,用户向语句识别系统中输入一句话的语句信息时,语句识别系统会对其中的每一个字或词进行识别,再将识别出的可能的字或词按照特定的顺序排列组合,得到对应于输入的句子的多个语序排列的多个词的原始组合。
[0091] 需要说明的是,用户输入的语句信息可以是汉语、英语、哈萨克语等不同的语言,还可以是多种不同的语言组合成的语句,语言种类的不同不影响本申请实施例的实现。
[0092] S102、将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的概率。其中,若原始组合中含有人名地名列表中的名称,则目标N元语法模型将原始组合中含有的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,并计算得到替换后的组合中的类别标签相关的概率,根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。人名地名列表中的名称包括:人名和地名;人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。
[0093] 执行步骤S102时,将步骤S101中获取到的对应于一个句子的每一个原始组合输入至目标N元语法模型中,计算得到每一个原始组合作为一个句子的概率,进而可通过比较对应于该句子的多个原始组合的概率,选出概率最高的原始组合作为最终识别出的句子组合。根据计算得到的对应于一个句子的每一个原始组合的句子概率,选取出最终识别出的句子组合的方式有很多,包括但不限于本申请实施例提出的内容。
[0094] 其中,若原始组合中含有人名地名列表中的名称,则目标N元语法模型先将原始组合中含有的名称替换成人名地名列表中对应的类别标签,得到替换后的组合。人名地名列表中包括了多个名称、以及每一个名称所对应的类别标签。名称中至少包括人名和地名。人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。例如,可直接将人名地名列表中的名称分为人名和地名两类,属于人名类别的则在列表中分配“name”标签,属于地名类别的则在列表中分配“location”标签。对于“我”、“是”、“小明”组成的原始组合,若“小明”这一人名存在于人名地名列表中,且在人名地名列表中对应的类别标签为“name”,则将“小明”替换成“name”,得到“我是name”这一替换后的组合。其中,对人名地名列表中的名称进行分类的规则有很多,可以人为进行设定。除了可以将人名地名列表的名称分为人名、地名两大类别,还可以对人名、地名类别进行更细的分类,例如对于哈萨克语、维吾尔语等使用了黏着语语法的语言,人名和地名的词的最后两个字母可分为元音、清辅音、浊辅音等多个类别。对人名地名列表中的名称预设的分类规则包括但不限于本申请实施例提出的内容。
[0095] 根据替换后的组合,可计算得到替换后的组合中的类别标签相关的概率。其中,替换后的组合由多个词以及替换后的类别标签组成,多个词为非名称的词。替换后的组合中类别标签相关的概率指的是用于表示类别标签、和类别标签的前后词之间的相关性的概率。例如,若目标N元语法模型为二元语法模型,则替换后的组合“我是name”中类别标签相关的概率为P(name/是),即“是”这个词后面跟着“name”标签的概率。根据替换后的组合,还可以计算得到每一个词的词相关概率。其中,每一个词的词相关概率用于表示该词、和该词的前后词之间的相关性。例如,对于“我是name”这一替换后的组合,总共有“我”、以及“是”这两个词,以及“name”这一标签组成,若目标N元语法模型为二元语法模型,“我”这个词的词相关概率为P(我)、“是”这个词的词相关概率为P(是/我)。
[0096] 然后根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。例如,对于“我是小明”这一原始组合,可根据P(我)、P(是/我)、P(name/是)以及“小明”这个名称在“name”这个标签在人名地名列表中所有名称的占比,计算得到P(我是小明)的概率。其中,P(我)以及P(是/我)是词相关概率,P(name/是)为类别标签相关概率。“小明”这个名称在“name”这个标签在人名地名列表中的所有名称的占比可人为进行设定。例如,可使name这个标签在人名地名类别中的所有名称的占比均相同。即如果“name”标签下有100个名称,那么每一个名称的占比均为1/100,“小明”的占比为1/100。
[0097] 具体地,参阅图3,在本申请一具体实施例中,根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率,包括:
[0098] S301、根据类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合中的名称相关的概率。
[0099] 类别标签相关的概率实际上是由人名地名列表中的类别标签下的所有名称相关概率的和得到的。例如,“我是name”这一替换后的组合中,P(name/是)是类别标签相关的概率。若name标签中一共有小明、小红以及小华这三个名称,那么P(name/是)等于P(小明/是)、P(小红/是)以及P(小华/是)的和。即人名地名列表中的类别标签下的所有名称共同分享了该类别标签的相关概率。因此,如果规定了原始组合中的名称在人名地名列表中的占比,那么就可以得到原始组合中的名称相关的概率值。
[0100] 可选地,参阅图4,在本申请一具体实施例中,执行步骤S301的一种实施方式,包括:
[0101] S401、根据替换后的组合中的类别标签在人名地名列表中对应的名称个数,得到原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比。
[0102] 即设定替换后的组合中的类别标签在人名地名列表中对应的每一个名称的占比相等,因此,只需要知道替换后的组合中的类别标签在人名地名列表中对应的名称个数,就能够知道原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比。例如,原始组合为“我是小明”,根据人名地名列表替换后的组合为“我是name”,若人名地名列表中“name”标签下的名称共有50个,那么“小明”在人名地名列表中的“name”标签下的所有名称的占比为1/50。
[0103] S402、将类别标签相关的概率,与原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比作乘,得到原始组合中的名称相关的概率。
[0104] 需要说明的是,替换后的组合中的类别标签相关的概率值不一定只有一个,也可能含有多个。执行步骤S402时,指的是将每一个类别标签相关的概率都与原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比作乘,最后得到多个原始组合中的名称相关的概率。例如,原始组合为“这是小明的书”,替换后的组合为“这是name的书”。若目标N元语法模型为二元语法模型,那么类别标签的相关概率有P(name/是)、以及P(的/name)。将P(name/是)与“小明”在name标签下的所有名称的占比作乘,即可得到P(小明/是)。将P(的/name)与小明在“name”标签下的所有名称的占比作乘,即可得到P(的/小明)。
[0105] 可选地,参阅图5,在本申请一具体实施例中,如果人名地名列表中还包括人名地名列表中的每一个名称所对应的权重值,那么执行步骤S301的一种实施方式,包括:
[0106] S501、根据原始组合中的名称在人名地名列表中对应的类别标签下的所有名称对应的权重值,得到原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比。
[0107] 一般情况下,人名地名列表中一个标签下的名称对应的权重值均为1,即人名地名列表中的一个类别标签下的每一个名称,在该类别标签下的所有名称的占比是相同的。但在实际应用中,如果发现个别名称所在的句子输入目标N元语法模型后,仍然存在难以被正确识别的情况,即可通过加大该名称在人名地名列表中对应的权重值,由此提升能够被正确识别出句子的概率。又或者发现个别名称在日常语言中出现的频率较高,也可提升该名称在人名地名列表中对应的权重值。即可以根据实际情况来调整每一个名称对应的权重值,进而实现调整每一个名称在对应的类别标签下的所有名称的占比。
[0108] 例如,表一示出的人名地名列表中,将维吾尔语名称买买提(mAmAt)的权重值设置为3,若“买买提”在表一中对应的标签“name4”下总共有3个名称,而其他名称的权重值为1,那么“name4”标签下的所有名称的权重值之和为:3+1+1=5。而“买买提”在“name4”标签下的所有名称中的占比为3/5。
[0109] 表一:
[0110]名称 权重值 类别标签
valim 1 name1
mArHabat 1 name2
vadilA 1 Name3
mAmAt 3 Name4
tulufan 1 location1
…… …… ……
[0111] S502、将类别标签相关的概率,与原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比作乘,得到原始组合中的名称相关的概率。
[0112] 其中,执行步骤S502的原理和过程与图4示出的步骤S402相同,可参见,此处不再赘述。
[0113] S302、根据原始组合中的名称相关的概率、以及替换后的组合中每一个词的词相关的概率,得到原始组合作为一个句子的概率。
[0114] 其中,一个词的词相关概率用于说明该词、和该词的前后词之间的相关性。替换后的组合中每一个词的词相关概率,相当于是原始组合中除了名称以外的词的词相关概率。而原始组合作为一个句子的相关概率则是根据原始组合中的名称相关概率、以及原始组合中除了名称以外的词的词相关概率(即替换后的组合中每一个词的词相关概率)得到。
[0115] 具体地,在本申请一具体实施例中,执行步骤S302的一种实施方式,包括:
[0116] 将原始组合中的名称相关的概率,与替换后的组合中每一个词的词相关的概率作乘,得到原始组合作为一个句子的概率。
[0117] 例如,原始组合为“这是小明的书”,若目标N元语法模型为二元语法模型,那么原始组合中的名称相关概率为P(小明/是)以及P(的/小明),替换后的组合中每一个词的词相关的概率为P(这)、P(是/这)、P(书/的)。因此“这是小明的书”作为一个句子的概率P(这是小明的书)等于P(这)、P(是/这)、P(小明/是)、P(的/小明)以及P(书/的)的乘积。
[0118] 现有技术中,对于“这是小明的书”这一原始组合,二元语法模型是直接通过计算P(是/这)、P(小明/是)、P(的/小明)以及P(书/的),进而将它们的乘积计算得到原始组合作为句子的概率。而由于人名和地名在实际使用的语句中出现的频率本身就比较低,且实际使用的语句中不可能包含所有的有关“小明”这一人名的使用方式,那么P(小明/是)或者P(的/小明)的概率就很可能是0,因此二元语法模型很可能得到的“这是小明的书”这一原始组合作为句子的概率为0。即使之后再回退到使用一元语法模型来计算原始组合作为一个句子的概率,得到的概率值也会接近于0,即存在稀疏性问题。
[0119] 而本申请实施例中的目标N元语法模型为二元语法模型时,并没有直接得到P(小明/是)以及P(的/小明),而是将原始组合替换成“这是name的书”的组合,根据P(name/是)、P(的/name)以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到P(小明/是)和P(的/小明)。直接计算得到P(小明/是)或者P(的/小明)的概率可能很低,甚至为0,即具有稀疏性,而P(name/是)或者P(的/name)的概率值为0的可能性很低,P(name/是)的概率相当于是人名地名列表中所有的name标签的名称的概率之和,P(的/name)也是如此,因此P(小明/是)可根据P(name/是)得到,P(的/小明)可根据P(的/name),进而又可计算得到“这是小明的书”的原始组合作为一个句子的概率。本申请的目标N元语法模型的计算方式通过得到替换后的组合中的类别标签相关概率,进而得到原始组合作为句子的概率,解决了人名地名相关的语言模型的稀疏问题,使得含有人名或者地名的语句更容易被正确识别出来。
[0120] 参阅图6,在本申请一具体实施例中,目标N元语法模型的构建方法,包括以下步骤:
[0121] S601、创建第一语料集。
[0122] 其中,第一语料集的每一个句子均含有名称;名称包括人名和/或地名。具体地,可从多个网站、报纸、书刊等含有较多语言信息的地方,收集含有名称的句子,即针对含有名称的句子来创建第一语料集。实际应用中,为了提高目标N元语法模型的计算的准确率,第一语料集中的语料可以阶段性进行更新,使得第一语料集中可包括当下比较常见的一些含有人名和/或地名的句子。
[0123] S602、根据预设的分类规则,将第一语料集中的名称替换成对应的类别标签,得到替换后的第一语料集。
[0124] 其中,步骤S602中提到的预设的分类规则,与图1示出的步骤S102中提到的人名地名列表中的名称所对应的类别标签依据的分类规则是相同的。例如,人名地名列表中将名称分为人名和地名两大类,且人名对应的类别标签为“name”,地名对应的类别标签为“location”。那么执行步骤S602时,同样是将第一语料集中的人名替换成“name”,地名替换成“location”,进而得到替换后的第一语料集。
[0125] 可选地,参阅图7,在本申请一具体实施例中,若第一语料集的句子含有名称的黏着语,则执行步骤S602的一种实施方式,包括:
[0126] S701、将第一语料集的句子中的含有名称的黏着语,切分为词根和词缀部分。
[0127] 其中,词根部分为名称,名称包括人名和地名。黏着语由词根和词缀构成,是一种语言的语法类型,在维吾尔语、哈萨克语、蒙古语等中出现。黏着语通过在词根的前中后粘贴不同的词缀来实现语法功能。语法意义主要由加在词根的词缀来表示的。例如,“给阿里木”在维吾尔语中表示为“valimGa”,其中,“valim”为词根,即“阿里木”这一人名,“Ga”为词缀,翻译为“给”的意思。由于黏着语这种词根和词缀连在一起构成一个词的存在,即使有收集大量的词根,即人名和地名,但由于人名和地名后面跟有词缀,因此会造成语句识别系统无法识别。现有技术中,人名地名相关的语言模型的稀疏问题本身就比较严重,而黏着语特殊的构词方式,加剧了识别人名地名的难度,更是加剧了人名地名相关的语言模型的稀疏问题。因此,对于含有名称的黏着语,首先需要将词根和词缀进行切分,以便语句识别系统可识别出名称。
[0128] 例如,参阅图8,若第一语料集包含“你把这本书带给阿里木”、“你把这本书带给买尔哈巴”等语句,那么则需要把“带给阿里木(valimGa)”这类包含了名称的黏着语切分为“valim+Ga”的形式。
[0129] S702、根据预设的分类规则,将黏着语的词根部分替换成对应的类别标签,得到替换后的第一语料集。
[0130] 对词根与词缀进行切分后,根据预设的分类规则,将词根部分的名称替换成对应的类别标签,得到替换后的语料集。
[0131] 例如,参阅图8,由于维吾尔语中名称末尾的元音,清辅音,浊辅音的情况不同,加的词缀也会因此不同。因此将名称中的人名部分分成“name1”、“name2”、“name3”、以及“name4”这四种类别标签。属于“name1”类别标签的人名,表达“给”的含义时加的后缀为“Ga”,属于“name2”类别标签的人名,表达“给”的含义时加的后缀为“qa”,属于“name3”类别标签的人名,表达“给”的含义时加的后缀为“gA”,属于“name4”类别标签的人名,表达“给”的含义时加的后缀为“kA”。
[0132] 需要说明的是,分类规则可以有很多种形式,包括但不限于本申请实施例提出的内容。
[0133] S603、根据替换后的第一语料集,训练得到初始N元语法模型。
[0134] 其中,初始N元语法模型用于计算含有替换后的类别标签的组合中每一个词的词相关的概率、以及替换后的类别标签相关的概率。例如,对于输入初始N元语法模型的一个替换后的语句“我是name”,若初始N元语法模型为二元语法模型,则计算得到P(我)、P(是/我)以及P(name/是)。而训练初始N元语法模型的过程,就是在不断根据替换后的第一语料集中的语句,计算P(我)、P(是/我)、以及P(name/是)等这些词的条件概率的过程。
[0135] 可选地,得到初始N元语法模型后,还可以对初始N元语法模型进行进一步的优化。为了进一步强化与名称相关的部分的概率,可以削弱含有替换后的类别标签的组合中每一个词的词相关的概率,即削弱与类别标签无关的词的概率得分,强化替换后的类别标签相关的概率得分,最后得到一个优化后的初始N元语法模型。例如,“我是name”这一替换后的组合中,P(我)和P(是/我)都是与类别标签“name”无关的词的词相关概率,因此可对这些概率进行削弱,使得优化后的初始N元语法模型计算名称相关的概率时的准确率进一步提升。
[0136] S604、根据人名地名列表和初始N元语法模型,得到目标N元语法模型。
[0137] 其中,目标N元语法模型用于计算得到含有人名地名列表中的名称的多个词的组合作为一个句子的概率。人名地名列表中至少包括第一语料集中的每一个句子包括的人名和地名。人名地名列表中的名称所对应的类别标签是依据步骤S602中的预设的分类规则得到的。人名地名列表中收集的名称可多于第一语料集中出现的名称。
[0138] 执行步骤S604时,根据人名地名列表扩展初始N元语法模型,得到最终的目标N元语法模型。具体的,可使用人名地名列表中的名称去分享该名称对应的类别标签相关的概率,从而得到与该名称相关的条件概率。例如,若想要得到“阿里木”这一名称相关的概率,可以根据“阿里木”对应的类别标签的概率得到。若“阿里木”对应的类别标签是“name”,而“name”标签在人名地名列表中对应有100个名称,因此,可让“阿里木”与其他99个名称平分“name”的概率。对于“我是阿里木”这一句话,若“我是name”中P(name/是)为0.01,那么“我是阿里木”中的P(阿里木/是)则可以为P(name/是)除以100。
[0139] 需要说明的是,目标N元语法模型中的N为正整数,目标N元模型可以是任意的N元语法模型。但N越大,计算得到的原始组合作为句子的概率会越准确。在实际使用过程中,可以使用多个不同的目标N元语法模型,将得到的多个概率结果按照一定比例进行相加,以得到最终的概率结果。可把N取值较大的目标N元语法模型取较大的比例,N取值较小的模型取较小的比例。例如,先使用目标三元语法模型计算原始组合作为句子的概率P3,再使用目标二元语法模型计算原始组合作为句子的概率P2,然后使用目标一元语法模型计算原始组合作为句子的概率P3,然后再得到最终的原始组合作为句子的概率P=a×P1+b×P2+c×P3,其中a+b+c=1,且a大于b,b大于c。
[0140] 还可以先使用N较大的目标N元语法模型计算原始组合作为句子的概率,若出现句子概率为0,即一个句子对应的多个原始组合都为0,识别不出句子,那么再使用比原本的N更小的取值的目标N元语法模型,直到能够识别出句子为止。例如,先使用目标三元语法模型对一个句子对应的多个原始组合分别计算句子的概率,若出现多个原始组合计算得到的句子概率均为0,识别不出正确的句子,再使用目标二元语法模型进行计算,最终选取句子概率最大的原始组合作为最终识别出的句子。使用目标N元语法模型得到原始组合作为一个句子的概率的方式有很多,包括但不限于本申请实施例提出的内容。
[0141] 还需要说明的是,若步骤S101中得到的原始组合中不包含任何的名称,那么执行步骤S102时,目标N元语法模型就不需要将原始组合中的名称替换成对应的类别标签,而是直接计算原始组合作为一个句子的概率。例如,“你现在干什么”这一原始组合输入至目标N元语法模型中,若目标N元语法模型为二元语法模型,则直接计算P(你)、P(现在/你)、P(干/现在)以及P(什么/干)的值,然后将P(你)、P(现在/你)、P(干/现在)以及P(什么/干)的乘积作为原始组合的句子概率。
[0142] 可选地,由于本申请实施例中的目标N元语法模型是根据含有人名或者地名的语料集构建得到的,因此对含有人名和地名的原始组合作为句子的概率值计算的准确率,高于不含有人名和地名的原始组合作为句子的概率值,因此也可以先对步骤S101中的原始组合进行判断,若含有人名或者地名,则输入至本申请实施例中的目标N元语法模型中,若不含有人名或者地名,则输入至通用N元语法模型中,其中,通用N元语法模型由通用语料集训练得到;通用语料集中包括含有名称的句子、以及不含有名称的句子。
[0143] 可选地,参阅图9,在本申请一具体实施例中,执行步骤S102的一种实施方式,包括:
[0144] S901、将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的第一概率。
[0145] 其中,若原始组合中含有人名地名列表中的名称,则目标N元语法模型将原始组合中含有的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,根据替换后的组合中每一个词的词相关的概率、替换后的组合中的类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的第一概率。
[0146] 若原始组合中不含有含有人名地名列表中的名称,则直接计算原始组合中的词的相关的概率,直接得到原始组合作为一个句子的第一概率。
[0147] S902、将原始组合输入至通用N元语法模型中,得到原始组合作为一个句子的第二概率。
[0148] 其中,通用N元语法模型由通用语料集训练得到;通用语料集中包括含有名称的句子、以及不含有名称的句子,一般可通过网络爬虫、新闻报刊等资源中获得。
[0149] 通用N元语法模型与目标N元语法模型不同,不论是对于包含有名称的原始组合,还是对于不含有名称的原始组合,均是直接计算原始组合中的词的词相关概率,直接得到原始组合作为一个句子的概率。例如,对于“我是阿里木”这一原始组合,直接计算P(我)、P(是/我)以及P(阿里木/是)的值,再根据P(我)、P(是/我)以及P(阿里木/是)的乘积得到原始组合作为一个句子的第二概率。
[0150] S903、根据预设的权重系数、原始组合作为一个句子的第一概率、以及原始组合作为一个句子的第二概率,得到原始组合作为一个句子的概率。
[0151] 目标N元语法模型在计算含有人名和地名的原始组合作为一个句子的概率的准确度较高,而对于不含有人名和地名的原始组合,则是常用语法模型计算得到的概率值准确度更高。因此可结合两种语法模型的优势,根据两种语法模型得到的概率值以及一个预设的权重系数,得到原始组合作为一个句子的概率。其中,预设的权重系数是一个小于1的数,用于设定第一概率和第二概率所占的权重。
[0152] 可选地,在本申请一具体实施例中,执行步骤S903的一种实施方式,包括:
[0153] 将预设的权重系数、原始组合作为一个句子的第一概率、以及原始组合作为一个句子的第二概率代入第一公式中,得到原始组合作为一个句子的概率。
[0154] 其中,第一公式为:P=a×P1+(1-a)×P2。其中,P为原始组合作为一个句子的概率,a为预设的权重系数,a为小于1的数;P1为原始组合作为一个句子的第一概率;P2为原始组合作为一个句子的第二概率。
[0155] 在实际应用中,由于构建通用N元语法模型使用的通用语料集中的语料更加的全面、丰富,因此可以将使用了通用N元语法模型的得到的概率值的权重加大,即加大(1-a)的值,以获得准确度更高的原始组合作为一个句子的概率。
[0156] 本申请提出的语句识别方法中,通过获取按照语序排列的多个词的原始组合,将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的概率。由于本申请中的目标N元语法模型会在原始组合中含有人名地名列表中的名称的情况下,将原始组合中的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,并计算得到替换后的组合中的类别标签相关的概率。进而根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。其中人名地名列表中的名称包括:人名和地名;人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。相较于现有技术中的N元语法模型直接计算原始组合中的名称相关概率来得到原始组合作为句子的概率的方式,本申请的目标N元语法模型通过计算名称对应的类别标签相关的概率来得到原始组合的句子概率的方式,解决了人名地名相关的语言模型的稀疏问题,使得含有人名或者地名的语句更容易被正确识别出来。
[0157] 参阅图10,基于上述本申请实施例提出的语句识别方法,本申请实施例对应公开了一种语句识别装置1000,包括:获取单元1001和计算单元1002。
[0158] 获取单元1001,用于获取按照语序排列的多个词的原始组合。
[0159] 计算单元1002,用于将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的概率。其中,若原始组合中含有人名地名列表中的名称,则目标N元语法模型将所述原始组合中含有的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,并计算得到替换后的组合中的类别标签相关的概率,根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。人名地名列表中的名称包括:人名和地名;人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。
[0160] 可选地,在本申请一具体实施例中,计算单元1002执行根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率时,用于:
[0161] 根据类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合中的名称相关的概率。
[0162] 根据原始组合中的名称相关的概率、以及替换后的组合中每一个词的词相关的概率,得到原始组合作为一个句子的概率。
[0163] 可选地,在本申请一具体实施例中,计算单元1002执行根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率时,用于:
[0164] 根据替换后的组合中的类别标签在人名地名列表中对应的名称个数,得到原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比。
[0165] 将类别标签相关的概率,与原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比作乘,得到原始组合中的名称相关的概率。
[0166] 将原始组合中的名称相关的概率,与替换后的组合中每一个词的词相关的概率作乘,得到原始组合作为一个句子的概率。
[0167] 可选地,在本申请一具体实施例中,人名地名列表中还包括:人名地名列表中的每一个名称所对应的权重值。
[0168] 其中,计算单元1002执行根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率时,用于:
[0169] 根据原始组合中的名称在人名地名列表中对应的类别标签下的所有名称对应的权重值,得到原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比。
[0170] 将类别标签相关的概率,与原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比作乘,得到原始组合中的名称相关的概率。
[0171] 将原始组合中的名称相关的概率,与替换后的组合中每一个词的词相关的概率作乘,得到原始组合作为一个句子的概率。
[0172] 可选地,在上述语句识别装置中,若所述第一语料集的句子含有名称的黏着语,则所述替换单元,包括:
[0173] 切分单元,用于将所述第一语料集的句子中的含有名称的黏着语,切分为词根和词缀部分;其中,所述词根部分为名称;
[0174] 替换子单元,用于根据所述预设的分类规则,将所述黏着语的词根部分替换成对应的类别标签,得到替换后的第一语料集。
[0175] 可选地,在本申请一具体实施例中,计算单元1002,包括:
[0176] 第一计算子单元,用于将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的第一概率。
[0177] 第二计算子单元,用于将原始组合输入至通用N元语法模型中,得到原始组合作为一个句子的第二概率。其中,通用N元语法模型由通用语料集训练得到。通用语料集中包括含有名称的句子、以及不含有名称的句子。
[0178] 第三计算子单元,用于根据预设的权重系数、原始组合作为一个句子的第一概率、以及原始组合作为一个句子的第二概率,得到原始组合作为一个句子的概率。
[0179] 可选地,在本申请一具体实施例中,第三计算子单元,包括:
[0180] 第四计算子单元,用于将预设的权重系数、原始组合作为一个句子的第一概率、以及原始组合作为一个句子的第二概率代入第一公式中,得到原始组合作为一个句子的概率。
[0181] 其中,第一公式为:P=a×P1+(1-a)×P2;P为原始组合作为一个句子的概率,a为所述预设的权重系数,a为小于1的数。P1为原始组合作为一个句子的第一概率;P2为原始组合作为一个句子的第二概率。
[0182] 可选地,在本申请一具体实施例中,语句识别装置1000还包括:创建单元、替换单元、第一建模单元以及第二建模单元。
[0183] 创建单元,用于创建第一语料集。其中,第一语料集的每一个句子均含有名称;名称包括人名和/或地名。
[0184] 替换单元,用于根据预设的分类规则,将第一语料集中的名称替换成对应的类别标签,得到替换后的第一语料集。
[0185] 第一建模单元,用于根据替换后的第一语料集,训练得到初始N元语法模型;其中,初始N元语法模型用于计算含有替换后的类别标签的组合中每一个词的词相关的概率、以及替换后的类别标签相关的概率。
[0186] 第二建模单元,用于根据人名地名列表和所述初始N元语法模型,得到目标N元语法模型。其中,目标N元语法模型用于计算得到含有人名地名列表中的名称的多个词的组合作为一个句子的概率。人名地名列表中至少包括第一语料集中的每一个句子包括的人名和地名。
[0187] 上述本申请实施例公开的语句识别装置1000中的具体的原理和执行过程,与上述本申请实施例公开的语句识别方法相同,可参见上述本申请实施例公开的语句识别方法中相应的部分,这里不再进行赘述。
[0188] 本申请提出的语句识别装置中,通过获取单元1001获取按照语序排列的多个词的原始组合,再通过计算单元1002将原始组合输入至目标N元语法模型中,得到原始组合作为一个句子的概率。由于本申请中的目标N元语法模型会在原始组合中含有人名地名列表中的名称的情况下,将原始组合中的名称替换成人名地名列表中对应的类别标签,得到替换后的组合,并计算得到替换后的组合中的类别标签相关的概率。进而根据替换后的组合中每一个词的词相关的概率、类别标签相关的概率、以及原始组合中的名称在人名地名列表中对应的类别标签下的所有名称的占比,得到原始组合作为一个句子的概率。其中人名地名列表中的名称包括:人名和地名;人名地名列表中的名称所对应的类别标签依据预设的分类规则设定。相较于现有技术中的N元语法模型直接计算原始组合中的名称相关概率来得到原始组合作为句子的概率的方式,本申请的目标N元语法模型通过计算名称对应的类别标签相关的概率来得到原始组合的句子概率的方式,解决了人名地名相关的语言模型的稀疏问题,使得含有人名或者地名的语句更容易被正确识别出来。
[0189] 本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现以上各方法实施例提供的语句识别方法。
[0190] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0191] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0192] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0193] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0194] 存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
[0195] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
[0196] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0197] 以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈