CN109829162A - 一种文本分词方法及装置 - Google Patents

一种文本分词方法及装置 Download PDF

Info

Publication number
CN109829162A
CN109829162A CN201910094380.2A CN201910094380A CN109829162A CN 109829162 A CN109829162 A CN 109829162A CN 201910094380 A CN201910094380 A CN 201910094380A CN 109829162 A CN109829162 A CN 109829162A
Authority
CN
China
Prior art keywords
label
character
character string
participle
dictionary
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.)
Granted
Application number
CN201910094380.2A
Other languages
English (en)
Other versions
CN109829162B (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.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies 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 New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN201910094380.2A priority Critical patent/CN109829162B/zh
Publication of CN109829162A publication Critical patent/CN109829162A/zh
Application granted granted Critical
Publication of CN109829162B publication Critical patent/CN109829162B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Machine Translation (AREA)

Abstract

本申请提供了一种文本分词方法及装置,其中,该方法包括:将待分词文本转换为字符序列;将字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与标准词匹配的匹配字符串,为字符序列中匹配字符串的每个字符和除匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列;确定字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列;根据字符序列、词典标签序列以及预先训练的条件概率预测模型,确定字符序列被标记为每种分词标签序列的条件概率;将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于目标分词标签序列对待分词文本进行分词处理。

Description

一种文本分词方法及装置
技术领域
本申请涉及大数据技术领域,具体而言,涉及一种文本分词方法及装置。
背景技术
在自然语言处理技术中,分词技术是其他语言处理的基础,分词的准确性对其它语言处理来说十分重要。目前,在对文本进行分析处理时,针对包含有非结构化数据的文本,在进行分词处理时具有一定的难度。
以电子病历为例,由于电子病历中包含很多非结构化数据,例如病史记录、病程记录以及病历小结等,对这类非结构化数据进行自动分词是对电子病历分析和挖掘的最基础同时也是非常艰巨的一个任务。
由此可见,目前亟需一种能够快速且准确地对包含有非结构化数据的文本进行分词的技术方案。
发明内容
有鉴于此,本申请的目的在于提供一种文本分词方法及装置,可以快速且准确地对包含有非结构化数据的文本进行分词。
第一方面,本申请提供一种文本分词方法,包括:
将所述待分词文本转换为字符序列;
将所述字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与所述标准词匹配的匹配字符串,为所述字符序列中匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列;
确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列;
根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率;
将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于所述目标分词标签序列对所述待分词文本进行分词处理。
第二方面,本申请提供一种文本分词装置,包括:
转换模块,用于将所述待分词文本转换为字符序列;
第一确定模块,用于将所述字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与所述标准词匹配的匹配字符串,为所述字符序列中匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列;
第二确定模块,用于确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列;
条件概率预测模块,用于根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率;
分词处理模块,用于将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于所述目标分词标签序列对所述待分词文本进行分词处理。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面的任一种可能的实施方式中文本分词方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面的任一种可能的实施方式中文本分词方法的步骤。
本申请提供了一种文本分词方法及装置,首先可以将待分词文本转换为字符序列,之后可以将字符序列中满足预设长度的字符串与预先构建的词典中的标准词匹配,基于匹配结果可以得到词典标签序列,还可以通过确定字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列。进一步地,可以将词典标签序列和字符序列作为模型的输入,利用条件概率预测模型预测字符序列被标记为每种分词标签序列时的条件概率,后续便基于得到的条件概率确定出目标分词标签序列,并基于目标分词标签序列对待分词文本进行分词处理。
上述方式中包括基于词典匹配以及基于条件概率预测模型预测这两个分词预测过程,通过结合上述两个分词预测过程,一方面,将经词典匹配得到的词典标签序列作为基于条件概率预测模型预测时的参考因素,可以使得最终经过条件概率预测模型预测出的分词结果的准确度较高,提升预测分词结果的准确率;另一方面,引入条件概率预测模型,在给定待分词文本对应的字符序列、以及词典标签序列的情况下,预测字符序列被标记为某种分词标签序列时的条件概率,这样可以直接得到字符序列对应的分词标签序列,也即可以经过一次预测过程得到待识别文本中全部字符分别对应的分词标签,由此也可以提高文本分词的效率。
为使本申请的上述目的、特征和优点能更明显易懂,下文结合具体实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的文本分词方法的流程示意图;
图2示出了本申请实施例提供的基于正向最大匹配算法对待分词文本进行匹配的流程示意图;
图3示出了本申请实施例提供的基于逆向最大匹配算法对待分词文本进行匹配的流程示意图;
图4示出了本申请实施例提供的预测字符序列被标记的分词标签序列的流程示意图;
图5示出了本申请实施例提供的条件概率预测模型的训练过程的流程示意图;
图6示出了本申请实施例提供的一种文本分词装置的结构示意图;
图7示出了本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,在对包含有非结构化数据的文本进行分词时,如果采用基于有监督学习的分词方法,则需要构建携带有人工标注的分词标签的样本语料作为训练集,然后借助训练集中的样本语料来训练得到分词预测模型,以便预测文本的分词结果。由于训练集中样本语料的规模庞大,采用有监督学习的分词方法需要耗费大量人力去标注样本语料的分词标签,人力成本较高、且构建较为全面的训练集的难度较大、构建效率较低。然而,如果采用基于无监督学习的分词方法来确定文本的分词结果,相对有监督学习的分词方法来说,又会存在分词结果的准确率较低的问题。
针对上述问题,本申请提供了一种文本分词方法及装置。参照图1所示,为本申请实施例提供的文本分词方法的流程示意图,包括如下步骤:
步骤101、将待分词文本转换为字符序列。
步骤102、将字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与标准词匹配的匹配字符串,为字符序列中匹配字符串的每个字符和除匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列。
步骤103、确定字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列。
步骤104、根据字符序列、词典标签序列以及预先训练的条件概率预测模型,确定字符序列被标记为每种分词标签序列的条件概率。
步骤105、将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于目标分词标签序列对待分词文本进行分词处理。
由于待分词文本由多个字符组成,故可以以单个字符为单位,将待分词文本拆分成单独的字符,然后将各个字符依次排列,构成字符序列。通过将待分词文本转换为字符序列,那么对待分词文本进行分词的过程,可以转换为预测字符序列中每个字符对应的分词标签的过程,由于每个字符对应的分词标签可能有多种,故通过确定出每个字符对应的目标分词标签,便可以对待分词文本进行分词。
基于此,本申请实施例中提出,可以直接利用条件概率预测模型来预测出整个字符序列对应的目标分词标签序列,这样能够经过一次预测过程得到字符序列中全部字符分别对应的目标分词标签,从而能够提高文本分词的效率。并且,为了提升预测目标分词标签的准确率,可以在利用条件概率预测模型来预测字符序列的目标分词标签序列之前,先将字符序列中包含的满足预设长度的字符分别与预先构建的词典中的标准词进行匹配,并基于匹配结果得到词典标签序列,后续可以将词典标签序列作为参考因素,同字符序列一起输入至条件概率预测模型中,以得到更为准确的预测结果。
下面,对基于词典的匹配流程和基于条件概率预测模型的预测流程进行详细说明。
实施流程一、基于词典的匹配流程
需要理解的是,基于词典的匹配流程既可以应用在对条件概率预测模型进行训练的过程中,以生成样本集合中样本字符序列对应的样本词典标签序列,也可以应用在基于训练得到的条件概率预测模型预测分词标签序列的过程中,以生成待分词文本对应的词典标签序列。两个流程基于相同的技术构思,故本申请着重介绍生成待分词文本对应的词典标签序列的过程。
本申请实施例中,可以将字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,并基于匹配结果,确定词典标签序列。其中,具体构建词典的过程可以参照现有技术,本申请中不再展开说明。
具体实施中,可以首先将字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与标准词匹配的匹配字符串。进而可以为字符序列中匹配字符串的每个字符和除匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列。
示例性的,匹配过程可以采用正向最大匹配算法、逆向最大匹配算法、或者双向最大匹配算法。其中,所谓双向最大匹配算法可以理解为通过将正向最大匹配算法得到的分词结果和逆向最大匹配算法得到的分词结果进行比较,以确定正确的分词结果的过程。
需要说明的是,满足预设长度的字符串可以是至少包含一个字符的字符串。若应用正向最大匹配算法或逆向最大匹配算法进行词典匹配时,上述满足预设长度的字符串可以是:至少包含一个字符、且包含的字符总数量不超出词典中最长的标准词的字符总数量的字符串。
下面,分别对上述匹配算法进行说明:
(1)、正向最大匹配算法。
参照图2所示,为基于正向最大匹配算法对字符序列进行匹配的流程示意图,包括如下步骤:
步骤201、从字符序列中从前向后依次取a个字符作为待匹配的字符串。
一示例中,a可以取值为词典中最长的标准词的字符总数量。
步骤202、判断词典中是否存在与待匹配的字符串相同的标准词。
若判断结果为是,则执行步骤203;若判断结果为否,则执行步骤204。
步骤203、将待匹配的字符串确定为与标准词匹配的匹配字符串,进而返回步骤201,取下一个长度为a的字符串,直至遍历完字符序列中全部字符。
步骤204、将待匹配的字符串位于最后一位的字符去掉后,将剩下的字符组成新的待匹配的字符串并执行步骤202,直至找出与标准词匹配的匹配字符串返回执行步骤201,取下一个长度为a的字符串;或者,将待匹配的字符串中全部字符去掉后,返回执行步骤201,取下一个长度为a的字符串。
基于上述匹配过程对字符序列进行匹配后,可以得到第一匹配结果,第一匹配结果中记录有字符序列中的匹配字符串、以及除匹配字符串之外的字符。其中,匹配字符串可以由多个字符组成,也可以由单个字符组成,本申请对此并不限定。
(2)、逆向最大匹配算法。
参照图3所示,为基于逆向最大匹配算法对字符序列进行匹配的流程示意图,包括如下步骤:
步骤301、从字符序列中从后向前依次取a个字符作为待匹配的字符串。
其中,a的含义同上述正向最大匹配算法中所述。
步骤302、判断词典中是否存在与待匹配的字符串相同的标准词。
若判断结果为是,则执行步骤303;若判断结果为否,则执行步骤304。
步骤303、将待匹配的字符串确定为与标准词匹配的匹配字符串,进而返回步骤301,取下一个长度为a的字符串,直至遍历完字符序列中全部字符。
步骤304、将待匹配的字符串位于第一位的字符去掉后,将剩下的字符组成新的待匹配的字符串并执行步骤302,直至找出与标准词匹配的匹配字符串,返回执行步骤301,取下一个长度为a的字符串;或者将待匹配的字符串中全部字符去掉后,返回执行步骤301,取下一个长度为a的字符串。
基于上述匹配过程对字符序列进行匹配后,可以得到第二匹配结果,第二匹配结果中记录字符序列中的匹配字符串、以及除匹配字符串之外的字符。其中,匹配字符串可以由多个字符组成,也可以由单个字符组成,本申请对此并不限定。
(3)、双向最大匹配算法。
在基于图2所示和图3所示的匹配流程得到第一匹配结果和第二匹配结果之后,可以对比第一匹配结果和第二匹配结果,从中选择较好的匹配结果作为最终的匹配结果。
如果第一匹配结果和第二匹配结果一致,可以选择任一种匹配结果作为最终的匹配结果。
如果第一匹配结果和第二匹配结果不一致,那么可以比较第一匹配结果和第二匹配结果中匹配字符串的个数、除匹配字符串之外的字符的个数、以及由单个字符的匹配字符串的个数,进而从中选择较好的匹配结果作为最终的匹配结果。例如,可以依据匹配字符串的个数越多越好、除匹配字符串之外的字符的个数越少越好、以及单个字符的匹配字符串的个数越少越好的原则来选择最终的匹配结果。
一种可能的实施方式中,在确定出字符序列中的匹配字符串和除匹配字符串之外的字符之后,可以将字符序列中的每个字符按照如下规则分配词典标签,得到由词典标签组成的词典标签序列:
针对字符序列中任意一个字符,若该字符为匹配字符串中的字符,则为该字符分配第一词典标签,若该字符为除匹配字符串之外的字符,则将为该字符分配第二词典标签。
一示例中,第一词典标签可以用1表示,第二词典标签可以用0表示。当然,实际应用中也可以根据实际需求配置第一词典标签和第二词典标签,例如,第一词典标签用Y表示,第二词典标签用N表示等,本申请对此并不限定。
示例性的,以待分词文本为电子病历为例,电子病历中记载了“双肺未闻及干湿性啰音,未闻及膜胸摩擦音”,假设词典中包括“干湿性啰音”、“摩擦音”,那么“干湿性啰音”、“摩擦音”可以被确定为匹配字符串,进而按照上述实施方式可以生成如表1所示的词典标签序列(表1左侧一列为待分词文本对应的字符序列,第一词典标签用1表示,第二词典标签用0表示):
表1
实施流程二、基于预先训练的条件概率预测模型的预测过程。
本申请实施例中,在预测字符序列被标记的目标分词标签序列之前,首先可以确定出字符序列可能被标记的每种分词标签序列。
一种可能的实施方式中,针对字符序列中每个字符,可以确定每个字符对应的至少一种分词标签,进一步地,可以从每个字符对应的至少一种分词标签中任意选择一种分词标签作为目标分词标签,并将各个字符分别对应的目标分词标签所组成的序列作为一种分词标签序列。
其中,每个字符可能被标记的分词标签有至少一种,具体包括:词语的开始位置的第一标签、词语的中间位置的第二标签、词语的结束位置的第三标签、单字词语的第四标签。一示例中,可以用B(Begin)表示词的开始位置的第一标签,用I(Intermediate)表示词的中间位置的第二标签,用E(End)表示的是词的结束位置的第三标签,用S(single)表示单个字符组成的单字词的第四标签。
其中,针对每个字符,其对应的分词标签有B、I、S、E这4种情况,假设字符序列中包括p个字符,如果将每个字符对应的这4种分词标签中任选一个作为目标分词标签,那么可以生成的分词标签序列为4p种。
本申请实施例中,在确定出多种分词标签序列之后,可以基于字符序列、词典标签序列以及预先训练的条件概率预测模型来预测出字符序列被标记为每种分词标签序列的条件概率。
具体预测过程,参照图4所示:
步骤401、根据字符序列和/或词典标签序列,确定多个特征模板。
步骤402、根据确定的多个特征模板,生成至少一个状态函数和至少一个转移函数。
步骤403、确定在字符序列被标记为每种分词标签序列的情况下各个状态函数的取值和各个转移函数的取值。
步骤404、将每种分词标签序列对应的各个状态函数的取值和各个转移函数的取值输入至预先训练的条件概率预测模型中,分别计算字符序列被标记为每种分词标签序列的条件概率。
为便于对图4所示的预测流程的理解,首先,对根据字符序列和/或词典标签序列确定的多个特征模板进行介绍。
示例性的,特征模板可以包括以下模板中的至少一种:
用于表示所述字符序列中单个字符的字符特征模板;
用于表示所述字符序列中不同字符的关联关系的字符特征模板;
用于表示所述词典标签序列中单个词典标签的词典特征模板;
用于表示所述词典标签序列中不同词典标签之间的关联关系的词典特征模板;
由所述字符特征模板和所述词典特征模板组成的复合特征模板。
以上三种特征模板还可以作为一元模板(Unigram template)或二元模板(Bigramtemplate)。
其中,一元模板可以用于确定状态函数,模板格式例如为Uk:%x[i,j],其中字母U表示模板为一元模板;k表示是模板的序号;x表示由字符序列和词典标签序列组成的二维序列;在本公开中,j表示列的位置,当j=0时,表明是第一列,第一列指二维序列中的字符序列,当j=1时表明是第二列,第二列指二维序列中的词典标签序列;在本公开中,i表示字符序列或词典标签序列中的第i个位置,也即当前位置,当j=0时,x[i,0]表示二维序列中的字符序列中第i个位置的字符,当j=1时,x[i,1]表示二维序列中的词典标签序列中第i个位置的词典标签。
二元模板可以用于确定转移函数,模板格式例如为Bk:%x[i,j],其中字母B表示模板为二元模板;其它参数可参见上述一元模板的说明,这里不再赘述。
示例性的,沿用上述表1中示出的电子病历的字符序列与对应的词典标签序列之间的对应关系,对上述特征模板进行示例性说明。
对于电子病历构成的字符序列“双肺未闻及干湿性啰音,未闻及膜胸摩擦音”,那么,可以生成的特征模板参照表2所示:
表2
其中,表2中所示的U01至U18为一元模板,B01为二元模板。
U01至U05为用于表示字符序列中单个字符的字符特征模板。例如,U01:%x[i-2,0]表示字符序列中第i-2个位置的字符,即在当前位置之前、且与当前位置间隔两个字符的位置的字符;U03:%x[i,0]表示字符序列中第i个位置的字符,即当前位置的字符;U05:%x[i+2,0]表示字符序列中的第i+2个位置的字符,即在当前位置之后、且与当前位置间隔两个字符的位置的字符。
U06至U12为用于表示字符序列中不同字符的关联关系的字符特征模板。例如,U06:%x[i-2,0]/%x[i-1,0]表示字符序列中第i-2个位置的字符、以及字符序列中第i-1个位置的字符;U07:%x[i-1,0]/%x[i,0]表示字符序列中第i-1个位置的字符、以及字符序列中第i个位置的字符。
U13为用于表示词典标签序列中单个词典标签的词典特征模板。例如,U13:%x[i,1]可以表示词典标签序列中第i个位置的词典标签。
U14为由字符特征模板和词典特征模板组成的复合特征模板。U14:%x[i,0]/%x[i,1]可以表示字符序列中第i个位置的字符、以及词典标签序列中第i个位置的词典标签。
U15至U18为用于表示词典标签序列中不同词典标签之间的关联关系的词典特征模板。例如,U15:%x[i-2,1]/%x[i-1,1]表示词典标签序列中第i-2个位置的词典标签、以及词典标签序列中第i-1个位置的词典标签。
B01为二元模板,且B01也可以归属为用于表示字符序列中单个字符的字符特征模板。B01:%x[i,0]可以表示字符序列中第i个位置的字符。当然,实际应用中词典特征模板和复合特征模板也构成二元模板,本申请对此并不限定。
本申请实施例中,一元模板可以生成状态函数s(y,x,i,j),每个一元模板可以生成W*p个状态函数,其中,p表示字符序列中包含的字符个数、还可以表示词典标签序列中包含的词典标签个数,还可以表示分词标签序列中包含的分词标签的个数,字符个数、词典标签个数、分词标签个数三者相同,W表示分词标签的种类,本公开中,W=4,即“B”、“E”、“I”、“S”这4种分词标签。
沿用上述示例,如表1所示,字符序列中包括“双”、“肺”、“未”、“闻”、“及”、“干”、“湿”、“性”、“啰”、“音”、“,”、“膜”、“胸”、“摩”、“擦”、“。”这16个字符,即p=16,分词标签的种类包括“B”、“E”、“I”、“S”这4种,即W=4,因此可以得出每个一元模板可以生成16*4=64个状态函数。
其中,二元模板可以生成转移函数t(y,x,i,j),每个二元模板可以生成W*W*p个状态函数,其中,p、W含义同上。
继续沿用上述示例,如表1所示,可以得出每个二元模板可以生成16*4*4=256个转移函数。
进一步地,在确定出上述各类特征模板之后,可以基于一元模板生成状态函数,还可以基于二元模板生成转移函数,具体实施方式如下:
实施方式一、
由于上述一元模板可以是字符特征模板、词典特征模板和复合特征模板中的一种或多种,故基于上述一元模板生成的状态函数s(y,x,i,j)包括如下几种情况:
首先,假设字符序列包含p个字符,词典标签序列包含p个词典标签,分词标签序列包含p个分词标签,三者相等。
情况1:若特征模板包括字符特征模板,则根据字符特征模板,生成的状态函数s(y,x,i,j)为:
其中,x表示由字符序列和词典标签序列组成的二维序列;j=0时,表示二维序列中的字符序列;xi±d,j=0表示字符序列的第i±d个位置的字符,i取1至p中任意整数,d取0至p-i中的任意正整数;y表示分词标签序列;yi表示分词标签序列y的第i个分词标签;
s(y,x,i,j)在满足字符序列的第i±d个位置的字符为m、且分词标签序列y的第i个分词标签为n1的条件下取值为k1,反之,s(y,x,i,j)取值为k2
情况2:若特征模板包括词典特征模板,则根据词典特征模板,生成的状态函数s(y,x,i,j)为:
其中,j=1时,表示二维序列中的词典标签序列;xi±d,j=1表示词典标签序列的第i±d个位置的字符,i取1至p中任意整数,d取0至p-i中的任意正整数;其他参数含义同上。
s(y,x,i,j)在满足词典标签序列的第i±d个位置的词典标签为h、且分词标签序列y的第i个分词标签为n1的条件下取值为k1,反之,s(y,x,i,j)取值为k2
情况3:若特征模板包括复合特征模板,则根据复合特征模板,生成的状态函数s(y,x,i,j)为:
s(y,x,i,j)在满足字符序列的第i±d个位置的字符为m、词典标签序列的第i±d个位置的词典标签为h、且分词标签序列y的第i个分词标签为n1的条件下取值为k1,反之,s(y,x,i,j)取值为k2
其中,k1例如可以取值为1,k2例如可以取值为0。当然,实际应用中,也可以根据实际情况来配置k1和k2的取值,本申请对此并不限定。
其中,分词标签n1和n2可以是上述B、I、E、S这四种分词标签中的任一种。
为便于理解,下面结合表1和表2的内容,对生成的状态函数s(y,x,i,j)进行举例说明。
示例一、假设字符特征模板为U03:%x[i,0],字符序列中第i个位置的字符指向字符“双”,那么利用U03:%x[i,0],生成的状态函数s(y,x,i,j)为以下四种情况(在本公开实施例中,每个位置的字符对应的分词标签为四种、即B、I、E、S):
针对模板U03:%x[i,0]确定出的上述四个状态函数s1至s4,对于字符序列确定出的多个分词标签序列中的任意一个分词标签序列,需要确定该分词标签序列对应的状态函数的值s1至s4,那么,需要依次遍历字符序列中的每个字符,确定每个字符对应的状态函数的值,假设当前遍历到的字符为“双”,若该分词标签序列中对应字符“双”的分词标签为“B”,上述四个状态函数中的s1取值1,其它状态函数s2至s4取值为0。关于其它特征模板生成的状态函数或转移函数的取值确定方式,也可以参照上述过程,这里不再逐一介绍。
示例二、假设字符特征模板为U04:%x[i+1,0],字符序列中第i+1个位置的字符指向字符“肺”,那么利用U04:%x[i+1,0],生成的状态函数s(y,x,i,j)为以下四种情况:
示例三、假设字符特征模板为U08:%x[i,0]/%x[i+1,0],字符序列中第i个位置的字符指向字符“双”,字符序列中第i+1个位置的字符指向字符“肺”,那么利用U08:%x[i,0]/%x[i+1,0],生成的状态函数s(y,x,i,j)为以下四种情况:
当然,对于一元模板中的其它字符特征模板,也可以参照上述示例一至示例三的方式生成状态函数,具体不再展开说明。
示例四、假设词典特征模板为U13:%x[i,1],词典标签序列中第i个位置的词典标签为0,那么利用U13:%x[i,1],生成的状态函数s(y,x,i,j)为以下四种情况:
示例五、假设词典特征模板为U17:%x[i,1]/%x[i+1,1],词典标签序列中第i个位置的词典标签为0,第i+1个位置的词典标签为0,那么利用U17:%x[i,1]/%x[i+1,1],生成的状态函数s(y,x,i,j)为以下四种情况:
当然,对于一元模板中的其它词典特征模板,也可以参照上述示例四至示例五的方式生成状态函数,具体不再展开说明。
示例六、假设复合特征模板为U14:%x[i,0]/%x[i,1],字符序列中第i个位置的字符指向字符“双”,词典标签序列中第i个位置的词典标签为0,那么利用U14:%x[i,0]/%x[i,1],生成的状态函数s(y,x,i,j)为以下四种情况:
当然,对于一元模板中的其它复合特征模板,也可以参照上述示例六的方式生成状态函数,具体不再展开说明。
实施方式二、
上述二元模板也可以是字符特征模板、词典特征模板和复合特征模板中的一种或多种。基于上述二元模板生成的转移函数包括如下几种情况:
首先,假设字符序列包含p个字符,词典标签序列包含p个词典标签,分词标签序列包含p个分词标签,三者相等。
情况1:若特征模板包括字符特征模板,则根据字符特征模板,生成的转移函数t(y,x,i,j)为:
其中,x表示由字符序列和词典标签序列组成的二维序列;j=0时,表示二维序列中的字符序列;xi±d,j=0表示字符序列的第i±d个位置的字符,i取1至p中任意整数,d取0至p-i中的任意正整数;y表示分词标签序列;yi表示分词标签序列y的第i个分词标签;yi-1表示分词标签序列y的第i-1个分词标签;
t(y,x,i,j)在满足字符序列的第i±d个位置的字符为m、且分词标签序列y的第i个分词标签为n1、分词标签序列y的第i-1个分词标签为n2的条件下取值为k1,反之,t(y,x,i,j)取值为k2
情况2:若特征模板包括词典特征模板,则根据词典特征模板,生成的转移函数t(y,x,i,j)为:
其中,x表示由字符序列和词典标签序列组成的二维序列;j=1时,表示二维序列中的词典标签序列;xi±d,j=1表示词典标签序列的第i±d个位置的词典标签,i取1至p中任意整数,p为字符序列中包含的字符总个数,d取0至p-i中的任意正整数;y表示分词标签序列;yi表示分词标签序列y的第i个分词标签;yi-1表示分词标签序列y的第i-1个分词标签;
t(y,x,i,j)在满足词典标签序列的第i±d个位置的词典标签为h、且分词标签序列y的第i个分词标签为n1、分词标签序列y的第i-1个分词标签为n2的条件下取值为k1,反之,t(y,x,i,j)取值为k2
情况3:若特征模板包括复合特征模板,则根据复合特征模板,生成的转移函数t(y,x,i,j)为:
其中,t(y,x,i,j)在满足字符标签序列的第i±d个位置的字符为m、词典标签序列的第i±d个位置的词典标签为h、且分词标签序列y的第i个分词标签为n1、分词标签序列y的第i-1个分词标签为n2的条件下取值为k1,反之,t(y,x,i,j)取值为k2
为便于理解,下面结合表1和表2的内容,对生成的转移函数t(y,x,i,j)进行举例说明。
假设字符特征模板为B01:%x[i,0],字符序列中第i个位置的字符指向字符“肺”,那么利用B01:%x[i,0],生成的转移函数t(y,x,i,j)包括16种情况,其中,以yi=B这种情况,可生成的四种转移函数t(y,x,i,j)为:
当然,还可以针对yi=I、yi=E、yi=S这三种情况,还可以分别生成四种转移函数t(y,x,i,j),具体不再展开说明。
进一步地,在根据上述方式得到状态函数和转移函数之后,还可以确定在字符序列被标记为每种分词标签序列的情况下各个状态函数的取值和各个转移函数的取值。进而将每种分词标签序列对应的各个状态函数的取值和各个转移函数的取值输入至预先训练的条件概率预测模型中,分别计算字符序列被标记为每种分词标签序列的条件概率。
本申请实施例中,预先训练的条件概率预测模型为条件随机场(conditionalrandom field,CRF)。其中,条件随机场可以理解为给定一组输入随机变量的条件下另一组输出随机变量的条件概率分布模型,模型的假设条件是输出随机变量构成马尔可夫随机场。在应用于对待分词文本进行分词的场景下,输入的随机变量可以为由字符序列和词典标签序列组成的二维序列x,输出的随机变量可以为分词标签序列y。
本申请实施例中对待分词文本进行分词,实际可以转换为预测字符序列被标记为每种分词标签序列的条件概率的问题。其中,预测出的条件概率越大的分词标签序列,说明是正确的分词标签序列的可能性越大。
示例性的,条件随机场的计算公式为:
其中,
在上述公式中,p(y|x)表示由字符序列和词典标签序列组成的二维序列x被标注为分词标签序列y的条件概率;
i表示字符序列或词典标签序列中的第i个位置;
j表示二维序列x的列数,j=0时,表示二维序列x中的字符序列,j=1时,表示二维序列x中的词典标签序列;
p表示字符序列中包含的字符个数、还可以表示词典标签序列中包含的词典标签个数,还可以表示分词标签序列中包含的分词标签的个数;
M为对字符序列x进行分词标注得到的分词标签序列y的数量;
Z(x)是规范化因子;
sl(y,x,i,j)表示第l个状态函数,L表示根据一元模板生成的状态函数的总个数,其中,一元模板可以包括字符特征模板、词典特征模板、复合特征模板中的至少一种,假设一元模板的个数为e1个,那么L=e1*W*p,W为分词标签的种类;
tk(y,x,i,j)表示第k个转移函数,K表示根据二元模板生成的转移函数的总个数,其中,二元模板可以包括字符特征模板、词典特征模板、复合特征模板中的至少一种,假设二元模板的个数为e2个,那么K=e2*W*W*p,W的含义同上。
其中,μl为状态函数的第一权重。λk为转移函数的第二权重。转移函数和状态函数的权值λk和μl是通过对条件概率预测模型进行训练而求解到的,具体求解过程将在后文中具体说明。
由上述条件随机场的计算公式可知,计算字符序列被标记为每种分词标签序列时的条件概率时,由于在给定分词标签序列的情况下,可以求取出各个状态函数的取值和各个转移函数的取值,故将各个状态函数的取值和各个转移函数的取值代入至上述条件概率预测模型中,便可以求取出字符序列被标记为给定的分词标签序列的条件概率。
示例性的,沿用上述表1所述的字符序列和对应的词典标签序列、以及上述表2所述的特征模板,若选用表2中一元模板U01至U18来生成状态函数sl(y,x,i,j),那么可以生成的状态函数sl(y,x,i,j)的总个数L=18*4*16=1152个状态函数,即s1(y,x,i,j)至s1152(y,x,i,j)。若选用表2中二元模板B01来生成转移函数tk(y,x,i,j),那么可以生成的转移函数tk(y,x,i,j)的总个数K=4*4*16=256个转移函数,即t1(y,x,i,j)至t256(y,x,i,j)。
在给定由表1所述的字符序列和对应的词典标签序列组成的二维序列x、以及某个分词标签序列y的情况下,可以由i=1、j=0起,分别确定每个状态函数的取值和每个转移函数的取值,直至确定出i=p(本示例中p=16)、j=1时每个状态函数的取值和每个转移函数的取值,进而可以求取出字符序列被标记为给定分词标签序列时的条件概率。
其中,在求取任意一个状态函数时,其中该状态函数的设定条件可以为“yi=n1,xi±d,j=0=m”、yi=n1,xi±d,j=1=h、或“yi=n1,xi±d,j=0=m,xi±d,j=1=h”,通过判断该状态函数的设定条件是否成立,若成立,则确定该状态函数取1,若不成立,可以确定该状态函数取0。
其中,在求取任意一个转移函数时,其中该转移函数的设定条件可以为“yi=n1,yi-1=n2,xi±d,j=0=m”,通过判断该转移函数的设定条件是否成立,若成立,则确定该转移函数取1,若不成立,可以确定该转移函数取0。
需要说明的是,由于词典标签序列中已经标记好了匹配字符串对应的词典标签,在一些特定场景下,当基于词典匹配过程准确度较高时,可以将匹配字符串对应的词典标签相当于可供参考的分词结果,那么,可以基于匹配字符串对应的词典标签推导出匹配字符串对应的分词标签,这样便可以无需对字符序列中匹配字符串这部分每个字符赋予各种分词标签,而是可以直接基于词典标签序列中标注的结果来配置匹配字符串的分词标签,这样还可以节省条件概率预测模型预测条件概率的次数,使得分词预测过程效率更高。
例如,继续沿用表1所示的电子病历以及对应的词典标签序列,通过将电子病历和词典进行匹配得到词典标签序列之后,可以确定出“干湿性啰音”、“摩擦音”为匹配字符串,也就是说“干湿性啰音”、“摩擦音”可以作为分好的词语,原本“干湿性啰音”、以及“摩擦音”对应的分词标签有48种可能,但是本方案中将词典标签序列作为参考因素,在基于条件概率预测模型来预测电子病历被标记为每种分词标签序列时,分词标签序列中“干湿性啰音”对应的分词标签可以确定为“B(干)I(湿)I(性)I(啰)E(音)”、“摩擦音”对应的分词标签可以确定为“B(摩)I(擦)E(音)”,因此分词标签序列就可以减少38种可能性,也即减少38种可能的分词标签序列。这样,相对于将所有分词标签序列都一一计算条件概率相比,本申请提供的上述方案,还可以节省条件概率预测模型预测条件概率的次数,使得分词预测过程效率更高。
在得到字符序列被标记为每一种分词标签序列的条件概率之后,可以将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列。示例性的,将条件概率的数值最大的条件概率对应的分词标签序列确定为目标分词标签序列。然后,基于目标分词标签序列,对待分词文本进行分词处理。
一示例中,继续沿用表1所示的电子病历,在通过对每一种目标分词标签序列对应的条件概率进行比较之后,选取的条件概率的数值最高的条件概率对应的目标分词标签序列,参见表3所示:
表3
电子病历 词典标签序列 目标分词标签序列
0 B
0 E
0 B
0 E
0 S
1 B
湿 1 I
1 I
1 I
1 E
0 S
0 B
0 E
0 S
0 B
0 E
1 B
1 I
1 E
0 S
基于表3所示的目标分词标签序列对电子病历进行分词处理后,可以得到的分词结果包括:“双肺”、“未闻”、“及”、“干湿性啰音”、“,”、“膜胸”、“摩擦音”、“。”
本申请实施例中,在利用条件概率预测模型计算字符序列被标记为每一种分词标签序列时的条件概率时,条件概率的影响因素除了各分词标签序列对应的状态函数和转移函数的取值,还包括转移函数和状态函数的权值λk和μl。其中,权值λk和μl是通过对条件概率预测模型进行训练而求解到的。
下面,对本申请实施例中条件概率预测模型的训练过程进行说明。参照图5所示,为本申请实施例提供的条件概率预测模型的训练过程的流程示意图,包括如下步骤:
步骤501、获取样本集合,样本集合中包括多组样本,每组样本中包括待分词样本文本对应的样本字符序列、样本词典标签序列和至少一种样本分词标签序列。
步骤502、针对每组样本,根据样本字符序列、样本词典标签序列中的至少一种,确定该组样本中的样本字符序列被标记为每种样本分词标签序列的情况下各个状态函数的取值和各个转移函数的取值。
步骤503、将通过每组样本确定出的各个状态函数的取值和各个转移函数的取值输入至待训练的条件概率预测模型中,确定每组样本对应的条件概率函数,条件概率函数中包括状态函数的第一权重和转移函数的第二权重。
步骤504、将确定出的每组样本对应的条件概率函数作为自变量输入至预设损失函数中,通过调整预设损失函数中包括的第一权重的取值和第二权重的取值,确定预设损失函数的损失值。
步骤505、在损失值符合预设收敛条件时,确定第一权重的第一当前值和第二权重的第二当前值,并确定在第一权重为第一当前值、第二权重为第二当前值的情况下得到的条件概率预测模型。
具体的,在将条件概率函数作为自变量输入至预设损失函数中之后,可以给上述λk和μl两种待训练参数赋初始值,按照牛顿迭代法或者梯度下降法对待训练参数λk和μl进行调整更新,直至预设损失函数的损失值符合预设收敛条件时停止更新,这样就得到待训练参数λk和μl的取值,从而就确定了条件随机场公式中的λk和μl,即得到条件概率预测模型。
本申请实施例中,在训练条件概率预测模型的过程中,由于词典标签序列也会作为预测分词标签序列的参考因素,故可以加快模型收敛,也就是说,可以采用相对少量的样本语料便可以训练得到条件概率预测模型,由此可以无需大量带有人工标注的分词标签的样本语料,节省人力成本,提升训练集的构建效率。在得到条件概率预测模型之后,还可以通过测试样本集合,对该条件概率预测模型的预测准确度进行测试,具体测试过程这里不再展开说明。
基于同一申请构思,本申请实施例中还提供了与文本分词方法对应的文本分词装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述文本分词方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图6所示,为本申请实施例提供的一种文本分词装置60的结构示意图,包括:
转换模块61,用于将待分词文本转换为字符序列;
第一确定模块62,用于将所述字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与所述标准词匹配的匹配字符串,为所述字符序列中所述匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列;
第二确定模块63,用于确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列;
条件概率预测模块64,用于根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率;
分词处理模块65,用于将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于所述目标分词标签序列对所述待分词文本进行分词处理。
本申请的一些实施例中,所述条件概率预测模块64,在根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率时,具体用于:
根据所述字符序列和/或所述词典标签序列,确定多个特征模板;
根据确定的多个特征模板,生成至少一个状态函数和至少一个转移函数;
确定在所述字符序列被标记为每种分词标签序列的情况下各个状态函数的取值和各个转移函数的取值;
将每种分词标签序列对应的各个状态函数的取值和各个转移函数的取值输入至预先训练的条件概率预测模型中,分别计算所述字符序列被标记为每种分词标签序列的条件概率。
本申请的一些实施例中,所述特征模板包括以下模板中的至少一种:
用于表示所述字符序列中单个字符的字符特征模板;
用于表示所述字符序列中不同字符的关联关系的字符特征模板;
用于表示所述词典标签序列中单个词典标签的词典特征模板;
用于表示所述词典标签序列中不同词典标签之间的关联关系的词典特征模板;
由所述字符特征模板和所述词典特征模板组成的复合特征模板。
本申请的一些实施例中,所述字符序列包含p个字符,所述词典标签序列包含p个词典标签,所述分词标签序列包含p个分词标签;
若所述特征模板包括所述字符特征模板,则所述条件概率预测模块64根据所述字符特征模板,生成的状态函数s(y,x,i,j)为:
若所述特征模板包括所述词典特征模板,则所述条件概率预测模块64根据所述词典特征模板,生成的状态函数s(y,x,i,j)为:
若所述特征模板包括所述复合特征模板,则所述条件概率预测模块64根据所述复合特征模板,生成的状态函数s(y,x,i,j)为:
其中,x表示由所述字符序列和所述词典标签序列组成的二维序列;y表示所述分词标签序列;j=0时,x表示所述二维序列中的所述字符序列;j=1时,x表示所述二维序列中的所述词典标签序列;i取1至p中任意整数;xi±d,j=0表示所述字符序列的第i±d个位置的字符,xi±d,j=1表示所述词典标签序列的第i±d个位置的词典标签,d取0至p-i中的任意正整数;yi表示所述分词标签序列y的第i个分词标签;n1表示所述分词标签序列y的第i个分词标签,m表示所述字符序列中第i±d个位置的字符,h表示所述词典标签序列中第i±d个位置的词典标签。
本申请的一些实施例中,所述字符序列包含p个字符,所述词典标签序列包含p个词典标签,所述分词标签序列包含p个分词标签;
若所述特征模板包括所述字符特征模板,则所述条件概率预测模块64根据所述字符特征模板,生成的转移函数t(y,x,i,j)为:
其中,x表示由所述字符序列和所述词典标签序列组成的二维序列;y表示所述分词标签序列;j=0时,x表示所述二维序列中的所述字符序列;i取1至p中任意整数;xi±d,j=0表示所述字符序列的第i±d个位置的字符,d取0至p-i中的任意正整数;yi表示所述分词标签序列y的第i个分词标签;yi-1表示分词标签序列y的第i-1个分词标签;n1表示所述分词标签序列y的第i个分词标签,n2表示所述分词标签序列y的第i-1个分词标签,m表示所述字符序列中第i±d个位置的字符。
本申请的一些实施例中,所述至少一个分词标签包括:词语的开始位置的第一标签、词语的中间位置的第二标签、词语的结束位置的第三标签和单字词语的第四标签;
本申请的一些实施例中,所述第二确定模块63,在确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列时,具体用于:
确定所述字符序列中每个字符对应的至少一种分词标签;
从每个字符对应的至少一种分词标签中任意选择一种分词标签作为目标分词标签,并将各个字符分别对应的目标分词标签所组成的序列作为一种分词标签序列。
本申请的一些实施例中,所述第一确定模块62,在为所述字符序列中所述匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列时,具体用于:
将所述字符序列中的每个字符按照如下规则分配词典标签,得到由词典标签组成的词典标签序列:
针对所述字符序列中任意一个字符,若该字符为所述匹配字符串中的字符,则为该字符分配第一词典标签,若该字符为除所述匹配字符串之外的字符,则将为该字符分配第二词典标签。
本申请的一些实施例中,,所述装置还包括:
模型训练模块66,用于根据以下方式训练得到所述条件概率预测模型:
获取样本集合,所述样本集合中包括多组样本,每组样本中包括待分词样本文本对应的样本字符序列、样本词典标签序列和至少一种样本分词标签序列;
针对每组样本,根据所述样本字符序列、所述样本词典标签序列中的至少一种,确定该组样本中的所述样本字符序列被标记为每种样本分词标签序列的情况下各个状态函数的取值和各个转移函数的取值;
将通过每组样本确定出的各个状态函数的取值和各个转移函数的取值输入至待训练的条件概率预测模型中,确定每组样本对应的条件概率函数,所述条件概率函数中包括所述状态函数的第一权重和所述转移函数的第二权重;
将确定出的每组样本对应的条件概率函数作为自变量输入至预设损失函数中,通过调整所述预设损失函数中包括的所述第一权重的取值和所述第二权重的取值,确定所述预设损失函数的损失值;
在所述损失值符合预设收敛条件时,确定所述第一权重的第一当前值和所述第二权重的第二当前值,并确定在所述第一权重为所述第一当前值、所述第二权重为所述第二当前值的情况下得到的条件概率预测模型。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本申请实施例提供了一种电子设备700,如图7所示为本申请实施例提供的电子设备700的结构示意图,包括:处理器701、存储器702和总线703,存储器702存储有处理器701可执行的机器可读指令,当电子设备运行时,处理器701与存储器702之间通过总线703通信,处理器执行机器可读指令,以执行时执行如上述方法实施例中提出的文本分词方法的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行执行如上述方法实施例中提出的文本分词方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述文本分词方法,从而能够快速且准确地对包含有非结构化数据的文本进行分词。
本申请提供了一种文本分词方法及装置,首先可以将待分词文本转换为字符序列,之后可以将字符序列中满足预设长度的字符串与预先构建的词典中的标准词匹配,基于匹配结果可以得到词典标签序列,还可以通过确定字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列。进一步地,可以将词典标签序列和字符序列作为模型的输入,利用条件概率预测模型预测字符序列被标记为每种分词标签序列时的条件概率,后续便基于得到的条件概率确定出目标分词标签序列,并基于目标分词标签序列对待分词文本进行分词处理。
上述方式中包括基于词典匹配以及基于条件概率预测模型预测这两个分词预测过程,通过结合上述两个分词预测过程,一方面,将经词典匹配得到的词典标签序列作为基于条件概率预测模型预测时的参考因素,可以使得最终经过条件概率预测模型预测出的分词结果的准确度较高,提升预测分词结果的准确率;另一方面,引入条件概率预测模型,在给定待分词文本对应的字符序列、以及词典标签序列的情况下,预测字符序列被标记为某种分词标签序列时的条件概率,这样可以直接得到字符序列对应的分词标签序列,也即可以经过一次预测过程得到待识别文本中全部字符分别对应的分词标签,由此也可以提高文本分词的效率。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (15)

1.一种文本分词方法,其特征在于,包括:
将待分词文本转换为字符序列;
将所述字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与所述标准词匹配的匹配字符串,为所述字符序列中所述匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列;
确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列;
根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率;
将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于所述目标分词标签序列对所述待分词文本进行分词处理。
2.如权利要求1所述的方法,其特征在于,所述根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率,包括:
根据所述字符序列和/或所述词典标签序列,确定多个特征模板;
根据确定的多个特征模板,生成至少一个状态函数和至少一个转移函数;
确定在所述字符序列被标记为每种分词标签序列的情况下各个状态函数的取值和各个转移函数的取值;
将每种分词标签序列对应的各个状态函数的取值和各个转移函数的取值输入至预先训练的条件概率预测模型中,分别计算所述字符序列被标记为每种分词标签序列的条件概率。
3.如权利要求2所述的方法,其特征在于,所述特征模板包括以下模板中的至少一种:
用于表示所述字符序列中单个字符的字符特征模板;
用于表示所述字符序列中不同字符的关联关系的字符特征模板;
用于表示所述词典标签序列中单个词典标签的词典特征模板;
用于表示所述词典标签序列中不同词典标签之间的关联关系的词典特征模板;
由所述字符特征模板和所述词典特征模板组成的复合特征模板。
4.如权利要求3所述的方法,其特征在于,所述字符序列包含p个字符,所述词典标签序列包含p个词典标签,所述分词标签序列包含p个分词标签;
若所述特征模板包括所述字符特征模板,则根据所述字符特征模板,生成的状态函数s(y,x,i,j)为:
若所述特征模板包括所述词典特征模板,则根据所述词典特征模板,生成的状态函数s(y,x,i,j)为:
若所述特征模板包括所述复合特征模板,则根据所述复合特征模板,生成的状态函数s(y,x,i,j)为:
其中,x表示由所述字符序列和所述词典标签序列组成的二维序列;y表示所述分词标签序列;j=0时,x表示所述二维序列中的所述字符序列;j=1时,x表示所述二维序列中的所述词典标签序列;i取1至p中任意整数;xi±d,j=0表示所述字符序列的第i±d个位置的字符,xi±d,j=1表示所述词典标签序列的第i±d个位置的词典标签,d取0至p-i中的任意正整数;yi表示所述分词标签序列y的第i个分词标签;n1表示所述分词标签序列y的第i个分词标签,m表示所述字符序列中第i±d个位置的字符,h表示所述词典标签序列中第i±d个位置的词典标签。
5.如权利要求3所述的方法,其特征在于,所述字符序列包含p个字符,所述分词标签序列包含p个分词标签;
若所述特征模板包括所述字符特征模板,则根据所述字符特征模板,生成的转移函数t(y,x,i,j)为:
其中,x表示由所述字符序列和所述词典标签序列组成的二维序列;y表示所述分词标签序列;j=0时,x表示所述二维序列中的所述字符序列;i取1至p中任意整数;xi±d,j=0表示所述字符序列的第i±d个位置的字符,d取0至p-i中的任意正整数;yi表示所述分词标签序列y的第i个分词标签;yi-1表示分词标签序列y的第i-1个分词标签;n1表示所述分词标签序列y的第i个分词标签,n2表示所述分词标签序列y的第i-1个分词标签,m表示所述字符序列中第i±d个位置的字符。
6.如权利要求1至5任一所述的方法,其特征在于,所述至少一种分词标签包括:词语的开始位置的第一标签、词语的中间位置的第二标签、词语的结束位置的第三标签和单字词语的第四标签;
确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列,包括:
确定所述字符序列中每个字符对应的至少一种分词标签;
从每个字符对应的至少一种分词标签中任意选择一种分词标签作为目标分词标签,并将各个字符分别对应的目标分词标签所组成的序列作为一种分词标签序列。
7.如权利要求1至5任一所述的方法,其特征在于,为所述字符序列中所述匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列,包括:
将所述字符序列中的每个字符按照如下规则分配词典标签,得到由词典标签组成的词典标签序列:
针对所述字符序列中任意一个字符,若该字符为所述匹配字符串中的字符,则为该字符分配第一词典标签,若该字符为除所述匹配字符串之外的字符,则将为该字符分配第二词典标签。
8.如权利要求1所述的方法,其特征在于,根据以下方式训练得到所述条件概率预测模型:
获取样本集合,所述样本集合中包括多组样本,每组样本中包括待分词样本文本对应的样本字符序列、样本词典标签序列和至少一种样本分词标签序列;
针对每组样本,根据所述样本字符序列、样本词典标签序列中的至少一种,确定该组样本中的样本字符序列被标记为每种样本分词标签序列的情况下各个状态函数的取值和各个转移函数的取值;
将通过每组样本确定出的各个状态函数的取值和各个转移函数的取值输入至待训练的条件概率预测模型中,确定每组样本对应的条件概率函数,所述条件概率函数中包括所述状态函数的第一权重和所述转移函数的第二权重;
将确定出的每组样本对应的条件概率函数作为自变量输入至预设损失函数中,通过调整所述预设损失函数中包括的所述第一权重的取值和所述第二权重的取值,确定所述预设损失函数的损失值;
在所述损失值符合预设收敛条件时,确定所述第一权重的第一当前值和所述第二权重的第二当前值,并确定在所述第一权重为所述第一当前值、所述第二权重为所述第二当前值的情况下得到的条件概率预测模型。
9.一种文本分词装置,其特征在于,包括:
转换模块,用于将待分词文本转换为字符序列;
第一确定模块,用于将所述字符序列中包含的满足预设长度的字符串与预先构建的词典中的标准词进行匹配,确定与所述标准词匹配的匹配字符串,为所述字符序列中所述匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列;
第二确定模块,用于确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列;
条件概率预测模块,用于根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率;
分词处理模块,用于将符合预设条件的条件概率对应的分词标签序列确定为目标分词标签序列,并基于所述目标分词标签序列对所述待分词文本进行分词处理。
10.如权利要求9所述的装置,其特征在于,所述条件概率预测模块,在根据所述字符序列、所述词典标签序列以及预先训练的条件概率预测模型,确定所述字符序列被标记为每种分词标签序列的条件概率时,具体用于:
根据所述字符序列和/或所述词典标签序列,确定多个特征模板;
根据确定的多个特征模板,生成至少一个状态函数和至少一个转移函数;
确定在所述字符序列被标记为每种分词标签序列的情况下各个状态函数的取值和各个转移函数的取值;
将每种分词标签序列对应的各个状态函数的取值和各个转移函数的取值输入至预先训练的条件概率预测模型中,分别计算所述字符序列被标记为每种分词标签序列的条件概率。
11.如权利要求10所述的装置,其特征在于,所述特征模板包括以下模板中的至少一种:
用于表示所述字符序列中单个字符的字符特征模板;
用于表示所述字符序列中不同字符的关联关系的字符特征模板;
用于表示所述词典标签序列中单个词典标签的词典特征模板;
用于表示所述词典标签序列中不同词典标签之间的关联关系的词典特征模板;
由所述字符特征模板和所述词典特征模板组成的复合特征模板。
12.如权利要求11所述的装置,其特征在于,所述字符序列包含p个字符,所述词典标签序列包含p个词典标签,所述分词标签序列包含p个分词标签;
若所述特征模板包括所述字符特征模板,则所述条件概率预测模块根据所述字符特征模板,生成的状态函数s(y,x,i,j)为:
若所述特征模板包括所述词典特征模板,则所述条件概率预测模块根据所述词典特征模板,生成的状态函数s(y,x,i,j)为:
若所述特征模板包括所述复合特征模板,则所述条件概率预测模块根据所述复合特征模板,生成的状态函数s(y,x,i,j)为:
其中,x表示由所述字符序列和所述词典标签序列组成的二维序列;y表示所述分词标签序列;j=0时,x表示所述二维序列中的所述字符序列;j=1时,x表示所述二维序列中的所述词典标签序列;i取1至p中任意整数;xi±d,j=0表示所述字符序列的第i±d个位置的字符,xi±d,j=1表示所述词典标签序列的第i±d个位置的词典标签,d取0至p-i中的任意正整数;yi表示所述分词标签序列y的第i个分词标签;n1表示所述分词标签序列y的第i个分词标签,m表示所述字符序列中第i±d个位置的字符,h表示所述词典标签序列中第i±d个位置的词典标签。
13.如权利要求11所述的装置,其特征在于,所述字符序列包含p个字符,所述词典标签序列包含p个词典标签,所述分词标签序列包含p个分词标签;
若所述特征模板包括所述字符特征模板,则所述条件概率预测模块根据所述字符特征模板,生成的转移函数t(y,x,i,j)为:
其中,x表示由所述字符序列和所述词典标签序列组成的二维序列;y表示所述分词标签序列;j=0时,x表示所述二维序列中的所述字符序列;i取1至p中任意整数;xi±d,j=0表示所述字符序列的第i±d个位置的字符,d取0至p-i中的任意正整数;yi表示所述分词标签序列y的第i个分词标签;yi-1表示分词标签序列y的第i-1个分词标签;n1表示所述分词标签序列y的第i个分词标签,n2表示所述分词标签序列y的第i-1个分词标签,m表示所述字符序列中第i±d个位置的字符。
14.如权利要求9至13任一所述的装置,其特征在于,所述至少一个分词标签包括:词语的开始位置的第一标签、词语的中间位置的第二标签、词语的结束位置的第三标签和单字词语的第四标签;
所述第二确定模块,在确定所述字符序列中每个字符对应的至少一种分词标签,得到多种分词标签序列时,具体用于:
确定所述字符序列中每个字符对应的至少一种分词标签;
从每个字符对应的至少一种分词标签中任意选择一种分词标签作为目标分词标签,并将各个字符分别对应的目标分词标签所组成的序列作为一种分词标签序列。
15.如权利要求9至13任一所述的装置,其特征在于,所述第一确定模块,在为所述字符序列中所述匹配字符串的每个字符和除所述匹配字符串之外的每个字符分别分配对应的词典标签,得到词典标签序列时,具体用于:
将所述字符序列中的每个字符按照如下规则分配词典标签,得到由词典标签组成的词典标签序列:
针对所述字符序列中任意一个字符,若该字符为所述匹配字符串中的字符,则为该字符分配第一词典标签,若该字符为除所述匹配字符串之外的字符,则将为该字符分配第二词典标签。
CN201910094380.2A 2019-01-30 2019-01-30 一种文本分词方法及装置 Active CN109829162B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910094380.2A CN109829162B (zh) 2019-01-30 2019-01-30 一种文本分词方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910094380.2A CN109829162B (zh) 2019-01-30 2019-01-30 一种文本分词方法及装置

Publications (2)

Publication Number Publication Date
CN109829162A true CN109829162A (zh) 2019-05-31
CN109829162B CN109829162B (zh) 2022-04-08

Family

ID=66863299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910094380.2A Active CN109829162B (zh) 2019-01-30 2019-01-30 一种文本分词方法及装置

Country Status (1)

Country Link
CN (1) CN109829162B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688853A (zh) * 2019-08-12 2020-01-14 平安科技(深圳)有限公司 序列标注方法、装置、计算机设备和存储介质
CN110795938A (zh) * 2019-11-11 2020-02-14 北京小米智能科技有限公司 文本序列分词方法、装置及存储介质
CN111026282A (zh) * 2019-11-27 2020-04-17 上海明品医学数据科技有限公司 一种在输入过程中判断是否进行医学数据标注的控制方法
CN111695355A (zh) * 2020-05-26 2020-09-22 平安银行股份有限公司 地址文本识别方法、装置、介质、电子设备
CN111831929A (zh) * 2019-09-24 2020-10-27 北京嘀嘀无限科技发展有限公司 一种获取poi信息的方法及装置
CN112101021A (zh) * 2020-09-03 2020-12-18 沈阳东软智能医疗科技研究院有限公司 一种实现标准词映射的方法、装置及设备
CN112464667A (zh) * 2020-11-18 2021-03-09 北京华彬立成科技有限公司 文本的实体识别方法、装置、电子设备和存储介质
CN112861531A (zh) * 2021-03-22 2021-05-28 北京小米移动软件有限公司 分词方法、装置、存储介质和电子设备
CN113609850A (zh) * 2021-07-02 2021-11-05 北京达佳互联信息技术有限公司 分词处理方法、装置、电子设备及存储介质
CN117493540A (zh) * 2023-12-28 2024-02-02 荣耀终端有限公司 文本匹配方法、终端设备及计算机可读存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101082909A (zh) * 2007-06-28 2007-12-05 腾讯科技(深圳)有限公司 一种识别衍生词的中文分词方法及***
WO2010024052A1 (ja) * 2008-08-27 2010-03-04 日本電気株式会社 音声認識仮説検証装置、音声認識装置、それに用いられる方法およびプログラム
CN102184262A (zh) * 2011-06-15 2011-09-14 悠易互通(北京)广告有限公司 基于web的文本分类挖掘***及方法
CN102262634A (zh) * 2010-05-24 2011-11-30 北京大学深圳研究生院 一种自动问答方法及***
CN102929870A (zh) * 2011-08-05 2013-02-13 北京百度网讯科技有限公司 一种建立分词模型的方法、分词的方法及其装置
CN103020034A (zh) * 2011-09-26 2013-04-03 北京大学 中文分词方法和装置
CN103678318A (zh) * 2012-08-31 2014-03-26 富士通株式会社 多词单元提取方法和设备及人工神经网络训练方法和设备
CN108038103A (zh) * 2017-12-18 2018-05-15 北京百分点信息科技有限公司 一种对文本序列进行分词的方法、装置和电子设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101082909A (zh) * 2007-06-28 2007-12-05 腾讯科技(深圳)有限公司 一种识别衍生词的中文分词方法及***
WO2010024052A1 (ja) * 2008-08-27 2010-03-04 日本電気株式会社 音声認識仮説検証装置、音声認識装置、それに用いられる方法およびプログラム
CN102262634A (zh) * 2010-05-24 2011-11-30 北京大学深圳研究生院 一种自动问答方法及***
CN102184262A (zh) * 2011-06-15 2011-09-14 悠易互通(北京)广告有限公司 基于web的文本分类挖掘***及方法
CN102929870A (zh) * 2011-08-05 2013-02-13 北京百度网讯科技有限公司 一种建立分词模型的方法、分词的方法及其装置
CN103020034A (zh) * 2011-09-26 2013-04-03 北京大学 中文分词方法和装置
CN103678318A (zh) * 2012-08-31 2014-03-26 富士通株式会社 多词单元提取方法和设备及人工神经网络训练方法和设备
CN108038103A (zh) * 2017-12-18 2018-05-15 北京百分点信息科技有限公司 一种对文本序列进行分词的方法、装置和电子设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
QI-YU JIANG; HONG-YI LI; JIA-FEN LIANG; QING-XIANG WANG等: ""Multi-combined Features Text Mining of TCM Medical Cases with CRF"", 《2016 8TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY IN MEDICINE AND EDUCATION (ITME)》 *
YI-FENG PAN; XINWEN HOU; CHENG-LIN LIU: ""Text Localization in Natural Scene Images Based on Conditional Random Field"", 《2009 10TH INTERNATIONAL CONFERENCE ON DOCUMENT ANALYSIS AND RECOGNITION》 *
周祺: ""基于统计与词典相结合的中文分词的研究与实现"", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688853A (zh) * 2019-08-12 2020-01-14 平安科技(深圳)有限公司 序列标注方法、装置、计算机设备和存储介质
WO2021027125A1 (zh) * 2019-08-12 2021-02-18 平安科技(深圳)有限公司 序列标注方法、装置、计算机设备和存储介质
CN111831929A (zh) * 2019-09-24 2020-10-27 北京嘀嘀无限科技发展有限公司 一种获取poi信息的方法及装置
CN111831929B (zh) * 2019-09-24 2024-01-02 北京嘀嘀无限科技发展有限公司 一种获取poi信息的方法及装置
CN110795938B (zh) * 2019-11-11 2023-11-10 北京小米智能科技有限公司 文本序列分词方法、装置及存储介质
CN110795938A (zh) * 2019-11-11 2020-02-14 北京小米智能科技有限公司 文本序列分词方法、装置及存储介质
CN111026282B (zh) * 2019-11-27 2023-05-23 上海明品医学数据科技有限公司 一种在输入过程中判断是否进行医学数据标注的控制方法
CN111026282A (zh) * 2019-11-27 2020-04-17 上海明品医学数据科技有限公司 一种在输入过程中判断是否进行医学数据标注的控制方法
CN111695355A (zh) * 2020-05-26 2020-09-22 平安银行股份有限公司 地址文本识别方法、装置、介质、电子设备
CN111695355B (zh) * 2020-05-26 2024-05-14 平安银行股份有限公司 地址文本识别方法、装置、介质、电子设备
CN112101021A (zh) * 2020-09-03 2020-12-18 沈阳东软智能医疗科技研究院有限公司 一种实现标准词映射的方法、装置及设备
CN112464667A (zh) * 2020-11-18 2021-03-09 北京华彬立成科技有限公司 文本的实体识别方法、装置、电子设备和存储介质
CN112464667B (zh) * 2020-11-18 2021-11-16 北京华彬立成科技有限公司 文本的实体识别方法、装置、电子设备和存储介质
CN112861531A (zh) * 2021-03-22 2021-05-28 北京小米移动软件有限公司 分词方法、装置、存储介质和电子设备
CN112861531B (zh) * 2021-03-22 2023-11-14 北京小米移动软件有限公司 分词方法、装置、存储介质和电子设备
CN113609850A (zh) * 2021-07-02 2021-11-05 北京达佳互联信息技术有限公司 分词处理方法、装置、电子设备及存储介质
CN113609850B (zh) * 2021-07-02 2024-05-17 北京达佳互联信息技术有限公司 分词处理方法、装置、电子设备及存储介质
CN117493540A (zh) * 2023-12-28 2024-02-02 荣耀终端有限公司 文本匹配方法、终端设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN109829162B (zh) 2022-04-08

Similar Documents

Publication Publication Date Title
CN109829162A (zh) 一种文本分词方法及装置
CN108363790B (zh) 用于对评论进行评估的方法、装置、设备和存储介质
CN106649288B (zh) 基于人工智能的翻译方法和装置
Ben-Bassat et al. A deep neural network approach for learning intrinsic protein-RNA binding preferences
Kosinski et al. Mining big data to extract patterns and predict real-life outcomes.
CN112256828B (zh) 医学实体关系抽取方法、装置、计算机设备及可读存储介质
Creutz et al. Unsupervised morpheme segmentation and morphology induction from text corpora using Morfessor 1.0
CN109948149B (zh) 一种文本分类方法及装置
CN108509411A (zh) 语义分析方法和装置
US20190204296A1 (en) Nanopore sequencing base calling
CN107957993B (zh) 英文句子相似度的计算方法及装置
CN110163181B (zh) 手语识别方法及装置
CN111310440B (zh) 文本的纠错方法、装置和***
US9483739B2 (en) Transductive feature selection with maximum-relevancy and minimum-redundancy criteria
CN107193807A (zh) 基于人工智能的语言转换处理方法、装置及终端
US11347995B2 (en) Neural architecture search with weight sharing
KR102134472B1 (ko) 유전 알고리즘을 활용한 콘볼루션 뉴럴 네트워크의 최적 구조 탐색 방법
CN108108347B (zh) 对话模式分析***及方法
CN110222329A (zh) 一种基于深度学习的中文分词方法和装置
CN110457470A (zh) 一种文本分类模型学习方法及装置
CN111488460B (zh) 数据处理方法、装置和计算机可读存储介质
CN113239697B (zh) 实体识别模型训练方法、装置、计算机设备及存储介质
CN110569355A (zh) 一种基于词块的观点目标抽取和目标情感分类联合方法及***
CN110334204B (zh) 一种基于用户记录的习题相似度计算推荐方法
Yeh et al. MSRCall: A multi-scale deep neural network to basecall Oxford nanopore sequences

Legal Events

Date Code Title Description
PB01 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