郑州大学学报(理学版)  2022, Vol. 54 Issue (4): 12-19  DOI: 10.13705/j.issn.1671-6841.2021297

引用本文  

孟卓鹏, 吴继冰, 刘丽华, 等. 基于混合相似度度量的跨语言舰船实体匹配算法[J]. 郑州大学学报(理学版), 2022, 54(4): 12-19.
MENG Zhuopeng, WU Jibing, LIU Lihua, et al. Cross-lingual Entity Matching Algorithm Based on Mixed Similarity Measure for Fighting Ships[J]. Journal of Zhengzhou University(Natural Science Edition), 2022, 54(4): 12-19.

基金项目

湖南省自然科学基金项目(2019JJ50726)

通信作者

黄宏斌(1975—),男,研究员,主要从事信息系统与智能决策、数据工程与知识工程、CPS技术研究,E-mail: hbhuang@nudt.edu.cn

作者简介

孟卓鹏(1996—),男,硕士研究生,主要从事数据挖掘、数据集成研究,E-mail: zpmeng_nudt@163.com

文章历史

收稿日期:2021-07-13
基于混合相似度度量的跨语言舰船实体匹配算法
孟卓鹏, 吴继冰, 刘丽华, 王懋, 邓苏, 黄宏斌    
国防科技大学 系统工程学院 湖南 长沙 410073
摘要:由于装备信息的敏感性,军事领域的跨语言实体匹配问题会面临缺乏标注好的平行语料、依赖机器翻译质量等问题。从这些问题出发,提出了一种跨语言舰船实体匹配算法。首先归纳匹配规则,通过融合机器翻译和词典短语释义取得语言转换结果,设计了检测后缀相同字符串的相似度度量suffix-matter优化候选集,提高了算法的效率。还设计了捕捉字符和发音特征的混合相似度度量MixSim协助寻找匹配的实体。利用从互联网上爬取各国舰船活动事件的新闻报道和简式舰船数据进行实验,结果表明算法取得了较好的效果,而且证明了两种相似度度量在字符串比对中的有效性。
关键词跨语言实体匹配    相似度度量    机器翻译    规则    
Cross-lingual Entity Matching Algorithm Based on Mixed Similarity Measure for Fighting Ships
MENG Zhuopeng, WU Jibing, LIU Lihua, WANG Mao, DENG Su, HUANG Hongbin    
School of System Engineering, National University of Defense Technology, Changsha 410073, China
Abstract: Due to the sensitivity of equipment information, cross-lingual entity matching in military field faced problems such as lacking of well-marked parallel corpus and reliance on machine translation quality. Based on these problems, a cross-lingual entity matching algorithm for fighting ships was proposed. Firstly, the matching rules were summarized, and the language conversion results were obtained by integrating machine translation and dictionary phrase definition. The suffix-matter was designed to detect the similarity of strings with the same suffix to optimize the candidate set, which improved the efficiency of the algorithm. MixSim was also designed to capture character and pronunciation features to assist in finding matched entities. The experiment was based on news reports of events involving foreign fighting ships and Jane′s fighting ships. The experimental results showed that the algorithm achieved good results and proved the effectiveness of the two similarity measures in string alignment.
Key words: cross-lingual entity matching    similarity measurement    machine translation    rules    
0 引言

实体匹配作为数据集成的关键任务,目标是寻找同个数据源或多个数据源中指代现实世界中同一事物的实体。但现实中的数据源不可能都使用同一种语言,想要融合这些数据源的信息,必须克服语言的障碍,解决跨语言实体匹配问题。例如,英文维基百科与百度百科的知识融合是很多学者的关注点。

类似的问题在军事领域也存在,指挥员在处置突发事件时,需要了解事件中外军装备的丰富信息来支撑决策,然而外军装备信息往往使用不同语言表示。本文试图解决中英文舰船装备跨语言的实体匹配问题,主要挑战如下。

1) 事件中有关舰船的信息十分有限,仅包括名称、国家和舷号,而且由于信息的敏感性,大部分舰船装备缺乏开源的数据来源,难以形成双语平行语料。

2) 同一舰船装备在不同数据源中由不同的语言描述,处于不同的词空间中,无法直接计算它们之间的相似度。而且不同语言之间的转换不是一一映射的关系,如何确定最好的转换结果也是一个难点。

