楊凡
摘 要 語義相似度研究的是兩個詞語的相似性,被廣泛應用于信息檢索、信息提取、文本詞義消歧、機器翻譯等領域中。本文介紹幾種主要的語義相似度計算方法,以供大家參考。
關鍵詞 語義相似度 詞義相似度 語義距離
一、引言
自然語言的詞語之間關系比較復雜,我們又時常要把這種復雜關系進行比較,所以要將其轉化為簡單的數(shù)量關系,再進行比較。語音相似度計算正是這樣的方法。
詞語的語義相似度計算有3種方法:基于知識體系的方法、基于語料庫的方法、基于網(wǎng)絡的方法?;谥R體系的方法,大多以WordNet作為基礎。WordNet是語義字典,它根據(jù)詞條的意義將詞語分組,每一個具有相同意義的字條組稱為一個synset(同義詞集合)。WordNet為每一個synset提供了簡短,概要的定義,并記錄不同synset之間的語義關系。它用概念之間的語義關系形成符合常識和語法的語義關系圖?;谛畔⒘康姆椒ㄖ饕峭ㄟ^詞語上下文的信息,用統(tǒng)計的方法求解?;诰W(wǎng)絡的方法,主要是利用搜索引擎的搜索結果進行計算。
二、語義相似度概念
信息論中任何兩個詞語的相似度取決于它們的共性(Commonality)和個性(Differences)。公式如下:
其中,分子表示描述A,B共性所需要的信息量;分母表示完整地描述A,B所需要的信息量。
劉群、李素建認為語義相似度就是兩個詞語在不同的上下文中可以互相替換使用而不改變文本的句法語義結構的程度。兩個詞語,如果在不同的上下文中可以互相替換且不改變文本的句法語義結構的可能性越大,二者的相似度就越高,否則相似度就越低。對于兩個詞語W1,W2如果記其相似度為Sim(W1,W2),其詞語距離為Dis(W1,Wz),根據(jù)劉群、李素建的公式:
其中a是一個可變參數(shù),含義是當相似度為0.5時的詞語距離值。
相似度被定義為一個0到1之間的實數(shù),當兩個詞語完全一樣時,相似度為1;是完全不同的概念時,它們的相似度接近于0。
三、語義相似度的計算方法
常用計算方法有基于知識體系的計算,基于大規(guī)模語料庫的計算,基于網(wǎng)絡的計算。
(一)根據(jù)分類體系計算詞語語義距離的方法
這種方法也稱為基于樹的語義相似度計算方法,大體分為兩種:一是基于距離的語義相似性測度;二是基于信息內(nèi)容的語義相似性測度。主要是利用語義詞典,我們可以把概念看做節(jié)點,關系看作邊,這樣WordNet的結構就可以看作是圖結構。
(1)基于樹狀層次計算語義相似度的基本思想
這是以邊為距離來計算語義相似度。如果樹狀語義網(wǎng)中所有的邊即樹的分支是等長的,那么邊的數(shù)目可以作為距離的測度。假定要確定詞語W1.W2之間的語義相似度,可以在該語義網(wǎng)中首先找到包含待比較詞的那些子概念(或義原)。在此情況下,兩者之間的語義相似性可以用連二者之間的最短路徑來表示。例如,在圖1(取自Wordnet本體中的一小部分)中,kid和boy之間的最短路徑是}kid一juvenile一persor一male-girl,最小路徑長度為4。而educator和boy之間的最小路徑長度為5。因此,girl比teacher在語義上更接近于boy。該測度算法在基于Wordnet的語義網(wǎng)中獲得了較好的計算結果。
圖1
(2)基于《知網(wǎng)》hownet的語義相似度計算
知網(wǎng)(英文名稱為HowNet)是一個以漢語和英語的詞語所代表的概念為描述對象,以揭示概念與概念之間以及概念所具有的屬性之間的關系為基本內(nèi)容的常識知識庫。其中描述了16種關系,如上下位關系、部件-整體關系、屬性-宿主關系等?!吨W(wǎng)》中有兩個主要的概念:“概念(義項)”與“義原”?!案拍睢笔菍υ~匯語義的一種描述。每一個詞可以表達為幾個概念。“概念”是用一種“知識表示語言”來描述的,這種“知識表示語言”所用的“詞匯”叫做“義原”。“義原”是用于描述一個“概念”的最小意義單位,用多個義原對概念進行描述。目前有1500多個義原,但可以組合數(shù)量龐大的詞匯。用義原計算可以有效提高效率,并且義原的相似度也可以根據(jù)其在義原樹中的位置得出。因此它并非樹狀結構,而是一種網(wǎng)狀結構;同時借助義原和符號對概念進行描述。對于兩個漢語詞語a和b:,如果A有n個義項(概念):sll,Slz}...,Sln,B有m個義項(概念):Szl,Szz,...}Sz}n,則詞語A和B的相似度是各個義項相似度的最大值,義項又由義原表示,這樣就將詞語相似度轉化為兩個詞語義原之間的相似度。并且由于義原在知網(wǎng)中所處的層次不同,它們在整體相似性中所占的比重也不一樣,對詞語相似性的影響程度也有所有不同。
(二)利用大規(guī)模的語料庫進行統(tǒng)計
語料庫語言學(Corpus Linguistics)是計算語言學的分支學科。它研究機器可讀的自然語言文本的采集、存儲、檢索、統(tǒng)計、語法標注、句法語義分析,以及具有上述功能的語料庫在語言定量分析、詞典編纂、作品風格分析、自然語言理解和機器翻譯等領域中的應用([HCN90])。語料庫語言學研究的基礎是機器可讀的大容量語料庫和一種易于實現(xiàn)的統(tǒng)計處理模型,兩者是相輔相成、缺一不可的。從本質上講,語料庫語言學的研究采用的是一種基于統(tǒng)計的經(jīng)驗主義處理方法,它與傳統(tǒng)的基于規(guī)則的理性主義處理方法是不同的。
基于語料庫的詞語相似度研究大都采用了上下文語境的統(tǒng)計描述方法,即認同這樣一個論斷:詞語的上下文可以為詞語定義提供足夠信息。詞語向量空間模型是目前基于統(tǒng)計的詞語相似度計算策略使用比較廣泛的一種,算法復雜度也能夠實現(xiàn)的模型。該模型事先選擇一組特征詞,然后計算這一組特征詞與每一個詞的相關性(一般用這組詞在實際的大規(guī)模語料中以該詞在上下文中出現(xiàn)的頻率來度量),于是對于每一個詞都可以得到一個相關性的特征詞向量,然后利用這些向量之間的相似度作為這兩個詞的相似度。
(三)基于信息量的計算方法
一種是根據(jù)語義詞典樹的信息,根據(jù)樹狀結構中兩個節(jié)點所含的信息量大?。ㄗ咏Y點數(shù)與樹中的所有結點數(shù)的比)來計算語義相似度。另一種是把Internet作為一個大型的語料庫,以搜索引擎返的結果數(shù)作為計算的依據(jù)。公式如下:
其中,NGD介于0與1之間,表示相似度.f(x),f(y)分別表示含概念x,y的網(wǎng)頁數(shù),f(x,y)表示同時含有概念的網(wǎng)頁數(shù),N表示搜索引擎引用的網(wǎng)頁總數(shù)。以詞語horse與rider為例,搜索詞語"horse”返回46700000(記為f(x))條結果,搜索詞語“rider"返回結果數(shù)為12200000記為.f'(y)),搜索同時含“horse,rider'的網(wǎng)頁數(shù)是2630000(記為f(x,y)),共引用的網(wǎng)頁數(shù)是
N=8058044651,代人上述公式(7)求得:
NGD(horse,rider)≈0.443
四、結束語
語音相似度應用廣泛,本文主要介紹了基于分類體系的語義相似度計算方法,以及基于搜索引擎的相似度計算方法。這些方法對于論文檢測等工作很大的推進作用。
(作者單位:襄陽職業(yè)技術學院)