CN108984159B - 一种基于马尔可夫语言模型的缩略词组扩展方法 - Google Patents

一种基于马尔可夫语言模型的缩略词组扩展方法 Download PDF

Info

Publication number
CN108984159B
CN108984159B CN201810623395.9A CN201810623395A CN108984159B CN 108984159 B CN108984159 B CN 108984159B CN 201810623395 A CN201810623395 A CN 201810623395A CN 108984159 B CN108984159 B CN 108984159B
Authority
CN
China
Prior art keywords
word
sequence
independent
words
model
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
CN201810623395.9A
Other languages
English (en)
Other versions
CN108984159A (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.)
Insigma Hengtian Software Ltd
Original Assignee
Insigma Hengtian Software 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 Insigma Hengtian Software Ltd filed Critical Insigma Hengtian Software Ltd
Priority to CN201810623395.9A priority Critical patent/CN108984159B/zh
Publication of CN108984159A publication Critical patent/CN108984159A/zh
Application granted granted Critical
Publication of CN108984159B publication Critical patent/CN108984159B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

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

Abstract

本发明公开了一种基于马尔可夫语言模型的缩略词组扩展方法,该方法首先进行数据准备,从业务文档中抽取出独立词及其对应扩展词的映射关系,从独立词到扩展词的映射关系称为扩展表;其次利用正则表达式,在明确书写的分词位置对缩略词组进行切割,得到原型词序列;然后将原型词序列中不属于可扩展集的原型词认为是复合词,通过隐马尔可夫模型对构成独立词的字符序列进行建模,使用维特比算法求最大似然解的方式自动识别复合词中各个独立词的分割点,从而将复合词切割为独立词;利用单词序列概率模型来评估扩展结果,以此来提高缩略词扩展的准确度。

Description