3) 面对体量较大的数据源时,如果直接遍历所有的实体对,时间复杂度将正比于各数据源元素个数的笛卡尔积,效率较低。

为了应对上述挑战,本文提出了跨语言舰船实体匹配框架,主要贡献如下。

1) 根据军事领域知识归纳出匹配规则,并设计了跨语言舰船实体匹配框架。

2) 利用谷歌翻译API和有道词典短语释义取得语言转换结果,并设计了能够捕捉字符和发音特征的混合相似度度量MixSim

3) 设计了检测后缀相同字符串的相似度度量suffix-matter,并根据国家和舰船类型生成高质量的候选集,大大降低了复杂度。

1 相关工作 1.1 相似度度量

本文提及的相似度度量均指基于实体字符串信息的相似度度量,其将实体间的相似度映射为[0, 1]区间内的一个数值,这个数值越高意味着实体越相似,目前的工作可归纳为三类。

基于序列的相似度度量将字符串看作是字符的序列,计算字符串间转换的代价。编辑距离[1]是最基本的度量方法,Needleman-Wunch度量[2]Affine Gap度量[3]在其基础之上逐渐一般化,能够更好处理字符串中有空格的情况。Jaro度量[4]主要用来比对短字符串,例如人名。Jaro-Winkler度量[4]Jaro度量进行了改进,解决了两个具有相同前缀、很有可能匹配的字符串在Jaro度量下得分较低的问题。

基于集合的相似度度量将字符串看作词项的集合,并使用集合有关的性质计算相似度得分。主要包括Dice度量[5]Jaccard度量[5]TF/IDF度量[6]等方法。

基于向量空间的相似度度量先将字符串转换为维度相同的向量,再计算向量之间的距离。欧氏距离[7]、余弦相似度[5]是经典的度量方法。

以上相似度度量在处理拉丁文字的字符串时,都有不错的效果,但处理中文这种象形文字显得捉襟见肘。陈鸣等[8]将汉字编码为10位的音形码(前4位为音码,后6位为形码)并设计了一种汉字相似度度量。音形码能够捕捉汉字字形和发音上的特征,很好地度量单个字符间的相似度,但还未被应用在中文字符串间的相似度度量。

1.2 实体匹配

实体匹配(实体对齐)旨在发现指代现实中相同实体的数据实例,是数据集成、数据清洗的关键任务,在数据库、人工智能等领域得到了广泛研究[9]

在数据源的语言不同时,实体匹配面临着跨语言的挑战。现有的方法主要分为两类,一类是基于机器翻译的方法[10-11],利用机器翻译工具将多种语言转换至一种语言,再应用单语言的实体匹配方法,但是此类方法的效果很大程度上依赖机器翻译的质量。

另一类是基于词向量表示的方法,思路是基于标注的多语言平行语料库,将实体属性信息嵌入至向量空间,构建多语言词向量表示模型[12-14]。除了实体属性信息,很多方法通过融合结构信息[15]或者语义信息[16-17]来提升实体匹配的表现。但是,此类方法依赖于标注的多语言语料以及实体属性信息,或是实体间的关系信息。

本文的研究面向军事领域,缺乏开源的舰船装备数据,指挥员接收的事件情况报告中有关舰船的信息也十分有限,仅有名称、国家、舷号,因此基于词向量表示的算法难以适用。

2 问题定义

定义1  舰船实体:数据源中抽取的舰船记录,指代现实世界中的舰船装备。

本研究涉及两个数据源,S1为在互联网上爬取的外军舰船军事活动的新闻报道,作为中文表述的非结构化文本数据源。S2为简氏数据库的战舰年鉴,存储英文表述的结构化舰船实体数据。

S1中抽取的舰船实体表示为e1={舷号,名称,类型,国家}。如e1i={DDG 56,麦凯恩,驱逐舰,美国}。从S2抽取的舰船实体表示为e2={number, name, type, country}。如e2i={DDG 56, John S McCain, DDGHM, United States}。另外,本文中舰船实体e1i的字段用e1i“字段名称”的形式表示,舰船实体e2j的字段用e2jfield name”的形式表示。

定义2  舰船实体等价: 如果舰船实体e1ie2j都指向现实世界中相同的舰船装备,则它们是等价的,表示为e1i$\buildrel\textstyle.\over=$e2j

