【技术实现步骤摘要】
一种基于马尔可夫语言模型的缩略词组扩展方法
本专利技术涉及一种缩略词组扩展方法,尤其涉及一种基于马尔可夫语言模型的缩略词组扩展方法。
技术介绍
代码中的方法名、变量名等程序员在编写代码时定义的名称,往往是有意义的,也从一定程度上反映了相关代码的逻辑、业务等。但程序员在编写代码时会使用简洁的缩写,导致可读性变差,不论是人工还是自动化分析代码时都会造成一定的困扰。因此如何把这些缩写的变量名等还原成缩写前的词,从而挖掘出更有价值的信息,对理解程序逻辑业务有非常大的意义。
技术实现思路
本专利技术的目的在于针对现有技术的局限和不足,提供一种基于马尔可夫语言模型的缩略词组扩展方法。本专利技术的目的是通过以下技术方案来实现的:一种基于马尔可夫语言模型的缩略词组扩展方法,包括以下步骤:(1)数据准备:从业务文档中抽取出独立词及其对应扩展词的映射关系,独立词包括标准词和缩略词,其中一个标准词的扩展词是其自身,而一个缩略词可以对应多个扩展词,扩展词可以是任意独立词或独立词组;从独立词到扩展词的映射关系称为扩展表,记为d:W→E,其中为(应用场景中可能出现的)所有独立词的集合,A为字母表,A*表示任意长度字母序列全集,为扩展词序列的集合,如果一个独立词w映射为多个扩展词e1,e2,...,en,则d(w)={e1,e2,...,en},如果一个独立词w不能被扩展(包括不是合法的独立词)映射为多个扩展词e1,e2,...,en,则令d(w)=Φ={se},se表示空字符串(因此Φ不是空集);再令V={w|d(w)≠Φ},称为可扩展的独立词集合,简称可扩展集;根据不同的应用场景可以准 ...
【技术保护点】
1.一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,包括以下步骤:(1)数据准备:从业务文档中抽取出独立词及其对应扩展词的映射关系,独立词包括标准词和缩略词,其中一个标准词的扩展词是其自身,而一个缩略词可以对应多个扩展词,扩展词可以是任意独立词或独立词组;从独立词到扩展词的映射关系称为扩展表,记为d:W→E,其中
【技术特征摘要】
1.一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,包括以下步骤:(1)数据准备:从业务文档中抽取出独立词及其对应扩展词的映射关系,独立词包括标准词和缩略词,其中一个标准词的扩展词是其自身,而一个缩略词可以对应多个扩展词,扩展词可以是任意独立词或独立词组;从独立词到扩展词的映射关系称为扩展表,记为d:W→E,其中为所有独立词的集合,A为字母表,A*表示任意长度字母序列全集,为扩展词序列的集合,如果一个独立词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中的位置,得到新的序列如果所得仍然包含不属于可扩展集V的元素,则对重复步骤(3)得到以此类推直至第I个序列其中任一元素要么要么不能再被切割;所述独立词边界状态模型的训练具体为:通过隐马尔可夫模型对构成独立词的字符序列进行建模,使用维特比算法求最大似然解的方式自动识别复合词中各个独立词的分割点,从而将复合词切割为独立词;(4)对步骤(3)得到的序列中的每个原型词从扩展表中搜索对应的扩展词集合通过全排列得到缩略词组可能的扩展词序列集合(5)通过单词序列概率模型计算每个扩展词序列LE∈EP的概率,根据概率对扩展词序列排序并输出,概率最大的即为缩略词组的最合理的扩展词序列;所述单词序列概率模型的训练具体为:根据业务环境中得到的相关文档准备语料库,利用语料库提供的句子,学习得到单词序列的马尔可夫语言模型,通过该模型评估扩展词序列中相邻单词间的依存概率,从而评估产生的扩展词序列的合理性。2.根据权利要求1所述的一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,所述步骤(1)中,扩展表的内容通过人工统计或者网络爬虫等自动化的方式获取。3.根据权利要求1所述的一种基于马尔可夫语言模型的缩略词组扩展方法,其特征在于,所述步骤(3)中,独立词边界状态模型的训练方法和使用方法具体为:首先,对于一个由n个字符构成的复合词w=<o1,o2,...,on>,欲将其切割为多个独立词的序列,假设正确的切割序列为其中与之间为切割点,k=1,...,t,则w的位置编码序列S(w)定义为序列<s1,s2,...,sn>,其中,当字母ok位于切割序列中某独立词首位时,对应位置编码sk=0,位于某独立词中间位置时,对应位置编码sk=1,ok位于某独立词末尾时,对应位置编码sk=2,即相应地,对于一个...
【专利技术属性】
技术研发人员:李定邦,付晗,杨朝晖,
申请(专利权)人:浙江网新恒天软件有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。