何緋娟,劉文強(qiáng),繆相林,許大煒
(1.西安交通大學(xué)城市學(xué)院,陜西 西安 710018; 2.西安交通大學(xué) 電子與信息工程學(xué)院,陜西 西安 710049)
關(guān)聯(lián)數(shù)據(jù)是語義網(wǎng)的一種實(shí)現(xiàn)形式,采用資源描述框架(resource description framework,RDF)模型對(duì)信息實(shí)體及其關(guān)系進(jìn)行描述、發(fā)布與部署,從而為互聯(lián)網(wǎng)上智能化的應(yīng)用提供支撐。關(guān)聯(lián)數(shù)據(jù)的核心是RDF模型,它是一種由主語(subject)、謂詞(predicate)、客體(object)構(gòu)成的三元組形式,其中主語采用統(tǒng)一資源標(biāo)識(shí)符(uniform resource identifier,URI)描述Web上的信息實(shí)體,謂詞表示實(shí)體的屬性,客體則是屬性對(duì)應(yīng)的值。例如,RDF三元組
關(guān)聯(lián)數(shù)據(jù)具有發(fā)布自由、獨(dú)立自治等特點(diǎn),導(dǎo)致多個(gè)獨(dú)立維護(hù)的數(shù)據(jù)源對(duì)真實(shí)世界相同實(shí)體可能提供沖突的描述[1]。沖突的原因主要包括兩個(gè)方面:一是在一些數(shù)據(jù)源構(gòu)建中,采用了機(jī)器學(xué)習(xí)、自然語言處理等算法自動(dòng)實(shí)現(xiàn)關(guān)聯(lián)數(shù)據(jù)生成,容易引入臟數(shù)據(jù);二是對(duì)數(shù)據(jù)更新時(shí)差的不同也會(huì)導(dǎo)致沖突問題。沖突問題嚴(yán)重影響關(guān)聯(lián)數(shù)據(jù)的可用性。
根據(jù)沖突出現(xiàn)位置的不同,可將RDF數(shù)據(jù)的沖突問題分為主語沖突、謂詞沖突和賓語沖突[2],分別對(duì)應(yīng)RDF三元組的三個(gè)元素。其中,主語沖突或謂詞沖突是指不同RDF數(shù)據(jù)集為真實(shí)世界相同實(shí)體(主語)或?qū)傩?謂語)提供不同標(biāo)識(shí)符。賓語沖突是指不同數(shù)據(jù)集為同一個(gè)主語的相同謂詞提供不同的值。例如,不同數(shù)據(jù)源對(duì)“Java語言的設(shè)計(jì)者”提供不同的值。DBpedia數(shù)據(jù)源認(rèn)為Java語言的設(shè)計(jì)者是Sun公司和James Gosling,而Freebase認(rèn)為只是James Gosling。
近年來,人們對(duì)關(guān)聯(lián)數(shù)據(jù)的沖突消解問題開展了一系列研究,文中將從主語、謂詞、賓語三個(gè)方面對(duì)沖突消解研究工作進(jìn)行分析、總結(jié)與展望。
主語沖突消解也稱為實(shí)體共指消解(resolving entity coreference),旨在消除描述關(guān)聯(lián)數(shù)據(jù)中相同實(shí)體的標(biāo)識(shí)符不一致問題。例如,DBpedia數(shù)據(jù)源的標(biāo)識(shí)符“Beijing”和Freebase的“m.01914”都指代“北京”。目前,主語沖突消解主要有基于語義等價(jià)推理與基于屬性值相似度兩類方法[3]。
基于語義等價(jià)推理的方法主要利用網(wǎng)絡(luò)本體語言(ontology web language,OWL)推理不同實(shí)體標(biāo)識(shí)符間的對(duì)象共指關(guān)系。OWL語言定義一組原語來描述關(guān)聯(lián)數(shù)據(jù)中類及類間關(guān)系。典型的原語包括:
(1)owl:sameAs原語。該原語通過三元組形式直接定義s和p指代相同的實(shí)體。然而實(shí)證分析表明,關(guān)聯(lián)數(shù)據(jù)中僅有51%的sameAs被正確使用[4];因而,單純基于sameAs有很大的局限性。
(2)反函數(shù)屬性(owl:InverseFunctionalProperty)原語。如果兩個(gè)實(shí)體具有相同的反函數(shù)屬性,如電子郵件地址(foaf:mbox),則指代相同的實(shí)體對(duì)象。例如,Nikolov等綜合owl:sameAs、owl:differentFrom等原語提出了一種共指消解模型[5]。
基于語義等價(jià)推理的方法能夠利用OWL的精確原語識(shí)別共指關(guān)系,準(zhǔn)確率較高,但由于關(guān)聯(lián)數(shù)據(jù)中大量缺失這些OWL原語,導(dǎo)致召回率較低。
基于屬性值相似度計(jì)算方法通過比較實(shí)體標(biāo)識(shí)符的屬性和屬性值來識(shí)別對(duì)象實(shí)現(xiàn)主語沖突消解,主要依據(jù)是相同的實(shí)體通常具有相同或者高度相似的屬性值對(duì)。例如,Wang等提出一種基于馬爾可夫隨機(jī)場的主語沖突消解方法[6],該方法通過計(jì)算描述不同標(biāo)識(shí)符的多個(gè)屬性值間的相似度來實(shí)現(xiàn)主語沖突消解?;趯傩灾迪嗨贫扔?jì)算方法具有很強(qiáng)的適應(yīng)性,但是難以確定合適的相似度閾值,且計(jì)算復(fù)雜度較高。
目前也有綜合兩種方法實(shí)現(xiàn)主語沖突消解的研究工作。例如,Hu等提出一種自訓(xùn)練的共指消解識(shí)別方法[7]。該方法首先利用OWL語言識(shí)別出部分候選訓(xùn)練集,進(jìn)而基于相似度計(jì)算的方法擴(kuò)展該訓(xùn)練集,并過濾掉低可信度的訓(xùn)練集,直至得出高可信度的共指關(guān)系集。基于兩者結(jié)合的方法有助于提高主語沖突消解的準(zhǔn)確率和召回率,但隨著關(guān)聯(lián)數(shù)據(jù)量的增加,計(jì)算開銷也急劇增加。
謂詞沖突消解又稱為本體匹配(ontology alignment),主要解決關(guān)聯(lián)數(shù)據(jù)源對(duì)同一實(shí)體的相同屬性采用不一致標(biāo)識(shí)符的問題。例如,DBpedia數(shù)據(jù)源中表示“人口”為populationTotal,而Geoname數(shù)據(jù)源中則是population。目前,謂詞沖突消解方法主要包括基于相似度、基于結(jié)構(gòu)匹配以及基于實(shí)例三類方法。
基于相似度的方法利用兩個(gè)謂詞之間的文本相似度(如編輯距離、N-gram距離等)或詞義相似度(WordNet距離、層次距離等)挖掘兩個(gè)謂詞間關(guān)聯(lián),實(shí)現(xiàn)謂詞沖突消解。例如,Schadd與Roos利用詞匯在分類體系中的層次距離提出了一種詞匯相似性指標(biāo),并設(shè)計(jì)了一種基于該指標(biāo)的謂詞沖突消解方法[8]。潘有能等提出了一種利用謂詞在WordNet中父子概念的相似度進(jìn)行本體匹配的方法[9]??傮w上,基于相似度的方法簡單、直接,但對(duì)謂詞表達(dá)形式依賴性大;此外,相似度計(jì)算函數(shù)的選擇也影響此類方法的性能。
基于結(jié)構(gòu)匹配的方法利用關(guān)聯(lián)數(shù)據(jù)本身或者本體的拓?fù)浣Y(jié)構(gòu)來實(shí)現(xiàn)謂詞沖突消解。例如,Xiang等利用關(guān)聯(lián)數(shù)據(jù)圖結(jié)構(gòu),提出了一種基于隨機(jī)游走的相似度傳播算法實(shí)現(xiàn)謂詞沖突消解[10]。王穎等提出一種利用RDF圖結(jié)構(gòu)相似性進(jìn)行本體匹配的方法[11]。清華大學(xué)也研制了謂詞匹配系統(tǒng)RiMOM[12],能夠綜合利用多種策略以及結(jié)構(gòu)、文本相似性進(jìn)行謂詞沖突消解?;诮Y(jié)構(gòu)匹配的消解方法是相似度計(jì)算方法的擴(kuò)展,通過拓?fù)浣Y(jié)構(gòu)能夠有效提升匹配效率;但該類方法對(duì)結(jié)構(gòu)信息過于依賴,適應(yīng)性較差。
基于實(shí)例的方法主要采用機(jī)器學(xué)習(xí)方法自動(dòng)實(shí)現(xiàn)謂詞沖突消解。例如,Wang等在謂詞相似度、值的匹配程度等特征的基礎(chǔ)上,提出了一種基于分類的謂詞沖突消解方法,并在知識(shí)圖譜融合中取得了較好的效果[13]。蔣湛等從實(shí)例、結(jié)構(gòu)等維度計(jì)算每項(xiàng)特征的置信度,并提出基于特征自適應(yīng)的本體映射方法[14]。這類方法適應(yīng)性強(qiáng),但是需要大量的人工標(biāo)注數(shù)據(jù)。
賓語沖突消解用于消除不同關(guān)聯(lián)數(shù)據(jù)源相同實(shí)體的同一屬性的屬性值不一致的過程。例如,北京的總?cè)丝跀?shù)在關(guān)聯(lián)數(shù)據(jù)源Freebase和DBpedia上的數(shù)值分別是“20 180 000”和“21 516 000”。目前,賓語沖突消解可分為沖突避免和真值發(fā)現(xiàn)(truth discovery)兩類方法。
沖突避免方法采用人工預(yù)設(shè)規(guī)則避免沖突。例如,Mendes等提出了一種關(guān)聯(lián)數(shù)據(jù)質(zhì)量評(píng)估框架Sieve[15],該框架指定特定數(shù)據(jù)源的值是可信值,以此解決屬性值的不一致問題。部分研究也采用少數(shù)服從多數(shù)的投票策略,即把出現(xiàn)次數(shù)最多的屬性值作為最可信的值。這類方法的主要缺陷是認(rèn)為每個(gè)數(shù)據(jù)源的權(quán)威值是相同且固定的,這與實(shí)際不符。
真值發(fā)現(xiàn)方法根據(jù)數(shù)據(jù)特點(diǎn)、拓?fù)浣Y(jié)構(gòu)等特征識(shí)別出特定實(shí)體特定屬性最可能的數(shù)值,據(jù)此消除賓語沖突。真值發(fā)現(xiàn)進(jìn)一步可分為基于迭代、基于最優(yōu)化以及基于概率圖三類方法。
基于迭代的方法主要利用數(shù)據(jù)源權(quán)威性與數(shù)據(jù)可信性相互依賴的特點(diǎn),迭代推導(dǎo)出實(shí)體屬性的真值。例如,Dong等采用類似Authority-Hub迭代機(jī)制,提出了一種基于貝葉斯推斷的真值發(fā)現(xiàn)算法[16]。馬如霞等提出一種基于數(shù)據(jù)源分類可信性的真值發(fā)現(xiàn)算法,該算法采用基于貝葉斯的方法迭代計(jì)算數(shù)據(jù)源分類可靠性和屬性值準(zhǔn)確性[17]。
基于最優(yōu)化的方法主要是通過優(yōu)化損失函數(shù),逐步縮短沖突值與真值間的距離,進(jìn)而發(fā)現(xiàn)真值。例如,Li等提出了一種真值發(fā)現(xiàn)優(yōu)化框架,該框架把數(shù)據(jù)可信性與數(shù)據(jù)源權(quán)威性作為優(yōu)化函數(shù)的兩個(gè)變量,提高真值發(fā)現(xiàn)的準(zhǔn)確性[18]。陳超等提出了一種基于距離的異構(gòu)數(shù)據(jù)聯(lián)合真值發(fā)現(xiàn)算法,該算法采用最優(yōu)化策略更新數(shù)據(jù)可信度和數(shù)據(jù)源的類簇內(nèi)可靠性[19]。
基于概率圖的方法把數(shù)據(jù)源權(quán)威性與數(shù)據(jù)可信性看作0到1之間的概率,利用概率圖模型推斷實(shí)體屬性的真值。例如,Zhao等提出了一種基于概率圖的真值發(fā)現(xiàn)算法[20],該算法把數(shù)據(jù)源的權(quán)威性定義為敏感度與特異性兩個(gè)變量,并以此構(gòu)建了真值發(fā)現(xiàn)概率圖模型框架。
基于迭代的方法適應(yīng)性強(qiáng),但需要較多的迭代次數(shù),時(shí)間復(fù)雜度較高?;谧顑?yōu)化的方法過于依賴訓(xùn)練集,且由于關(guān)聯(lián)數(shù)據(jù)更新速度快,易引發(fā)訓(xùn)練集和測試集間的分布不一致問題,造成模型的欠擬合?;诟怕蕡D的方法正確率高,但計(jì)算復(fù)雜。
目前,在關(guān)聯(lián)數(shù)據(jù)沖突消解方面,對(duì)于主語與謂詞的沖突消解問題,國內(nèi)外已開展了大量研究,已具有較成熟的算法與軟件系統(tǒng)。但是,對(duì)于賓語的沖突消解問題,目前仍然面臨多值沖突、時(shí)變數(shù)據(jù)、數(shù)據(jù)拷貝等挑戰(zhàn)性問題。后續(xù)的研究方向主要包括:
(1)關(guān)聯(lián)數(shù)據(jù)中的多值沖突問題。關(guān)聯(lián)數(shù)據(jù)的某些屬性本身就有很多正確值,比如圖書的作者?,F(xiàn)有賓語沖突消解算法只考慮了關(guān)聯(lián)數(shù)據(jù)中單值沖突問題。未來一個(gè)有前景的研究方向是借助概率圖模型或者深度學(xué)習(xí)算法研究多值沖突消解問題。
(2)關(guān)聯(lián)數(shù)據(jù)的拷貝問題。數(shù)據(jù)源之間存在大量的隱含拷貝關(guān)系,這類關(guān)系妨礙了對(duì)數(shù)據(jù)源可信性的判別,如何識(shí)別并利用拷貝關(guān)系是提高賓語沖突消解算法性能的關(guān)鍵。
(3)關(guān)聯(lián)數(shù)據(jù)的表示學(xué)習(xí)模型。以深度學(xué)習(xí)為代表的表示學(xué)習(xí)技術(shù)旨在將關(guān)聯(lián)數(shù)據(jù)中的實(shí)體和屬性表示成低維稠密的向量。但是由于不同的關(guān)聯(lián)數(shù)據(jù)源采用不同的標(biāo)識(shí)符來表示相同的實(shí)體和屬性,這給關(guān)聯(lián)數(shù)據(jù)的表示學(xué)習(xí)帶來了挑戰(zhàn)。
隨著關(guān)聯(lián)數(shù)據(jù)源的數(shù)量及數(shù)據(jù)規(guī)模的快速增長,關(guān)聯(lián)數(shù)據(jù)的沖突問題愈發(fā)嚴(yán)重,成為制約其可用性的關(guān)鍵因素。文中根據(jù)關(guān)聯(lián)數(shù)據(jù)的RDF三元組結(jié)構(gòu),從主語、謂詞、賓語三個(gè)方面對(duì)近年來在關(guān)聯(lián)數(shù)據(jù)沖突消解方面的研究工作進(jìn)行了歸類分析,系統(tǒng)總結(jié)了各類沖突消解方法的優(yōu)缺點(diǎn)。最后,重點(diǎn)總結(jié)了賓語沖突消解存在的問題,給出了關(guān)聯(lián)數(shù)據(jù)的多值沖突、拷貝、表示學(xué)習(xí)三個(gè)具有挑戰(zhàn)性的研究方向。