问题  舰船实体匹配给定数据源S1S2,分别抽取舰船实体, 形成舰船实体集合E1={e11, e12, …, e1n},E2={e21, e22, …, e2k}。E1为源集合,E2为目标集合,对于∀e1iE1,寻找e2jE2,使得e1i$\buildrel\textstyle.\over=$e2j

3 舰船实体匹配算法框架

根据领域知识, 每个国家的舰船舷号是唯一的。舰船命名有明确的结构,为舰船名称+舰船类型的形式,归纳出以下规则并设计舰船实体匹配算法框架,如图 1所示。

图 1 舰船实体匹配算法 Fig. 1 Entity matching algorithm for fighting ships

规则1  e1i“国家”与e2jcountry”指向真实世界中同一个国家∧ e1i“舷号”=e2jnumber”⇔e1i$\buildrel\textstyle.\over=$e2j

规则2  a) e1i“国家”与e2jcountry”指向现实中同一个国家∧e1i“类型”;b) e2jtype”指向同一舰船类型∧e1i“名称”;c) e2jname”指代现实中同一舰船装备的名称。若a)、b)、c)同时存在⇔e1i$\buildrel\textstyle.\over=$e2j

在执行算法前首先进行数据预处理,形成源集合E1和目标集合E2。通过建立映射表(表 1)判断e1i“国家”与e2jcountry”是否指向现实世界中同一个国家。将满足要求的e2j纳入e1i的候选集C1中,若不存在e2jC1使得e1i“舷号”=e2jnumber”,则E2中不存在与e1i等价的实体。

表 1 “国家”和“country”映射表 Tab. 1 Mapping table of "国家" and "country"

e1i“舷号”为空值时,利用规则2来判断。首先基于舰船类型进一步优化候选集,记为C2。在判断e1i“名称”与e2jname”是否指向同一舰船装备时,将e2jname”转换为中文,再计算与e1i“名称”的相似度。

为防止机器翻译工具只将单一的翻译结果作为候选项而错过等价实体,融合机器翻译结果和词典短语释义作为转换结果的候选集。

由于e2j与现实中的舰船装备是一一映射,对于∀e1iE1,至多存在一个e2je1i等价,因此返回相似度Top1的e2j作为匹配结果。且若Top1的相似度为0,则E2中不存在与e1i等价的实体。

4 基于舰船类型优化候选集

首先对e1i“类型”与e2jtype”进行简述。由于不同网站对舰船装备的表述通常存在差别,因此S1中针对同种舰船类型存在不同表述。例如对于补给舰,有“补给舰”、“干货补给舰”、“综合补给舰”等多种表述。S2为关系型数据库,数据质量较高,对舰船类型进行了细致的划分,并将“type”字段进行了编码,表 2展示了部分舰船类型的编码。

表 2 舰船类型编码表 Tab. 2 Coding for ships′ types

可以看出,S2对舰船类型的表述是精准而规范的,是对舰船细粒度的分类。S1对于舰船类型的表述是简略而不规范的,可以看作是舰船的大类。因此,将e1i “类型”模糊匹配多个e2jtype”,保证不漏掉等价的实体。例如,e1i={-,威廉·P·劳伦斯,导弹驱逐舰,美国},计算“导弹驱逐舰”与“type”映射结果之间的相似度,模糊匹配到DD(驱逐舰)、DDGM(导弹驱逐舰)、DDGHM(带有直升机的导弹驱逐舰)三个“type”,将C1中满足“type”=DD、DDGM、DDGHM的e2j作为e1i最终候选集C2

“类型”字段值与“type”映射结果中后缀字符在表达舰船类型含义上起主要作用,前缀字符主要起进一步限定作用。这里,字符串的前缀是指字符串的任意首部,后缀指字符串的任意尾部。例如字符串abc的前缀有a、ab、abc,后缀有c、bc、abc。因此,设计一种便于检测具有相同后缀字符串的度量suffix-matter,计算e1i“类型”与“type”映射结果的相似度。定义为

$ \begin{aligned} &{suffix-matter}(x, y)=\\ &\begin{cases}0, & c=0, \\ \frac{1}{3}\left(\frac{c}{|x|}+\frac{c}{|y|}+\frac{s}{c}\right), & \text { 其他, }\end{cases} \end{aligned} $ (1)

其中:c为字符串xy公共字符个数;|x|、|y|分别表示xy的长度;s表示xy公共后缀的长度。

5 混合相似度度量

舰船的命名方式可以归纳为两种:第一种使用人名或地名,如“伊利湖”号导弹巡洋舰、“柯蒂斯·威尔伯”号导弹驱逐舰。第二种使用表达具体含义的词语,如“调查者号测量船”。在使用机器翻译工具进行语言转换时,也相应带来两个问题。

1) 机器翻译工具在翻译人名和地名时采用音译的方式,很可能e2jname”转换的结果与e1i“名称”字符相似度很低。例如,已知e1i={-,马斯廷,导弹驱逐舰,美国}与e2j={DDG 89, Mustin, DDGHM, United States}等价,但谷歌翻译将“Mustin”字段翻译为“穆斯丁”,与“马斯廷”相似度较低,但从发音的角度考虑,两者比较相似。

2) 机器翻译工具只返回其认定最恰当的翻译结果,但是这个结果未必会是e1i的名称。这个问题通过融合机器翻译结果和词典短语释义来解决。

综上,采用音译方式得到的“name”转换结果发音特征更为重要,采用意译方式得到的“name”转换结果字符特征更为重要。因此设计了混合相似度度量MixSim,主要包括两部分,度量字符相似度的CharSim和度量发音相似度的SoundSim

5.1 字符相似度度量CharSim

考虑到基于集合的相似度度量在面对具有公共子串的字符串,会给出较高的相似度,且由于前缀或者后缀导致表述不同的情况在舰船名称中普遍存在。因此,CharSim采用Jaccard度量作为基础。同时为应对字符相同而顺序不同的情况,借助N-gram[18]模型将字符串表示为长度为N的短字符串集合。将CharSim定义为

$ {CharSim}(x, y)=\frac{\left|B_{x} \cap B_{y}\right|}{\left|B_{x} \cup B_{y}\right|}, $ (2)

其中:BxBy分别表示字符串xy的2-gram集合。这里需要说明,若N的取值大于字符本身的长度,则相似度取值为0或1,难以捕捉短字符串之间的相似度,而大量舰船装备的名称长度较短,仅为2或3,因此N取2。

5.2 发音相似度度量SoundSim

汉字的发音是通过汉语拼音来实现,想要捕捉中文字符串之间的发音相似度,一个很自然的想法是将汉字的汉语拼音进行编码,将音码间的相似度作为发音的相似度。每个汉字的拼音包括韵母、声母和辅音,图 2为汉字“舰”的拼音示例。

图 2 汉字拼音示例 Fig. 2 Example of Chinese Pinyin

这里采用音形码的编码方式来编码汉语拼音。音码第一位是韵母位,汉语拼音中一共有24个韵母,通过简单的替代规则将汉字韵母编码为一个新的字符,如图 3所示。这里,ang和an、en和eng、in和ing都采用了同一种编码,因为这些韵母在发音上本身就很相似,且同时也希望弱化音译过程中它们的差异。第二位是声母位,同样进行编码,如图 4所示。

图 3 韵母编码 Fig. 3 Coding of Finals

图 4 声母编码 Fig. 4 Coding of Initials

第三位是辅音位,当韵母和声母之间存在辅音时,按照韵母编码表编码;当韵母和声母间不存在辅音时,编码为0。通过以上编码方式可以将每个汉字都转化为三位音码,如“温”的音码为GJ5,“文”的音码也为GJ5。字符串的音码按字符顺序拼接,如“文森号航空母舰”的名称为“文森”,其音码为GJ5GG0。

但是,这样会导致越长的字符串其音码也会越长,不同舰船名称音码之间的字符长度差也会比其本身的字符长度差大很多。基于序列的相似度度量在面对长度差异大的字符串表现较差,因此SoundSim也采用Jaccard度量与N-gram相结合的方式,定义为

$ {SoundSim}(x, y)=\frac{\left|B_{x . s c s} \cap B_{y . s c s}\right|}{\left|B_{x . s c s} \cup B_{y . s c s}\right|}, $ (3)

其中:x.scsy.scs分别表示给定字符串xy的音码;Bx.scsBy.scs分别表示x.scsy.scs的3-gram集合。因为单个汉字的音码长度为3,为捕捉到每个汉字的发音特征,这里N取3。

综合考虑CharSimSoundSim两种度量,采用线性加权的方式融合字符和发音上的特征,将混合相似度度量MixSim定义为

$ {MixSim}(x, y)=\alpha {CharSim}(x, y)+\\ (1-\alpha) {SoundSim}(x, y), $ (4)

其中:xy为给定的字符串;α为特征权重参数,α∈[0, 1]。

舰船实体匹配算法伪代码如算法1所示,在基于舰船类型优化候选集和舰船名称匹配两个关键步骤分别应用suffix-matter度量和MixSim度量。

算法1  舰船实体匹配算法

输入:新闻报道数据S1,简氏舰船装备数据S2

输出:等价实体对集合E$\buildrel\textstyle.\over=$={(e1i, e2j)},不存在等价实体的集合E={e1i}。

1  对S1S2进行实体抽取形成E1E2

2  for each e1iE1 do

3    根据表 1生成候选集C1

4    if e1i“舷号”存在

5        for each e2jC1 do

6            if e2jnumber”==

7                e1i“舷号” (e1i, e2j)∈E$\buildrel\textstyle.\over=$

8        end for

9        if不存在e2jC1e2jnumber” ==

         e1i“舷号”

10          e1iE

11    else

12        计算e1i“类型”与e2jtype”的suffix-matter相似度(公式(1)),生成C2

13        for each e2jC2

14            计算e1i“名称”与e2jname”转换结果的MixSim相似度(公式(4))

15        end for

16        if Top1 MixSim相似度==0:

17            e1iE

18        else

19            MixSim相似度Top1的e2j满足:

               (e1i, e2j)∈E$\buildrel\textstyle.\over=$

20  end for

根据算法的前10步进行实体匹配,时间复杂度为O(|E1||C1|),其中|E1|和|C1|分别表示E1C1中实体个数。若e1i“舷号”不存在,则根据算法的余下步骤进行实体匹配,时间复杂度为O(|E1||C2|)。其中|C2|为C2中实体的个数。因此,舰船实体匹配算法整体的时间复杂度为O(|E1||C1|+|E1||C2|)。

6 实验 6.1 实验环境

CPU:Intel (R) Core (TM) i5-4200M 2.50 GHz。RAM: 16 GB。利用Python 3.8进行。

6.2 对比方法

分别从基于序列、集合和向量空间的相似度度量中选取Jaro度量、Jaccard度量、Cosine相似度。

1) Jaro度量常用来比对短字符串,给定字符串xyJaro定义为

$ {Jaro}(x, y)=\left\{\begin{array}{cc} 0, & r=0, \\ {\frac{1}{3}\left(\frac{r}{|x|}+\frac{r}{|y|}+\frac{r-t / 2}{r}\right), } &{\text { 其他。}} \end{array}\right. $

字符距离不超过$\lfloor\max (|x|, |y|) / 2\rfloor$-1即为位置相近。公共字符为xy中相同且位置相近的字符。r为公共字符数,公共字符中相同位置但字符不同的字符数为t

2) Jaccard度量本质上是衡量集合相似度的一种指标,定义为

$ {Jaccard}(x, y)=\frac{|X \cap Y|}{|X \cup Y|}, $

其中:XY分别表示给定字符串xy的1-gram集合;表示集合中元素个数。

3) Cosine相似度最初用于计算高维空间中两个向量之间的夹角,定义为

$ {Cosine}(x, y)=\frac{\mathit{\boldsymbol{v}}_{x} \cdot \mathit{\boldsymbol{v}}_{y}}{\left\|\mathit{\boldsymbol{v}}_{x}\right\| \cdot\left\|\mathit{\boldsymbol{v}}_{y}\right\|} $

其中:vx=[f1x, f2x, …, fnx]表示x的词向量;vy=[f1y, f2y, …, fny] 表示y的词向量;f为字符频率;n为集合XY中元素个数。

6.3 实验数据

