CN110502737A - 一种基于医学专业词典与统计算法的分词方法 - Google Patents
一种基于医学专业词典与统计算法的分词方法 Download PDFInfo
- Publication number
- CN110502737A CN110502737A CN201810478904.3A CN201810478904A CN110502737A CN 110502737 A CN110502737 A CN 110502737A CN 201810478904 A CN201810478904 A CN 201810478904A CN 110502737 A CN110502737 A CN 110502737A
- Authority
- CN
- China
- Prior art keywords
- word
- cutting
- atom
- dictionary
- corpus
- 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
Links
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种基于医学专业词典与统计算法的分词方法,包括以下步骤:语料预处理、候选词条的表达与产生实现、分词结果判别、分词结果的歧义消除、医学词典的构造和未登录词的发现。本发明有效解决了当前无针对中文医学语料的专用分词方法模型和系统的问题,提升中文医学语料分词准确率、召回率和F值等关键评价指标。
Description
技术领域
本发明涉及中文医学文本的自然语言处理,具体是一种基于医学专业词典与统计算法的分词方法及系统。
背景技术
自20世纪80年代初,中文信息处理领域提出自动分词以来,取得了一些重要的进展和成果,提出了许多中文分词方法,实现了许多中文分词系统,其中典型的分词系统有如下几个。北京航空航天大学的CDWS是我国第一个实用性的自动分词系统,在实现CDWS过程中,相关研究者在自动分词的理论上作了深入细致的探讨,首次论证了汉语自动分词的可行性,初步建立了一个描述书面汉语的计算模型,对自动分词的有关概念和术语都给出了明确的定义,并且把歧义切分字段也首次作了分类,具有很大的理论意义。清华大学也先后研制开发了SEG、SEGTAG分词系统。
复旦大学的分词系统对一般的人名识别效率很高。哈尔滨工业大学的分词系统是一种典型的运用统计的方法进行纯分词的分词系统。还有杭州大学改进的MM分词系统和北京大学计算语言学研究所研制的系统。中科院汉语词法分析系统ICTCLAS是目前较为满意的系统,在973评测中获得了第一名,该分词系统的主要是思想是先通过CHMM(层叠形马尔可夫模型)进行分词,通过分层,既增加了分词的准确性,又保证了分词的效率,但是该系统为提高分词的召回率和准确率,在未登录词识别、重新切分等方面进行了相当多的语言处理,花费了太多时间,以致切分速度不是很快。另外还有Microsoft Research汉语句法分析器中的自动分词系统。
事实表明,并非有了成熟的分词算法,我们就能够轻松地解决中文医学分词过程中存在的问题。因为中文是一种十分复杂的语言,而让计算机去理解以临床病例为主的医学语料就更加困难了。对中文医学文本进行切分,面临的主要难:分词规范、歧义识别、新词识别、领域适用性。
中文分词过程中面临的最大问题在于歧义识别和新词发现,而医学语料分词具有极大的领域相关性,解决以上两点问题具有更大难度,如果采用通用中文分词系统,对于专业的医学临床术语并不能有效地切分,单纯地应用词典匹配方法或统计分词方法在医学领域中都很难达到较高的准确率,要达到较好效果,必须构建有效的中文医学专业词典,还需要良好的歧义消除和未登录词识别方法,综合使用才能达到良好效果。。
发明内容
本发明对目前中文医学语料分词中歧义识别、新词发现、词典标准等关键技术问题,设计相关实现模型和方法,并实现一个实用的中文医学专业分词系统,从而解决中文医学自然语言处理的基础问题,为其它应用奠定医学自然语言的处理基础。
为实现上述目的,本发明提供如下技术方案:
一种基于医学专业词典与统计算法的分词方法,其特征在于,包括以下步骤:
S1、语料预处理:在分词算法执行前,对待分词语料进行断句处理,即利用一些特殊的符号将待分词语料分隔成多个稍微简单一点的短句,再进行分词处理,最后再把各个分词结果组合起来,形成最终的分词结果;分成短句之后,即可进行原子切分,经过原子切分后,待分词语料进一步构成了更短的短字串数组,针对原子切分后的短字串数组,找出所有候选词条,以备进一步分词。
S2、候选词条的表达与产生实现:
①候选词条的表达:原子切分之后通过两个循环把原子之间所有可能的组合,即所有候选词条都找出来;找出所有候选词条以后,将所有字串表示成带权有向无环图,针对带权有向无环图,通过最短路径求解,得出最终分词结果。
(2)基于改进型FMM和RMM产生候选词条:采用改进的正向最大匹配和逆向最大匹配方法找出所有候选词条,从而形成最为完整的候选词条集合;候选词条集合形成后,即需要对其进行分词结果判别,以形成优化分词结果,本发明中,采用K-最短路径,对候选词条进行结果判别。
S3、分词结果判别:通过本专利所述改进型FMM和RMM算法,找出候选词条后,并转换为有向无环图,并通过求解模型求解有向无环图中始末结点间的最短路径K,该最短路径即为切分结果。
S4、分词结果的歧义消除:利用汉字二元语法关系、结合双字耦合度和t_测试差计算各个歧义位置连或者断的概率,并根据概率值来决定歧义位置的连通或切断。
S5、医学词典的构造;
S6、未登录词的发现:基于PMIk算法实现未登录词的发现且未登录词的发现主要分为以下四个阶段,①确定2元待扩展种子;②将2元待扩展种子扩展至2~n元;;③过滤候选新词;④人工判定入库。
作为本发明进一步的方案:所述步骤S1中特殊的符号包括空格、分段符等显式切分标记和标点符号、数字、ASCII字符以及出现频率高、构词能力差的单字词以及数词、单字等常用量词模式等相关的隐式切分标记。
作为本发明进一步的方案:所述步骤S2中的两个循环包括:第一个循环遍历整个原子序列;第二个循环是当找到一个原子后,不断把后面相邻的原子和该原子组合到一起,与词典数据库中词组作对比,直至词典数据库中不存在该组合。
作为本发明进一步的方案:所述步骤S3中的求解模型如下:设S==C1C2…Cn为待切字串,其中Ci(i=1,2,…n)为单个的汉字字符(即原子),n>=1为字串的长度。对应每个汉字字符,建立一个节点,所有节点组成一个集合。对该集合进行如下操作:
(1)对应每个汉字字符,根据其所表示的汉字字符在字符序列中的位置,建立一个结点数为n+1的带权有向无环图G,并对各个结点分别进行编号为:V0,V1,V2…Vm。
(2)从每个结点i开始,循环一遍。若W=CiCi+1…Cj是一个词,把W加入到切分列表中,即在G中添加边<Vi-1,Vj>;记录该词组所有的信息,比如标出边的权值Lk;然后继续匹配W′=CiCi+1…CjCj+1是否为词,若为词,则在G中继续添加边、记录信息,然后再在末尾添加一个原子,再进行匹配,如此往复;若不为词则跳出此次循环,i++,进入下一个循环。
作为本发明进一步的方案:所述步骤S3中的最短路径K值求解步骤如下:首先进行原子切分;其次根据核心词典,找出待切字段中包含的所有候选词条;然后添加边长构造待切字段的切分的带权有向无环图,将此带权有向无环图的有向边的边长设置为1,然后在从起点到终点的所有路径中,求解出最短路径。每个结点维护一张表,用来记录前K个最短路径,并记录相应路径上当前结点的相关信息。如果同一长度对应多条路径,那么结点的表必须把所有路径信息全部记录下来,最后通过回溯即可求出前K条最短路径。
作为本发明进一步的方案:所述步骤S6中PMIk算法的定义公式如下:
其中,p(x)和p(y)分别表示字串x和y的概率,p(x,y)表示字串x和y的联合概率,PMIk(x,y)表示字串x和y的相关度,也称PMIk值。
一种基于医学专业词典与统计算法的分词系统,采用上述任一方法对中文医学语料进行自动分词。
与现有技术相比,本发明的有益效果是:
本发明有效解决了当前无针对中文医学语料的专用分词方法模型和系统的问题,提升中文医学语料分词准确率、召回率和F值等关键评价指标。
图说明
图1为本发明基于医学词典与统计算法的中文医学语料分词系统的结构组成图。
图2为医学语料中的有向无环图示例。
图3为切分带权有向无环图示例。
图4为基于双Hash表的词典组织结构示例。
图5为有向无环图二维表示实例。
具体实施方式
下面将结合本发明实施例中的图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例中,一种基于医学专业词典与统计算法的分词方法及系统,包括以下各个部分:
1.语料预处理-原子切分
在分词算法执行前,对待分词语料进行预处理--断句处理,即利用一些特殊的符号将待分词语料分隔成多个稍微简单一点的短句,再进行分词处理,从而能最大限度减少分词过程中匹配的次数,最后再把各个分词结果组合起来,形成最终的分词结果。这些特殊的符号包括空格、分段符等显式切分标记和标点符号、数字、ASCII字符以及出现频率高、构词能力差的单字词(如:的、啊、呀)以及数词、单字等常用量词模式等相关的隐式切分标记。
分成短句之后,即可进行原子切分。所谓原子,是指该短句中不可分割的最小语素单位,例如:“右乳3点距乳晕2cm可及一肿物,大小约1.5cm×1.5cm,质硬,边界不清”这句话中,其中“3”、“1.5”、“cm”等均为最小原子语素,经过原子切分后,待分词语料进一步构成了更短的短字串数组。
需要针对原子切分后的短字串数组,找出所有候选词条,以备进一步分词。
2.候选词条的表达与产生实现
(1)候选词条的表达
原子切分之后的工作就是把原子之间所有可能的组合,即所有候选词条都找出来。
可以用两个循环实现:第一个循环遍历整个原子序列;第二个循环是当找到一个原子后,不断把后面相邻的原子和该原子组合到一起,访问核心词典看它能否构成一个有意义有词组,直至词典中不存在该组合。
一个原子序列:S(n)(0<=n<m)(其中m为原子序列S的长度)。从位置i=n开始,获取 CnCn+1…Cj,其中包含所有候选词条。比如切分字符串S==“心肌梗死”,则要匹配找出“心,心肌,肌,梗死”。
找出所有候选词条以后,接下来的工作就是将所有字串表示成带权有向无环图,例如:“右胸前区肿胀伴按压痛”可构成有向无环图,如图2所示,针对该有向无环图,通过最短路径求解,得出最终分词结果。
(2)基于改进型FMM和RMM产生候选词条
本发明中,针对传统FMM、RMM、改进的最大退一步FMM方法不完全适用于医学语料的特点,采用了改进的正向最大匹配和逆向最大匹配方法找出所有候选词条,通过该方法,可找出候选词条的最大集合,从而减少词典匹配过程中匹配查找的次数,以及能够在整个分词过程中更好地实现“长词优先”的原则,本发明的系统实现中,采用了一种改进型双向最大匹配算法,
以下以正向最大匹配算法为例,说明对算法的改进方法。算法过程如下:
S1:最大匹配初始词长的选取
假设待切分字串的长度为Length,最大匹配初始长度为WordMax,对于字串中每一个汉字,在分词词典中进行查找以其为开头的词语的最大长度Li,进行比较,取词语长度的最大值设为Lmax,若Lmax>Length,则最大匹配初始长度WordMax=Length,反之,最大匹配初始长度WordMax=Lmax。
S2:正向最大匹配算法的改进
改进的最大正向匹配算法步骤如下:
①待切分句子S的长度为Length,从待切分句子的第1个字开始截取长度为WordMax的字串Sword进行匹配。
②若词语匹配成功,则认为这个字串为一个词语,从句中切分,然后将此词语左右两边的部分作为新的句子,继续重复此过程进行切分;
③若词语匹配不成功,则从句子中的第二个字开始继续截取长度为WordMax的字符串进行匹配;
④若词语匹配不成功,则依次从句子中的第三个、第四个……第Length-WordMax+1个字开始截取长度为WordMax的词语进行匹配,若匹配成功,返回步骤②,若都不成功,则说明句子中已经没有长度为WordMax的词语,此时WordMax=WordMax-1的字串,从句子第一个字开始,按照以上过程,进行匹配。
⑤重复以上过程,直至句子全部分词结束。
采用与FMM算法改进相同的方法,可对RMM算法进行改进,在系统实现时,分别用改进型FMM算法和改进型RMM算法对预处理后的语料分词,如果对某字串,分词结果相同,则不做更改,否则需要将它们各自的分词结果进行归并,从而形成最为完整的候选词条集合。
例如:对于S==“检查示无腹壁静脉曲张”,正向最大匹配结果为“检查\示\无\腹壁静脉\曲张”;逆向最大匹配结果为“检查\示\无\腹壁\静脉曲张”,词条归并后结果为“检查\示\无\腹壁\腹壁静脉\静脉曲张\曲张”。
候选词条集合形成后,即需要对其进行分词结果判别,以形成优化分词结果,本发明中,采用K-最短路径,对候选词条进行结果判别。
3.分词结果判别-最短路径算法
通过改进型FMM和RMM算法,找出候选词条后,并转换为如图2、3所示的有向无环图,就需要求解图中始末结点间最短路径,该路径即为切分结果。
(1)方法概述
求最短路径是运筹学中图论与网络分析的一个经典问题,用于计算在所有从起点到终点的路径中,寻求权最小的路径,权最小指的是路程最短、时间最少、花费最少等。最短路径问题一般用来解决单源最短路径问题、负权最短路径问题、每对点间的最短路径问题,分别对应的著名算法有迪杰斯特拉(Dijkstra)算法、贝尔曼-福特(Bellman-Ford)算法和弗洛伊德(Floyd)算法。
本发明的中文分词算法中,由于有向无环图属于单源最短路径问题,所以使用了一种优化的Dijkstra算法来求最短路径。
Dijkstra算法求解的是有向图中起点到其他所有结点的最短路径,而在切分带权有向图的应用中,与其有二个本质区别:首先有向边的源点编号均小于终点编号,即所有的有向边方向一致;其次,我们求的是带权有向无环图始末结点之间的最短路径,而且在算法实现时为了提高切分速度,只求解始末两个结点之间的第一条最短路径。但是找出最短路径,在初始时刻并不知道路径的经过结点,还是要记录几种情况,最后对各条路径的长度进行排序,选择出其中的最短的一条路径。
(2)模型描述
设S==C1C2…Cn为待切字串,其中Ci(i=1,2,…n)为单个的汉字字符(即原子),n>=1 为字串的长度。对应每个汉字字符,建立一个节点,所有节点组成一个集合。对该集合进行如下操作:
(1)对应每个汉字字符,根据其所表示的汉字字符在字符序列中的位置,建立一个结点数为n+1的带权有向无环图G,并对各个结点分别进行编号为:V0,V1,V2…Vm。
(2)从每个结点i开始,循环一遍。若W=CiCi+1…Cj是一个词,把W加入到切分列表中,即在G中添加边<Vi-1,Vj>;记录该词组所有的信息,比如标出边的权值Lk;然后继续匹配W′=CiCi+1…CjCj+1是否为词,若为词,则在G中继续添加边、记录信息,然后再在末尾添加一个原子,再进行匹配,如此往复;若不为词则跳出此次循环,i++,进入下一个循环。词的集合组成一个全序关系,如图3所示。
(3)K路径求解
S1:有向无环图的二维图表示
图5的二维表显示初次切分后的候选词条中所有词组,第一个字相同的在同一行,最后一个字相同的在同一列,原来的原子在对称轴上。并且行和列有一个非常有意思的关系:列值col=n的所有词组需要和行值row=n的所有词组计算两者的距离。例如“生物”这个词,它的col=10,而row=7的词有两个,分别为“赘”和“赘生”。所以和“赘生”需要计算距离的词有两个:“生”、“生物”。
S2:求相邻词条之间的边长
求解K-最短路径,首先要找出相邻词条之间的出现频率,相邻词条之间的频率是一个统计值,可以到二元图词典中进行查找得到。然后使用公式进行平滑计算距离,因此,如果将所有相关的行与列元素之间的关系(边长)找到,通过二元分词图表示出了每个词组之间的边长。二元切分词图中每一个元素表示稀疏图的一条边,它的行值代表边的起点(前驱),它的列值代表边的终点(后继),则形成了一张有向无环图。
S3:最短路径求解
根据上文所介绍的步骤,我们首先进行原子切分;其次根据核心词典,找出待切字段中包含的所有候选词条;然后添加边长构造待切字段的切分的带权有向无环图。
为了简化计算模型,可将此带权有向无环图的有向边的边长设置为1,即假定所有候选词条都是对等的。然后在从起点到终点的所有路径中,求解出最短路径。每个结点维护一张表,用来记录前K个最短路径,并记录相应路径上当前结点的相关信息。如果同一长度对应多条路径,那么结点的表必须把所有路径信息全部记录下来,最后通过回溯即可求出前K条最短路径。
4.分词歧义消除
本发明中,将这双字耦合度和t测试差这两个统计量结合起来,以发挥各自的优点,弥补各自的不足之处,交叉型歧义的消除过程如下:
假设一个具有交叉型歧义的字串S为:a1…aib1…bmc1…cn(i>0,m>0,n>0),存在以下两种切分方案:
其中W11、W12、W21、W22均为实际存在的词组,P1、P2为可能的断点,分别对应bmc1与aib1之间的位置。对于词频法,容易做出以下判断:
如果p(W11)*p(W12)>p(W21)*p(W22),则肯定SEG1,否则肯定SEG2。
从另一个角度来看,歧义字串S有两个可能的断点p1和p2,即位置bmc1和aib1(在切分时,必定选择两个断点中的一个进行切分,但不会同时都进行切分),前者对应SEG1,后者对应SEG2。那么最终哪一个断点成立,可以认为是字串a1…aib1…bmc1…cn。(而不再是词w11,w12,w21,w22)共同作用的结果。因此,我们的注意力自然转移到Couple(bm:c1),Δt(bm:c1),Couple(ai:b1),Δt(ai:b1)上。由于在绝大多数情况下,有m<=2,i+n<=4,故这四个统计值的作用域基本覆盖了整个字串S。换而言之,可以认为交叉型歧义字串S的排歧是将上述四个统计值作为参数的函数,那么可以进行计算各歧义位置的CDT(Couple andDifference of T-test)值,来判断选择如何切分。
CDT(S)=F(Couple(bm:c1),Δt(bm:c1),Couple(a1:b1),Δt(a1:b1)) (公式1)
本发明采用将互信息和t-测试差线性迭加法,只是我们将互信息替换为双字耦合。因为双字耦合度和t-测试差的取值范围相差较大,前者取值范围为0-1,后者取值范围为 -834.5-753.4,这些统计值都是根据大规模语料库的训练所得。所以在进行线性迭加之前先要进行归一化处理。
公式2和公式3中的ucoup和σcoup双字耦合度的均值和均方差,uΔt和σΔt是t-测试差的均值和均方差,这四个值都是根据大规模语料库的训练统计得到的。然后通过公式4将二者叠加起来:
CDT(x,y)=Couple*(xy)+λ*Δt*(x,y) (公式4)
在公式4中,λ的值经过实验比较,发现取λ=0.07时测试得到的切分准确率最高。在确定相关统计量的计算方法以后,可以概括得知本文的交叉型歧义的消除算法步骤如下:
(1)在二元切分词图中,找出句子中所有的交叉型歧义的位置。
(2)计算各交叉型歧义位置的CDT值。
(3)按CDT计算值的大小顺序依次判断歧义位置的切分与否。值越大,结合强度越高,两者越可能结合为一个词组。并且,两个歧义位置在其中一个歧义位置确定之后,与该位置相关的其它歧义位置就不必再进行判断,可以直接选择是切分还是连接了。
从上文分析可知,支持本算法的一个重要资源就是任意两个相邻词组的互邻同现概率矩阵,由于矩阵中的零单元会导致计算除法是分母为零的运算失败,因此需要进行数据平滑处理:令ri是实际统计所得的次数,ri *是经平滑调整后的次数,则:
其中N为进行大规模训练语料库中的总字数,那么:
S为汉字集合的个数。平滑后满足:
即Σp==1 (公式6)
5.未登录词的发现-PMIk算法的实现
算法的步骤如下。
S1:从4元字串中确定出2元的待扩展种子。对于每一个4元字串Wi-1WiWi+1Wi+2,计算中间两元字串WiWi+1和前两元字串Wi-1Wi的PMIk值之和的平均值mean1,以及中间两元字串WiWi+1和后两元字字串Wi+1Wi+2的PMIk值之和的平均值mean2。计算公式如下:
对于4元字串Wi-1WiWi+1Wi+2,如果满足:
则认为字串WiWi+1是一个词或者词的一部分的概率较大,即2元字串WiWi+1为待扩展种子,执行步骤2;否则,认为字串Wi和Wi+1各自成词或是词的边界的概率较大,字串WiWi+1的串频减1。
PMIk(wi,wi+1)>PMIk(wi-1,wi)+mean1
PMIk(wi,wi+1)>PMIk(wi+1,wi+2)+mean2
S2:将t元字串扩展至t+1元字串,其中t∈[2,n-1]。取出待扩展字串Wi,…,Wi+t-1的前一元Wi-1和后一元Wi+t,分别计算PMIk(Wi-1,Wi,…,Wi+t-1)和PMIk(Wi,…,Wi+t-1,Wi+t)。有如下两种可能性。
1)如果PMIk(Wi-1,Wi,…,Wi+t-1)>PMIk(Wi,Wi,…,Wi+t-1),则认为把字串Wi,…,Wi+t-1扩展成 Wi-1,…,Wi+t-1的概率大于扩展成Wi,…,Wi+t的概率,故向前扩展。计算mean=1/2(PMIk(Wi-1,Wi,…,Wi+t-1)+PMIk(Wi,…,W0,W0+1,…,Wi+t-1)),其中o=i或o=i+t-2,如果满足:
PMIk(Wi-1,Wi,…,Wi+t-1)+mean≥PMIk(Wi,…,W0,W0+1,…,Wi+t-1)
则把t元字串Wi,…,Wi+t-1扩展t+1元字串Wi-1,…,Wi+t-1,t=t+1,依次迭代,执行步骤 2;否则,输出t元字串Wi,…,Wi+t-1,执行步骤3。
2)如果PMIk(Wi-1,Wi,…,Wi+t-1)≤PMIk(Wi,Wi,…,Wi+t-1),则认为把字串Wi,…,Wi+t-1扩展成 Wi,…,Wi+t的概率大于扩展成Wi-1,…,Wi+t-1的概率,故向后扩展,计算mean=1/2(PMIk(Wi,…,W0,W0+1,…,Wi+t-1)+PMIk(Wi,…,Wi+t-1,Wi+t)),其中o=i或o=i+t-2,如果满足:
PMIk(Wi,…,Wi+t-1,Wi+t)+mean≥PMIk(Wi,…,W0,W0+1,…,Wi+t-1)
则把t元字串Wi,…,Wi+t-1扩展t+1元字串Wi,…,Wi+t,t=t+1,依次迭代,执行步骤2;否则,输出t元字串Wi,…,Wi+t-1,执行步骤3。
S3:利用可存在性过滤规则。如果t元字串Wi,…,Wi+t-1的串频小于阈值T,则退出算法;否则,执行步骤4。
S4:利用停用词过滤规则。如果t元字串Wi,…,Wi+t-1的任意一个子串包含在停用词集合中,则退出算法;否则,按PMIk(Wi,…,W0,W0+1,…,Wi+t-1)值降序地把字串Wi,…,Wi+t-1加入候选新词链L,执行步骤5。
S5:根据医学专业词库和通用词库,过滤候选新词链L上的核心词汇,执行步骤6。
S6:人工判定,本发明在实现中,建设了新词人工标注系统,可用于将自动发现的未登录词列出,供人工判定入库。
以此种统计加人工的方法,虽然词典的增补效率低于纯统计方法,但它保障了新词增补的质量,对于医学专业语料,由于词汇表达的发散度远小于互联网语料等通用中文语料,并且按专科化划分后,实际词库建设效率和质量完全满足临床文本分析实用需求。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (7)
1.一种基于医学专业词典与统计算法的分词方法,其特征在于,包括以下步骤:
S1、语料预处理:在分词算法执行前,对待分词语料进行断句处理,即利用一些特殊的符号将待分词语料分隔成多个稍微简单一点的短句,再进行分词处理,最后再把各个分词结果组合起来,形成最终的分词结果;分成短句之后,即可进行原子切分,经过原子切分后,待分词语料进一步构成了更短的短字串数组,针对原子切分后的短字串数组,找出所有候选词条,以备进一步分词。
S2、候选词条的表达与产生实现:
①候选词条的表达:原子切分之后通过两个循环把原子之间所有可能的组合,即所有候选词条都找出来;找出所有候选词条以后,将所有字串表示成带权有向无环图,针对带权有向无环图,通过最短路径求解,得出最终分词结果。
(2)基于改进型FMM和RMM产生候选词条:采用改进的正向最大匹配和逆向最大匹配方法找出所有候选词条,从而形成最为完整的候选词条集合;候选词条集合形成后,即需要对其进行分词结果判别,以形成优化分词结果,本发明中,采用K-最短路径,对候选词条进行结果判别。
S3、分词结果判别:通过本专利所述改进型FMM和RMM算法,找出候选词条后,并转换为有向无环图,并通过求解模型求解有向无环图中始末结点间的最短路径K,该最短路径即为切分结果。
S4、分词结果的歧义消除:利用汉字二元语法关系、结合双字耦合度和t_测试差计算各个歧义位置连或者断的概率,并根据概率值来决定歧义位置的连通或切断。
S5、医学词典的构造;
S6、未登录词的发现:基于PMIk算法实现未登录词的发现且未登录词的发现主要分为以下四个阶段,①确定2元待扩展种子;②将2元待扩展种子扩展至2~n元;;③过滤候选新词;④人工判定入库。
2.根据权利要求1所述的一种基于医学专业词典与统计算法的分词方法,其特征在于,所述步骤S1中特殊的符号包括空格、分段符等显式切分标记和标点符号、数字、ASCII 字符以及出现频率高、构词能力差的单字词以及数词、单字等常用量词模式等相关的隐式切分标记。
3.根据权利要求1所述的一种基于医学专业词典与统计算法的分词方法,其特征在于,所述步骤S2中的两个循环包括:第一个循环遍历整个原子序列;第二个循环是当找到一个原子后,不断把后面相邻的原子和该原子组合到一起,与词典数据库中词组作对比,直至词典数据库中不存在该组合。
4.根据权利要求1所述的一种基于医学专业词典与统计算法的分词方法,其特征在于,所述步骤S3中的求解模型如下:设S==C1C2…Cn为待切字串,其中Ci(i=1,2,…n)为单个的汉字字符(即原子),n>=1为字串的长度。对应每个汉字字符,建立一个节点,所有节点组成一个集合。对该集合进行如下操作:
(1)对应每个汉字字符,根据其所表示的汉字字符在字符序列中的位置,建立一个结点数为n+1的带权有向无环图G,并对各个结点分别进行编号为:V0,V1,V2…Vm。
(2)从每个结点i开始,循环一遍。若W=CiCi+1…Cj是一个词,把W加入到切分列表中,即在G中添加边<Vi-1,Vj>;记录该词组所有的信息,比如标出边的权值Lk;然后继续匹配W′=CiCi+1…CjCj+1是否为词,若为词,则在G中继续添加边、记录信息,然后再在末尾添加一个原子,再进行匹配,如此往复;若不为词则跳出此次循环,i++,进入下一个循环。
5.根据权利要求1所述的一种基于医学专业词典与统计算法的分词方法,其特征在于,所述步骤S3中的最短路径K值求解步骤如下:首先进行原子切分;其次根据核心词典,找出待切字段中包含的所有候选词条;然后添加边长构造待切字段的切分的带权有向无环图,将此带权有向无环图的有向边的边长设置为1,然后在从起点到终点的所有路径中,求解出最短路径。每个结点维护一张表,用来记录前K个最短路径,并记录相应路径上当前结点的相关信息。如果同一长度对应多条路径,那么结点的表必须把所有路径信息全部记录下来,最后通过回溯即可求出前K条最短路径。
6.根据权利要求1所述的一种基于医学专业词典与统计算法的分词方法,其特征在于,所述步骤S6中PMIk算法的定义公式如下:
其中,p(x)和p(y)分别表示字串x和y的概率,p(x,y)表示字串x和y的联合概率,PMIk(x,y)表示字串x和y的相关度,也称PMIk值。
7.一种基于医学专业词典与统计算法的分词系统,其特征在于,采用上述任一方法对中文医学语料进行自动分词。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810478904.3A CN110502737B (zh) | 2018-05-18 | 2018-05-18 | 一种基于医学专业词典与统计算法的分词方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810478904.3A CN110502737B (zh) | 2018-05-18 | 2018-05-18 | 一种基于医学专业词典与统计算法的分词方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110502737A true CN110502737A (zh) | 2019-11-26 |
CN110502737B CN110502737B (zh) | 2023-02-17 |
Family
ID=68584338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810478904.3A Active CN110502737B (zh) | 2018-05-18 | 2018-05-18 | 一种基于医学专业词典与统计算法的分词方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110502737B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307759A (zh) * | 2020-11-09 | 2021-02-02 | 西安交通大学 | 一种面向社交网络不规则短文本的粤语分词方法 |
CN114781371A (zh) * | 2022-04-07 | 2022-07-22 | 山东新一代信息产业技术研究院有限公司 | 基于统计和基于词典的中文分词方法 |
CN117389544A (zh) * | 2023-12-13 | 2024-01-12 | 北京宇信科技集团股份有限公司 | 一种人工智能的数据建模方法、装置、介质和设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007058287A (ja) * | 2005-08-22 | 2007-03-08 | Oki Electric Ind Co Ltd | 辞書登録装置,辞書登録方法,およびコンピュータプログラム |
CN101499058A (zh) * | 2009-03-05 | 2009-08-05 | 北京理工大学 | 一种基于类型论的汉语分词方法 |
CN101751386A (zh) * | 2009-12-28 | 2010-06-23 | 华建机器翻译有限公司 | 一种未登录词的识别方法 |
CN101950284A (zh) * | 2010-09-27 | 2011-01-19 | 北京新媒传信科技有限公司 | 中文分词方法及系统 |
CN102662936A (zh) * | 2012-04-09 | 2012-09-12 | 复旦大学 | 融合Web挖掘、多特征与有监督学习的汉英未登录词翻译方法 |
CN102999534A (zh) * | 2011-09-19 | 2013-03-27 | 北京金和软件股份有限公司 | 一种基于逆向最大匹配的中文分词算法 |
CN103020034A (zh) * | 2011-09-26 | 2013-04-03 | 北京大学 | 中文分词方法和装置 |
JP5646792B2 (ja) * | 2012-12-06 | 2014-12-24 | 楽天株式会社 | 単語分割装置、単語分割方法、及び単語分割プログラム |
CN105426539A (zh) * | 2015-12-23 | 2016-03-23 | 成都电科心通捷信科技有限公司 | 一种基于词典的lucene中文分词方法 |
-
2018
- 2018-05-18 CN CN201810478904.3A patent/CN110502737B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007058287A (ja) * | 2005-08-22 | 2007-03-08 | Oki Electric Ind Co Ltd | 辞書登録装置,辞書登録方法,およびコンピュータプログラム |
CN101499058A (zh) * | 2009-03-05 | 2009-08-05 | 北京理工大学 | 一种基于类型论的汉语分词方法 |
CN101751386A (zh) * | 2009-12-28 | 2010-06-23 | 华建机器翻译有限公司 | 一种未登录词的识别方法 |
CN101950284A (zh) * | 2010-09-27 | 2011-01-19 | 北京新媒传信科技有限公司 | 中文分词方法及系统 |
CN102999534A (zh) * | 2011-09-19 | 2013-03-27 | 北京金和软件股份有限公司 | 一种基于逆向最大匹配的中文分词算法 |
CN103020034A (zh) * | 2011-09-26 | 2013-04-03 | 北京大学 | 中文分词方法和装置 |
CN102662936A (zh) * | 2012-04-09 | 2012-09-12 | 复旦大学 | 融合Web挖掘、多特征与有监督学习的汉英未登录词翻译方法 |
JP5646792B2 (ja) * | 2012-12-06 | 2014-12-24 | 楽天株式会社 | 単語分割装置、単語分割方法、及び単語分割プログラム |
CN105426539A (zh) * | 2015-12-23 | 2016-03-23 | 成都电科心通捷信科技有限公司 | 一种基于词典的lucene中文分词方法 |
Non-Patent Citations (6)
Title |
---|
于清等: "适用于医疗卫生领域的中文分词方法研究", 《新疆师范大学学报(自然科学版)》 * |
岑咏华: "一种基于多重哈希词典和K-最短路径算法的中文粗分词方案研究", 《情报理论与实践》 * |
王红等: "俄英医学同义术语的类型划分及英俄、汉俄医学词典编纂启示", 《中国科技术语》 * |
莫建文等: "改进的基于词典的中文分词方法", 《计算机工程与设计》 * |
蒋志鹏等: "面向中文电子病历的词法语料标注研究", 《高技术通讯》 * |
陈玫等: "面向医学知识的中文分词词典设计与实现", 《大众科技》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307759A (zh) * | 2020-11-09 | 2021-02-02 | 西安交通大学 | 一种面向社交网络不规则短文本的粤语分词方法 |
CN112307759B (zh) * | 2020-11-09 | 2024-04-12 | 西安交通大学 | 一种面向社交网络不规则短文本的粤语分词方法 |
CN114781371A (zh) * | 2022-04-07 | 2022-07-22 | 山东新一代信息产业技术研究院有限公司 | 基于统计和基于词典的中文分词方法 |
CN117389544A (zh) * | 2023-12-13 | 2024-01-12 | 北京宇信科技集团股份有限公司 | 一种人工智能的数据建模方法、装置、介质和设备 |
CN117389544B (zh) * | 2023-12-13 | 2024-03-01 | 北京宇信科技集团股份有限公司 | 一种人工智能的数据建模方法、装置、介质和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110502737B (zh) | 2023-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951684B (zh) | 一种医学疾病诊断记录中实体消歧的方法 | |
CN110210037B (zh) | 面向循证医学领域的类别检测方法 | |
CN104834735B (zh) | 一种基于词向量的文档摘要自动提取方法 | |
Shindo et al. | Bayesian symbol-refined tree substitution grammars for syntactic parsing | |
CN105138514B (zh) | 一种基于词典的正向逐次加一字最大匹配中文分词方法 | |
CN106126620A (zh) | 基于机器学习的中文自动文摘方法 | |
CN112765956B (zh) | 基于多任务学习的依存句法分析方法及应用 | |
CN110502737A (zh) | 一种基于医学专业词典与统计算法的分词方法 | |
Taghizadeh et al. | Automatic wordnet development for low-resource languages using cross-lingual wsd | |
Liu et al. | Effectiveness of lexico-syntactic pattern matching for ontology enrichment with clinical documents | |
CN109614620A (zh) | 一种基于HowNet的图模型词义消歧方法和系统 | |
WO2024016516A1 (zh) | 文献数据集上知识图谱实体标注错误识别方法和系统 | |
CN105893481A (zh) | 一种基于马尔可夫聚类的实体间关系消解方法 | |
CN111191464A (zh) | 基于组合距离的语义相似度计算方法 | |
KR101070371B1 (ko) | 한국어 어휘의미망을 이용한 어의 중의성 해소 장치 및 방법 그리고 그를 위한 프로그램을 기록한 기록 매체 | |
Yan et al. | A knowledge-driven generative model for multi-implication chinese medical procedure entity normalization | |
Huang et al. | An unsupervised approach for learning a Chinese IS-A taxonomy from an unstructured corpus | |
Liu et al. | Deep neural network-based recognition of entities in Chinese online medical inquiry texts | |
Ke et al. | Medical entity recognition and knowledge map relationship analysis of Chinese EMRs based on improved BiLSTM-CRF | |
Singkul et al. | Thai dependency parsing with character embedding | |
CN104134017B (zh) | 一种基于紧凑特征表示的蛋白质作用关系对抽取方法 | |
CN106484676A (zh) | 基于句法树和领域特征的生物文本蛋白质指代消解方法 | |
Zhao et al. | ECNU: using traditional similarity measurements and word embedding for semantic textual similarity estimation | |
Zhao et al. | Integrating word embeddings and traditional NLP features to measure textual entailment and semantic relatedness of sentence pairs | |
CN112445887B (zh) | 基于检索的机器阅读理解系统的实现方法及装置 |
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 | ||
CB03 | Change of inventor or designer information |
Inventor after: Zhu Weiguo Inventor after: Sha Ou Inventor after: Wen Siyuan Inventor after: Zhao Congpu Inventor before: Zhu Weiguo Inventor before: Sha Ou Inventor before: Wen Siyuan Inventor before: Zhao Congpu |
|
CB03 | Change of inventor or designer information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |