一种结合相似度和图匹配的老-汉双语句子对齐方法与流程

文档序号:15462408发布日期:2018-09-18 18:29阅读:257来源:国知局

本发明涉及一种结合相似度和图匹配的老-汉双语句子对齐方法,属于自然语言处理和机器学习技术领域。



背景技术:

双语语料是统计机器翻译、跨语言检索、双语词典构建等研究领域的重要基础资源,双语语料的数量与质量很大程度上影响甚至决定了相关任务的最终结果。而平行句对的挖掘则是构建双语语料的关键技术,因而具有重要的研究价值。很多情况下,双语语料我们可以获得,但是得到的文本通常并不是以句子为单位对齐的,例如有些是以段落或者按照整篇文章来对齐的。这种情况下,就需要将这些不是以句子为单位对齐的语料整理成句子对齐格式,从而进行平行句对的挖掘。



技术实现要素:

本发明要解决的技术问题是提供一种结合相似度和图匹配的老-汉双语句子对齐方法,能够有效地从双语语料库中挖掘出平行句对,将老-汉双语句子相似度的计算和二部图的最佳匹配算法充分结合,能够有效提高句子对齐的准确率。

本发明采用的技术方案是:一种结合相似度和图匹配的老-汉双语句子对齐方法,包括如下步骤:

Step1、针对老-汉双语平行语料中的对齐片段,分别提取老挝语和汉语的特征词生成特征词列表,进而生成老挝语和汉语特征词的候选相似;

Step1.1、首先计算每一个对齐片段中老挝语和汉语的词频TF与反文档IDF比值的频率值,即TF/IDF,以此来确定老挝语和汉语中的一个词是否为特征词,其中,某一个词w的计算方法分别表示为公式(1)和(2)所示:

其中WNw表示词w在片段P中的词频,WNp表示一个片段p包含的总的词汇数,DNt表示语料中所有对齐片段的总数量,DNw表示在所有片段中包含词w的片段的数量,TFw为词w的词频,IDFw为词w的反文档,则词w的TF/IDF值的计算方法如公式(3)所示:

设定一个阈值,将老挝语和汉语中TF/IDF大于此阈值的词作为各自的特征词,并形成老挝语和汉语的特征词列表;

Step1.2、分别按照TF/IDF值的大小对老挝语和汉语的特征词列表中的特征词进行排序,在各自的列表中处于相似位置的词是互为译文的;

Step1.3、根据排序后的特征词列表,选择在列表中分布相近的词汇作为候选相似对,依次针对老挝语特征词列表中的每一个特征词,以对应的汉语特征词为中心选取特定数目的汉语特征词,作为老挝语特征词的候选相似;同理根据汉语特征词列表中的每一个特征词也选取特定数目的老挝语特征词,作为其特征词的候选相似;

Step2、根据老挝语和汉语的特征词列表和候选相似生成候选相似对列表,此列表中的每一个相似对都是可能互为翻译的老挝语特征词和汉语特征词,此时需要计算每一个相似对的相似概率,计算方法如公式(4)和(5)所示:

在一个相似对中,定义老挝语特征词LWi、汉语特征词CWj,则这两个特征词之间的相似概率计算如下:

其中p(LWi|CWj)的计算如公式(5)所示:

同理可以算出p(CWj|LWi)的计算结果,

公式(5)中,Num(LWi)为LWi在CWj的候选相似集合中的出现次数,frequency(CWj)是CWj的词频,LWi为老挝语第i个特征词,CWj为汉语第j个特征词;

Step3、根据候选相似对列表中的每一个相似对生成最初老-汉双语词典,词典中的每一个条目包括了老挝语和汉语特征词对以及相似概率;

Step4、确定好最初老-汉双语词典之后,通过词典中的特征词在双语语料中的上下文来扩展双语词典,形成最终的老-汉双语词典;

Step5、基于最终的老-汉双语词典,可以得到老挝语句子中每一个特征词对应的候选相似集合,得到老挝语句子的相似结果;

Step6、基于Step3得到的相似概率和每一个相似对的相似概率,计算出老挝语句子与汉语句子之间的相似度值:

利用老挝语特征词在老挝语句子中的出现次数、汉语特征词在汉语句子中的出现次数以