S1为从互联网上爬取的外军舰船军事活动的新闻报道, 利用自然语言处理工具NLTK(https://github.com/nltk/nltk)进行实体抽取和分词处理,形成源集合E1

S2为简氏(Jane′s)数据库的战舰年鉴(《Jane′s Fighting Ships》)2017年版。简氏信息集团是当今世界各国公认的军事权威,其数据存储在关系型数据库中,每条记录与现实中的舰船装备一一对应,包括尺寸、速度、航程及武器系统等字段。对其抽取numbernametypecountry等字段,形成目标集合E2。具体信息如表 3所示。

表 3 实验数据统计信息 Tab. 3 Statistical information of experimental data
6.4 评价指标与参数选取

实体匹配常用的评价指标有:精确率、召回率和F值。本文舰船实体匹配算法针对e1iE1会返回两种结果,一是与其等价的实体e2j,二是e1i不存在等价实体。

但以上指标未考虑E2中不存在e2je1i等价的情况。因此使用正确率(acc)作为评价指标,将E1中舰船实体个数记为|E1|,结果正确的个数记为Na,则acc=Na/|E1|。

算法中需要确定的参数是MixSim中字符特征和发音特征的权重。为获取最佳参数,首先将E1中所有实体的舷号均设为空值,再将α以0.1的步长遍历[0, 1]后进行实验,结果如图 5所示。

图 5 不同参数实验结果 Fig. 5 Results of different parameters

α=0时,MixSim=SoundSim,此时MixSim只捕捉了发音特征,正确率是最低的。当α=1时,MixSim=CharSim,此时MixSim只捕捉了字符特征,正确率虽然比α=0时高,但比其余取值时都要低。

此外,随着α的增长,正确率先增后减,在α=0.5时取得最大值。说明将字符特征和发音特征恰当地融合起来,才有较好的度量效果。因此,MixSimα=0.5。

6.5 对比实验结果

将6.2节介绍的3种度量方法分别应用在算法的第14步,实验结果如表 4所示。结果显示MixSim度量有着最高的正确率97.23%,而且即便是JaccardJaroCosine这些传统的相似度度量,也可以正确匹配绝大部分等价的舰船实体,这也证明了舰船实体匹配算法的有效性。

表 4 不同度量实验结果 Tab. 4 Results of different measures

为进一步检验MixSim度量的有效性,将E1中所有实体的舷号均设为空值进行实验,结果如表 5所示。相比于其他相似度度量,MixSim度量的正确率下降的最少,仅有3.60%。说明其对舷号信息的依赖最小,在进行字符串相似度计算时有更好的表现。

表 5 去舷号对比实验结果 Tab. 5 Results of contrastive experiment without number

通过列举部分舰船实体的匹配结果,如表 6所示,来解释MixSim度量表现更好的原因。传统的相似度度量只考虑了字符特征。因此在面对发音相似,字符差异较大的中文字符串对时,会给出较低的相似度。而MixSim对中文字符串的字符和发音特征都有较强的捕捉能力。在面对“露温(Leeuwin)”、“苏家他(Sujata)”此类采用音译方式转换的舰船名称时,MixSim有着更强的应对能力。

表 6 部分舰船实体匹配结果 Tab. 6 Partial results of entity matching for fighting ships
6.6 候选集质量分析

如第4节所述,E2e2jtype”是根据舰船动力、武器系统等属性划分的更为细致的类型,通过归纳可知,每个国家属于一个大类的“type”不超过3个,因此在寻找e1i“类型”的模糊匹配结果时,返回相似度Top3的“type”。

人工校准实验结果显示,没有出现因为漏掉正确的候选项而造成匹配错误。为进一步验证suffix-matter捕捉字符串后缀特征的能力,将E1中51个舰船类型与E2中109个舰船类型进行模糊匹配。由于E2中属于一个大类的“type”不超过5,因此返回的相似度Top5的“type”作为模糊匹配的结果。

按照表 7的方式对结果进行人工标注并检查,加粗字体为与“类型”属于同一舰船类型的“type”。对于给定的51个e1i“类型”,均可以完整得到与其同类型的“type”。

表 7 类型相似度Top5结果 Tab. 7 Top5 results of "type" similarity
7 结论

本文面向军事领域的舰船装备数据,针对信息有限、跨语言的特点,提出了一种基于混合相似度度量的跨语言舰船实体匹配算法。针对性地设计了检测字符串后缀的相似度度量suffix-matter与捕捉字符串字形与发音特征的混合相似度度量MixSim。实验结果表明,算法有着较高的正确率与较强的适用性,而且MixSim能够有效应对中文字符串的比对,suffix-matter可以广泛应用于判断具有共同后缀的字符串。

此外,本文舰船实体匹配的跨语言环境为中英文,但是算法不依赖标注好的多语言平行语料,加之MixSim能够有效应对其他语言转换为中文的字符串比对,算法可以适用于中文与其他任何语言的环境。未来将探索更复杂语言环境下的舰船实体匹配任务。

参考文献
[1]
LEVENSHTEIN V I. Binary codes capable of correcting deletions, insertions and reversals[J]. Dokl akad nauk SSSR, 1965, 10: 707-710. (0)
[2]
NEEDLEMAN S B, WUNSCH C D. A general method applicable to the search for similarities in the amino acid sequence of two proteins[J]. Journal of molecular biology, 1970, 48(3): 443-453. DOI:10.1016/0022-2836(70)90057-4 (0)
[3]
WATERMAN M S, SMITH T F, BEYER W A. Some biological sequence metrics[J]. Advances in mathematics, 1976, 20(3): 367-387. DOI:10.1016/0001-8708(76)90202-4 (0)
[4]
DOAN A H, HALEVY A, IVES Z. Principles of data integration[M]. San Francisco: Morgan Kaufmann Publishers, 2014: 74-75. (0)
[5]
THADA V, JAGLAN V. Comparison of jaccard, dice, cosine similarity coefficient to find best fitness value for web retrieved documents usinggenetic algorithm[J]. International journal of innovations in engineering and technology, 2013, 2(4): 202-205. (0)
[6]
CHAUDHURI S, GANJAM K, GANTI V, et al. Robust and efficient fuzzy match for online data cleaning[C]//Proceedings of the ACM SIGMOD International Conference on Management of Data. New York: ACM Press, 2003: 313-324. (0)
[7]
MAHALANOBIS P C. On a generalised distance in statistics[J]. Proceedings of the national institute of sciences of india, 1936, 2: 49-55. (0)
[8]
陈鸣, 杜庆治, 邵玉斌, 等. 基于音形码的汉字相似度比对算法[J]. 信息技术, 2018, 42(11): 73-75.
CHEN M, DU Q Z, SHAO Y B, et al. Chinese characters similarity comparison algorithm based on phonetic code and shape code[J]. Information technology, 2018, 42(11): 73-75. DOI:10.3969/j.issn.2096-4455.2018.11.024 (0)
[9]
LU W M, WANG P, MA X Y, et al. Enrich cross-lingual entity links for online wikis via multi-modal semantic matching[J]. Information processing & management, 2020, 57(5): 102271. (0)
[10]
FU B, BRENNAN R, O′SULLIVAN D. Cross-lingual ontology mapping——an investigation of the impact of machine translation[C]//Asian Semantic Web Conference. Berlin: Springer Publishing, 2009: 1-15. (0)
[11]
FU B, BRENNAN R, O′SULLIVAN D. Cross-lingual ontology mapping and its use on the multilingual semantic web[J]. CEUR workshop proceedings, 2010, 571: 13-20. (0)
[12]
BAI X F, CAO H L, ZHAO T J. Improving vector space word representations via kernel canonical correlation analysis[J]. ACM transactions on Asian and low-resource language information processing, 2018, 17(4): 1-16. (0)
[13]
MIKOLOV T, LE Q V, SUTSKEVER I. Exploiting similarities among languages for machine translation [EB/OL]. (2013-09-17)[2021-08-17]. http://arxiv.org/abs/1309.4168. (0)
[14]
XING C, WANG D, LIU C, et al. Normalized word embedding and orthogonal transform for bilingual word translation[C]//Proceedings of the 2015 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Stroudsburg: Association for Computational Linguistics, 2015: 1006-1011. (0)
[15]
CHEN M H, TIAN Y T, YANG M H, et al. Multilingual knowledge graph embeddings for cross-lingual knowledge alignment[C]//Proceedings of the 26th International Joint Conference on Artificial Intelligence. Palo Alto: AAAI Press, 2017: 1511-1517. (0)
[16]
CHEN M H, TIAN Y T, CHANG K W, et al. Co-training embeddings of knowledge graphs and entity descriptions for cross-lingual entity alignment[C]//Proceedings of the 27th International Joint Conference on Artificial Intelligence. Palo Alto: AAAI Press, 2018: 3998-4004. (0)
[17]
SUN Z Q, HU W, LI C K. Cross-lingual entity alignment via joint attribute-preserving embedding[C]//International Semantic Web Conference. Berlin: Springer Publishing, 2017: 628-644. (0)
[18]
BROWN P F, DELLA PIETRA V, DESOUZA P V, et al. Class-based n-gram models of natural language[J]. Computational linguistics, 1992, 18(4): 467-479. (0)