CN106227719B - 中文分词歧义消除方法和*** - Google Patents

中文分词歧义消除方法和*** Download PDF

Info

Publication number
CN106227719B
CN106227719B CN201610596761.7A CN201610596761A CN106227719B CN 106227719 B CN106227719 B CN 106227719B CN 201610596761 A CN201610596761 A CN 201610596761A CN 106227719 B CN106227719 B CN 106227719B
Authority
CN
China
Prior art keywords
word
participle
segmentation
word segmentation
segmentation result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610596761.7A
Other languages
English (en)
Other versions
CN106227719A (zh
Inventor
柳艳红
郭祥
郭瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Rubu Technology Co.,Ltd.
Original Assignee
Beijing Intelligent Housekeeper Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Intelligent Housekeeper Technology Co Ltd filed Critical Beijing Intelligent Housekeeper Technology Co Ltd
Priority to CN201610596761.7A priority Critical patent/CN106227719B/zh
Publication of CN106227719A publication Critical patent/CN106227719A/zh
Application granted granted Critical
Publication of CN106227719B publication Critical patent/CN106227719B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本发明实施例提供一种中文分词歧义消除方法和***,所述方法包括:对待分词语句进行分词,获得初始分词结果;针对初始分词结果,提取分词歧义点;构造包含分词歧义点的新分词,并计算新分词的最大熵模型得分;根据新分词的最大熵模型得分,判断新分词是否为有效分词;用有效分词修正初始分词结果。本发明实施例克服了现有技术中需要大量训练语料数据和歧义语料库的缺点,分词效果达到实用的精度。

Description

中文分词歧义消除方法和***
技术领域
本发明涉及自然语言处理领域,特别涉及一种中文分词歧义消除方法和***。
背景技术
中文分词是中文分析及计算机处理中的一大难点,其中,中文分词歧义消除问题一直是中文分词中备受关注的难点和热点问题。目前,常用的中文分词歧义消除方法有ngram模型法、动词优先法、信息熵法、中文歧义词库法等。这些方法都在不同程度上解决了分词歧义问题,但是还没有一种适用于各种场景的分词方法,能够在各种场合下有效消除中文分词歧义。以现有的CAS(compare-and-swap)技术为例,其只考虑了儿童闲聊场景的分词歧义问题,效果已经能够达到实用,但是对于其他场景的分词歧义问题,实现效果并不是很好。
此外,现有的一些中文分词歧义消除方法通常需要大量的训练语料,建立超大歧义词字典。这些过程需要投入很大的人力和时间,进行人工标注,否则精度将不能达到实用要求。一般人工智能机构很难在短时间内获取这些训练语料和歧义词典,即便是获取到了,在分词算法的实时计算上又提出了更高的要求。这对于人工智能进一步应用到实用场景是一个瓶颈。
发明内容
本发明的目的是提供一种中文分词歧义消除方法,用以解决现有算法需要大量训练语料和歧义词库的问题,以及伴随而来的算法的实时性问题。
相应的,本发明实施例还提供一种中文分词歧义消除***,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种中文分词歧义消除方法,包括:
对待分词语句进行分词,获得初始分词结果;
针对所述初始分词结果,提取分词歧义点;
构造包含所述分词歧义点的新分词,并计算所述新分词的最大熵模型得分;
根据所述新分词的最大熵模型得分,判断所述新分词是否为有效分词;
用所述有效分词修正所述初始分词结果。
优选地,所述提取分词歧义点的步骤包括:
针对所述初始分词结果中的每个词构造候选词;
在场景库中进行搜索,确定所述候选词是否存在于所述场景库中;
提取存在于所述场景库中的候选词的第一个字或最后一个字作为分词歧义点。
优选地,所述待分词语句共包括N个字,依次为z1至zN,所述初始分词结果共包括M个词,依次为c1至cM,所述初始分词结果中的第i个词ci的最后一个字为zj,所述第i个词ci的候选词包括:
cizj+1
cizj+1zj+2
……
cizj+1zj+2……zN
其中,M、N、i、j均为大于零的整数,且M≤N,i<M,j<N。
优选地,所述场景库用于存储与应用场景相关联的词,包括至少一个主题词典。
优选地,所述构造包含所述分词歧义点的新分词通过以下三种方式的至少其中之一来实现:
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字与所述分词歧义点组合,构造所述新分词;
在所述待分词语句中,将所述分词歧义点与从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词;
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字、所述分词歧义点、以及从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词。
优选地,还包括对所述最大熵模型进行训练。
优选地,所述对所述最大熵模型进行训练的步骤包括:
选择样本数据,对所述样本数据进行正确分词,获得正确的分词结果;
构造所述正确的分词结果中的每个分词的特征;
使用所述特征,训练所述最大熵模型;
其中,所述正确的分词结果包括L个分词,依次为z1至zL,其中第i个分词zi的特征包括:
zi-2,zi-1,zi+1,zi+2,zizi+1,zi+1zi+2,zi-1zi,zi-2zi-1,zi-1zi+1
优选地,所述对所述最大熵模型进行训练的步骤还包括:
常用文本标注,针对所述正确的分词结果中的每个分词,判断其是否存在于所述场景库的主题词典中,将存在于所述场景库的主题词典中的分词标注为常用文本;
常用文本替换,针对所述正确的分词结果,将被标注为常用文本的分词替换为其所在的主题词典的名称;
模型特征构造,针对经过所述常用文本替换的正确的分词结果中的每个分词,构造所述最大熵模型的特征;
其中,经过所述常用文本替换的正确的分词结果包括L个分词,依次为s1至sL,其中第i个分词si的特征包括:
si-2,si-1,si+1,si+2,sisi+1,si+1si+2,si-1si,si-2si-1,si-1si+1
本发明实施例还公开一种中文分词歧义消除***,包括:
初始分词模块,用于对待分词语句进行分词,获得初始分词结果;
分词歧义点提取模块,用于针对所述初始分词结果,提取分词歧义点;
最大熵模型得分计算模块,用于构造包含所述分词歧义点的新分词,并计算所述新分词的最大熵模型得分;
有效分词判断模块,用于根据所述新分词的最大熵模型得分,判断所述新分词是否为有效分词;
修正模块,用于用所述有效分词修正所述初始分词结果。
优选地,所述分词歧义点提取模块包括:
候选词构造子模块,用于针对所述初始分词结果中的每个词构造候选词;
搜索子模块,用于在场景库中进行搜索,确定所述候选词是否存在于所述场景库中;
提取子模块,提取存在于所述场景库中的候选词的第一个字或最后一个字作为分词歧义点。
优选地,所述待分词语句共包括N个字,依次为z1至zN,所述初始分词结果共包括M个词,依次为c1至cM,所述初始分词结果中的第i个词ci的最后一个字为zj,所述第i个词ci的候选词包括:
cizj+1
cizj+1zj+2
……
cizj+1zj+2……zN
其中,M、N、i、j均为大于零的整数,且M≤N,i<M,j<N。
优选地,所述场景库用于存储与应用场景相关联的词,包括至少一个主题词典。
优选地,所述构造包含所述分词歧义点的新分词通过以下三种方式的至少其中之一来实现:
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字与所述分词歧义点组合,构造所述新分词;
在所述待分词语句中,将所述分词歧义点与从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词;
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字、所述分词歧义点、以及从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词。
优选地,所述中文分词歧义消除***还包括最大熵模型训练模块,用于对所述最大熵模型进行训练。
优选地,所述最大熵模型训练模块包括:
样本数据分词模块,用于选择样本数据,对所述样本数据进行正确分词,获得正确的分词结果;
分词特征构造模块,用于构造所述正确的分词结果中的每个分词的特征;
最大熵模型训练模块,用于使用所述特征,训练所述最大熵模型;
其中,所述正确的分词结果包括L个分词,依次为z1至zL,其中第i个分词zi的特征包括:
zi-2,zi-1,zi+1,zi+2,zizi+1,zi+1zi+2,zi-1zi,zi-2zi-1,zi-1zi+1
优选地,所述最大熵模型训练模块还包括:
常用文本标注模块,用于针对所述正确的分词结果中的每个分词,判断其是否存在于所述场景库的主题词典中,将存在于所述场景库的主题词典中的分词标注为常用文本;
常用文本替换模块,用于针对所述正确的分词结果,将被标注为常用文本的分词替换为其所在的主题词典的名称;
模型特征构造模块,用于针对经过所述常用文本替换的正确的分词结果中的每个分词,构造所述最大熵模型的特征;
其中,经过所述常用文本替换的正确的分词结果包括L个分词,依次为s1至sL,其中第i个分词si的特征包括:
si-2,si-1,si+1,si+2,sisi+1,si+1si+2,si-1si,si-2si-1,si-1si+1
与现有技术相比,本发明实施例包括以下优点:
根据应用场景构建场景库,包括针对应用场景选择若干主题,每个主题构建一个主题词典,存储与主题相关联的词。在实际应用过程中,可随时在场景库中增加新词,充实场景库,不断提高方法的精度。
基于样本数据的正确分词结果构造样本数据的正确分词的特征,根据这些特征对最大熵模型进行训练,此外,通过常用文本标注和常用文本替换,构造最大熵模型的特征,训练最大熵模型,从而克服了现有技术中需要大量训练语料数据和歧义语料库的缺点,分词效果达到实用的精度。
实施例的方法各个步骤相互独立,步骤之间的接口通常保持不变,便于随时充实更新模型库、语料库。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显。
图1示出了根据示例性实施例的中文分词歧义消除方法的流程图;
图2示出了根据示例性实施例的中文分词歧义消除***的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1示出了根据示例性实施例的中文分词歧义消除方法的流程图,其具体包括以下步骤:
步骤101:对待分词语句进行分词,获得初始分词结果
众所周知,英文是以词为单位的,词和词之间靠空格隔开,而中文是以字为单位,句子中所有的字连起来才能描述完整的意思。中文分词将汉字序列切分成词序列,其是中文自然语言处理的基础。分词模块,顾名思义,是用于执行中文分词的模块。目前常用的中文分词模块主要有LTP分词模块、CSW中文智能分词模块、ICTCLAS分词模块等等。
在示例性实施例中,可以根据实际需要,利用适当的现有分词模块对待分词语句进行分词,获得初始分词结果。
例如,利用LTP分词模块对待分词语句“请唱首韩语儿歌”进行分词,获得的初始分词结果如下:
请/唱/首/韩/语儿/歌
该语句被分为六个单独的词,很明显,这个初始分词结果存在歧义,其中的“韩语”和“儿歌”两个词被不当拆分了,造成分词结果与这句话要表达的本来意思不相符。这就是本发明需要解决的问题。
步骤102:针对初始分词结果,提取分词歧义点
在本步骤中,对初始分词结果进行检测,以识别歧义点。在示例性实施例中,针对初始分词结果中的每个词构造候选词,检测候选词是否存在于场景库中,如果是,则该候选词的第一个字和最后一个字就是分词歧义点,否则该候选词中不存在分词歧义点。
场景库用于存储与应用场景相关联的词,其可以是预先构建的。在示例性实施例中,可针对不同的应用场景选择若干主题来构建场景库,每个主题形成一个主题词典,场景库可包括若干个主题词典。例如针对儿童闲聊场景,可以选择如下主题分别形成主题词典,来构建场景库:诗人、诗歌、歌曲、歌手、关系、音乐风格、语言、热点词、故事、全国城市名及公交站名等。
可以不断在场景库中增加新的词语,例如,在初始的场景库中,诗人主题词典中不包含“李白”,因此在第一次检测时不能在场景库中搜索到“李白”。如果在后续的分词分析中判断“李白”是诗人,那么可将“李白”一词添加到场景库的诗人主题词典里。在优选方式下,可以实时地在场景库中增加新词。
以下详细描述步骤102所包含的子步骤:
子步骤201:针对初始分词结果中的每个词构造候选词
构造候选词的方法具体如下:
如果待分词语句共包括N个字,依次为z1至zN,待分词语句的初始分词结果共包括M个词,依次为c1至cM,那么对于初始分词结果中的第i个词ci,其最后一个字为zj,则第i个词ci的候选词包括:
cizj+1
cizj+1zj+2
……
cizj+1zj+2……zN
其中,M、N、i、j均为大于零的整数,且M≤N,i<M,j<N。
例如,在步骤101提到的示例中,对于初始分词结果中的第1个词“请”,按照以上方法将其与后续的每个字分别进行合并,构造出如下候选词:
请唱、请唱首、请唱首韩、请唱首韩语、请唱首韩语儿、请唱首韩语儿歌。
对于初始分词结果中的第2个词“唱”,按照以上方法将其与后续的每个字分别进行合并,构造出如下候选词:
唱首、唱首韩、唱首韩语、唱首韩语儿、唱首韩语儿歌。
类似地,对于初始分词结果中的每个词进行上述处理,最终得到的所有候选词如下:
请唱、请唱首、请唱首韩、请唱首韩语、请唱首韩语儿、请唱首韩语儿歌、唱首、唱首韩、唱首韩语、唱首韩语儿、唱首韩语儿歌、首韩、首韩语、首韩语儿、首韩语儿歌、韩语、韩语儿、韩语儿歌、语儿歌、儿歌。
子步骤202:在场景库中进行搜索,确定候选词是否存在于场景库中
针对子步骤201中获得的候选词,在场景库中进行搜索。例如,可以采用现有的字符匹配方法在场景库中搜索候选词。
例如,针对子步骤201中获得的20个候选词,分别在预先构建的场景库中进行搜索。而且,可以在场景库的所有主题词典中进行搜索。
子步骤203:提取存在于场景库中的候选词的第一个字或最后一个字作为分词歧义点
如果能够在场景库中搜索到某个候选词,那么说明在通过分词模块进行分词时,这个候选词处可能存在歧义。因此,提取这个候选词的第一个字或最后一个字作为分词歧义点。
例如在以上示例中,在场景库中搜索到了候选词“韩语”和“儿歌”,那么提取候选词“韩语”的最后一个字“语”和候选词“儿歌”的第一个字“儿”作为分词歧义点。当然,也可以提取候选词“韩语”的第一个字“韩”和候选词“儿歌”的最后一个字“歌”作为分词歧义点,经过后续步骤的处理后,所得到的结果是相同的。
步骤103:构造包含分词歧义点的新分词,并计算新分词的最大熵模型得分
由于在分词歧义点处可能存在分词歧义,因此构造包含分词歧义点的新分词,利用最大熵模型,计算这些新分词的最大熵模型得分,以进一步进行后续处理。
可以通过以下三种方式构造新分词:
(1)在待分词语句中,将从前方紧邻分词歧义点的至少一个字与分词歧义点组合,构造新分词;
(2)在待分词语句中,将分词歧义点与从后方紧邻分词歧义点的至少一个字组合,构造新分词;
(3)在待分词语句中,将从前方紧邻分词歧义点的至少一个字、分词歧义点、以及从后方紧邻分词歧义点的至少一个字组合,构造新分词。
可以根据实际需要来确定在分词歧义点的前方和后方与分词歧义点进行组合以构成新分词的字的字数。例如,可以将从前方紧邻分词歧义点的两个字与分词歧义点组合,构造三个字的新分词,可以将分词歧义点与从后方紧邻分词歧义点的两个字组合,构造三个字的新分词,以及可以将从前方紧邻分词歧义点的一个字、分词歧义点、以及从后方紧邻分词歧义点的一个字组合,构造三三个字的新分词。
例如,在步骤102提到的示例中,已经提取“语”和“儿”作为分词歧义点,那么根据以上描述,在待分词语句中,将从前方紧邻分词歧义点的一个字与分词歧义点组合,并将分词歧义点与从后方紧邻分词歧义点的一个字组合,构造以下新分词:
韩语、语儿、儿歌
构造新分词之后,可以利用最大熵模型,计算这些新分词的最大熵模型得分。
最大熵模型是一种机器学习方法,在自然语言处理的许多领域(如词性标注、中文分词、句子边界识别、浅层句法分析及文本分类等)都有比较好的应用效果。根据最大熵原则,当根据不完整的信息作为依据进行推断时,应该由满足分布限制条件的具有最大熵的概率分布推得。或者说,对随机事件的所有相容的预测中,熵最大的预测出现的概率占绝对优势。
在示例性实施例中,利用最大熵模型计算新分词的最大熵模型得分,可以评价在给定的最大熵模型下,新分词出现的概率。
在上述实例中,已经确定三个新分词“韩语”、“语儿”、“儿歌”,计算三个新分词的最大熵模型得分:“韩语”的得分是0.995762,“儿歌”的得分是0.99997,“语儿”的得分是0.957226。得分越高的新分词,越可能是正确的分词结果。
在使用最大熵模型之前,优选地要对最大熵模型进行训练,以使模型能够正确反映常用词语出现的概率。在优选实施例中,可以按照以下步骤对最大熵模型进行训练:
子步骤301:选择样本数据,对样本数据进行正确分词,获得正确的分词结果
在实际应用中,可以根据本方法可能应用的场景,选择适当的样本数据对最大熵模型进行训练。例如,当本方法将应用于儿童闲聊场景时,可以选择与诗人、诗歌、歌曲、歌手、关系、音乐风格、语言、热点词、故事相关的样本数据。样本数据可以是从日常场景中获取的语句。
选择样本数据之后,可以通过人工或其他方式对样本数据进行正确分词,获得正确的分词结果。正确的分词结果是最大熵模型训练的目标,换言之,最大熵模型训练的目标就是对于正确的分词结果能够输出最大的概率值。
子步骤302:构造样本数据的正确的分词结果中的每个分词的特征
在获得样本数据的正确的分词结果之后,构造正确的分词结果中的每个分词的特征。
按照以下方式构造一个分词的特征:如果样本数据的正确的分词结果包括L个分词,依次为z1至zL,那么正确的分词结果中的第i个分词zi的特征包括:
zi-2,zi-1,zi+1,zi+2,zizi+1,zi+1zi+2,zi-1zi,zi-2zi-1,zi-1zi+1
例如,对于样本数据“请唱首韩语儿歌”,正确的分词结果是:
请/唱/首/韩语/儿歌
对于正确分词结果中的分词“首”,其特征包括:
请、唱、韩语、儿歌、请唱、唱首、首韩语、韩语儿歌、唱韩语。
子步骤303:使用每个分词的特征,训练最大熵模型
在子步骤302中构造了正确的分词结果中每个分词的特征,使用这些构造好的特征,训练最大熵模型。例如,可以采用L-BFGS算法训练最大熵模型。训练的目的是使正确分词的特征概率值最大,越接近正确分词的特征概率值越大。
如果一个特征没有出现在最大熵模型中,那么在最大熵模型中对该特征赋予平均概率值。
在执行子步骤303之后,为了达到更好的训练效果,可以继续执行以下子步骤304至306,对最大熵模型继续进行训练。
子步骤304:常用文本标注
常用文本是在某一应用场景下经常出现的词,其存于场景库的主题词典中。在该步骤中,对常用文本进行标注,具体方式是:针对正确的分词结果中的每个分词,判断其是否存在于场景库的主题词典中,将存在于场景库的主题词典中的分词标注为常用文本。
可以通过在场景库的主题词典中进行搜索,来判断某个分词是否存在于场景库的主题词典中。
例如,对于样本数据:“请来一首张学友的恶狼传说”
正确的分词结果如下:
请/来/一/首/张学友/的/恶狼传说
根据上述分词结果在场景库中进行搜索,将分别在歌手主题词典和歌曲主题词典中搜索到的分词“张学友”、“恶狼传说”标注为常用文本。
子步骤305:常用文本替换
在完成常用文本标注后,针对正确的分词结果,将被标注为常用文本的分词替换为其所在的主题词典的名称。
前文提到,预先构建的场景库可包括多个主题词典,例如诗人主题词典、诗歌主题词典、歌手主题词典等。在该步骤中,对于正确的分词结果中被标注为常用文本的分词,将其替换成其所在的主题词典的名称。
例如,对于正确的分词结果“请/给/我/朗诵/一首/李白/的/静夜思”,被标注为常用文本的分词“李白”存在于诗人主题词典中,“静夜思”存在于诗歌主题词典中,因此直接用“诗人”和“诗歌”替换“李白”和“静夜思”。
经过替换后,正确的分词结果变为:
请/给/我/朗诵/一首/诗人/的/诗歌。
最大熵模型的训练目的在于搜集语句模式,搜集的语句模式越全,模型就越准确。通过上述替换,能够扩展样本数据的语句模式,从而在训练样本数据较少的情况下,汇总出相对全的语句模式,避免由于样本数据的语句模式不足,而导致模型训练结果不佳,进而做出错误的判断。
例如,对于上述分词结果“请/给/我/朗诵/一首/李白/的/静夜思”,经过替换之后变为“请/给/我/朗诵/一首/诗人/的/诗歌”。对于诗人,他们出现的语句模式基本上是相同的,也就是说,在出现“李白”的语句模式中,同样也可能出现“杜甫”或其他诗人。因此替换后的样本数据“请给我朗诵一首诗人的诗歌”的语句模式可以应用到所有诗人上,从而弥补样本数据的语句模式不足可能带来的问题。
子步骤306:模型特征构造
对于在子步骤305中经过常用文本替换的正确的分词结果,针对其中的每个分词,构造最大熵模型的特征。
按照以下方式构造最大熵模型的特征:经过常用文本替换的正确的分词结果包括L个分词,依次为s1至sL,正确的分词结果中的第i个分词si的特征包括:
si-2,si-1,si+1,si+2,sisi+1,si+1si+2,si-1si,si-2si-1,si-1si+1
例如,对于经过子步骤305处理的分词结果“请/给/我/朗诵/一首/诗人/的/诗歌”,对于分词“诗人”,其前面第二个词是“一”,其前面第一个词是“首”,其后面第一个词是“的”,其后面第二个词是“诗歌”。那么对于当前词“诗人”,构造的最大熵模型的特征包括:
朗诵、一首、的、诗歌、朗诵一首、一首诗人、诗人的、的诗歌、一首的
通过上述子步骤304至306,进一步扩大和补充了最大熵模型的特征。可以利用上述构造的特征,对最大熵模型进行训练。
步骤104:根据新分词的最大熵模型得分,判断新分词是否为有效分词
由于最大熵模型得分反映了新分词在模型训练的样本数据中出现的概率,因此在计算所有新分词的最大熵模型得分之后,可根据一个新分词的得分判断其是否为有效分词,进而确定其是否可用于后续的修正步骤。
一种有效的方法是根据新分词的最大熵模型得分对所有新分词进行排序,例如可以按照得分从高到低的顺序对所有新分词进行排序。根据排序结果,确定排序靠前的至少一个新分词为有效分词,例如可以选择排在前3名或者前2名的新分词作为有效分词。
例如,在步骤103所提到的示例中,构造了以下新分词:
韩语、语儿、儿歌
将这三个新分词按照最大熵模型得分从高到低的顺序进行排序,结果是:
儿歌、韩语、语儿
选择排在前2名的新分词“韩语”和“儿歌”作为有效分词。
当构造的新分词数量较多时,可以适当选择更多的新分词作为有效分词。
步骤105:用有效分词修正初始分词结果
修正初始分词结果,将有效分词划分在一起,获得消除歧义后的分词结果。
例如,对于待分词语句“请唱首韩语儿歌”,其初始分词结果如下:
请/唱/首/韩/语儿/歌
用步骤104获得的有效分词“韩语”和“儿歌”对初始分词结果进行修正,将有效分词划分在一起,获得消除歧义后的分词结果如下:
请/唱/首/韩语/儿歌
应用示例
以下参考一个应用示例简要说明本发明的中文分词歧义消除方法的流程和效果。在该示例中,应用根据示例性实施例的中文分词歧义消除方法处理语句“早上好用英语怎么说”。
首先,通过LTP分词模块对语句进行分词,获得初始分词结果:
早上/好用/英语/怎么/说
然后,在场景库中进行搜索,可以搜索到“早上好”和“怎么说”,从而提取分词歧义点“好”和“说”。
接下来,构造包含分词歧义点的三个字的新分词,包括:早上好、上好用、好用英、怎么说,在训练好的最大熵模型上计算这些新分词的得分。
对这些新分词的得分进行排序,“早上好”和“怎么说”的得分排序靠前,确定这两个新分词是有效分词。
最后,用这两个有效分词修正初始分词结果,得到消除歧义的分词结果:
早上好/用/英语/怎么说
新的分词结果更能体现这句话实际要表达的含义,消除了原始分词结果中的歧义。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参考图2,示出了根据示例性实施例的中文分词歧义消除***的结构框图,具体包括以下模块:
初始分词模块2101,用于对待分词语句进行分词,获得初始分词结果;
分词歧义点提取模块2102,用于针对初始分词结果,提取分词歧义点;
最大熵模型得分计算模块2103,用于构造包含分词歧义点的新分词,并计算新分词的最大熵模型得分;
有效分词判断模块2104,用于根据新分词的最大熵模型得分,判断新分词是否为有效分词;
修正模块2105,用于用有效分词修正初始分词结果。
在本发明的一种优选实施例中,分词歧义点提取模块2102可以包括:
候选词构造子模块,用于针对初始分词结果中的每个词构造候选词;
搜索子模块,用于在场景库中进行搜索,确定候选词是否存在于场景库中;
提取子模块,提取存在于场景库中的候选词的第一个字或最后一个字作为分词歧义点。
在本发明的一种优选实施例中,待分词语句共包括N个字,依次为z1至zN,初始分词结果共包括M个词,依次为c1至cM,初始分词结果中的第i个词ci的最后一个字为zj,第i个词ci的候选词包括:
cizj+1
cizj+1zj+2
……
cizj+1zj+2……zN
其中,M、N、i、j均为大于零的整数,且M≤N,i<M,j<N。
在本发明的一种优选实施例中,场景库用于存储与应用场景相关联的词,包括至少一个主题词典。
在本发明的一种优选实施例中,构造包含分词歧义点的新分词通过以下三种方式的至少其中之一来实现:
在待分词语句中,将从前方紧邻分词歧义点的至少一个字与分词歧义点组合,构造新分词;
在待分词语句中,将分词歧义点与从后方紧邻分词歧义点的至少一个字组合,构造新分词;
在待分词语句中,将从前方紧邻分词歧义点的至少一个字、分词歧义点、以及从后方紧邻分词歧义点的至少一个字组合,构造新分词。
在本发明的一种优选实施例中,中文分词歧义消除***还包括最大熵模型训练模块,用于对最大熵模型进行训练。
在本发明的一种优选实施例中,最大熵模型训练模块包括:
样本数据分词模块,用于选择样本数据,对样本数据进行正确分词,获得正确的分词结果;
分词特征构造模块,用于构造所述正确的分词结果中的每个分词的特征;
最大熵模型训练模块,用于使用所述特征,训练所述最大熵模型;
其中,所述正确的分词结果包括L个分词,依次为z1至zL,其中第i个分词zi的特征包括:
zi-2,zi-1,zi+1,zi+2,zizi+1,zi+1zi+2,zi-1zi,zi-2zi-1,zi-1zi+1
在本发明的一种优选实施例中,最大熵模型训练模块还包括:
常用文本标注模块,用于针对所述正确的分词结果中的每个分词,判断其是否存在于所述场景库的主题词典中,将存在于所述场景库的主题词典中的分词标注为常用文本;
常用文本替换模块,用于针对所述正确的分词结果,将被标注为常用文本的分词替换为其所在的主题词典的名称;
模型特征构造模块,用于针对经过所述常用文本替换的正确的分词结果中的每个分词,构造所述最大熵模型的特征;
其中,经过所述常用文本替换的正确的分词结果包括L个分词,依次为s1至sL,其中第i个分词si的特征包括:
si-2,si-1,si+1,si+2,sisi+1,si+1si+2,si-1si,si-2si-1,si-1si+1
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种中文分词歧义消除方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (14)

1.一种中文分词歧义消除方法,其特征在于,包括:
对待分词语句进行分词,获得初始分词结果;
针对所述初始分词结果,提取分词歧义点;
构造包含所述分词歧义点的新分词,并计算所述新分词的最大熵模型得分;
根据所述新分词的最大熵模型得分,判断所述新分词是否为有效分词;
用所述有效分词修正所述初始分词结果;
所述提取分词歧义点的步骤包括:
针对所述初始分词结果中的每个词构造候选词;
在场景库中进行搜索,确定所述候选词是否存在于所述场景库中;
提取存在于所述场景库中的候选词的第一个字或最后一个字作为分词歧义点。
2.根据权利要求1所述的中文分词歧义消除方法,其特征在于,所述待分词语句共包括N个字,依次为z1至zN,所述初始分词结果共包括M个词,依次为c1至cM,所述初始分词结果中的第i个词ci的最后一个字为zj,所述第i个词ci的候选词包括:
cizj+1
cizj+1zj+2
……
cizj+1zj+2……zN
其中,M、N、i、j均为大于零的整数,且M≤N,i<M,j<N。
3.根据权利要求1所述的中文分词歧义消除方法,其特征在于,所述场景库用于存储与应用场景相关联的词,包括至少一个主题词典。
4.根据权利要求1所述的中文分词歧义消除方法,其特征在于,所述构造包含所述分词歧义点的新分词通过以下三种方式的至少其中之一来实现:
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字与所述分词歧义点组合,构造所述新分词;
在所述待分词语句中,将所述分词歧义点与从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词;
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字、所述分词歧义点、以及从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词。
5.根据权利要求3所述的中文分词歧义消除方法,其特征在于,还包括对所述最大熵模型进行训练。
6.根据权利要求5所述的中文分词歧义消除方法,其特征在于,所述对所述最大熵模型进行训练的步骤包括:
选择样本数据,对所述样本数据进行正确分词,获得正确的分词结果;
构造所述正确的分词结果中的每个分词的特征;
使用所述特征,训练所述最大熵模型;
其中,所述正确的分词结果包括L个分词,依次为z1至zL,其中第i个分词zi的特征包括:
zi-2,zi-1,zi+1,zi+2,zizi+1,zi+1zi+2,zi-1zi,zi-2zi-1,zi-1zi+1
7.根据权利要求6所述的中文分词歧义消除方法,其特征在于,所述对所述最大熵模型进行训练的步骤还包括:
常用文本标注,针对所述正确的分词结果中的每个分词,判断其是否存在于所述场景库的主题词典中,将存在于所述场景库的主题词典中的分词标注为常用文本;
常用文本替换,针对所述正确的分词结果,将被标注为常用文本的分词替换为其所在的主题词典的名称;
模型特征构造,针对经过所述常用文本替换的正确的分词结果中的每个分词,构造所述最大熵模型的特征;
其中,经过所述常用文本替换的正确的分词结果包括L个分词,依次为s1至sL,其中第i个分词si的特征包括:
si-2,si-1,si+1,si+2,sisi+1,si+1si+2,si-1si,si-2si-1,si-1si+1
8.一种中文分词歧义消除***,其特征在于,包括:
初始分词模块,用于对待分词语句进行分词,获得初始分词结果;
分词歧义点提取模块,用于针对所述初始分词结果,提取分词歧义点;
最大熵模型得分计算模块,用于构造包含所述分词歧义点的新分词,并计算所述新分词的最大熵模型得分;
有效分词判断模块,用于根据所述新分词的最大熵模型得分,判断所述新分词是否为有效分词;
修正模块,用于用所述有效分词修正所述初始分词结果;
所述分词歧义点提取模块包括:
候选词构造子模块,用于针对所述初始分词结果中的每个词构造候选词;
搜索子模块,用于在场景库中进行搜索,确定所述候选词是否存在于所述场景库中;
提取子模块,提取存在于所述场景库中的候选词的第一个字或最后一个字作为分词歧义点。
9.根据权利要求8所述的中文分词歧义消除***,其特征在于,所述待分词语句共包括N个字,依次为z1至zN,所述初始分词结果共包括M个词,依次为c1至cM,所述初始分词结果中的第i个词ci的最后一个字为zj,所述第i个词ci的候选词包括:
cizj+1
cizj+1zj+2
……
cizj+1zj+2……zN
其中,M、N、i、j均为大于零的整数,且M≤N,i<M,j<N。
10.根据权利要求8所述的中文分词歧义消除***,其特征在于,所述场景库用于存储与应用场景相关联的词,包括至少一个主题词典。
11.根据权利要求8所述的中文分词歧义消除***,其特征在于,所述构造包含所述分词歧义点的新分词通过以下三种方式的至少其中之一来实现:
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字与所述分词歧义点组合,构造所述新分词;
在所述待分词语句中,将所述分词歧义点与从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词;
在所述待分词语句中,将从前方紧邻所述分词歧义点的至少一个字、所述分词歧义点、以及从后方紧邻所述分词歧义点的至少一个字组合,构造所述新分词。
12.根据权利要求10所述的中文分词歧义消除***,其特征在于,还包括最大熵模型训练模块,用于对所述最大熵模型进行训练。
13.根据权利要求12所述的中文分词歧义消除***,其特征在于,所述最大熵模型训练模块包括:
样本数据分词模块,用于选择样本数据,对所述样本数据进行正确分词,获得正确的分词结果;
分词特征构造模块,用于构造所述正确的分词结果中的每个分词的特征;
最大熵模型训练模块,用于使用所述特征,训练所述最大熵模型;
其中,所述正确的分词结果包括L个分词,依次为z1至zL,其中第i个分词zi的特征包括:
zi-2,zi-1,zi+1,zi+2,zizi+1,zi+1zi+2,zi-1zi,zi-2zi-1,zi-1zi+1
14.根据权利要求13所述的中文分词歧义消除***,其特征在于,所述最大熵模型训练模块还包括:
常用文本标注模块,用于针对所述正确的分词结果中的每个分词,判断其是否存在于所述场景库的主题词典中,将存在于所述场景库的主题词典中的分词标注为常用文本;
常用文本替换模块,用于针对所述正确的分词结果,将被标注为常用文本的分词替换为其所在的主题词典的名称;
模型特征构造模块,用于针对经过所述常用文本替换的正确的分词结果中的每个分词,构造所述最大熵模型的特征;
其中,经过所述常用文本替换的正确的分词结果包括L个分词,依次为s1至sL,其中第i个分词si的特征包括:
si-2,si-1,si+1,si+2,sisi+1,si+1si+2,si-1si,si-2si-1,si-1si+1
CN201610596761.7A 2016-07-26 2016-07-26 中文分词歧义消除方法和*** Active CN106227719B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610596761.7A CN106227719B (zh) 2016-07-26 2016-07-26 中文分词歧义消除方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610596761.7A CN106227719B (zh) 2016-07-26 2016-07-26 中文分词歧义消除方法和***

Publications (2)

Publication Number Publication Date
CN106227719A CN106227719A (zh) 2016-12-14
CN106227719B true CN106227719B (zh) 2018-10-23

Family

ID=57533694

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610596761.7A Active CN106227719B (zh) 2016-07-26 2016-07-26 中文分词歧义消除方法和***

Country Status (1)

Country Link
CN (1) CN106227719B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106910501B (zh) 2017-02-27 2019-03-01 腾讯科技(深圳)有限公司 文本实体提取方法及装置
CN106951413A (zh) * 2017-03-24 2017-07-14 北京百度网讯科技有限公司 基于人工智能的分词方法及装置
CN107247613A (zh) * 2017-04-25 2017-10-13 北京航天飞行控制中心 语句解析方法及语句解析装置
CN107291692B (zh) * 2017-06-14 2020-12-18 北京百度网讯科技有限公司 基于人工智能的分词模型的定制方法、装置、设备和介质
CN107391574B (zh) * 2017-06-19 2020-10-16 福建工程学院 一种基于本体和群智能算法的中文歧义切分方法
CN113449510B (zh) * 2021-06-28 2022-12-27 平安科技(深圳)有限公司 文本识别方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101950284A (zh) * 2010-09-27 2011-01-19 北京新媒传信科技有限公司 中文分词方法及***
CN104063502A (zh) * 2014-07-08 2014-09-24 中南大学 一种基于语义模型的wsdl半结构化文档相似性分析及分类方法
CN105740412A (zh) * 2016-01-29 2016-07-06 昆明理工大学 一种基于最大熵的越南语交叉歧义消岐方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102479191B (zh) * 2010-11-22 2014-03-26 阿里巴巴集团控股有限公司 提供多粒度分词结果的方法及其装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101950284A (zh) * 2010-09-27 2011-01-19 北京新媒传信科技有限公司 中文分词方法及***
CN104063502A (zh) * 2014-07-08 2014-09-24 中南大学 一种基于语义模型的wsdl半结构化文档相似性分析及分类方法
CN105740412A (zh) * 2016-01-29 2016-07-06 昆明理工大学 一种基于最大熵的越南语交叉歧义消岐方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于最大熵模型的汉语词义消歧与标注方法;张仰森;《计算机工程》;20090930;第35卷(第18期);第1-5节 *
基于最大熵算法的全文检索研究;张立岩 等;《河北科技大学学报》;20090630;第30卷(第2期);全文 *

Also Published As

Publication number Publication date
CN106227719A (zh) 2016-12-14

Similar Documents

Publication Publication Date Title
CN106227719B (zh) 中文分词歧义消除方法和***
CN108804530B (zh) 对图像的区域加字幕
Gomez et al. Icdar2017 robust reading challenge on coco-text
CN108268539A (zh) 基于文本分析的视频匹配***
CN107608960B (zh) 一种命名实体链接的方法和装置
CN107247751B (zh) 基于lda主题模型的内容推荐方法
CN106202056B (zh) 中文分词场景库更新方法和***
CN110222328B (zh) 基于神经网络的分词和词类标注方法、装置、设备及存储介质
CN109977220B (zh) 一种基于关键句和关键字的反向生成摘要的方法
KR20150037924A (ko) 제품 인식에 근거한 정보 분류 기법
Ali et al. Genetic approach for Arabic part of speech tagging
CN112149386A (zh) 一种事件抽取方法、存储介质及服务器
CN112966117A (zh) 实体链接方法
CN112613321A (zh) 一种抽取文本中实体属性信息的方法及***
Deb et al. Variational stacked local attention networks for diverse video captioning
CN116450829A (zh) 医疗文本分类方法、装置、设备及介质
CN116737922A (zh) 一种游客在线评论细粒度情感分析方法和***
CN106970909A (zh) 一种二次匹配语义的语义分析方法
CN114912425A (zh) 演示文稿生成方法及装置
Long et al. Icdar 2023 competition on hierarchical text detection and recognition
CN116524513B (zh) 开放词表场景图生成方法、***、设备及存储介质
CN116186310B (zh) 一种融合ai通用助手的ar空间标注及展示方法
CN108241609B (zh) 排比句识别方法及***
AlMousa et al. Nlp-enriched automatic video segmentation
CN113220825B (zh) 面向个人推文的话题情感倾向性预测模型的建模方法及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 508-598, Xitian Gezhuang Town Government Office Building, No. 8 Xitong Road, Miyun County Economic Development Zone, Beijing 101500

Patentee after: Beijing Rubo Technology Co., Ltd.

Address before: Room 508-598, Xitian Gezhuang Town Government Office Building, No. 8 Xitong Road, Miyun County Economic Development Zone, Beijing 101500

Patentee before: BEIJING INTELLIGENT HOUSEKEEPER TECHNOLOGY CO., LTD.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210819

Address after: 301-112, floor 3, building 2, No. 18, YANGFANGDIAN Road, Haidian District, Beijing 100038

Patentee after: Beijing Rubu Technology Co.,Ltd.

Address before: Room 508-598, Xitian Gezhuang Town Government Office Building, No. 8 Xitong Road, Miyun County Economic Development Zone, Beijing 101500

Patentee before: BEIJING ROOBO TECHNOLOGY Co.,Ltd.