及老挝语和汉语特征词的相似概率计算老-汉双语句子的相似度值,句子相似度值计算如公式(6)所示:

其中是老挝语特征词LWi在老挝语句子L中的出现次数,是汉语特征词CWj在汉语句子C中的出现次数,Sim(LWi,CWj)表示老挝语特征词LWi和汉语特征词CWj的相似概率,计算结果如公式(4)所示;

Step7、根据双语句子长度信息,计算出老挝语和汉语句子长度比例值:

Step7.1、定义句子长度比例值,计算公式如公式(7)所示:

上述公式中LChiText与LLaoText分别汉语词汇集与老挝语词汇集中的词汇个数;

Step7.2、根据老挝语和汉语句子长度比信息,预先设定阈值,如果计算出的句子长度比例值大于阈值,则其值加入到最终句子相似度计算中去,反之舍去;

Step8、综合Step6和Step7的计算结果,计算出最终老挝语和汉语句子的句子相似度值:

老挝语句子Li和汉语句子Cj的相似度计算公式如公式(8)所示:

Sim(Li,Cj)=Simw(L,C)+Sl(L,C) (8);

Step9、在得到老挝语和汉语的句子相似度值之后,将双语句子作为二部图的顶点,句子相似度作为连边的权值,使用二部图最大权匹配(KM)算法求得最佳匹配,完成老挝语和汉语的句子对齐。

具体地,所述的Step3的具体步骤如下;

Step3.1、预先设定阈值,选取相似概率大于阈值的相似对,加入到最初老-汉双语词典;

Step3.2、将Step2计算出的每一个相似对的相似概率加入到最初老-汉双语词典中,成为词典中每个条目的内容。

具体地,所述的Step4的具体步骤如下:

Step4.1、将最初老-汉双语词典中的每一个条目中的老挝语和汉语特征词对作为种子相似对,在此基础上,结合其上下文来扩展,不断迭代进行扩展,一直到不能产生新的词典条目为止;

Step4.2、扩充结束后便得到了最终的老-汉双语词典。

具体地,所述的对齐片段为段落对齐片段或者是篇章对齐片段。

本发明的有益效果是:

(1)本发明的结合相似度和图匹配的老-汉双语句子对齐方法,与传统的基于长度、基于词汇、两者融合的方法相比较,会提高句子对齐的准确率,简化句子对齐的流程。

(2)本发明的结合相似度和图匹配的老-汉双语句子对齐方法,充分考虑了老挝语和汉语句子中的词汇互译信息、相似概率,构建老-汉双语词典。考虑双语句子长度的因素,并且发现对齐的双语句对的长度具有一定的比例特征,计算比例特征值,综合之后,以此计算老-汉双语句子的句子相似度值,使得老-汉双语句子相似度计算具有较高的可靠性。

(3)本发明的结合相似度和图匹配的老-汉双语句子对齐方法,借助二部图将句子对齐问题转化为二部图的最佳匹配问题,充分利用句子相似度值作为二部图连边的权值,使用二部图的最佳匹配算法求得最佳匹配得到句珠,即挖掘出平行句对进行句对齐。图匹配算法避免了动态规划算法中最优子结构和重叠子结构的限制,使得句子匹配的范围更大,可以有效地提高句子对齐的准确率。

(4)本发明的结合相似度和图匹配的老-汉双语句子对齐方法,为了选择出适合本发明的最佳的二部图匹配算法,本发明对三种匹配算法进行了对比分析,从而发现二部图的最大权匹配算法对齐的效果最好。

附图说明

图1为本发明中的总体流程图。

具体实施方式

为了更详细的描述本发明和便于本领域人员的理解,下面结合附图以及实施例对本发明做进一步的描述,本部分的实施例用于解释说明本发明,便于理解的目的,不以此来限制本发明。

实施例1:如图1所示,一种结合相似度和图匹配的老-汉双语句子对齐方法,包括如下步骤:

Step1、针对老-汉双语平行语料中的对齐片段,分别提取老挝语和汉语的特征词生成特征词列表,进而生成老挝语和汉语特征词的候选相似;

Step1.1、首先计算每一个对齐片段中老挝语和汉语的词频TF与反文档IDF比值的频率值,即TF/IDF,以此来确定老挝语和汉语中的一个词是否为特征词,其中,某一个词w的计算方法分别表示为公式(1)和(2)所示:

