因?yàn)橛幸庀騾⒓游浵伣鸱谋荣?a target="_blank" rel="nofollow">金融大腦-金融智能NLP服務(wù)——問(wèn)題相似度計(jì)算青责,屬于語(yǔ)義相似度計(jì)算的子集。
文本間的語(yǔ)義相似度是NLP的核心問(wèn)題取具,因?yàn)樗鼘?duì)各種應(yīng)用脖隶,從網(wǎng)頁(yè)檢索、問(wèn)答暇检、文本分類产阱、聚類到自然語(yǔ)言生成,以及虛擬人工對(duì)話都非常重要块仆。語(yǔ)義相似度可以從不同的層次度量,從詞心墅、短語(yǔ)到段落酿矢、文檔。
一怎燥、論文:Description and Evaluation of Semantic similarity Measures Approaches——語(yǔ)義相似度描述和評(píng)估方法。
這篇論文是來(lái)比較幾種不同的語(yǔ)義相似度策略蜜暑,以便于研究者和實(shí)踐者選擇最合適的策略铐姚。論文所述方法主要是計(jì)算兩個(gè)words之間的語(yǔ)義相似度。
將兩個(gè)不同的概念置于"結(jié)構(gòu)體"兩個(gè)不同的節(jié)點(diǎn)中肛捍,節(jié)點(diǎn)間的距離表示兩個(gè)概念的語(yǔ)義相似度隐绵。位于同一個(gè)節(jié)點(diǎn)中的兩個(gè)條目語(yǔ)義是相近的,語(yǔ)義相似度是最大的拙毫。對(duì)于“結(jié)構(gòu)體”這個(gè)術(shù)語(yǔ)依许,原文是"ontology"。類似下圖:
1缀蹄、論文介紹了幾種不同的“結(jié)構(gòu)體”:WordNet, SENSUS, Cyc, UMLS, SNOMED, MeSH, GO 和STDS峭跳。
通用的Ontologies:
WordNet 是一個(gè)用來(lái)建模英語(yǔ)詞匯知識(shí)的詞匯索引系統(tǒng)。詳細(xì)描述
SENSUS是WordNet的擴(kuò)展缺前。
Cyc KB 是一個(gè)龐大的人類知識(shí)庫(kù)蛀醉。旨在收集生活中常識(shí)知識(shí)并將其編碼集成到一個(gè)全面的本體知識(shí)庫(kù)。Cyc知識(shí)庫(kù)中的知識(shí)使用專門設(shè)計(jì)的CycL進(jìn)行表示衅码。同其他專家系統(tǒng)一樣拯刁,Cyc不僅包括知識(shí),而且提供了非常多的推理引擎逝段,支持演繹推理和歸納推理垛玻。目前Cyc知識(shí)庫(kù)涉及50萬(wàn)條概念的500萬(wàn)條常識(shí)知識(shí)。OpenCyc是其開(kāi)放出來(lái)免費(fèi)供大眾使用的部分知識(shí)奶躯,包括24萬(wàn)條概念的約240萬(wàn)條常識(shí)知識(shí)帚桩。摘自知識(shí)圖譜的發(fā)展概述 | 機(jī)器之心
特定領(lǐng)域的Ontologies:
UMLS全稱Unified Medical Language System(統(tǒng)一醫(yī)學(xué)語(yǔ)言系統(tǒng)),包含一個(gè)非常大的巫糙,多用途的朗儒,關(guān)于生物醫(yī)學(xué)與健康概念的多語(yǔ)言檢索詞表。維基百科
SNOMED is a dynamic, scientifically validated clinical healthcare terminology and infrastructure that makes health careknowledge more usable and accessible参淹。
SNOMED是一種動(dòng)態(tài)的醉锄,科學(xué)驗(yàn)證的臨床健康保健術(shù)語(yǔ)和基礎(chǔ)設(shè)施,使醫(yī)療保健知識(shí)更易于使用和訪問(wèn)浙值。(谷歌翻譯)
SNOMED CT學(xué)習(xí)系列:1恳不,何以為臨床術(shù)語(yǔ)
MeSH是一個(gè)分級(jí)的醫(yī)學(xué)主題詞庫(kù)。
GO:基因本體論(GO)描述基因蛋白和所有關(guān)注點(diǎn)有機(jī)體作為定義術(shù)語(yǔ)的結(jié)構(gòu)化網(wǎng)絡(luò)开呐。
STDS:空間數(shù)據(jù)傳輸標(biāo)準(zhǔn),是一個(gè)可以在不同計(jì)算機(jī)系統(tǒng)之間無(wú)損的轉(zhuǎn)換地球空間數(shù)據(jù)的魯棒方法烟勋。
2规求、語(yǔ)義測(cè)度種類:
有三個(gè)與ontology層次結(jié)構(gòu)相關(guān)的因素:路徑長(zhǎng)度,深度卵惦,局部密度阻肿。這三個(gè)因素會(huì)影響語(yǔ)義距離測(cè)度。兩個(gè)概念C1和C2的密度是指從根路徑到C1沮尿,C2的交集的最短距離路徑上的概念的子節(jié)點(diǎn)的數(shù)目丛塌。
原文:Three factors associatedwith the ontology taxonomic hierarchy can be specified: The path length factor, depth factor and local density factor in thehierarchy do affecting (although not significantly) the semantic distance measure. The density of two concepts C1 and C2 is the number of sons of the concepts which belong to the shortest path from the root to the most specific common subsumer of two concepts C1 and C2.
兩個(gè)概念的相似度會(huì)受普通特征的影響。概念間的差異會(huì)使相似度降低畜疾,共性會(huì)使相似度升高赴邻。另外,相似度和分類可以被關(guān)聯(lián)起來(lái)啡捶,即概念在分類結(jié)構(gòu)中的位置和分層鏈接的數(shù)量姥敛。此外相似度考慮了概念的信息內(nèi)容,無(wú)論它們的值是有界的還是無(wú)窮大瞎暑,無(wú)論它們是對(duì)稱的還是不同的彤敛。
原文:The similarity measures can affected by the common characteristics of the compared concepts. The differences between the concepts cause the measures to decrease or to increase with commonality. In addition, the similarity measures and the taxonomy can be related (taxonomic relations), i.e. the position of the concepts in the taxonomy and the number of hierarchic links are considered. Moreover, similarity measures take into account the information content of the concepts, whether they are enclosed or infinite values, whether they are symmetric and whether they give different perspectives.
基于結(jié)構(gòu)的度量:
基于結(jié)構(gòu)或邊緣計(jì)數(shù)的測(cè)度方法代表一類使用一個(gè)函數(shù)計(jì)算ontology層級(jí)結(jié)構(gòu)中的語(yǔ)義相似度的方法。這個(gè)函數(shù)計(jì)算連接terms的路徑的長(zhǎng)度金顿,以及terms在層級(jí)結(jié)構(gòu)中的位置臊泌。因此,兩個(gè)概念越相近揍拆,概念間的連接就越多渠概,聯(lián)系就越緊密。
(1)最短路徑法
(2)權(quán)重連接法
(3)HSO方法( Hirst and St-Onge Measure)
(4) Wu and Palmer方法
(5)Slimani et al. [20] (TBK)? 方法
(6)Li et al. 法
(7)Leacock and Chodorow 法
基于信息內(nèi)容的度量
基于信息內(nèi)容的測(cè)度是使用概念的信息內(nèi)容來(lái)計(jì)算兩個(gè)概念間的語(yǔ)義相似度嫂拴。概念的信息內(nèi)容值是基于概念在給定文檔集中出現(xiàn)的頻率計(jì)算的播揪。下面會(huì)展示多個(gè)語(yǔ)義相似度度量方法。這些方法都使用兩個(gè)概念C1,C2的公共父親的信息內(nèi)容,S(C1;C2)表示同時(shí)包含C1,C2的概念集筒狠。兩個(gè)概念可以通過(guò)多個(gè)路徑共享父節(jié)點(diǎn)猪狈。當(dāng)C1,C2有多個(gè)公共父節(jié)點(diǎn)的時(shí)候辩恼,C就是信息量最豐富的概念集(簡(jiǎn)稱MIS)雇庙,這時(shí)會(huì)用 minimum P(C)度量相似度。
(1)Resnik
????這種方法使用公共父節(jié)點(diǎn)的信息內(nèi)容灶伊。度量原則是:兩個(gè)概念展現(xiàn)越多的公共信息疆前,它們的就越相似。并且C1,C2共有的信息由C1聘萨,C2在分類體系中的公共集合(就是S(C1;C2))的信息內(nèi)容表示竹椒。
(2)Lord et al
????基于Resnik,用于度量 DNA和阮蛋白序列數(shù)據(jù)庫(kù)的相似度米辐。
(3) Lin et al.
????由Resnik改進(jìn)胸完。
(4)Jiang & Conrath
????由Resnik改進(jìn)书释。
基于特征的度量
基于特征的度量方法假設(shè)每個(gè)概念的屬性和特征都可以用一個(gè)概念集表示。
混合度量法
二赊窥、論文:Measuring Semantic Similarity in Short Texts through Greedy Pairing and Word Semantics——基于語(yǔ)義合成的貪婪方法爆惧。
度量短文本之間的語(yǔ)義相似度。
這種度量方法基于語(yǔ)義合成性準(zhǔn)則锨能,即一個(gè)句子的含義可以通過(guò)將各個(gè)部分的含義相加得到检激,這里用的是words的含義相加「孤拢基于這個(gè)準(zhǔn)則,將word to word的語(yǔ)義相似度推廣到了句子級(jí)別齿穗。這個(gè)方法在paraphrase identification 和 recognizing textual entailment任務(wù)的表現(xiàn)比類似方法要好傲隶。
這篇論文的研究?jī)?nèi)容可以表述為兩個(gè)問(wèn)題:計(jì)算兩個(gè)文本的語(yǔ)義相似度,或者是判斷兩個(gè)文本是否有本質(zhì)的語(yǔ)義關(guān)系(釋義關(guān)系窃页,當(dāng)兩個(gè)文本由相同的含義和蘊(yùn)含關(guān)系跺株,當(dāng)一個(gè)文本可以邏輯推出另一個(gè)文本)。
語(yǔ)義相似度可以從不同的層次度量,從詞脖卖、短語(yǔ)到段落乒省、文檔。這篇論文著重于句子間的語(yǔ)義相似度畦木。
該論文設(shè)計(jì)的語(yǔ)義相似度計(jì)算方法基于語(yǔ)義合成性準(zhǔn)則袖扛,句子的含義由各成分的含義和組合規(guī)則決定。文本的成分由詞法符號(hào)(單詞十籍,數(shù)字或標(biāo)點(diǎn)符號(hào))表達(dá)蛆封。它們之間的交互關(guān)系由句子的語(yǔ)法結(jié)構(gòu)控制。這篇論文的方法只考慮如何通過(guò)簡(jiǎn)單的求和方式使獨(dú)立的詞義組成整個(gè)句子的含義勾栗,因此忽略可能會(huì)使詞義組合變得復(fù)雜的語(yǔ)法惨篱、語(yǔ)義和語(yǔ)用學(xué)規(guī)則。原因如下:1围俘、基于單詞語(yǔ)義合成的方法本身是很復(fù)雜的砸讳,因?yàn)樗S多選項(xiàng),比如在單詞級(jí)相似度求和的時(shí)候是否使用權(quán)重界牡,產(chǎn)生的結(jié)果或多或少會(huì)導(dǎo)致方案競(jìng)爭(zhēng)(competitive solution)簿寂。為了更好地理解這些選擇所涵蓋的方法空間,以及解決當(dāng)下問(wèn)題所用的基本方法是如何影響整體性能的欢揖,是有大量必要工作要做的陶耍。比如,判斷兩個(gè)文本是否有釋義關(guān)系她混。2烈钞、我們想比較基本方法的幾個(gè)變種
詞到詞的相似度
過(guò)去十年間(相對(duì)于發(fā)表論文時(shí))出現(xiàn)了兩種主要的基于詞的相似度度量泊碑。第一種是基于知識(shí)的度量。其中比較流行的一個(gè)詞庫(kù)就是WordNet毯欣÷基于知識(shí)的度量的主要優(yōu)點(diǎn)是它們基于專家判斷,非承锍可靠腹忽。缺點(diǎn)是,可以比較相似度的詞種類受限砚作。大多數(shù)這類度量都只能計(jì)算名詞窘奏,動(dòng)詞,形容詞葫录,副詞的相似度着裹,并且它們只能計(jì)算同類詞之間的相似度。少數(shù)此類方法可以計(jì)算不同種類詞的相似度米同,比如形容詞和副詞骇扇,但是速度非常慢。另外面粮,使用基于WordNet的度量方法需要指定詞義少孝,這也是一個(gè)難點(diǎn)(WSD),論文規(guī)避了這個(gè)問(wèn)題熬苍。
第二種是目前是在當(dāng)前的研究中被廣泛使用的稍走,基于向量表達(dá)詞義的方法。在這種方法中冷溃,詞義被表達(dá)為高維空間中的向量钱磅,向量的每一維都表示一種潛在的語(yǔ)義概念。這種方法的優(yōu)點(diǎn)是幾乎可以計(jì)算任何兩個(gè)詞之間的相似度似枕。這時(shí)經(jīng)常使用LSA/LSI計(jì)算句子的語(yǔ)義相似度盖淡。
貪婪匹配法
就像前面提到的,我們用來(lái)評(píng)估兩個(gè)文本的相似度的基本方法是基于語(yǔ)義合成性對(duì)詞到詞語(yǔ)義相似度的推廣凿歼。兩個(gè)文本之間的相似度由詞對(duì)間的獨(dú)立相似度的簡(jiǎn)單求和組成褪迟。這種方法可以總結(jié)為三步:1、在兩個(gè)文本間構(gòu)造一個(gè)相似詞對(duì)集合S答憔,每個(gè)詞只能出現(xiàn)在一個(gè)詞對(duì)中味赃。2、用詞對(duì)虐拓,通過(guò)加權(quán)求和的方式計(jì)算兩個(gè)文本間的整體相似度心俗。3、使用原始文本的權(quán)重化長(zhǎng)度歸一化所求得的和。
需要注意的是城榛,根據(jù)任務(wù)的不同揪利,兩個(gè)文本間的語(yǔ)義相似度可以通過(guò)單向或者雙向的方式計(jì)算。?
For entailment recognition, we need to compute a unidirectional similarity score from the entailing hypothesis (H) to the entailed text (T). In case of paraphrase identification, we need to compute a bidirectional similarity score by combining the unidirectional scores from one text (A) to the other (B) and vice versa.
為了計(jì)算從文本A到文本B的單向相似度狠持,我們采用一個(gè)貪婪策略去查找A和B中最相近的詞疟位。另外,我們排除相似度值低于預(yù)定義閾值的詞喘垂。
我們使用論文開(kāi)頭的正例來(lái)描述這個(gè)基本想法甜刻。我們發(fā)現(xiàn)A中的6個(gè)單詞和B中的完全相同(the, is, the, second, third, trimester)。另外正勒,基于最大相似度得分得院,還有兩對(duì)單詞可以被貪婪匹配(比如procedure 和 technique, 以及 performed 和 used),其他的單詞不會(huì)被匹配章贞,因?yàn)樗鼈冊(cè)诹硪粋€(gè)文本中沒(méi)有合適的匹配對(duì)象(比如 generally 和 pregnancy))尿招。注意單詞是不能被單獨(dú)排除的。比如阱驾,限定詞“the”在兩個(gè)句子中分別出現(xiàn)了兩次,因此會(huì)被配對(duì)兩次怪蔑。如果一個(gè)單詞有超過(guò)一個(gè)相似匹配里覆,那么只選最相近的那個(gè)配對(duì)。
這種配對(duì)方式和?Corley 和 Mihalcea的不同缆瓣,用于配對(duì)的單詞是不重復(fù)的喧枷。另一個(gè)不同之處是任何種類的單詞都可以被配對(duì)。之前的研究只配對(duì)內(nèi)容單詞和數(shù)字弓坞。我們發(fā)現(xiàn)在paraphrase 情形下隧甚,考慮所有的單詞會(huì)有更好的結(jié)果。不過(guò)渡冻,對(duì)于entailment戚扳,Corley 和 Mihalcea的只用內(nèi)容單詞的方法效果更好。
另一個(gè)重要的方面是族吻,我們的方法考慮詞的配對(duì)帽借。給定兩個(gè)單詞,我們的第一個(gè)選擇(Choice A)是去比較它們的詞法超歌,看它們的原形砍艾,變形(比如,復(fù)數(shù)單詞 children會(huì)被映射到原形child)巍举。形式相同后才會(huì)進(jìn)行匹配脆荷。如果沒(méi)有可以配對(duì)的詞,我們可以計(jì)算詞到詞的語(yǔ)義相似度。
Choice B:匹配同種詞性的詞(比如蜓谋,匹配child和boy梦皮,但不對(duì)children和boy配對(duì),因?yàn)樗鼈冊(cè)~性不同)或者
比較同類詞孤澎,比如届氢,比較所有的名詞和名詞而不管它們的細(xì)微差別(這時(shí)child和children會(huì)被配對(duì),因?yàn)樗鼈兌际敲~)覆旭。
Choice A 和 Choice B是緊密相關(guān)的退子,因?yàn)樵~形的變化通常受詞性影響。有趣的是型将,這些選項(xiàng)在我們的數(shù)據(jù)集上會(huì)展現(xiàn)出不同的結(jié)果寂祥。
For paraphrasing, it is more effective to compare words based on their base forms, and semantically by their part-of-speech, while for entailment, it is best when comparing them using their original, inflected forms, and semantically, based on their broad category.
不知道 base form 和 original form 的區(qū)別,inflected form 和?lemmatized form的區(qū)別七兜。不過(guò)對(duì)于中文不存在form的差異丸凭。
計(jì)算整體相似度得分的下一步是用每一對(duì)詞的語(yǔ)義相似度結(jié)合成文本的相似度。隨后這個(gè)整體得分會(huì)基于輸入文本歸一化腕铸。When computing the overlap score, one might weight the importance of each word惜犀。加權(quán)的思想是,允許一些單詞對(duì)整體得分產(chǎn)生較大的影響狠裹,比如一些短句中很少出現(xiàn)的詞虽界,可能會(huì)對(duì)句意產(chǎn)生很大的影響。詞的特性(specificity)被廣泛地用作詞的重要性度量涛菠。通常莉御,用詞的逆文檔頻率 idf(用來(lái)度量一個(gè)詞在一個(gè)大的文檔集中的罕見(jiàn)程度)作為詞的特性(specificity)的度量。詞在文檔中出現(xiàn)的越少俗冻,特性(specificity)就越強(qiáng)礁叔。與此相關(guān)的一件事是計(jì)算一對(duì)詞的權(quán)重,然而每個(gè)詞的idf值都不同迄薄。我們研究了幾種方案:只考慮第一個(gè)句子中詞的idf , 兩個(gè)idf取均值琅关,或者取兩個(gè)idf中較大的。我們發(fā)現(xiàn)讥蔽,取較大的idf對(duì)于entailment和paraphrase任務(wù)效果都很好死姚。因此我們使用下面的公式去計(jì)算Text A 和 Text B的相似度得分,加權(quán)Simw 勤篮, 不加權(quán) Sim, wa 表示A中的單詞都毒,wb表示B中的單詞,p(wa, wb)是相似詞對(duì)集合S中的一個(gè)碰缔,WordSim用來(lái)計(jì)算詞到詞的相似度账劲。
Finally, we normalize the overall similarity score on the weighted length of the input texts.這步計(jì)算通過(guò)求和我們第一步中考慮的所有詞法符號(hào)的idf權(quán)重(構(gòu)造詞對(duì)集合時(shí))。如果不用權(quán)重,就用輸入文本的長(zhǎng)度瀑焦,長(zhǎng)度為前面配對(duì)過(guò)程中所有符號(hào)的數(shù)量腌且。因?yàn)橛袃蓚€(gè)文本,兩個(gè)長(zhǎng)度榛瓮,所以有幾種方式進(jìn)行歸一化铺董。
計(jì)算公式:
實(shí)驗(yàn)和結(jié)果
實(shí)驗(yàn)了兩個(gè)語(yǔ)義相似度任務(wù):paraphrase identification 和 entailment recognition。在這兩個(gè)任務(wù)中禀晓,分別在 paraphrase identification 使用MSPR數(shù)據(jù)集和entailment recognition使用RTE數(shù)據(jù)集時(shí)發(fā)現(xiàn)了基本方法最好的變種精续。
For preprocessing, we use the Stanford NLP Core library to tokenize, lemmatize and extract the part-of-speech tags. For idf weighting, we use an idf index which we previously computed from the English Wikipedia.
未完待續(xù)。粹懒。重付。
三、論文:A Survey of Text Similarity Approaches——文本相似度方法調(diào)查凫乖。
四确垫、網(wǎng)站:Text Similarity: estimate the degree of similarity between two texts.——這個(gè)網(wǎng)站將文本相似度分為語(yǔ)義相似度和句法相似度。
五帽芽、論文:Measuring the Semantic Similarity of Texts——貪婪匹配法論文中提到的論文
六删掀、論文:基于語(yǔ)義角色標(biāo)注的漢語(yǔ)句子相似度算法
七:論文:基于關(guān)系向量模型的句子相似度計(jì)算
八:論文:Siamese Recurrent Architectures for Learning Sentence Similarity,?Tensorflow實(shí)現(xiàn)——深度網(wǎng)絡(luò)导街,孿生LSTM
? ? ? ? 論文解讀?Siamese Recurrent Architectures for Learning Se... - 簡(jiǎn)書
螞蟻金服NLP語(yǔ)義相似度競(jìng)賽討論區(qū)分享的一個(gè)模型:[NLP大賽baseline分享](https://openclub.alipay.com/read.php?tid=7480&fid=96)