一种基于马尔可夫语言模型的缩略词组扩展方法
技术领域
本发明涉及一种缩略词组扩展方法,尤其涉及一种基于马尔可夫语言模型的缩略词组扩展方法。
背景技术
代码中的方法名、变量名等程序员在编写代码时定义的名称,往往是有意义的,也从一定程度上反映了相关代码的逻辑、业务等。但程序员在编写代码时会使用简洁的缩写,导致可读性变差,不论是人工还是自动化分析代码时都会造成一定的困扰。因此如何把这些缩写的变量名等还原成缩写前的词,从而挖掘出更有价值的信息,对理解程序逻辑业务有非常大的意义。
发明内容
本发明的目的在于针对现有技术的局限和不足,提供一种基于马尔可夫语言模型的缩略词组扩展方法。
本发明的目的是通过以下技术方案来实现的:一种基于马尔可夫语言模型的缩略词组扩展方法,包括以下步骤:
(1)数据准备:从业务文档中抽取出独立词及其对应扩展词的映射关系,独立词包括标准词和缩略词,其中一个标准词的扩展词是其自身,而一个缩略词可以对应多个扩展词,扩展词可以是任意独立词或独立词组;从独立词到扩展词的映射关系称为扩展表,记为d:W→E,其中
Figure BDA0001698566190000011
为(应用场景中可能出现的)所有独立词的集合,A为字母表,A*表示任意长度字母序列全集,
Figure BDA0001698566190000012
为扩展词序列的集合,如果一个独立词w映射为多个扩展词e1,e2,...,en,则d(w)={e1,e2,...,en},如果一个独立词w不能被扩展(包括不是合法的独立词)映射为多个扩展词e1,e2,...,en,则令d(w)=Φ={se},se表示空字符串(因此Φ不是空集);再令V={w|d(w)≠Φ},称为可扩展的独立词集合,简称可扩展集;根据不同的应用场景可以准备不同的扩展表;
(2)利用正则表达式,在明确书写的分词位置,对缩略词组进行切割,得到原型词序列LP=<p1,p2,...,pn>,其中明确书写的分词位置是指除字母和数字之外的符号出现的位置(例如空格、下划线、中划线等),以及字母和数字直接相邻的位置(例如“A0”中“A”与“0”之间的位置);
(3)将LP中不属于可扩展集V的原型词pi(即d(pi)=Φ)认为是复合词,通过独立词边界状态模型对复合词pi进行切割,将切割所得序列替换pi在LP中的位置,得到新的序列
Figure BDA0001698566190000021
如果所得
Figure BDA0001698566190000022
仍然包含不属于可扩展集V的元素,则对
Figure BDA0001698566190000023
重复步骤(3)得到
Figure BDA0001698566190000024
以此类推直至第I个序列
Figure BDA0001698566190000025
其中任一元素
Figure BDA0001698566190000026
要么
Figure BDA0001698566190000027
要么
Figure BDA0001698566190000028
不能再被切割;
所述独立词边界状态模型的训练具体为:通过隐马尔可夫模型对构成独立词的字符序列进行建模,使用维特比算法求最大似然解的方式自动识别复合词中各个独立词的分割点,从而将复合词切割为独立词;
(4)对步骤(3)得到的序列
Figure BDA0001698566190000029
中的每个原型词
Figure BDA00016985661900000210
从扩展表中搜索对应的扩展词集合
Figure BDA00016985661900000211
通过全排列得到缩略词组可能的扩展词序列集合
Figure BDA00016985661900000212
(即各集合Cj的笛卡尔乘积);
(5)通过单词序列概率模型计算每个扩展词序列LE∈EP的概率,根据概率对扩展词序列排序并输出,概率最大的即为缩略词组的最合理的扩展词序列;
所述单词序列概率模型的训练具体为:根据业务环境中得到的相关文档准备语料库,利用语料库提供的句子,学习得到单词序列的马尔可夫语言模型,通过该模型评估扩展词序列中相邻单词间的依存概率,从而评估产生的扩展词序列的合理性。
进一步地,所述步骤(1)中,扩展表的内容通过人工统计或者网络爬虫等自动化的方式获取。
进一步地,所述步骤(3)中,独立词边界状态模型的训练方法和使用方法具体为:
首先,对于一个由n个字符构成的复合词w=<o1,o2,...,on>,欲将其切割为多个独立词的序列,假设正确的切割序列为
Figure BDA0001698566190000031
其中
Figure BDA0001698566190000032
Figure BDA0001698566190000033
之间(k=1,...,t)为切割点,则w的位置编码序列S(w)定义为序列<s1,s2,...,sn>,其中,即当字母ok位于切割序列中某独立词首位时,对应位置编码sk=0,位于某独立词中间位置时,对应位置编码sk=1,ok位于某独立词末尾时,对应位置编码sk=2,即
Figure BDA0001698566190000034
相应地,对于一个独立词w'=<o'1,o'2,...,o'm>,由于不做分割,对应的位置编码序列为S(w')=<s1,s2,...,sm>,其中
Figure BDA0001698566190000035
基于以上定义,利用可扩展集V,使用集合{<w,S(w)>|w∈V}作为训练集,训练一个隐马尔可夫模型MV,其中每个训练样本<w,S(w)>中,独立词w的字符序列作为观测序列,S(w)作为隐藏状态序列;关于使用观测序列和隐藏状态序列样本,训练隐马尔可夫模型的方法,在此不做赘述;如此得到的隐马尔可夫模型MV即为步骤(3)中所指的独立词边界状态模型;
在获得独立词边界状态模型MV之后,对于一个待切割的复合词
Figure BDA0001698566190000036
将其本身作为观测序列,使用模型MV,通过维特比算法计算出最大概率的位置隐状态序列
Figure BDA0001698566190000037
将S*(wx)解释为复合词wx对应的位置编码序列,从而得到wx中每个字符所对应的位置编码,如果前后相邻的两个字符oi和oi+1的编码分别为
Figure BDA0001698566190000041
Figure BDA0001698566190000042
则在这两个字符之间切割wx,得到wx的切割序列
Figure BDA0001698566190000043
如果不存在这样的字符oi和oi+1,则认为wx不可分割;关于使用隐马尔可夫模型以及维特比算法,求得观测序列对应的隐状态序列的方法,在此不做赘述。
进一步地,所述步骤(5)中,单词序列概率模型的训练方法具体为:
通过马尔可夫语言模型评估单词间的依存概率来进行评估;根据业务环境中得到的相关文档准备语料库,利用语料库提供的句子,学习得到模型来评估产生的扩展词序列的合理性;
在马尔可夫语言模型中,对于一个长度为T的句子L={l1,l2,...,lT},其中li∈W(i=1..T)为句子L中第i个单词,假设句子中任意单词li出现概率P(li|li-1li-2...l1)只与前面n个单词有关(n通常取1~3)即:
P(li|li-1li-2...l1)=P(li|li-1li-2...li-n)
基于语料库中全部的句子,通过统计句子中单词序列的计数估算转移概率:
Figure BDA0001698566190000044
其中count(li-n...li-1li)表示单词序列li-n...li-1li在全部语料中出现的次数,count(li-n...li-1)代表上一个单词序列的前缀li-n...li-1在全部语料中出现的次数;但由于数据集的数据有限性,上述公式的分子及分母有可能会出现0,显然对于预测一个未知的单词概率等于0是不合理的,因此,本发明采用加一平滑算法来计算转移概率,通过如下公式估算转移概率:
Figure BDA0001698566190000045
其中|W|是独立词的总数,
Figure BDA0001698566190000046
是一个人为指定的0到1之间的常数;这样就确保了转移概率矩阵中不会出现为0的元素,并且尽可能的接近真实分布;
基于上述估算公式得到马尔可夫语言模型,对于长度为T的扩展词序列LE=<e1e2...eT>∈EP的概率支持度S(LE)为:
Figure BDA0001698566190000051
长度越长的扩展词序列,使用上述公式计算得到的概率支持度倾向于越小,相互比较时缺乏公平性;为消除这一影响,使用以下公式计算扩展词序列的归一化概率支持度Snorm(LE):
Figure BDA0001698566190000052
其中|LE|表示序列LE的长度。
进一步地,为所述步骤(5)训练单词序列概率模型之前,可选择预先对语料库中所有单词做词根化和词形还原处理,忽略基于同一单词词根的不同词性、不同时态和不同单复数形式的单词差别;如果这么做,在所述步骤(4)的最后,需要相应地对所得扩展词序列集合EP中每个扩展词序列中每个单词,进行相同的词根化和词形还原处理,从而匹配在步骤(5)将要使用的单词序列概率模型。
本发明的有益效果是:本发明主要提出了一种将程序中的变量名、方法名等缩略词组还原的方法,并通过独立词边界状态模型将复合词切割成独立词,以及利用单词序列概率模型来评估扩展结果,以此来提高缩略词扩展的准确度。
附图说明
图1是本发明方法整体流程示意图;
图2是缩略词组预处理的示意图;
图3是复合词切割的示意图;
图4是隐马尔可夫模型的示意图;
图5是缩略词组展开的示意图;
图6是概率计算的示意图。
具体实施方式
下面结合附图详细描述本发明,本发明的目的和效果将变得更加明显。
本发明提供的一种基于马尔可夫语言模型的缩略词组扩展方法,整体流程如图1所示,其中包括以下步骤:
(1)数据准备:根据不同的业务需求,通过人工统计或者网络爬虫等自动化的方式从相关业务文档中抽取出对应的独立词以及对应扩展词(相同的独立词在不同上下文中可能对应不同的扩展词),记录在扩展表中;
(2)模型训练
2.1独立词边界状态模型:本模型主要用于切割复合词。切割复合词的一种简单算法是把每两个相邻字母都作为可能的切割点,然后逐一验证哪一种分割可以展开,缺点是切割方式的可能性非常多,以及并没有显而易见的比较方案,决定哪一种分割最好。本发明则是首先通过隐马尔可夫模型对构成独立词的字符序列进行建模,使用维特比算法求最大似然解的方式自动识别复合词中各个独立词的分割点。具体算法模型如下:
假设对于一个由n个字符构成的复合词w=<o1,o2,...,on>,欲将其切割为多个独立词的序列,假设正确的切割序列为
Figure BDA0001698566190000061
其中
Figure BDA0001698566190000062
Figure BDA0001698566190000063
之间(k=1,...,t)为切割点,则w的位置编码序列S(w)定义为序列<s1,s2,...,sn>,其中,即当字母ok位于切割序列中某独立词首位时,对应位置编码sk=0,位于某独立词中间位置时,对应位置编码sk=1,ok位于某独立词末尾时,对应位置编码sk=2,即
Figure BDA0001698566190000064
相应地,对于一个独立词w'=<o'1,o'2,...,o'm>,由于不做分割,对应的位置编码序列为S(w')=<s1,s2,...,sm>,其中
Figure BDA0001698566190000065
如图4所示,例如对于独立词wapple=<o1=a,o2=p,o3=p,o4=l,o5=e>。o1的位置编码为0,o2,o3,o4的位置编码为1,o5的位置编码为2,因此对应的状态序列S(wapple)=<s1=0,s2=1,s3=1,s4=1,s5=2>。
利用扩展表中包含的可扩展词集V,使用集合{<w,S(w)>|w∈V}作为训练集,可以训练用于预测位置编码的隐马尔科夫链模型MV,其中训练样本<w,S(w)>中w作为观测状态,S(w)作为隐状态。
2.2单词序列概率模型:算法需要对产的扩展词序列进行合理性评估,通常情况下是每个单词分别考虑合理性,本发明通过马尔可夫语言模型评估单词间的依存概率来进行评估。根据业务环境中得到的相关文档准备语料库,利用语料库提供的句子,学习得到模型来评估产生的扩展词序列的合理性。
在马尔可夫语言模型中,假设句子中任意单词出现概率只与前面n个单词有关(n通常取1~3);也就是说,对于一个长度为T的句子L={l1,l2,...,lT},其中li∈W(i=1..T)为句子L中第i个单词,假设:
P(li|li-1li-2...l1)=P(li|li-1li-2...li-n)
基于语料库中全部的句子,通过统计句子中单词序列的计数可以估算转移概率:
Figure BDA0001698566190000071
其中count(vi-n...vi-1vi)表示单词序列vi-n...vi-1vi在全部语料中出现的次数,count(vi-n...vi-1vi)代表上一个单词序列的前缀vi-n...vi-1vi在全部语料中出现的次数。但由于数据集的数据有限性,上述公式的分子及分母有可能会出现0,显然对于预测一个未知的单词概率等于0是不合理的,因此,本发明采用加一平滑算法来计算转移概率,通过如下公式估算转移概率:
Figure BDA0001698566190000072
其中|W|是独立词的总数,
Figure BDA0001698566190000081
是一个人为指定的0到1之间的常数。这样就确保了转移概率矩阵中不会出现为0的元素,并且尽可能的接近真实分布。
基于上述估算公式所得估算迁移概率
Figure BDA0001698566190000082
即构成本发明所说的单词序列概率模型。
(3)缩略词组展开
3.1如图2所示,利用正则表达式,在明确书写的分词位置,对缩略词组进行切割,得到原型词序列LP=<p1,p2,...,pn>,其中明确书写的分词位置是指除字母和数字之外的符号出现的位置(例如空格、下划线、中划线等),以及字母和数字直接相邻的位置(例如“A0”中“A”与“0”之间的位置);
3.2将LP中不属于扩展表中独立词的原型词pi(即d(pi)=Φ)认为是复合词,通过独立词边界状态模型对复合词pi进行切割,具体切割方法为:
对于待切割的复合词
Figure BDA0001698566190000083
将其本身作为观测序列,根据2.1所得隐马尔可夫模型MV,通过维特比算法计算出最大概率的位置隐状态序列
Figure BDA0001698566190000084
将S*(wx)解释为复合词wx对应的位置编码序列,根据字母的位置编码对wx切割,即相邻的位置编码分别为2和0的对应字母之间为分割处。例如,缩略词“WRTRPT”对应的观测序列为wWRTRPT=<o1=W,o2=R,o3=T,o4=R,o5=P,o6=T>,通过模型计算后可以得到对应的状态序列S(wWRTRPT)=<s1=0,s2=1,s3=2,s4=0,s5=1,s6=2>,第一个“T”对应位置编码s3=2,第二个“R”对应位置编码s4=0,因此可以将“WRTRPT”切割成“WRTRPT”。
将切割所得序列替换pi在LP中的位置,得到新的序列
Figure BDA0001698566190000085
如果所得
Figure BDA0001698566190000086
仍然包含属于独立词的元素,则对
Figure BDA0001698566190000087
重复步骤3.2得到
Figure BDA0001698566190000088
以此类推直至第I个序列
Figure BDA0001698566190000089
其中任一元素
Figure BDA00016985661900000810
要么
Figure BDA00016985661900000811
要么
Figure BDA00016985661900000812
不能再被切割。
3.3对步骤3.2得到的序列
Figure BDA0001698566190000091
中的每个原型词
Figure BDA0001698566190000092
从扩展表中搜索对应的扩展词集合
Figure BDA0001698566190000093
通过全排列得到缩略词组可能的扩展词序列集合
Figure BDA0001698566190000094
(即各集合Cj的笛卡尔乘积);如果在训练单词序列概率模型时,对输入语料中的单词进行了词根化和词形还原处理,那么此处需要对EP中每个序列e的每个单词进行相同的词根化和词形还原处理。
3.4最后计算扩展词序列的概率,如图5所示,对于3.3得到的扩展词序列集合EP中的每一个扩展词序列LE=<e1e2...eT>∈EP,通过单词序列概率模型来计算该扩展词序列的概率支持度为:
Figure BDA0001698566190000095
长度越长的扩展词序列,使用上述公式计算得到的概率支持度倾向于越小,相互比较时缺乏公平性;为消除这一影响,使用以下公式计算扩展词序列的归一化概率支持度:
Figure BDA0001698566190000096
其中|LE|表示序列LE的长度。
根据归一化概率支持度对扩展形式序列排序并输出,概率支持度最大的序列为最合理的缩略词组扩展词序列。

Claims (5)

1.一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,包括以下步骤:
(1)数据准备:从业务文档中抽取出独立词及其对应扩展词的映射关系,独立词包括标准词和缩略词,其中一个标准词的扩展词是其自身,而一个缩略词可以对应多个扩展词,扩展词可以是任意独立词或独立词组;从独立词到扩展词的映射关系称为扩展表,记为d:W→E,其中
Figure FDA00016985661800000110
为所有独立词的集合,A为字母表,A*表示任意长度字母序列全集,
Figure FDA0001698566180000019
为扩展词序列的集合,如果一个独立词w映射为多个扩展词e1,e2,...,en,则d(w)={e1,e2,...,en},如果一个独立词w不能被扩展映射为多个扩展词e1,e2,...,en,则令d(w)=Φ={se},se表示空字符串;再令V={w|d(w)≠Φ},称为可扩展的独立词集合,简称可扩展集;根据不同的应用场景可以准备不同的扩展表;
(2)利用正则表达式,在明确书写的分词位置,对缩略词组进行切割,得到原型词序列LP=<p1,p2,...,pn>,其中明确书写的分词位置是指除字母和数字之外的符号出现的位置,以及字母和数字直接相邻的位置;
(3)将LP中不属于可扩展集V的原型词pi认为是复合词,通过独立词边界状态模型对复合词pi进行切割,将切割所得序列替换pi在LP中的位置,得到新的序列
Figure FDA0001698566180000011
如果所得
Figure FDA0001698566180000012
仍然包含不属于可扩展集V的元素,则对
Figure FDA0001698566180000013
重复步骤(3)得到
Figure FDA0001698566180000014
以此类推直至第I个序列
Figure FDA0001698566180000015
其中任一元素
Figure FDA0001698566180000016
要么
Figure FDA0001698566180000017
要么
Figure FDA0001698566180000018
不能再被切割;
所述独立词边界状态模型的训练具体为:通过隐马尔可夫模型对构成独立词的字符序列进行建模,使用维特比算法求最大似然解的方式自动识别复合词中各个独立词的分割点,从而将复合词切割为独立词;
(4)对步骤(3)得到的序列
Figure FDA0001698566180000021
中的每个原型词
Figure FDA0001698566180000022
从扩展表中搜索对应的扩展词集合
Figure FDA0001698566180000023
通过全排列得到缩略词组可能的扩展词序列集合
Figure FDA0001698566180000024
(5)通过单词序列概率模型计算每个扩展词序列LE∈EP的概率,根据概率对扩展词序列排序并输出,概率最大的即为缩略词组的最合理的扩展词序列;
所述单词序列概率模型的训练具体为:根据业务环境中得到的相关文档准备语料库,利用语料库提供的句子,学习得到单词序列的马尔可夫语言模型,通过该模型评估扩展词序列中相邻单词间的依存概率,从而评估产生的扩展词序列的合理性。
2.根据权利要求1所述的一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,所述步骤(1)中,扩展表的内容通过人工统计或者网络爬虫等自动化的方式获取。
3.根据权利要求1所述的一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,所述步骤(3)中,独立词边界状态模型的训练方法和使用方法具体为:
首先,对于一个由n个字符构成的复合词w=<o1,o2,...,on>,欲将其切割为多个独立词的序列,假设正确的切割序列为
Figure FDA0001698566180000025
其中
Figure FDA0001698566180000026
Figure FDA0001698566180000027
之间为切割点,k=1,...,t,则w的位置编码序列S(w)定义为序列<s1,s2,...,sn>,其中,当字母ok位于切割序列中某独立词首位时,对应位置编码sk=0,位于某独立词中间位置时,对应位置编码sk=1,ok位于某独立词末尾时,对应位置编码sk=2,即
Figure FDA0001698566180000028
相应地,对于一个独立词w'=<o'1,o'2,...,o'm>,由于不做分割,对应的位置编码序列为S(w')=<s1,s2,...,sm>,其中
Figure FDA0001698566180000031
基于以上定义,利用可扩展集V,使用集合{<w,S(w)>|w∈V}作为训练集,训练一个隐马尔可夫模型MV,其中每个训练样本<w,S(w)>中,独立词w的字符序列作为观测序列,S(w)作为隐藏状态序列;使用观测序列和隐藏状态序列样本,训练隐马尔可夫模型;如此得到的隐马尔可夫模型MV即为步骤(3)中所述的独立词边界状态模型;
在获得独立词边界状态模型MV之后,对于一个待切割的复合词
Figure FDA0001698566180000032
将其本身作为观测序列,使用模型MV,通过维特比算法计算出最大概率的位置隐状态序列
Figure FDA0001698566180000033
将S*(wx)解释为复合词wx对应的位置编码序列,从而得到wx中每个字符所对应的位置编码,如果前后相邻的两个字符oi和oi+1的编码分别为
Figure FDA0001698566180000034
Figure FDA0001698566180000035
则在这两个字符之间切割wx,得到wx的切割序列
Figure FDA0001698566180000036
如果不存在这样的字符oi和oi+1,则认为wx不可分割。
4.根据权利要求1所述的一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,所述步骤(5)中,单词序列概率模型的训练方法具体为:
通过马尔可夫语言模型评估单词间的依存概率来进行评估;根据业务环境中得到的相关文档准备语料库,利用语料库提供的句子,学习得到模型来评估产生的扩展词序列的合理性;
在马尔可夫语言模型中,对于一个长度为T的句子L={l1,l2,...,lT},其中li∈W(i=1..T)为句子L中第i个单词,假设句子中任意单词li出现概率P(li|li-1li-2...l1)只与前面n个单词有关即:
P(li|li-1li-2...l1)=P(li|li-1li-2...li-n)
基于语料库中全部的句子,通过统计句子中单词序列的计数估算转移概率:
Figure FDA0001698566180000041
其中count(li-n...li-1li)表示单词序列li-n...li-1li在全部语料中出现的次数,count(li-n...li-1)代表上一个单词序列的前缀li-n...li-1在全部语料中出现的次数;上述公式的分子及分母有可能会出现0,采用加一平滑算法来计算转移概率,通过如下公式估算转移概率:
Figure FDA0001698566180000042
其中|W|是独立词的总数,
Figure FDA0001698566180000043
是一个人为指定的0到1之间的常数;
基于上述估算公式得到马尔可夫语言模型,对于长度为T的扩展词序列LE=<e1e2...eT>∈EP的概率支持度S(LE)为:
Figure FDA0001698566180000044
使用以下公式计算扩展词序列的归一化概率支持度Snorm(LE):
Figure FDA0001698566180000045
其中|LE|表示序列LE的长度。
5.根据权利要求1所述的一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,为所述步骤(5)训练单词序列概率模型之前,可选择预先对语料库中所有单词做词根化和词形还原处理,忽略基于同一单词词根的不同词性、不同时态和不同单复数形式的单词差别;如果这么做,在所述步骤(4)的最后,需要相应地对所得扩展词序列集合EP中每个扩展词序列中每个单词,进行相同的词根化和词形还原处理,从而匹配在步骤(5)将要使用的单词序列概率模型。
CN201810623395.9A 2018-06-15 2018-06-15 一种基于马尔可夫语言模型的缩略词组扩展方法 Active CN108984159B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810623395.9A CN108984159B (zh) 2018-06-15 2018-06-15 一种基于马尔可夫语言模型的缩略词组扩展方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810623395.9A CN108984159B (zh) 2018-06-15 2018-06-15 一种基于马尔可夫语言模型的缩略词组扩展方法

Publications (2)

Publication Number Publication Date
CN108984159A CN108984159A (zh) 2018-12-11
CN108984159B true CN108984159B (zh) 2021-06-15

Family

ID=64541405

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810623395.9A Active CN108984159B (zh) 2018-06-15 2018-06-15 一种基于马尔可夫语言模型的缩略词组扩展方法

Country Status (1)

Country Link
CN (1) CN108984159B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110209755B (zh) * 2019-06-13 2021-06-18 思必驰科技股份有限公司 Poi导航地址的扩展方法及系统
CN110889281B (zh) * 2019-11-21 2023-10-17 深圳无域科技技术有限公司 一种缩略词展开式的识别方法及装置
CN111160024B (zh) * 2019-12-30 2023-08-15 广州广电运通信息科技有限公司 基于统计的中文分词方法、系统、装置和存储介质
CN113419720B (zh) * 2021-07-06 2022-01-07 北京理工大学 一种面向源代码的缩写词扩展必要性自动判定方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102693723A (zh) * 2012-04-01 2012-09-26 北京安慧音通科技有限责任公司 一种基于子空间的非特定人孤立词识别方法及装置
US8805686B2 (en) * 2008-10-31 2014-08-12 Soundbound, Inc. Melodis crystal decoder method and device for searching an utterance by accessing a dictionary divided among multiple parallel processors
CN104199933A (zh) * 2014-09-04 2014-12-10 华中科技大学 一种多模态信息融合的足球视频事件检测与语义标注方法
CN104346379A (zh) * 2013-07-31 2015-02-11 克拉玛依红有软件有限责任公司 一种基于逻辑和统计技术的数据元识别方法
CN104572849A (zh) * 2014-12-17 2015-04-29 西安美林数据技术股份有限公司 基于文本语义挖掘的标准化自动建档方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805686B2 (en) * 2008-10-31 2014-08-12 Soundbound, Inc. Melodis crystal decoder method and device for searching an utterance by accessing a dictionary divided among multiple parallel processors
CN102693723A (zh) * 2012-04-01 2012-09-26 北京安慧音通科技有限责任公司 一种基于子空间的非特定人孤立词识别方法及装置
CN104346379A (zh) * 2013-07-31 2015-02-11 克拉玛依红有软件有限责任公司 一种基于逻辑和统计技术的数据元识别方法
CN104199933A (zh) * 2014-09-04 2014-12-10 华中科技大学 一种多模态信息融合的足球视频事件检测与语义标注方法
CN104572849A (zh) * 2014-12-17 2015-04-29 西安美林数据技术股份有限公司 基于文本语义挖掘的标准化自动建档方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于隐马尔可夫模型的查询扩展方法;矫健;《计算机科学》;20141231(第12期);168-188 *

Also Published As

Publication number Publication date
CN108984159A (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
CN108460014B (zh) 企业实体的识别方法、装置、计算机设备及存储介质
CN108984159B (zh) 一种基于马尔可夫语言模型的缩略词组扩展方法
CN107220235B (zh) 基于人工智能的语音识别纠错方法、装置及存储介质
CN106649783B (zh) 一种同义词挖掘方法和装置
CN110597997B (zh) 一种军事想定文本事件抽取语料库迭代式构建方法及装置
CN108804423B (zh) 医疗文本特征提取与自动匹配方法和系统
CN109902159A (zh) 一种基于自然语言处理的智能运维语句相似度匹配方法
CN109145260B (zh) 一种文本信息自动提取方法
CN110795938B (zh) 文本序列分词方法、装置及存储介质
CN113553853B (zh) 命名实体识别方法、装置、计算机设备及存储介质
CN112016294B (zh) 一种基于文本的新闻重要性评估方法、装置及电子设备
CN112364623A (zh) 基于Bi-LSTM-CRF的三位一体字标注汉语词法分析方法
CN111651986A (zh) 事件关键词提取方法、装置、设备及介质
CN113033204A (zh) 信息实体抽取方法、装置、电子设备和存储介质
CN109858025B (zh) 一种地址标准化语料的分词方法及系统
CN111178051A (zh) 建筑信息模型自适应的中文分词方法及装置
CN117217315B (zh) 一种利用大语言模型生成高质量问答数据的方法及装置
CN112784009A (zh) 一种主题词挖掘方法、装置、电子设备及存储介质
CN116205211A (zh) 基于大规模预训练生成模型的文档级简历解析方法
CN115935914A (zh) 一种入院记录缺失文本补充方法
CN112417823A (zh) 一种中文文本语序调整和量词补全方法及系统
Howard Phonetic spelling algorithm implementations for R
CN111680146A (zh) 确定新词的方法、装置、电子设备及可读存储介质
CN113419720B (zh) 一种面向源代码的缩写词扩展必要性自动判定方法
CN112966510A (zh) 一种基于albert的武器装备实体抽取方法、系统及存储介质

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