其中WNw表示词w在片段P中的词频,WNp表示一个片段p包含的总的词汇数,DNt表示语料中所有对齐片段的总数量,DNw表示在所有片段中包含词w的片段的数量,TFw为词w的词频,IDFw为词w的反文档,则词w的TF/IDF值的计算方法如公式(3)所示:

设定一个阈值,将老挝语和汉语中TF/IDF大于此阈值的词作为各自的特征词,并形成老挝语和汉语的特征词列表;

Step1.2、分别按照TF/IDF值的大小对老挝语和汉语的特征词列表中的特征词进行排序,在各自的列表中处于相似位置的词是互为译文的;

Step1.3、根据排序后的特征词列表,选择在列表中分布相近的词汇作为候选相似对,依次针对老挝语特征词列表中的每一个特征词,以对应的汉语特征词为中心选取特定数目的汉语特征词,作为老挝语特征词的候选相似;同理根据汉语特征词列表中的每一个特征词也选取特定数目的老挝语特征词,作为其特征词的候选相似;

Step2、根据老挝语和汉语的特征词列表和候选相似生成候选相似对列表,此列表中的每一个相似对都是可能互为翻译的老挝语特征词和汉语特征词,此时需要计算每一个相似对的相似概率,计算方法如公式(4)和(5)所示:

在一个相似对中,定义老挝语特征词LWi、汉语特征词CWj,则这两个特征词之间的相似概率计算如下:

其中p(LWi|CWj)的计算如公式(5)所示:

同理可以出p(CWj|LWi)的计算结果。

Num(LWi)为LWi在CWj的候选相似集合中的出现次数,frequency(CWj)是CWj的词频,LWi为老挝语第i个特征词,CWj为汉语第j个特征词。

Step3、根据候选相似对列表中的每一个相似对生成最初老-汉双语词典,词典中的每一个条目包括了老挝语和汉语特征词对以及相似概率。

Step3.1、预先设定阈值,选取相似概率大于阈值的相似对,加入到最初老-汉双语词典;

Step3.2、将Step2计算出的每一个相似对的相似概率加入到最初老-汉双语词典中,成为词典中每个条目的内容;

Step4、确定好最初老-汉双语词典之后,通过词典中的特征词在双语语料中的上下文来扩展双语词典,形成最终的老-汉双语词典。

Step4.1、将最初老-汉双语词典中的每一个条目中的老挝语和汉语特征词对作为种子相似对,在此基础上,结合其上下文来扩展,不断迭代进行扩展,一直到不能产生新的词典条目为止;

Step4.2、扩充结束后便得到了最终的老-汉双语词典。

Step5、基于最终的老-汉双语词典,可以得到老挝语句子中每一个特征词对应的候选相似集合,得到老挝语句子的相似结果。

Step5.1、例如老挝语句子L=[LW1,LW2….LWn],汉语句子C=[CW1,CW2…..,CWn],其中LWi、CWj分别表示老挝语句子和汉语句子中的第i个和第j个特征词。对于每一个老挝语特征词LWi都可以在词典中找到对应的汉语,即:L=[LW1{CW1,1,…CW1,n},LW2….LWn{CWn,1,…CWn,n}],其中汉语特征词CWi,k,表示老挝语特征词LWi对应的一个译文。

Step6、基于Step3得到的相似概率和每一个相似对的相似概率,计算出老挝语句子与汉语句子之间的相似度值。

利用老挝语特征词在老挝语句子中的出现次数、汉语特征词在汉语句子中的出现次数以及老挝语和汉语特征词的相似概率计算老-汉双语句子的相似度值。

句子相似度值计算如公式(6)所示:

其中是老挝语特征词LWi在老挝语句子L中的出现次数,是汉语特征词CWj在汉语句子C中的出现次数,Sim(LWi,CWj)表示老挝语特征词LWi和汉语特征词CWj的相似概率,计算结果如公式(4)所示。

Step7、充分考虑双语句子长度信息,计算出老挝语和汉语句子长度比例值。

Step7.1、老-汉双语句子对齐方面,考虑双语句子长度的因素,并且发现对齐的双语句对的长度具有一定的比例特征,通过该特征可以很好的辨识双语句对。通过分析语料中长度不匹配的句对,这些句对多数都包含着错误,为了排除此类句子,引进了句子长度比例值,计算公式如公式(7)所示:

上述公式中LChiText与LLaoText分别汉语词汇集与老挝语词汇集中的词汇个数。

Step7.2、根据老挝语和汉语句子长度比信息,预先设定阈值,如果计算出的句子长度比例值大于阈值,则其值加入到最终句子相似度计算中去,反之舍去。

Step8、综合Step6和Step7的计算结果,计算出最终老挝语和汉语句子的句子相似度值。

结合上述计算结果,可以得到老挝语句子Li和汉语句子Cj的相似度计算公式如公式(8)所示:

Sim(Li,Cj)=Simw(L,C)+Sl(L,C) (8)

需要说明的是,本发明涉及到的预定阈值,可以根据实际情况进行设置,本发明不进行限定。

Step9、在得到老挝语和汉语的句子相似度值之后,将双语句子作为二部图的顶点,句子相似度作为连边的权值,使用二部图最大权匹配(KM)算法求得最佳匹配,完成老挝语和汉语的句子对齐(挖掘平行句对)。

多个老挝语句子和汉语句子两两之间的相似度可以构成相似度矩阵,如果将m个老挝语句子看作二部图的一组顶点,将n个汉语句子看作二部图的另一组顶点,将相似度矩阵中不为零的元素看作二部图的边,上述计算出来的相似度值为顶点对加权,作为二部图的边,则此时句子对齐问题(即平行句对的挖掘)就转化为二部图的最佳匹配问题。

具体地,为从老-汉双语句子集合构成的二部图中挖掘出平行句对,为使准确率更高,采用了三种图匹配算法进行比较,即顶点优先的贪婪算法、权值优先的贪婪算法、二部图最大权匹配算法,从中选择出进行句子对齐最佳的算法。

(1)顶点优先的贪婪算法

对于带权二部图G=(V,W)的每一条边都有一个非负权值,顶点集合V=L∪C,其中L为老挝语句子顶点,C为汉语句子顶点。顶点优先的贪婪算法过程为,从顶点x∈L出发,在其相邻的未覆盖顶点中,挑选边权最大的顶点y∈C,将<x,y>加入匹配,L中其他顶点依次处理。当老挝语与汉语句子数分别为m和n时,算法复杂度为O(m*n),算法匹配结果与顶点的取出顺序有关。该算法是贪心的,不能保证权值之和最大,只能保证完备匹配。

(2)权值优先的贪婪算法

权值优先的贪婪算法,从权值最大的边开始,如果该边的两个顶点都是未匹配点,则该边加入匹配,否则丢弃,依次处理直到没有可用边或者顶点为止。此算法的主要运算为边的排序操作,该算法也是贪心的,不能保证匹配边的权和最大。

(3)二部图最大权匹配算法(KM算法)

KM算法由Kuhn和Munkras提出的,时间复杂度为O(n3),n为顶点个数。最新实现的时间复杂度降低到O(m*sqrt(n)*logN)。KM算法在按照确定的顺序,不断扩展相等子图中的匹配边,达到完备匹配时就能保证总体权和最大。求解加权二部图的最优匹配算法中比较经典的就是KM算法,它是贪婪思想的一种体现。

在参考了大量双语对齐的论文和实验数据后,随着句子规模的扩大,一个源句子对应的目标句子数增多,对齐的准确率都会有所下降,但权值优先匹配算法和KM算法的泛化能力较强,KM算法对所有句子的配对可以反复调整和优化,匹配的准确率较高些。因此,本发明选用最大权匹配算法(KM),但是并不一定适用于所有情况,还要具体问题具体分析。需要说明的是,本发明涉及到的预定阈值,可以根据实际情况进行设置,本发明不进行限定。将老挝语和汉语句子作为二部图的顶点,句子相似度作为连边的权值,使用二部图的最佳匹配算法求得最佳匹配得到句珠,即挖掘出平行句对进行句对齐。句子相似度本身是进行句对齐的基础因素,而全局的优化调整能提高句子对齐的准确率。本发明能够有效地从双语语料库中挖掘出平行句对,老-汉双语句子相似度的计算和二部图的最佳匹配算法充分结合,能够有效提高句子对齐的准确率,因此本发明具有一定的研究意义。

以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1