亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

文本相似度、詞義相似度計算方法和系統(tǒng)及應用系統(tǒng)的制作方法

文檔序號:6609993閱讀:402來源:國知局
專利名稱:文本相似度、詞義相似度計算方法和系統(tǒng)及應用系統(tǒng)的制作方法
技術(shù)領域
本發(fā)明涉及計算機文本信息處理領域,特別是涉及一種文本間的文本相似度計算方法和系統(tǒng),文本中的詞匯間的詞義相似度計算方法和系統(tǒng),以及應用該文本相似度計算系統(tǒng)的應用系統(tǒng)。
背景技術(shù)
隨著計算機對文本信息等各種自然語言處理應用的普及,人們需要一個有效且準確的方法來計算兩個文本或句子之間的文本相似度,即計算機文本相似度計算方法。尤其,短文本相似度的計算具有十分重要的作用,它的應用能極大地提高系統(tǒng)自動問答的精度。
文本(特別是短文本)相似度的計算方法在計算機文本相關的研究和應用領域中扮演著越來越重要的角色。如在文本檢索領域(Text Retrieval),短文本相似度可以改善搜索引擎的召回率(Recall)和準確度(Precision);在文本挖掘領域(Text Mining),短文本相似度作為一個測量方法用來發(fā)現(xiàn)文本數(shù)據(jù)庫中潛在的知識;在基于網(wǎng)頁的圖像檢索(Image Retrieval)領域,可以利用圖像周圍的描述性短文本來提高準確率。此外,文本相似度計算方法也可以應用到其他一些研究領域,包括文本概括(Text Summarization),文本分類(Text Categorization)和機器翻譯(Machine Translation)等領域。
一般地,傳統(tǒng)的文本相似度計算方法通過對文本用其詞頻向量(或稱為文本詞頻向量term-frequency vector)表示,然后計算詞頻向量間的距離得到文本相似度。大多數(shù)現(xiàn)有的計算文本相似度的方法只適用于長文本,傳統(tǒng)的計算長文本相似度方法之所以有效是因為相似的長文本通常包含了一定數(shù)量的相同的詞匯。
然而,由于越來越多的短文本應用的出現(xiàn),比如電子郵件,電子通告和問答系統(tǒng),人們對短文本處理的需求日益迫切。但是對于短文本而言,因為相似的短文本并不一定有相同的詞,自然語言的靈活性使得人們可以通過不同的措詞表達相同的意思,所以現(xiàn)有的相似度計算方法應用效果并不很好,例如在對對新聞組(Newsgroup)數(shù)據(jù)處理等現(xiàn)有信息檢索技術(shù)處理中表現(xiàn)不佳。此外,傳統(tǒng)的文本相似度計算過程中,對文本的表達方式通常去掉停用詞(StopWord),比如“the”,“is”,“of”等等,但是在對短文本的處理過程中,因為它們蘊含了一些句子的結(jié)構(gòu)信息,所以一些停用詞不能被忽略,這使得傳統(tǒng)的文本相似度計算方法在處理短文本的文本相似度計算過程中不能得到很好的結(jié)果。
基于傳統(tǒng)相似度計算方法所存在的缺陷,人們提出了一些文本相似度計算的改進方法,用于改進短文本相似度計算的效果。
一種現(xiàn)有的文本相似度計算的改進方法是Hatzivassiloglou等人提出的一個對多個特征進行綜合的方法(見V.Hatzivassiloglou,J.Klavans,and E.Eskin.“Detecting Text Similarity over Short PassagesExploring Linguistic FeatureCombinations via Machine Learning.”Proc.Joint SIGDAT Conference onEmpirical Methods in NLP and Very Large Corpora,1999),該方法綜合了詞匯共同出現(xiàn)(Word co-occurrence),名詞短語匹配,WordNet同義詞,動詞的共同詞義類和共有的專用名詞(Shared Proper Noun)等一些簡單特征以及一些復雜特征,如順序、距離和原語(Primitive),從而進行文本相似度計算。
然而,該方法只是以前方法的一個綜合體并且試驗顯示其僅在包含一個至幾個段落的文本上效果不錯,并不能很好地改進傳統(tǒng)相似度計算所存在的缺陷。
現(xiàn)有另一種文本相似度計算的改進方法是Okazaki等人提出的把詞匯數(shù)據(jù)庫應用到計算句子間的相似度當中的文本相似度計算方法(見N.Okazaki,Y.Matsuo,N.Matsumura,and M.Ishizuka.“Sentence Extraction by SpreadingActivation through Sentence Similarity,”IEICE Transactions on Information andSystems,vol.E86D,no.9,pp.1686-1694,2003)。在他們的方法中,句子相似度通過累加所有詞匯對得來。
然而,這個方法有兩個缺點首先一個有較多同義詞的詞匯會對結(jié)果產(chǎn)生較大的影響;其次它并沒有解決一詞多義的問題。
現(xiàn)有的又一種文本相似度計算的改進方法是Chiang和Yu提出的把模板(Pattern)匹配的方法應用到計算短文本的相似度中的相似度計算方法(見H.Chiang and H.C.Yu.“Literature Extraction of Protein Function UsingSentence Pattern Mining,”IEEE Transactions on Knowledge and DataEngineering,vol.17,no.8,pp.1088-1098,2005),該方法與傳統(tǒng)方法的區(qū)別在于引入了詞匯的局部結(jié)構(gòu)信息,每一個模板用正則表達式來表示并且?guī)в辛嗽~義的信息,最后的相似度由一個簡單的模板匹配算法得出。這一方法取得了一些效果,曾被廣泛應用于自動問答和其他文本挖掘的文本相似度計算中。
但該方法的缺點是它要求一個完整的模板集合,覆蓋所有類型的句子,然而,提供一個這樣的模板集合是不可能的,因為人工生成模板是一個枯燥冗長的任務,并且沒有自動的方法可以利用。此外,即使有一個完整的模板集合,基于模板的方法也不能處理口語式的短文本,而這些文本在網(wǎng)頁上是很常見的。
此外,Sahami和Heilman也提出了一種測量短文本相似度的方法。他們的方法是利用搜索引擎,例如谷歌(Google)搜索引擎,就像查詢擴展(GueryExpansion)技術(shù)一樣,來獲得給定文本的相關上下文。
但是因為該方法依賴于搜索引擎的數(shù)據(jù)庫,所以計算得到的結(jié)果往往不穩(wěn)定。例如,用這個方法可能在某一天得出“Larry Page”和“Google Founder”之間的文本相似度為0.8,但是在其他一些時間,結(jié)果可能是0.3。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種文本間的文本相似度計算方法和系統(tǒng),文本中的詞匯間的詞義相似度計算方法和系統(tǒng),以及其應用系統(tǒng),其能夠顯著提高現(xiàn)有的文本相關的,特別是有關短文本的信息檢索技術(shù)的性能。
為實現(xiàn)本發(fā)明目的而提供的一種文本相似度計算方法,包括下列步驟步驟A,根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本集中文本間的初始語義相似度;步驟B,根據(jù)所述初始化得到的詞義相似度和文本間的初始語義相似度,交替迭代計算文本集中的各個文本間的語義相似度和詞匯間的詞義相似度,直至收斂;根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;
步驟C,根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
所述的文本相似度計算方法,還可以包括下列步驟步驟D,當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將所述新文本的文本詞頻向量變換為新的詞頻向量,并以此計算所述新文本和所述文本集的文本相似度。
所述步驟D還包括下列步驟將所述新文本加入到所述文本集中,重復步驟B~C,得到更新的詞義相似矩陣,重新計算新的文本詞頻向量。
所述步驟A中所述根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度,包括下列步驟步驟A1,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;步驟A2,根據(jù)詞匯間的基于所述權(quán)重的最短路經(jīng)長度計算詞匯間的初始詞義相似度;步驟A3,根據(jù)步驟A2得到的詞匯間的初始詞義相似度計算文本集中文本的初始語義相似度。
所述步驟A1中,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重,包括下列步驟如果兩個詞的概念中具有一個或多個相同的詞義,那么在這兩個詞的概念之間添加一條邊,并給該邊賦予權(quán)重;和/或,如果兩個詞的概念之間具有局部-整體關系,那么在它們之間添加一條邊,并給該邊賦予權(quán)重;所述邊的權(quán)重是根據(jù)邊的深度計算得到的。
所述步驟A2中,計算詞匯間的詞義相似度,是通過下列公式來計算詞匯間的詞義相似度sim(w1,w2)=0length(w1,w2)≥γ-1γ·length(w1,w2)+1length(w1,w2)<γ;]]>其中w1,w2表示兩個詞,γ是一個大于0的閾值,length(w1,w2)為詞匯w1,w2間的基于所述權(quán)重的最短路經(jīng)長度。
所述步驟A3中,計算得到文本間的語義相似度,是通過下列公式計算得到sim(d1,d2)=Σk=1N[(Σi=1Ntf1ipik)(Σj=1Ntf2jpjk)];]]>其中,Pik=sim(wi,wk)Σl=1Nsim(wi,wl)2;]]>Pik表示了詞匯wi和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
所述步驟B中,交替迭代計算文本間的語義相似度和詞匯間的詞義相似度,直至收斂,包括下列步驟步驟B1,對衰減因子λ賦予初值,設定收斂條件;步驟B2,根據(jù)文本間的語義相似度計算詞匯間的詞義相似度;步驟B3,根據(jù)步驟B2計算得到的詞義相似度,計算得到文本間的語義相似度;步驟B4,減小衰減因子λ,判斷是否滿足收斂條件,如果是,則迭代計算結(jié)束;否則,轉(zhuǎn)步驟B2。
所述步驟B2中,計算詞匯間的詞義相似度,是通過下式計算得到的sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M[(Σi=1Mtfi1Qik)(Σj=1Mtfj2Qjk)];]]>所述步驟B3中,計算文本間的語義相似度,是通過下式計算得到的sim(d1,d2)=(1-λ)sim(d1,d2)+λΣk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)];]]>其中,λ是一個在0,1之間取值的衰減因子。
所述步驟B中,所述最終詞義相似矩陣為
其中,Pjk=sim(wj,wk)Σl=1Nsim(wj,wl)2]]>每個元素Pjk表示了詞wj和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
所述步驟B還包括下列步驟根據(jù)計算收斂后得到的所有文本間的語義相似度的所有元素組成的最終語義相似矩陣 其中,Qjk=sim(dj,dk)Σl=1Nsim(dj,dl)2]]>每個元素Qjk表示了文本詞頻向量dj和dk之間的語義相似度,分母的作用是在相似文本之間進行規(guī)范化。
所述步驟C中,根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,為利用下式,通過最終詞義相似矩陣P和文本詞頻矩陣D將文本集中的所有的文本映射到新的文本詞頻矩陣
所述步驟C中,計算出所述文本集的文本相似度,具體包括如下步驟根據(jù)新的文本詞頻矩陣 計算得到文本集中文本間的文本相似矩陣SS=]]> 其中,Si,j是標號為i和標號為j的短文本之間的相似度, 為 的轉(zhuǎn)置,Si,j為兩個文本i,j向量的點積。
所述步驟C中,計算出所述文本集的文本相似度,是使用向量余弦模型計算文本相似度。
所述步驟B中,在計算收斂得到所述詞匯間的詞義相似度矩陣之后,還包括下列步驟對新的文本詞頻矩陣進行降維,使得能夠用相對較低的維數(shù)來表示新的空間;同時獲得降維后的最終詞義相似矩陣。
通過下式,使用PCA降維方法進行降維D~=D^W=DPW;]]>其中, 是經(jīng)過轉(zhuǎn)換過后的具有k列的新的文本詞頻矩陣,W是轉(zhuǎn)換矩陣,它的每一列是 的協(xié)方差矩陣的前k個特征向量之一;此時P~=PW]]>為降維后的最終詞義相似矩陣;其中k<N。
所述步驟D,當新文本加入到所述文本集時,利用的詞義相似矩陣將所述新文本的文本詞頻向量變換為新的詞頻向量,并以此計算所述新文本和所述文本集的文本相似度,為
用最終詞義相似矩陣矩陣或降維后的最終詞義相似矩陣把所述新文本的文本詞頻向量映射變換到新的文本詞頻向量,計算所述新文本和已有文本之間的語義相似度。
所述計算新文本和已有文本之間的語義相似度,是通過下式計算sim(dnew,di)=dnewPP′di′;]]>其中,dnew是新加入的文本的詞頻向量,di是標號為i的文本的詞頻向量,P′和d′為相應的矩陣和向量的轉(zhuǎn)置,文本相似度為兩個向量的點積。
為實現(xiàn)本發(fā)明目的還一種文本相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,文本集模塊包括至少一文本集,還包括初始化模塊,迭代計算模塊,最終相似度計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述迭代計算模塊,用于根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,進行交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂;根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述最終相似度計算模塊,用于根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
所述最終相似度計算模塊中計算出所述文本集的文本相似度是使用向量的點積或余弦模型計算文本相似度。
所述最終相似度計算模塊,還用于當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將新文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新文本和所述文本集中的文本相似度。
所述最終相似度計算模塊將所述新文本加入到所述文本集中,再次調(diào)用系統(tǒng),得到更新的最終詞義相似矩陣,重新計算新的文本詞頻向量。
所述迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
為實現(xiàn)本發(fā)明目的進一步提供一種詞義相似度計算方法,包括下列步驟步驟A′,根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;步驟B′,根據(jù)所述初始化得到的詞義相似度和文本間的初始語義相似度,進行交替迭代計算文本集中的各個文本間的語義相似度和詞匯間的詞義相似度,直至收斂;根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
所述步驟B′還包括下列步驟通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
所述步驟A′中所述根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度,包括下列步驟步驟A1′,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;步驟A2′,根據(jù)詞匯間的基于所述權(quán)重的最短路經(jīng)長度計算詞匯間的詞義相似度;步驟A3′,根據(jù)步驟A2′得到的詞匯間的初始詞義相似度計算文本集中文本的初始語義相似度。
所述步驟A1′中,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重,包括下列步驟如果兩個詞的概念中具有一個或多個相同的詞義,那么在這兩個詞的概念之間添加一條邊,并給該邊賦予權(quán)重;和/或,如果兩個詞的概念之間具有局部-整體關系,那么在它們之間添加一條邊,并給該邊賦予權(quán)重;所述邊的權(quán)重是根據(jù)邊的深度計算得到的。
所述步驟A2′中,計算詞匯間的詞義相似度,是通過下列公式來計算詞匯間的詞義相似度
sim(w1,w2)=0length(w1,w2)≥γ-1γ·length(w1,w2)+1length(w1,w2)<γ;]]>其中w1,w2表示兩個詞,γ是一個大于0的閾值,Length(w1,w2)為詞匯w1,w2間的基于所述權(quán)重的最短路經(jīng)長度。
所述步驟A3′中,計算得到文本間的語義相似度,是通過下列公式計算得到sim(d1,d2)=Σk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)];]]>其中,Pik=sim(wi,wk)Σl=1Nsim(wi,wl)2;]]>Pik表示了詞匯wi和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
所述步驟B′,交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,包括下列步驟步驟B1′,對衰減因子λ賦予初值,設定收斂條件;步驟B2′,根據(jù)文本間的語義相似度計算詞匯間的詞義相似度;步驟B3′,根據(jù)步驟B2′計算得到的詞義相似度,計算得到文本間的語義相似度;步驟B3′,減小衰減因子λ,判斷是否滿足收斂條件,如果是,則迭代計算結(jié)束;否則,轉(zhuǎn)步驟B2′。
所述步驟B2′中,計算詞匯間的詞義相似度,是通過下式計算得到的sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M[(Σi=1Mtfi1Qik)(Σj=1Mtfj2Qjk)];]]>所述步驟B3′中,計算文本間的語義相似度,是通過下式計算得到的sim(d1,d2)(1-λ)sim(d1,d2)+λΣk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)];]]>
其中,λ是一個在0,1之間取值的衰減因子。
為實現(xiàn)本發(fā)明目的還提供一種詞義相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和短文本集模塊,所述詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊包括至少一短文本集,其特征在于,還包括初始化模塊,詞義迭代計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述詞義迭代計算模塊,根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
所述詞義迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
為實現(xiàn)本發(fā)明目的而提供一種詞義相似度排列表裝置,所述裝置包括一芯片,其特征在于,所述芯片中存儲有一詞義相似度矩陣表,所述詞義相似度矩陣表中的每個元素為詞義相似度,該詞義相似度是通過詞義相似度計算系統(tǒng)計算得到;所述詞義相似度計算系統(tǒng)包括詞匯數(shù)據(jù)庫模塊和短文本集模塊,所述詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊包括至少一短文本集;所述的詞義相似度計算系統(tǒng),還包括初始化模塊,詞義迭代計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述詞義迭代計算模塊,根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
所述詞義迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
所述文本集為短文本集。
所述詞匯數(shù)據(jù)庫或者是英文的WordNet詞匯數(shù)據(jù)庫,或者是中文的HowNet詞匯數(shù)據(jù)庫或同義詞詞林,或者他們的組合。
本發(fā)明還提供一種問答系統(tǒng),包括一文本相似度計算系統(tǒng),所述文本相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,文本集模塊包括至少一文本集,其特征在于,還包括初始化模塊,迭代計算模塊,最終相似度計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述迭代計算模塊,用于根據(jù)所述初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述最終相似度計算模塊,用于根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
所述的問答系統(tǒng),所述最終相似度計算模塊中計算出所述文本集的文本相似度是使用向量的點積或余弦模型計算文本相似度。
所述的問答系統(tǒng)的最終相似度計算模塊,還用于當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將新文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新文本和所述文本集中的文本相似度。
所述的問答系統(tǒng)中,所述最終相似度計算模塊將所述新文本加入到所述文本集中,再次調(diào)用系統(tǒng),得到更新的最終詞義相似矩陣,重新計算新的文本詞頻向量。
所述的問答系統(tǒng)中,所述迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
本發(fā)明進一步提供一種圖像檢索系統(tǒng),包括一文本相似度計算系統(tǒng),所述文本相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,文本集模塊包括至少一文本集,其特征在于,還包括初始化模塊,迭代計算模塊,最終相似度計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述迭代計算模塊,用于根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,進行交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述最終相似度計算模塊,用于根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
所述的圖像檢索系統(tǒng)中,所述最終相似度計算模塊中計算出所述文本集的文本相似度是使用向量的點積或余弦模型計算文本相似度。
所述的圖像檢索系統(tǒng)中,所述最終相似度計算模塊,還用于當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將新文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新文本和所述文本集中的文本相似度。
所述的圖像檢索系統(tǒng)中,所述最終相似度計算模塊將所述新文本加入到所述文本集中,再次調(diào)用系統(tǒng),得到更新的最終詞義相似矩陣,重新計算新的文本詞頻向量。
所述的圖像檢索系統(tǒng)中,所述迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
本發(fā)明的有益效果是本發(fā)明提出的詞義相似度、文本相似度計算方法和系統(tǒng),在計算詞匯間詞義相似度前,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;然后利用交替迭代計算文本間語義相似度和詞匯間詞義相似度直至收斂;根據(jù)迭代收斂結(jié)果構(gòu)造包括文本中所有詞匯的詞義相似矩陣,并根據(jù)此詞義相似矩陣把原始文本的詞頻向量轉(zhuǎn)化為新的空間中的新的詞頻向量表達,然后根據(jù)新的詞頻向量計算文本相似度。實驗表明本發(fā)明的詞義相似度計算方法比現(xiàn)有方法的更接近人類對詞義相似度的判斷;本發(fā)明的文本相似度計算方法可以顯著地提高文本相關信息檢索技術(shù)的性能。


圖1是本發(fā)明實施例文本相似度計算方法流程圖;圖2是本發(fā)明實施例從WordNet詞匯數(shù)據(jù)庫中摘取的層次結(jié)構(gòu)詞法數(shù)據(jù)庫的部分詞匯連接關系示例圖;圖3是本發(fā)明實施例中初始化計算短文本間的初始語義相似度及詞匯之間的初始詞義相似度流程圖;圖4是本發(fā)明實施例迭代計算各文本間的語義相似度和詞匯間的詞義相似度直至收斂流程圖;圖5是本發(fā)明實施例文本相似度計算系統(tǒng)結(jié)構(gòu)示意圖;圖6是本發(fā)明實施例詞義相似度計算系統(tǒng)結(jié)構(gòu)示意圖;圖7是本發(fā)明實施例應用文本相似度計算系統(tǒng)的問答系統(tǒng)結(jié)構(gòu)示意圖;圖8是本發(fā)明實施例應用文本相似度計算系統(tǒng)的圖像檢索系統(tǒng)結(jié)構(gòu)圖;圖9是本發(fā)明和現(xiàn)有的詞義相似度計算方法計算詞義相似度的結(jié)果對比列表;圖10是各種詞義相似度計算方法的結(jié)果與Miller和Charles的方法的結(jié)果的相關系數(shù)對比列表;圖11是用本發(fā)明和簡單的基于詞頻的文本相似度計算方法在CompNews數(shù)據(jù)子集上的進行分類的結(jié)果比較圖;圖12是用本發(fā)明和簡單的基于詞頻的文本相似度計算方法在SciNews數(shù)據(jù)子集上的進行分類的結(jié)果比較圖;
圖13是用本發(fā)明和簡單的基于詞頻的文本相似度計算方法在DiffNews數(shù)據(jù)子集上的進行分類的結(jié)果比較圖;圖14是用本發(fā)明和基于詞頻的文本相似度計算方法方法以及基于tf-idf的文本相似度計算方法進行聚類的結(jié)果比較圖。
具體實施例方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明的一種文本相似度、詞義相似度計算方法和系統(tǒng)及應用系統(tǒng)進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實施例特別是針對短文本的文本相似度、詞義相似度計算方法和系統(tǒng)及應用系統(tǒng),其中,所述短文本可以為一個很小的文本段落,可能僅由幾個詞匯或者句子構(gòu)成。但是,特別需要說明的是,本發(fā)明的文本相似度計算方法同樣適用于其他的文本,特別是長文本的文本相似度計算方法。因為長文本也是由短文本組成,所以,本發(fā)明只針對短文本的文本相似度計算方法進行陳述,但這并不是對本發(fā)明的限制。
本發(fā)明的文本相似度、詞義相似度計算方法和系統(tǒng),根據(jù)詞匯數(shù)據(jù)庫獲得所有詞匯的初始詞義信息,進行詞匯間的詞義相似度初始化得到初始詞義相似度,并根據(jù)初始詞義相似度計算文本集中的文本間的初始語義相似度,然后交替迭代計算文本集中的文本間的語義相似度和詞匯間的詞義相似度直至收斂,然后根據(jù)迭代計算的收斂結(jié)果,構(gòu)造所有詞匯的詞義相似矩陣(Term ProximityMatrix,TPM),并根據(jù)所述詞義相似矩陣把原始文本集的文本詞頻向量轉(zhuǎn)化為新的文本詞頻向量(新的詞頻相當于包括了同義詞的詞頻),計算得到該文本集中的文本相似度。
如圖1所示,下面進一步詳細說明本發(fā)明的文本相似度、詞義相似度計算方法在本發(fā)明的文本相似度、詞義相似度計算方法中,將詞匯數(shù)據(jù)庫中獲得的詞義信息和所涉及的文本集中蘊含的詞義統(tǒng)計信息這兩種信息以非線性的方式組合在一起,從而計算得到文本集中文本相似度和詞義相似度。
所述的文本相似度、詞義相似度計算方法首先進行詞匯間詞義相似度的初始化,得到所有詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本集中的文本間的初始語義相似度,然后對文本集進行短文本間的語義相似度和詞匯間詞義相似度的迭代計算直至收斂,最后根據(jù)迭代計算的收斂結(jié)果,得到最終詞義相似度,構(gòu)造最終詞義相似矩陣(TPM),其后用該詞義相似矩陣將原始短文本的文本詞頻向量變換為新的文本詞頻向量,計算得到最終文本語義相似度。包括以下四個步驟步驟S1,根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到所有詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本集中文本間的初始語義相似度;較佳地,在計算各個詞間的初始詞義相似度前,用一個深度函數(shù)給詞匯數(shù)據(jù)庫中的詞之間的邊賦予權(quán)重。
步驟S2,根據(jù)初始化得到的詞匯間的初始詞義相似度和文本間的初始語義相似度,對文本集進行交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度直至收斂,即,對文本集,根據(jù)每一輪新得到的文本間的語義相似度重新計算詞匯間的詞義相似度,并根據(jù)每一輪新得到的詞義相似度重新計算文本間的語義相似度,這樣交替迭代進行直至收斂,最終得到包含詞匯數(shù)據(jù)庫中詞匯的初始詞義信息以及所述短文本集(語料庫)所蘊含的詞匯的詞義信息的最終詞義相似度,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述文本集可以是給定的未經(jīng)處理的短文本集(語料庫),也可以是已經(jīng)過處理的,或逐漸積累的短文本集。
同時,基于該最終詞義相似度,可以計算得到所述特定短文本集中的短文本間的最終語義相似度。
較佳地,在這一步驟中,還通過降低維度的方法,如主成分分析法(PrincipleComponents Analysis,PCA),獨立分量分析法(Independent ComponentAnalysis,ICA)對文本矩陣進行降維,使得能夠用相對較低的維數(shù)(即只用一些最有代表性的詞)來存儲表示新的空間中的文本,從而達到節(jié)省存儲空間的目的,此做法的效果同時可以使詞義相似矩陣得到簡化處理,即只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
步驟S3,用所述最終詞義相似矩陣將原始短文本的文本詞頻向量變換為新的文本詞頻向量,計算得到所述短文本集的文本相似度。
步驟S4,當新短文本加入到所述短文本集時,利用所述的最終詞義相似矩陣將所述新短文本的文本詞頻向量變換為新的詞頻向量,并以此計算所述新短文本和所述短文本集的文本相似度。
進一步地,將所述新短文本加入到所述短文本集中,當新加入的新短文本的數(shù)量達到一定量時,或認為有必要時,重復步驟S2~S3,得到更新的最終詞義相似度,重新計算新的文本詞頻向量及文本相似度。
下面首先以WordNet詞匯數(shù)據(jù)庫為例,詳細描述步驟S1根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本集中的文本間的初始語義相似度的過程。
在本發(fā)明的文本相似度計算方法中,在迭代計算文本間語義相似度和詞匯間的詞義相似度前,首先對詞匯間的詞義相似度及文本間的初始語義相似度進行初始化。
現(xiàn)有技術(shù)中,許多現(xiàn)有的詞匯數(shù)據(jù)庫在計算語言學相關應用中取得了成功,因此,本發(fā)明的文本相似度計算方法,以及詞義相似度計算方法,利用基于詞匯數(shù)據(jù)庫的方法來初始化詞匯間的相似度。
一般地,在詞匯數(shù)據(jù)庫中,每一個詞匯關聯(lián)著一些概念。這些概念被“isa”(ISA)關系所連接起來,可以用兩個詞匯間路徑長度代表詞匯之間關系,本發(fā)明文本相似度計算方法,以及詞義相似度計算方法,利用基于詞匯數(shù)據(jù)庫的方法,利用兩個詞匯間路徑長度來初始化計算詞匯間的詞義相似度。
然而,單純利用詞匯間路徑長度代表詞匯之間關系的方法在一般情況下存在著缺陷,例如,在WordNet詞匯數(shù)據(jù)庫中,“boy”(男孩)和“animal”(動物)之間的最短路經(jīng)長度是4,少于“boy”和“teacher”(老師)之間的最短路徑長度6,但是并不能說“boy”與“animal”比“boy”與“teacher”更相似。因此,本發(fā)明實施例還使用層次深度來表示著詞匯之間的關聯(lián)。
其中,層次深度代表著詞義信息的豐富程度,層次深度越深的代表詞匯涵義越大,所涵蓋的具體含義越多。處于上層(層次深度較小)的詞匯概念具有更一般的詞義信息,因此它們之間的詞義相似度相對較?。环粗?,處于下層(層次深度較大)的概念具有更具體的詞義信息,因此它們之間的詞義相似度相對較大。
關于詞匯層次深度的描述,也可以參見Li等人撰寫的關于詞匯層次深度的描述,(見Y.H.Li,Z.Bandar,and D.McLean.“An Approach for MeasuringSemantic Similarity Using Multiple Information Sources,”IEEE Transactions onKnowledge and Data Engineering,vol.15,no.4,pp.871-882,2003),本發(fā)明實施例中引用其中關于詞匯層次深度的描述,不再一一詳細描述。
因此,如圖2所示為從WordNet詞匯數(shù)據(jù)庫中摘取的層次結(jié)構(gòu)詞法數(shù)據(jù)庫的部分詞匯連接關系示例圖。在本發(fā)明文本相似度計算方法中,根據(jù)詞匯數(shù)據(jù)庫初始化計算詞匯之間的詞義相似度的時候,不僅包括詞匯之間的最短路徑距離,還包括詞匯的層次深度信息,將深度信息在初始化計算詞義相似度的時候也考慮進去,共同初始化計算得到詞匯之間的詞義相似度。
具體地,所述根據(jù)詞匯數(shù)據(jù)庫初始化計算詞匯之間的詞義相似度及根據(jù)初始詞義相似度計算文本集中的文本間的初始語義相似度,如圖3所示,包括下列三個步驟步驟S11,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;邊的權(quán)重是指在計算兩個詞匯之間的詞義距離時該邊的貢獻,與其對詞義相似度的貢獻相反,距離越遠,此時對詞義相似度的貢獻就越小。
本發(fā)明實施例中,邊的權(quán)重的設置與該邊在該詞匯數(shù)據(jù)庫中的層次深度有關,通過給詞匯數(shù)據(jù)庫中的各個層次深度之間的邊賦予權(quán)重,使得較上層的詞匯間的詞義相似度相對較小,下層詞匯間的詞義相似度相對較大。該詞匯數(shù)據(jù)庫中現(xiàn)有的邊的權(quán)重可由邊的深度到邊的權(quán)重的轉(zhuǎn)換計算得出,如式(1)所示。
邊的層次深度可以通過計算從它的雙親概念節(jié)點到根節(jié)點的層數(shù)而得到。第0層的邊的權(quán)重設為1,因為這層的詞之間的詞義距離最大(詞義相似度最小)。當邊的層次逐漸增大直至無窮時,邊的權(quán)重單調(diào)遞減至0,即對詞義距離貢獻最小或?qū)υ~義相似度貢獻最大。
本發(fā)明實施例用一個非線性的函數(shù)如式(1)所示,表示由邊的深度到其權(quán)重Weight(edge)的轉(zhuǎn)換
Weight(edge)=f(h)=e-ah(1)其中h表示邊edge的深度,a是一個取值在0到1之間的平滑因子。
其中h可以通過計算從較上層的概念到根的層次深度數(shù)得到。如果兩個概念處于同一層,則用其中任意一個即可。
需要說明的是,由邊的深度到其權(quán)重的轉(zhuǎn)換并不限于式(1),也可以用其他單調(diào)遞減的函數(shù)進行計算轉(zhuǎn)換,其也在本發(fā)明所保護的范圍之內(nèi),在本發(fā)明實施例中并不對轉(zhuǎn)換進行限定。
在初始化計算詞義相似度之前,首先還要往詞匯數(shù)據(jù)庫的層次中加入一些邊。這些邊可以分為以下兩類(1)如果兩個詞的概念中具有一個或多個相同的詞義,那么在這兩個詞的概念之間添加一條邊。該類邊的深度和權(quán)重的計算方法與詞匯數(shù)據(jù)庫中現(xiàn)有的邊的深度和權(quán)重的計算方法相同,即由式(1)算出。
所述加入新邊的做法是基于以下的考慮如果兩個概念具有相同的詞,那么它們很可能相似。例如概念“boy”(男孩)和概念“girl”(女孩)具有相同的詞“child”(小孩)。
和/或(2)如果兩個詞的概念之間具有“part-of”(局部-整體)關系,那么在它們之間添加一條邊,通過該邊的深度計算得到該邊的權(quán)重。
該類邊的權(quán)重可由公式(1)乘以一個常數(shù)β得到(β·e-ah)。這是因為具有“part-of”關系兩個概念之間往往具有一定的相似性,如“chest”(胸膛)和“body”(人體)。
步驟S12,根據(jù)詞匯間的基于所述權(quán)重的最短路經(jīng)長度計算詞匯間的詞義相似度。
在詞匯數(shù)據(jù)庫添加邊并計算出邊的權(quán)重后,就可以用任意兩個詞之間的最短路徑及其上所有邊的權(quán)重計算它們之間的詞義相似距離(或長度)length(即該最短路徑上的所有邊的權(quán)重的和),從而得到每兩個詞w1,w2間的詞義相似度sim(w1,w2)。
用式(2)來計算詞匯間的詞義相似度
sim(w1,w2)=0length(w1,w2)≥γ-1γ·length(w1,w2)+1length(w1,w2)<γ---(2)]]>其中w1,w2表示任意兩個詞,γ是一個大于0的閾值,length(w1,w2)是詞匯w1,w2間的基于所述權(quán)重的最短路經(jīng)長度。
因為詞義相似度在0到1之間取值,而最短路徑距離在0到無窮之間取值,所以本發(fā)明實施例通過利用轉(zhuǎn)換函數(shù)式(2)來計算詞匯之間的詞義相似度,使得當兩個詞之間的距離為0的時候(處于同一個概念中),其詞義相似度為1;當兩個詞之間的距離逐漸增大至無窮時,其相似度單調(diào)遞減至0。轉(zhuǎn)換函數(shù)式(2)也可以用其他根據(jù)length單調(diào)遞減的函數(shù),在此不作為對本發(fā)明的限定。
步驟S13,根據(jù)步驟S12得到的詞匯間的初始詞義相似度計算文本集中文本的初始語義相似度。
為了說明這一步驟,首先對文本集中的詞頻統(tǒng)計信息進行說明。
在信息檢索領域,一般地,文本可以用它包含的詞匯的詞頻來表示,一個標號為i的文本可以用文本詞頻向量di來表示di={tfi1,tfi2,tfi3,...,tfiN)∈RN]]>其中,tfij是詞wj在第i個文本中出現(xiàn)的頻率。N是向量矩陣的維數(shù),表示所有詞匯的數(shù)量。通常,在進行處理之前,將文本向量di進行L2規(guī)范化處理。
其中,L2規(guī)范化是向量規(guī)范化方面現(xiàn)有公知的常用技術(shù),其做法是每一個向量元素除以該向量的歐氏空間長度,即L2距離,使得用規(guī)范化處理后的文本向量的長度都是1,因此計算得到的相似度具有可比性。
詞頻統(tǒng)計是本領域的公知常識,因此在本發(fā)明實施例中不再一一詳細描述。
本發(fā)明的實施例中,計算文本詞頻向量時不但考慮文本中所出現(xiàn)的詞的詞頻,還將這些詞的詞頻乘以其相似度記入與其相似的詞的詞頻。因此,步驟S13根據(jù)步驟S12得到的詞匯間的初始詞義相似度,通過式(3)計算得到文本集中每兩個短文本間文本詞頻向量d1和d2的語義相似度sim(d1,d2)
sim(d1,d2)=Σk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)]---(3)]]>其中,Pik=sim(wi,wk)Σl=1Nsim(wi,wl)2]]>其中,Pik表示詞匯wi和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化,由所有Pik組成的矩陣叫做詞義相似矩陣P。
式(3)中文本相似度計算方法的意義在于先把文本詞頻向量di用詞義相似矩陣P變換、轉(zhuǎn)化為新的詞頻向量d^i=diP]]>,然后計算兩個新向量的相似度。在式(3)中,相當于把每個詞的出現(xiàn)頻率分布到了它所有的同義詞當中,使兩個短文本詞頻向量享有更多的非零元素。
例如,給定兩個句子“WordNet stores relationship between words”和“Alexical database is an organized description of the lexemes”,如果用傳統(tǒng)的文本相似度計算方法計算語義相似度,得到的結(jié)果是0,因為這兩個句子中不具有相同的詞。
如果利用詞匯之間的詞義相似度,考慮到“WordNet”和“database”以及“word”和“l(fā)exeme”之間的關系,并且用式(3)計算這兩個句子之間的語義相似度,則將得到一個更合理的結(jié)果0.34。
因此,正是由于短文本之間很少具有相同詞這一特性使得傳統(tǒng)用于計算長文本相似度的方法不適用于短文本,這也是本發(fā)明實施例在式(3)中引入Pik的原因。
其次,詳細說明在步驟S2根據(jù)初始的詞義相似度和初始的文本語義相似度,交替迭代計算所述文本集中的各個文本間的語義相似度和各個詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣的過程。
為了說明這一步驟,首先對迭代過程中如何根據(jù)文本集中的文本相似度計算詞匯間的詞義相似度以及如何根據(jù)詞義相似度計算文本相似度的原理進行說明
本發(fā)明實施例中,根據(jù)已經(jīng)得到的短文本間的語義相似度,通過式(4)重新計算每兩個詞w1和w2之間的詞義相似度sim(w1,w2)sim(w1,w2)=Σk=1M[(Σi=1Mtfi1Qik)(Σj=1Mtfj2Qjk)]---(4)]]>其中,Qik=sim(di,dk)Σl=1Msim(di,dl)2]]>Qjk為文本集中文本詞頻向量dj和dk之間的語義相似度,分母的作用是在相似文本之間進行規(guī)范化,由所有Qik組成的矩陣叫做文本語義相似矩陣Q。
其中,M是短文本集中短文本的數(shù)量。
式(4)表示如果兩個詞同時出現(xiàn)在大量的文本中或者相似的文本中,它們很可能具有共同或者相近/相關的程度。
雖然像WordNet這樣的詞匯數(shù)據(jù)庫中包含大量的詞以及詞之間的詞義關系,但是仍然有一些詞不被包含在其中,通過利用詞頻統(tǒng)計信息,結(jié)合文本的語義相似度,便可以準確地得出文本集中的短文本的中出現(xiàn)的詞匯的詞義相似度。例如,“Wikipedia”是一個非常常用的免費的網(wǎng)上百科全書,但是WordNet里面卻沒有這個詞。因此,用基于詞典的方法很難計算“Wikipedia”和“encyclopedia”之間的詞義相似度。但是,通過公式(4)分析這兩個詞在大量Web文本中的出現(xiàn)情況可以得出它們相似/相關的結(jié)論,因為幾乎每個Wikipedia的頁面中都有“encyclopedia”這個詞出現(xiàn)。同時,由于一個詞在詞典中可能有多個意思,利用式(4)也可以獲得這個詞在上下文中更準確的意思。因此,式(4)特別對短文本有更加顯著的意義。
我們可以繼續(xù)通過式(3)根據(jù)得到的詞義相似度計算得到文本的語義相似度。從式(3)和(4)中,可以看到短文本間的語義相似度和詞匯間的詞義相似度是相互依賴并且循環(huán)的。
本發(fā)明實施例中,為了使迭代循環(huán)的計算結(jié)果盡快收斂,在每一次循環(huán)中,采用只更新一部分相似度的方式,即保留一部分老的相似度,因此,用式(5)和式(6)所示的交替迭代計算的方法對它們進行計算,直至收斂。
sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M[(Σj=1Mtfi1Qik)(Σj=1Mtfj2Qjk)]---(5)]]>sim(d1,d2)=(1-λ)sim(d1,d2)+λΣk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)]---(6)]]>其中,λ是一個在0,1之間取值的衰減因子。
需要說明的是,式(5)和式(6)也可以用其他形式實現(xiàn),如式(5’)和式(6’),但并不影響本發(fā)明的實現(xiàn),不作為對本發(fā)明的限制。
sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M|(Σi=1Mtfi1Qik)-(Σj=1Mtfj2Qjk)|(5')]]>sim(d1,d2)=(1-λ)sim(d1,d2)+λΣi=1N[tf1imax(tf2jPji)+tf2imax(tf1jPji)],---(6')j=1N]]>如圖4所示,步驟S2中,交替迭代計算所述文本集中的各個文本間的語義相似度和各個詞匯間的詞義相似度直至收斂,具體包括如下步驟步驟S21,對衰減因子λ賦予初值,設定收斂條件;在本發(fā)明實施例中,所述初值為0.5,設定收斂條件為當λ小于或者等于0.01,表示收斂,設定衰減機制為λ每循環(huán)一次衰減20%,即λ=0.8*λ。
需要說明的是,對λ進行初始化這一過程,也可以在步驟S1中實現(xiàn),但并不影響本發(fā)明的實現(xiàn)。
步驟S22,利用式(5)計算詞匯間的詞義相似度;步驟S23,利用式(6),根據(jù)式(5)計算得到的詞義相似度計算得到文本間的語義相似度;步驟S24,按照設定的衰減機制減小衰減因子λ,判斷是否滿足收斂條件,如果是,則迭代計算結(jié)束;否則,轉(zhuǎn)步驟S22,利用新的衰減因子λ的值和新的文本語義相似度,重新計算詞義相似度。
所述步驟S22和步驟S23中,所述式(5)和式(6)也可以利用式(5’)和式(6’)代替,其同樣能夠?qū)崿F(xiàn)本發(fā)明。
衰減因子λ是設定一初始值,按照設定的衰減機制衰減,例如,設定初始值為0.5,每循環(huán)一次衰減20%。當衰減后衰減因子λ的值滿足設定條件,例如衰減因子λ的值小于或者等于設定值時,表示收斂,例如,設定條件為衰減因子λ的值小于或者等于設定值0.01時,表示收斂,迭代循環(huán)結(jié)束。
也可以用現(xiàn)有的各種迭代計算方法,根據(jù)語義相似度和詞義相似度的值,計算衰減因子λ的衰減值,逐漸減小衰減因子λ,直至滿足收斂條件。這樣的迭代計算方法,也應當在本發(fā)明的保護范圍之內(nèi)。
式(5)和(6)計算迭代計算收斂后得到所有詞匯wi和wk之間的詞義相似度Pik。
作為一種可實施的方式,所述迭代過程的算法實現(xiàn)可以為λ=0.5;While(λ>0.01){sim(d1,d2)=(1-λ)sim(d1,d2)+λΣk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)];]]>sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M[(Σi=1Mtfi1Qik)(Σj=1Mtfj2Qjk)];]]>λ=λ*0.8;(or λ=λ-0.1);}特別需要說明的是,本發(fā)明的文本間的語義相似度計算(式(6)或式(6’))和詞匯間的詞義相似度計算(式(5)或式(5’)),其迭代開始的順序可以互換而不影響本發(fā)明的實現(xiàn)。
下面詳細描述步驟S2中根據(jù)迭代計算的收斂結(jié)果構(gòu)造得到詞匯間的最終詞義相似矩陣根據(jù)迭代計算的收斂結(jié)果得到的詞匯間的詞義相似度,構(gòu)造得到最終詞義相似矩陣(Term Proximity Matrix,TPM),即P,其中,Pjk=sim(wj,wk)Σl=1Nsim(wj,wl)2]]>其中的每個元素Pjk表示了詞wj和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
所有元素組成最終詞義相似矩陣P 進一步地,同時,得到的文本集中文本詞頻向量dj和dk之間的語義相似度Qjk的所有元素組成的最終語義相似矩陣Q。
Qjk=sim(dj,dk)Σl=1Nsim(dj,dl)2]]>其中的每個元素Qjk表示了文本詞頻向量dj和dk之間的語義相似度,分母的作用是用相似文本進行規(guī)范化。
所有元素組成最終詞義相似矩陣Q 因此,最后的結(jié)果,短文本間的語義相似度和詞匯間的詞義相似度既包含了從詞匯數(shù)據(jù)庫中獲得的詞匯信息,又包含了從文本集中獲取的統(tǒng)計信息(蘊含的詞義信息)。
用得到的詞義相似矩陣P可以將原始短文本的文本詞頻向量di變換、轉(zhuǎn)化為新的詞頻向量d^i=diP]]>,然后用新向量計算文本相似度,得到所述短文本集的文本相似度。
原始短文本的所有短文本的詞頻向量dj組成文本詞頻矩陣D(di,k=tfi,k) 根據(jù)式(7)得到新的文本詞頻矩陣,即通過最終詞義相似矩陣P和文本詞頻矩陣D將短文本集中的所有的文本映射到新的文本詞頻矩陣
該新的詞頻向量表達還可以被任一現(xiàn)有的信息檢索技術(shù)作進一步的處理,如,計算得到文本相似度。
需要說明的是,也可以利用現(xiàn)有的一些矩陣優(yōu)化方法,對文本詞頻矩陣進行降維,對詞義相似矩陣進行優(yōu)化,使其更準確地表述文本集中蘊含的詞義相似度。
較佳地,短文本中的每個詞匯的頻率被分布在與其相似的詞當中,在新的空間中,相似詞所在的維度(即表示dij(或tfij)的詞j,的維度,如,“女孩“的維度或“男孩“的維度)的矩陣向量可能具有較高的相關性。因此,可以用一些降維方法,諸如PCA,ICA降維方法來對新的文本詞頻矩陣進行降維使得能夠用相對較低的維數(shù)來表示新的空間,即只用那些極具代表性的詞來描述文本,從而達到節(jié)省存儲空間的目的。在本發(fā)明實施例中,使用PCA降維,如式(8)所示D~=D^W=DPW---(8)]]>其中, 是經(jīng)過轉(zhuǎn)換過后的具有k(k<N)列的新的文本詞頻矩陣,W是轉(zhuǎn)換矩陣,它的每一列是 的協(xié)方差矩陣(Covariance Matrix,CM)的前k個特征向量之一。
同時,利用轉(zhuǎn)換矩陣W也可以得到一個新的降維后的詞義相似矩陣 它可以由原來的相似矩陣P乘以轉(zhuǎn)換矩陣W得到,如式(9)所示P~=PW---(9)]]>這個新的詞義相似矩陣 將所有短文本D映射到一個較低維的特征空間( 只有k個詞匯)中,使得能夠被有效的使用來解決本發(fā)明中文本相似度計算的問題。
在步驟S3中,用所述詞義相似矩陣將原始短文本的詞頻向量變換為新的詞頻向量表示,計算得到所述短文本集的文本相似度的過程。
根據(jù)所得的所述詞義相似矩陣,如降維后的 ,將原始短文本的詞頻向量變換為新的詞頻向量表示(如, )后,可直接使用任一現(xiàn)有的相似度模型計算文本的相似度,如使用向量的點積或余弦(Cosine)模型(即用兩個向量的夾角的余玄值代表兩個向量的相似度)計算文本相似度。
作為本發(fā)明實施例中計算文本相似度的一種可實施方式,根據(jù)新的文本詞頻矩陣 計算得到短文本集(語料庫)中文本間的文本相似矩陣S,如式(10)所示S=]]> 其中,Si,j是標號為i和標號為j的短文本之間的相似度, 為 的轉(zhuǎn)置,Si,j為兩個文本i,j向量的點積。
下面詳細描述步驟S4當新短文本加入到所述短文本集時,利用所述的詞義相似矩陣將所述新短文本的文本詞頻向量變換為新的詞頻向量,并以此計算所述新短文本和所述短文本集的文本相似度的過程當一個新的短文本加入到文本集的時候,就可以用最終詞義相似矩陣矩陣P或 (取決于是否降維)把所述新短文本的文本詞頻向量dnew映射變換到新的文本詞頻向量dnewP,使用向量的點積或余弦(Cosine)模型來計算它和其它已有短文本(也需映射到新的文本詞頻向量diP)之間的語義相似度,如式(11)所示sim(dnew,di)=dnewPP′di′---(11)]]>
其中,dnew是新加入的短文本的文本詞頻向量,di是標號為i的短文本的文本詞頻向量,P′和d′為相應的矩陣和向量的轉(zhuǎn)置,文本相似度為兩個向量的點積。
進一步地,在文本相似度計算方法的步驟S4中,將所述新短文本加入到所述短文本集中,當新加入的新短文本的數(shù)量達到一定量時,或認為有必要時,重復步驟S2~S3,得到新的詞義相似矩陣,重新計算新的文本詞頻向量,并進一步計算出文本相似度。
相應地,根據(jù)文本相似度計算方法,如圖5所示,本發(fā)明還提供一種文本相似度計算系統(tǒng)61在本發(fā)明的文本相似度計算系統(tǒng)61中,包括詞匯數(shù)據(jù)庫模塊62和短文本集模塊63(或稱語料庫模塊),所述詞匯數(shù)據(jù)庫模塊62包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊63包括至少一短文本集(語料庫);所述的文本相似度計算系統(tǒng)61,還包括初始化模塊64,迭代計算模塊65,最終相似度計算模塊66。其中所述初始化模塊64,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算短文本集模塊63中的文本間的初始語義相似度。
所述迭代計算模塊65,交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度直至收斂,即,根據(jù)每一輪新得到的文本間的語義相似度重新計算詞匯間的詞義相似度并根據(jù)每一輪新得到的詞義相似度重新計算文本間的語義相似度,這樣交替迭代進行直至收斂,最終得到包含詞匯數(shù)據(jù)庫中詞匯的初始詞義信息以及所述短文本集(語料庫)所蘊含的詞匯的詞義信息的最終詞義相似度,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
較佳地,作為本發(fā)明實施例的一種較佳的實施方式,所述迭代計算模塊65,還用于對所述最終詞義相似矩陣進行降維簡化處理,即只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
作為本發(fā)明可選擇的一種實施例,可以對該詞義相似矩陣進行進一步處理,只保留每個詞與那些最有代表性的詞的詞義相似度,相當于對由所有文本的新詞頻向量組成的文本詞頻矩陣(Document-Term Matrix,DTM或簡稱為文本矩陣)進行降維處理,即只用那些最有代表性的詞來表示每一文本。
所述文本集可以是給定的未經(jīng)處理的短文本集(語料庫),也可以是已經(jīng)過處理的,或逐漸積累的短文本集。
所述最終相似度計算模塊66,用于根據(jù)所述最終詞義相似矩陣,將原始短文本的文本詞頻向量變換為新的文本詞頻向量,計算得到所述短文本集的文本相似度。
其中,新的文本詞頻包括了同義詞的詞頻。
該新的詞頻向量表達可以被任一現(xiàn)有的信息檢索技術(shù)或者優(yōu)化處理方法作進一步的處理,再計算得到文本相似度;也可直接計算文本的相似度,如使用向量的點積或余弦(Cosine)模型(即用兩個向量的夾角的余玄值代表兩個向量的相似度)計算文本相似度。
較佳地,所述最終相似度計算模塊66,還用于當新短文本加入到所述短文本集時,利用所述的詞義相似矩陣將新短文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新短文本和所述短文本集中的文本相似度。
進一步地,將所述新短文本加入到所述短文本集中,當新加入的新短文本的數(shù)量達到一定量時,或系統(tǒng)認為有必要時,可以重新調(diào)用系統(tǒng),得到新的詞義相似矩陣或再次對其作降維處理,重新計算新的文本詞頻向量。
所述詞匯數(shù)據(jù)庫可以是任何現(xiàn)有的或?qū)沓霈F(xiàn)的,如英文的WordNet詞匯數(shù)據(jù)庫,中文的HowNet詞匯數(shù)據(jù)庫或同義詞詞林,或者他們的組合,或其他語言的相應結(jié)構(gòu)的詞匯數(shù)據(jù)庫等,或者是他們的組合,在此不作為對本發(fā)明的限定。
WordNet詞匯數(shù)據(jù)庫,這一數(shù)據(jù)庫是現(xiàn)有技術(shù),如見C.Fellbaum.WordNetAn Electronic Lexical Database,MIT Press,1998中所描述WordNet詞匯數(shù)據(jù)庫。它是一個包含語匯詞匯之間的詞義關系的被廣泛應用的詞典。
所述的短文本集,也叫語料庫,包括但不限于,可以是由計算機操作人員從各種現(xiàn)有的字典、詞典中,通過手工收集或者通過計算機自動隨機收集的短文本集,各種問答系統(tǒng)中的累積的問題和/或答案數(shù)據(jù)庫,各論壇或公告系統(tǒng)累積的評論或帖子數(shù)據(jù)庫,也可以是現(xiàn)有的已經(jīng)收集好的短文本集,如CMU新聞組(CMU newsgroup),它是一個包含20000條信息,專門用于測試短文本聚類的短文本數(shù)據(jù)集。
如圖5所示,本發(fā)明的文本相似度計算系統(tǒng)61,首先初始化模塊64根據(jù)詞匯數(shù)據(jù)庫模塊62中的詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的詞義相似度并根據(jù)初始詞義相似度計算短文本集模塊63中的文本間的初始語義相似度;然后,迭代計算模塊65根據(jù)初始詞義相似度和初始文本相似度,交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度,直至收斂,得到包含所述詞匯數(shù)據(jù)庫中詞匯的初始詞義信息和所述短文本集中蘊含的詞義信息的詞匯間的最終詞義相似度,根據(jù)迭代計算的收斂結(jié)果構(gòu)造得到詞匯間的最終詞義相似矩陣或?qū)ζ溥M行降維處理;其后,最終相似度計算模塊66根據(jù)最終詞義相似矩陣將原始短文本的文本詞頻向量變換成新的文本詞頻向量,計算得到所述短文本集的文本相似度;最后,當新短文本加入到所述短文本集時,最終相似度計算模塊66利用所述的最終詞義相似矩陣將所述新短文本的文本詞頻向量變換為新的詞頻向量,計算其與所述短文本集中的文本的相似度;進一步地,在需要時將所述新短文本加入到所述短文本集中,重新調(diào)用系統(tǒng)中的迭代計算模塊,得到新的最終詞義相似矩陣。
本發(fā)明文本相似度計算系統(tǒng)61工作過程與本發(fā)明文本相似度計算方法工作過程一致,因此,對本發(fā)明文本相似度計算系統(tǒng)61的工作過程不再一一詳細描述。
如圖6所示,本發(fā)明還提供一種詞義相似度計算系統(tǒng)71,其用于根據(jù)詞匯數(shù)據(jù)庫得到初始的詞義相似度,然后通過對文本集中的文本進行語義相似度和詞義相似度交替迭代計算,直至收斂,得到詞匯的最終詞義相似度。其包括詞匯數(shù)據(jù)庫模塊62和短文本集模塊63(或稱語料庫模塊),所述詞匯數(shù)據(jù)庫模塊62包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊63包括至少一短文本集(語料庫);所述的詞義相似度計算系統(tǒng)71,還包括初始化模塊64,詞義迭代計算模塊72。
所述初始化模塊64,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算短文本集模塊63中的文本間的初始語義相似度。
所述詞義迭代計算模塊72,交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度直至收斂,即,根據(jù)每一輪新得到的詞義相似度重新計算文本間的語義相似度,并根據(jù)每一輪新得到的文本間的語義相似度重新計算詞匯間的詞義相似度,這樣交替迭代進行直至收斂,最終得到包含詞匯數(shù)據(jù)庫中詞匯的初始詞義信息以及所述短文本集(語料庫)所蘊含的詞匯的詞義信息的最終詞義相似度。
本發(fā)明的詞義相似度計算系統(tǒng)71,首先初始化模塊64根據(jù)詞匯數(shù)據(jù)庫模塊62中的詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度并根據(jù)初始詞義相似度計算短文本集模塊63中的文本間的初始語義相似度;然后,詞義迭代計算模塊72根據(jù)已有的詞義相似度和語義相似度,進行交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度,直至收斂,得到包含所述詞匯數(shù)據(jù)庫中詞匯的初始詞義信息和所述短文本集中蘊含的詞義信息的詞匯間的最終詞義相似度,構(gòu)造最終詞義相似矩陣,并在需要時對其進行降維處理。
本發(fā)明詞義相似度計算系統(tǒng)71工作過程與本發(fā)明文本相似度計算系統(tǒng)中對詞義相似度計算工作過程一致,因此,對本發(fā)明詞義相似度計算系統(tǒng)71的工作過程不再一一詳細描述。
相應于本發(fā)明的詞義相似度計算系統(tǒng)71,本發(fā)明還提供一種詞義相似度排列表裝置,所述裝置包括一芯片,所述芯片中存儲有一詞義相似度矩陣表,用戶可以通過查找、調(diào)用芯片中的詞義相似度矩陣表中的相關詞匯的詞義相似度,進行文本相似度計算及文本信息檢索等應用,所述詞義相似度矩陣表中的每個元素為詞義相似度,該詞義相似度是通過詞義相似度計算系統(tǒng)71計算得到,所述詞義相似度計算系統(tǒng)71包括詞匯數(shù)據(jù)庫模塊62和短文本集模塊63,所述詞匯數(shù)據(jù)庫模塊62包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊63包括至少一短文本集;所述的詞義相似度計算系統(tǒng)71,還包括初始化模塊64,詞義迭代計算模塊72。
如圖7所示,本發(fā)明還提供一種應用本發(fā)明的文本相似度計算系統(tǒng)的問答系統(tǒng)81。該問答系統(tǒng)81包括一文本相似度計算系統(tǒng)61,所述文本相似度計算系統(tǒng)61,包括詞匯數(shù)據(jù)庫模塊62和短文本集模塊63,所述詞匯數(shù)據(jù)庫模塊62包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊63包括至少一短文本集,即問題集合(或問題數(shù)據(jù)庫);所述的文本相似度計算系統(tǒng)61,還包括初始化模塊64,迭代計算模塊65,最終相似度計算模塊66。其中所述初始化模塊64,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度并根據(jù)初始詞義相似度計算短文本集模塊63中的文本間的初始語義相似度。
所述迭代計算模塊65,用于交替迭代計算所述短文本集中的各個短文本間的語義相似度和詞匯間的詞義相似度直至收斂,即,根據(jù)每一輪新得到的文本間的語義相似度重新計算詞匯間的詞義相似度并根據(jù)每一輪新得到的詞義相似度重新計算文本間的語義相似度,這樣交替迭代進行直至收斂,最終得到包含詞匯數(shù)據(jù)庫中詞匯的初始詞義信息以及所述短文本集所蘊含的詞匯的詞義信息的最終詞義相似度,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
迭代計算模塊65,還用于對所述最終詞義相似矩陣進行降維簡化處理,即只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
所述最終相似度計算模塊66,用于根據(jù)所述最終詞義相似矩陣,將原始短文本的文本詞頻向量變換為新的文本詞頻向量,計算得到所述短文本集的文本相似度。
所述最終相似度計算模塊66,還用于當新短文本(即新問題)加入到所述短文本集時,利用所述的詞義相似矩陣將新短文本的文本詞頻向量變換為新的詞頻向量,然后計算所述新短文本和所述短文本集中的文本相似度。
進一步地,將所述新短文本加入到所述短文本集中,當新加入的新短文本的數(shù)量達到一定量時,或系統(tǒng)認為有必要時,可以重新調(diào)用系統(tǒng),得到新的詞義相似矩陣,重新計算新的文本詞頻向量。
本發(fā)明問答系統(tǒng)81中的文本相似度計算系統(tǒng)61,以與本發(fā)明實施例所述的文本相似度計算系統(tǒng)61相同的工作過程進行工作,因此不再一一詳細描述。
本發(fā)明的文本相似度計算系統(tǒng)61,可以應用在問答系統(tǒng)81中,在問答系統(tǒng)81的問題語義相似度的計算、自動回答、問題分類,答案聚類、答案質(zhì)量自動評估等需要計算(短)文本相似度的過程中。
文本相似度計算系統(tǒng)61在問答系統(tǒng)81中具有十分重要的應用。在問答系統(tǒng)81中,一些常見的被問頻率較高的問題往往被存在問題數(shù)據(jù)庫中。當用戶提出一個新的問題,首先可以在這些常見問題數(shù)據(jù)庫中查找,看有沒有相同或者非常相似的問題。如果有,就可以將對應的答案自動直接返回給用戶,這樣就可以提高系統(tǒng)的效率。而一般地,用戶所提出的問題往往是一些較短的句子,屬于短文本的范疇。可以應用本發(fā)明所提供的文本相似度計算系統(tǒng)61,解決問答系統(tǒng)81中的關于文本相似度計算問題。
將每個問題(或答案)用一個詞頻向量表示。每個向量都經(jīng)過L2規(guī)范化處理。同時,基于WordNet或HowNet等同義詞林構(gòu)造初始詞義相似度并根據(jù)初始詞義相似度用公式(3)計算初始文本語義相似度。然后,用公式(5)和(6)交替迭代計算文本的語義相似度和詞匯的詞義相似度直至收斂,得到了詞義相似矩陣。當用戶提出一個新的問題時,就可以用公式(11)計算此問題和常見問題集中的所有問題的語義相似度,找出與用戶問題最相似的問題。如果得到的相似度大于事先設定的閾值,就可以將此最相似問題對應的答案返回給用戶。也可以定期更新常見問題集,并在每次更新的時候繼續(xù)迭代計算更新的文本相似矩陣和詞義相似矩陣。
類似地,可以用一些關鍵詞來代表每一個問題類(如問題版面),每個問題類都可以用一個短文本向量表示。每個新問題也可以用一個短文本向量表示,因此可以用本發(fā)明的方法計算新問題與每個問題類的語義相似度,并把新問題歸到最相似的問題類之中。同時,當用戶把很多問題歸為一類時,可以從這些問題中統(tǒng)計詞頻,并用這些詞頻組成的向量代表該問題類,并用本發(fā)明的迭代方法更新修正代表該問題類的詞頻向量。
同樣地,在問答系統(tǒng)81中,在對每個問題的所有答案聚類時,也要計算各答案之間的語義相似度,以便把相似的答案聚成一類,把所有關于某個問題的所有答案聚成幾個類別供用戶快速瀏覽。每個答案一般都是很短的文本。
另外,在問答系統(tǒng)81中,在答案質(zhì)量自動評估時,要自動計算每個答案是否與問題相關,也可使用本發(fā)明的文本相似度計算系統(tǒng)61。與問題不相關的答案自然質(zhì)量不高。
如圖8所示,本發(fā)明還提供一種應用本發(fā)明的文本相似度計算系統(tǒng)61的圖像檢索系統(tǒng)91。該圖像檢索系統(tǒng)91包括一文本相似度計算系統(tǒng)61,所述文本相似度計算系統(tǒng)61,包括詞匯數(shù)據(jù)庫模塊62和短文本集模塊63,所述詞匯數(shù)據(jù)庫模塊62包括至少一詞匯數(shù)據(jù)庫,所述短文本集模塊63包括至少一短文本集,即用于描述圖像內(nèi)容的文本的集合;所述的文本相似度計算系統(tǒng)61,還包括初始化模塊64,迭代計算模塊65,最終相似度計算模塊66。
本發(fā)明的圖像檢索系統(tǒng)91中的文本相似度計算系統(tǒng)61,以與問答系統(tǒng)81中的文本相似度計算系統(tǒng)61相同的工作過程進行工作。因此在本發(fā)明的圖像檢索系統(tǒng)91中不再一一詳細描述。
在基于內(nèi)容的圖像檢索中,圖像的檢索往往是利用該圖像的標注或圖像周圍的文本段落來檢索與該圖像內(nèi)容相關的圖像,而這些標注也是很短的文本信息,圖像周圍的文本段落也是很短的文本信息,可以用本發(fā)明的文本相似度計算系統(tǒng)來完成檢索。
本發(fā)明的文本相似度計算系統(tǒng)61,還可以應用于文本檢索、文本概括、文本分類、機器翻譯系統(tǒng)等等中,這些系統(tǒng)都包括一文本相似度計算系統(tǒng)61,該文本相似度計算系統(tǒng)61以與問答系統(tǒng)81、圖像檢索系統(tǒng)91中的文本相似度計算系統(tǒng)61相同的工作過程工作,因此在本發(fā)明實施例中不再一一詳細描述。
為了說明本發(fā)明的有益效果,本發(fā)明通過單詞之間詞義相似度的計算,文本分類和文本聚類等3組實驗結(jié)果,并將實驗結(jié)果和用其他方法所得的結(jié)果進行比較進行說明。
在實驗中,詞匯數(shù)據(jù)庫是WordNet,短文本集的數(shù)據(jù)集是CMU newsgroup,它是一個包含20000條信息,專門用于測試短文本聚類的數(shù)據(jù)集。
實驗一單詞詞義相似度的計算為了對單詞相似度的計算進行評估,可以將結(jié)果和人為判斷的結(jié)果進行對比,計算二者之間的相關度,相關度越高,說明方法越有效。
Rubenstein和Goodenough做了一組實驗(見Rubenstein and J.B.Goodenough.“Contextual Correlates of Synonymy,”Communications of the ACM,vol.8,pp.627-633,1965),他讓51個人對65對單詞的詞義相似度進行判斷,并將相似度的值定在0到4之間。Miller和Charles(1991)從這65對單詞中選出了30對(其中不相關的,有一定相似的和非常相似的各有10對),并找了38個人做了相同的實驗。另外,Resnik(1995)也做了和Miller,Charles相同的實驗。
由于Miller和Charles所采用的數(shù)據(jù)集更加平衡,在實驗中,本發(fā)明利用他們所用的數(shù)據(jù)集來測量單詞間的詞義相似度。此外,還將本發(fā)明和Li等人提出的方法(見Y.H.Li,Z.Bandar,and D.McLean.“An Approach for MeasuringSemantic Similarity Using Multiple Information Sources,”IEEE Transactions onKnowledge and Data Engineering,vol.15,no.4,pp.871-882,2003)進行比較(其中去掉了信息量的部分,因為在他們的實驗中,加入信息量后結(jié)果更差)。如圖9所示,為詞義相似度計算的結(jié)果對比表。
在本發(fā)明中,最佳的參數(shù)設定為α=0.05,,γ=3.23,此時,本發(fā)明所提出的方法與Miller和Charles所作的結(jié)果的相關度為0.8503,比Li等人提出的方法與Miller和Charles所作的結(jié)果的相關度為0.8178要好,如圖10所示。由于Li等人宣稱他們的方法比其他的一些方法要好,所以本發(fā)明提出的方法自然也比其他的方法要好。
實驗二短文本分類在這個實驗中,用K-nearest neighbor算法(見B.V.Dasarathy,editor.Nearest Neighbor(NN)NormsNN Pattern Classification Techniques,LosAlamitosIEEE Computer Society Press,1990)對來自CMU newsgroup的分別描述不同領域知識3個數(shù)據(jù)子集(CompNews,SciNews和DiffNews)進行分類。參數(shù)設置同實驗一,每個結(jié)果都是經(jīng)過至少10次的運行才得出的平均結(jié)果。
用本發(fā)明和簡單的基于詞頻的方法(一個文本用它所包含的詞的詞頻來表示)進行比較,如圖11、圖12和圖13所示,顯示了實驗的結(jié)果,其中,粗線表示“本發(fā)明方法”,細線表示“基于詞頻的方法”。
實驗結(jié)果表明在絕大多數(shù)情況下,本發(fā)明得到的結(jié)果更好,特別是當訓練數(shù)據(jù)集(如,初始的短文本集)占總的數(shù)據(jù)集的比例較小時,效果尤為明顯。這說明當訓練的數(shù)據(jù)集不足時,本發(fā)明十分有效。
實驗三短文本聚類在這個實驗中,用K-means算法(見I.S.Dhillon and D.S.Modha.“ConceptDecompositions for Large Sparse Text Data Using Clustering,”Machine Learning,vol.42,no.1,pp.143-175,2001)和hard mo-VMF算法(見A.Banerjee,I.S.Dhillon,J.Ghosh,and S.Sra.“Clustering on the Unit Hypersphere Using VonMises-Fisher Distributions,”Journal of Machine Learning Research,vol.6,pp.1345-1382,2005)對CompNews,SciNews,和DiffNews中的數(shù)據(jù)進行聚類,參數(shù)設置實驗一。采用規(guī)范化的共同信息(NMI)作為評判標準(見A.Strehland J.Ghosh.“Cluster Ensembles-a Knowledge Reuse Framework forCombining Partitions,”Journal of Machine Learning Research,vol.3,pp.583-617,2002)。
本發(fā)明和基于詞頻的方法以及tf-idf進行比較,圖14列出了實驗結(jié)果。從試驗結(jié)果可以看出,本發(fā)明要好于其他兩種方法(只有一種情況例外)。
本發(fā)明的文本相似度計算方法,在計算初始詞匯間詞義相似度前,用一個深度的函數(shù)給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;同時提出了一個交替迭代的方法用來交替迭代計算短文本間語義相似度和詞匯間詞義相似度,實驗表明本發(fā)明的文本相似度計算方法可以顯著地提高文本相關(特別是短文本)的信息檢索技術(shù)的性能。
以上通過結(jié)合附圖對本發(fā)明具體實施例的描述,本發(fā)明的其它方面及特征對本領域的技術(shù)人員而言是顯而易見的。
以上對本發(fā)明的具體實施例進行了描述和說明,這些實施例應被認為其只是示例性的,并不用于對本發(fā)明進行限制,本發(fā)明應根據(jù)所附的權(quán)利要求進行解釋。
權(quán)利要求
1.一種文本相似度計算方法,其特征在于,包括下列步驟步驟A,根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本集中文本間的初始語義相似度;步驟B,根據(jù)所述初始化得到的詞義相似度和文本間的初始語義相似度,交替迭代計算文本集中的各個文本間的語義相似度和詞匯間的詞義相似度,直至收斂;根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;步驟C,根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
2.根據(jù)權(quán)利要求1所述的文本相似度計算方法,其特征在于,還包括下列步驟步驟D,當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將所述新文本的文本詞頻向量變換為新的詞頻向量,并以此計算所述新文本和所述文本集的文本相似度。
3.根據(jù)權(quán)利要求2所述的文本相似度計算方法,其特征在于,所述步驟D還包括下列步驟將所述新文本加入到所述文本集中,重復步驟B~C,得到更新的詞義相似矩陣,重新計算新的文本詞頻向量。
4.根據(jù)權(quán)利要求1至3任一項所述的文本相似度計算方法,其特征在于,所述步驟A中所述根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度,包括下列步驟步驟A1,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;步驟A2,根據(jù)詞匯間的基于所述權(quán)重的最短路經(jīng)長度計算詞匯間的初始詞義相似度;步驟A3,根據(jù)步驟A2得到的詞匯間的初始詞義相似度計算文本集中文本的初始語義相似度。
5.根據(jù)權(quán)利要求4所述的文本相似度計算方法,其特征在于,所述步驟A1中,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重,包括下列步驟如果兩個詞的概念中具有一個或多個相同的詞義,那么在這兩個詞的概念之間添加一條邊,并給該邊賦予權(quán)重;和/或,如果兩個詞的概念之間具有局部-整體關系,那么在它們之間添加一條邊,并給該邊賦予權(quán)重;所述邊的權(quán)重是根據(jù)邊的深度計算得到的。
6.根據(jù)權(quán)利要求4所述的文本相似度計算方法,其特征在于,所述步驟A2中,計算詞匯間的詞義相似度,是通過下列公式來計算詞匯間的詞義相似度sim(w1,w2)=0length(w1,w2)≥γ-1γ·length(w1,w2)+1length(w1,w2)<γ;]]>其中w1,w2表示兩個詞,γ是一個大于0的閾值,length(w1,w2)為詞匯w1,w2間的基于所述權(quán)重的最短路經(jīng)長度。
7.根據(jù)權(quán)利要求4所述的文本相似度計算方法,其特征在于,所述步驟A3中,計算得到文本間的語義相似度,是通過下列公式計算得到sim(d1,d2)=Σk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)];]]>其中,Pik=sim(wi,wk)Σl=1Nsim(wi,wl)2;]]>Pik表示了詞匯wi和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
8.根據(jù)權(quán)利要求1至3任一項所述的文本相似度計算方法,其特征在于,所述步驟B中,交替迭代計算文本間的語義相似度和詞匯間的詞義相似度,直至收斂,包括下列步驟步驟B1,對衰減因子λ賦予初值,設定收斂條件;步驟B2,根據(jù)文本間的語義相似度計算詞匯間的詞義相似度;步驟B3,根據(jù)步驟B2計算得到的詞義相似度,計算得到文本間的語義相似度;步驟B4,減小衰減因子λ,判斷是否滿足收斂條件,如果是,則迭代計算結(jié)束;否則,轉(zhuǎn)步驟B2。
9.根據(jù)權(quán)利要求8所述的文本相似度計算方法,其特征在于,所述步驟B2中,計算詞匯間的詞義相似度,是通過下式計算得到的sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M[(Σi=1Mtfi1Qik)(Σj=1Mtfj2Qjk)];]]>所述步驟B3中,計算文本間的語義相似度,是通過下式計算得到的sim(d1,d2)=(1-λ)sim(d1,d2)+λΣk=1M[(Σi=1Mtf1iPik)(Σj=1Mtf2jPjk)];]]>其中,λ是一個在0,1之間取值的衰減因子。
10.根據(jù)權(quán)利要求8所述的文本相似度計算方法,其特征在于,所述步驟B2中,計算詞匯間的詞義相似度,是通過下式計算得到的sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M|(Σi=1Mtfi1Qik)-(Σj=1Mtfj2Qjk)|;]]>所述步驟B3中,計算文本間的語義相似度,是通過下式計算得到的sim(d1,d2)=(1-λ)sim(d1,d2)+λΣi=1M[tf1imaxj=1N(tf2jPji)+tf2imaxj=1N(tf1jPji)];]]>其中,λ是一個在0,1之間取值的衰減因子。
11.根據(jù)權(quán)利要求8所述的文本相似度計算方法,其特征在于,所述步驟B中,所述最終詞義相似矩陣為 其中,Pjk=sim(wj,wk)Σl=1Nsim(wj,wl)2]]>每個元素Pjk表示了詞wj和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
12.根據(jù)權(quán)利要求8所述文本相似度計算方法,其特征在于,所述步驟B還包括下列步驟根據(jù)計算收斂后得到的所有文本間的語義相似度的所有元素組成最終語義相似矩陣 其中,Qjk=sim(dj,dk)Σl=1Nsim(dj,dl)2]]>每個元素Qjk表示了文本詞頻向量dj和dk之間的語義相似度,分母的作用是在相似文本之間進行規(guī)范化。
13.根據(jù)權(quán)利要求1至3任一項所述的文本相似度計算方法,其特征在于,所述步驟C中,根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,為利用下式,通過最終詞義相似矩陣P和文本詞頻矩陣D將文本集中的所有的文本映射到新的文本詞頻矩陣
14.根據(jù)權(quán)利要求13所述的文本相似度計算方法,其特征在于,所述步驟C中,計算出所述文本集的文本相似度,具體包括如下步驟根據(jù)新的文本詞頻矩陣 計算得到文本集中文本間的文本相似矩陣S 其中,Si,j是標號為i和標號為j的文本之間的相似度, 為 的轉(zhuǎn)置,Sij為兩個文本i,j向量的點積。
15.根據(jù)權(quán)利要求13所述的文本相似度計算方法,其特征在于,所述步驟C中,計算出所述文本集的文本相似度,是使用向量余弦模型計算文本相似度。
16.根據(jù)權(quán)利要求1至3任一項所述的文本相似度計算方法,其特征在于,所述步驟B中,在計算收斂得到所述詞匯間的詞義相似矩陣之后,還包括下列步驟對新的文本詞頻矩陣進行降維,使得能夠用相對較低的維數(shù)來表示新的空間;同時獲得降維后的最終詞義相似矩陣。
17.根據(jù)權(quán)利要求16所述的文本相似度計算方法,其特征在于,通過下式,使用PCA降維方法進行降維D~=D^W=DPW;]]>其中, 是經(jīng)過轉(zhuǎn)換過后的具有k列的新的文本詞頻矩陣,W是轉(zhuǎn)換矩陣,它的每一列是 的協(xié)方差矩陣的前k個特征向量之一;此時 為降維后的最終詞義相似矩陣;其中k<N。
18.根據(jù)權(quán)利要求16所述的文本相似度計算方法,其特征在于,所述降維方法為ICA降維方法。
19.根據(jù)權(quán)利要求2所述的文本相似度計算方法,其特征在于,所述步驟D,當新文本加入到所述文本集時,利用的詞義相似矩陣將所述新文本的文本詞頻向量變換為新的詞頻向量,并以此計算所述新文本和所述文本集的文本相似度,為用最終詞義相似矩陣矩陣或降維后的最終詞義相似矩陣把所述新文本的文本詞頻向量映射變換到新的文本詞頻向量,計算所述新文本和已有文本之間的語義相似度。
20.根據(jù)權(quán)利要求19所述的文本相似度計算方法,其特征在于,所述計算新文本和已有文本之間的語義相似度,是通過下式計算sim(dnew,di)=dnewPP′di′;]]>其中,dnew是新加入的文本的詞頻向量,di是標號為i的文本的詞頻向量,P′和d′為相應的矩陣和向量的轉(zhuǎn)置,文本相似度為兩個向量的點積。
21.根據(jù)權(quán)利要求1至3任一項所述的文本相似度計算方法,其特征在于,所述文本集為短文本集。
22.根據(jù)權(quán)利要求21所述的文本相似度計算方法,其特征在于,所述詞匯數(shù)據(jù)庫或者是英文的WordNet詞匯數(shù)據(jù)庫,或者是中文的HowNet詞匯數(shù)據(jù)庫或同義詞詞林,或者他們的組合。
23.一種文本相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,文本集模塊包括至少一文本集,其特征在于,還包括初始化模塊,迭代計算模塊,最終相似度計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述迭代計算模塊,用于根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,進行交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂;根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述最終相似度計算模塊,用于根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
24.根據(jù)權(quán)利要求23所述的文本相似度計算系統(tǒng),其特征在于,所述最終相似度計算模塊中計算出所述文本集的文本相似度是使用向量的點積或余弦模型計算文本相似度。
25.根據(jù)權(quán)利要求23所述的文本相似度計算系統(tǒng),其特征在于,所述最終相似度計算模塊,還用于當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將新文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新文本和所述文本集中的文本相似度。
26.根據(jù)權(quán)利要求25所述的文本相似度計算系統(tǒng),其特征在于,所述最終相似度計算模塊將所述新文本加入到所述文本集中,再次調(diào)用系統(tǒng),得到更新的最終詞義相似矩陣,重新計算新的文本詞頻向量。
27.根據(jù)權(quán)利要求23至26任一項所述的文本相似度計算系統(tǒng),其特征在于,所述迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
28.根據(jù)權(quán)利要求23至27任一項所述的文本相似度計算系統(tǒng),其特征在于,所述文本集為短文本集。
29.根據(jù)權(quán)利要求28所述的文本相似度計算系統(tǒng),其特征在于,所述詞匯數(shù)據(jù)庫或者是英文的WordNet詞匯數(shù)據(jù)庫,或者是中文的HowNet詞匯數(shù)據(jù)庫或同義詞詞林,或者他們的組合。
30.一種詞義相似度計算方法,其特征在于,包括下列步驟步驟A′,根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;步驟B′,根據(jù)所述初始化得到的詞義相似度和文本間的初始語義相似度,進行交替迭代計算文本集中的各個文本間的語義相似度和詞匯間的詞義相似度,直至收斂;根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
31.根據(jù)權(quán)利要求30所述的詞義相似度計算方法,其特征在于,所述步驟B′還包括下列步驟通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
32.根據(jù)權(quán)利要求30或31所述的詞義相似度計算方法,其特征在于,所述步驟A′中所述根據(jù)詞匯數(shù)據(jù)庫進行初始化,得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度,包括下列步驟步驟A1′,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重;步驟A2′,根據(jù)詞匯間的基于所述權(quán)重的最短路經(jīng)長度計算詞匯間的詞義相似度;步驟A3′,根據(jù)步驟A2′得到的詞匯間的初始詞義相似度計算文本集中文本的初始語義相似度。
33.根據(jù)權(quán)利要求32所述的詞義相似度計算方法,其特征在于,所述步驟A1′中,給詞匯數(shù)據(jù)庫中的邊賦予權(quán)重,包括下列步驟如果兩個詞的概念中具有一個或多個相同的詞義,那么在這兩個詞的概念之間添加一條邊,并給該邊賦予權(quán)重;和/或,如果兩個詞的概念之間具有局部-整體關系,那么在它們之間添加一條邊,并給該邊賦予權(quán)重;所述邊的權(quán)重是根據(jù)邊的深度計算得到的。
34.根據(jù)權(quán)利要求32所述的詞義相似度計算方法,其特征在于,所述步驟A2′中,計算詞匯間的詞義相似度,是通過下列公式來計算詞匯間的詞義相似度sim(w1,w2)=0length(w1,w2)≥γ-1γ·length(w1,w2)+1length(w1,w2)<γ;]]>其中w1,w2表示兩個詞,γ是一個大于0的閾值,length(w1,w2)為詞匯w1,w2間的基于所述權(quán)重的最短路經(jīng)長度。
35.根據(jù)權(quán)利要求32所述的詞義相似度計算方法,其特征在于,所述步驟A3′中,計算得到文本間的語義相似度,是通過下列公式計算得到sim(d1,d2)=Σk=1N[(Σi=1Ntf1iPik)(Σj=1Ntf2jPjk)];]]>其中,Pik=sim(wi,wk)Σl=1Nsim(wi,wl)2;]]>Pik表示了詞匯wi和wk之間的詞義相似度,分母的作用是用同義詞進行規(guī)范化。
36.根據(jù)權(quán)利要求32所述的詞義相似度計算方法,其特征在于,所述步驟B′,交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,包括下列步驟步驟B1′,對衰減因子λ賦予初值,設定收斂條件;步驟B2′,根據(jù)文本間的語義相似度計算詞匯間的詞義相似度;步驟B3′,根據(jù)步驟B2′計算得到的詞義相似度,計算得到文本間的語義相似度;步驟B4′,減小衰減因子λ,判斷是否滿足收斂條件,如果是,則迭代計算結(jié)束;否則,轉(zhuǎn)步驟B2′。
37.根據(jù)權(quán)利要求36所述的詞義相似度計算方法,其特征在于,所述步驟B2′中,計算詞匯間的詞義相似度,是通過下式計算得到的sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M[(Σi=1Mtfi1Qik)(Σj=1Mtfj2Qjk)];]]>所述步驟B3′中,計算文本間的語義相似度,是通過下式計算得到的sim(d1,d2)=(1-λ)sim(d1,d2)+λΣk=1M[(Σi=1Mtf1iPik)(Σj=1Mtf2jPjk)];]]>其中,λ是一個在0,1之間取值的衰減因子。
38.根據(jù)權(quán)利要求36所述的文本相似度計算方法,其特征在于,所述步驟B2′中,計算詞匯間的詞義相似度,是通過下式計算得到的sim(w1,w2)=(1-λ)sim(w1,w2)+λΣk=1M|(Σi=1Mtfi1Qik)-(Σj=1Mtfj2Qjk)|;]]>所述步驟B3′中,計算文本間的語義相似度,是通過下式計算得到的sim(d1,d2)=(1-λ)sim(d1,d2)+λΣi=1M[tf1imaxj=1N(tf2jPji)+tf2imaxj=1N(tf1jPji)];]]>其中,λ是一個在0,1之間取值的衰減因子。
39.一種詞義相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,所述詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,所述文本集模塊包括至少一文本集,其特征在于,還包括初始化模塊,詞義迭代計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述詞義迭代計算模塊,根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
40.根據(jù)權(quán)利要求39所述的詞義相似度計算系統(tǒng),其特征在于,所述詞義迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
41.根據(jù)權(quán)利要求40或39所述的詞義相似度計算系統(tǒng),其特征在于,所述文本集為短文本集。
42.根據(jù)權(quán)利要求41所述的詞義相似度計算系統(tǒng),其特征在于,所述詞匯數(shù)據(jù)庫或者是英文的WordNet詞匯數(shù)據(jù)庫,或者是中文的HowNet詞匯數(shù)據(jù)庫或同義詞詞林,或者他們的組合。
43.一種詞義相似度排列表裝置,所述裝置包括一芯片,其特征在于,所述芯片中存儲有一詞義相似度矩陣表,所述詞義相似度矩陣表中的每個元素為詞義相似度,該詞義相似度是通過詞義相似度計算系統(tǒng)計算得到;所述詞義相似度計算系統(tǒng)包括詞匯數(shù)據(jù)庫模塊和文本集模塊,所述詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,所述文本集模塊包括至少一文本集;所述的詞義相似度計算系統(tǒng),還包括初始化模塊,詞義迭代計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述詞義迭代計算模塊,根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣。
44.根據(jù)權(quán)利要求43所述的詞義相似度排列表裝置,其特征在于,所述詞義迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
45.根據(jù)權(quán)利要求43或44所述的詞義相似度排列表裝置,其特征在于,所述文本集為短文本集。
46.根據(jù)權(quán)利要求45所述的詞義相似度排列表裝置,其特征在于,所述詞匯數(shù)據(jù)庫或者是英文的WordNet詞匯數(shù)據(jù)庫,或者是中文的HowNet詞匯數(shù)據(jù)庫或同義詞詞林,或者他們的組合。
47.一種問答系統(tǒng),其特征在于,包括一文本相似度計算系統(tǒng),所述文本相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,文本集模塊包括至少一文本集,其特征在于,還包括初始化模塊,迭代計算模塊,最終相似度計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述迭代計算模塊,用于根據(jù)所述初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述最終相似度計算模塊,用于根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
48.根據(jù)權(quán)利要求47所述的問答系統(tǒng),其特征在于,所述最終相似度計算模塊中計算出所述文本集的文本相似度是使用向量的點積或余弦模型計算文本相似度。
49.根據(jù)權(quán)利要求48所述的問答系統(tǒng),其特征在于,所述最終相似度計算模塊,還用于當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將新文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新文本和所述文本集中的文本相似度。
50.根據(jù)權(quán)利要求49所述的問答系統(tǒng),其特征在于,所述最終相似度計算模塊將所述新文本加入到所述文本集中,再次調(diào)用系統(tǒng),得到更新的最終詞義相似矩陣,重新計算新的文本詞頻向量。
51.根據(jù)權(quán)利要求47至50任一項所述的問答系統(tǒng),其特征在于,所述迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
52.根據(jù)權(quán)利要求51所述的問答系統(tǒng),其特征在于,所述文本集為短文本集。
53.一種圖像檢索系統(tǒng),其特征在于,包括一文本相似度計算系統(tǒng),所述文本相似度計算系統(tǒng),包括詞匯數(shù)據(jù)庫模塊和文本集模塊,詞匯數(shù)據(jù)庫模塊包括至少一詞匯數(shù)據(jù)庫,文本集模塊包括至少一文本集,其特征在于,還包括初始化模塊,迭代計算模塊,最終相似度計算模塊,其中所述初始化模塊,用于根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;所述迭代計算模塊,用于根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,進行交替迭代計算所述文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;所述最終相似度計算模塊,用于根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集的文本相似度。
54.根據(jù)權(quán)利要求53所述的圖像檢索系統(tǒng),其特征在于,所述最終相似度計算模塊中計算出所述文本集的文本相似度是使用向量的點積或余弦模型計算文本相似度。
55.根據(jù)權(quán)利要求54所述的圖像檢索系統(tǒng),其特征在于,所述最終相似度計算模塊,還用于當新文本加入到所述文本集時,利用所述的最終詞義相似矩陣將新文本集中的文本詞頻向量變換為新的詞頻向量,然后計算所述新文本和所述文本集中的文本相似度。
56.根據(jù)權(quán)利要求55所述的圖像檢索系統(tǒng),其特征在于,所述最終相似度計算模塊將所述新文本加入到所述文本集中,再次調(diào)用系統(tǒng),得到更新的最終詞義相似矩陣,重新計算新的文本詞頻向量。
57.根據(jù)權(quán)利要求53至56任一項所述的圖像檢索系統(tǒng),其特征在于,所述迭代計算模塊,還用于通過最終詞義相似矩陣和文本詞頻矩陣將文本集中的所有的文本映射到新的文本詞頻矩陣并通過對新的文本詞頻矩陣進行降維來獲得降維后的最終詞義相似矩陣,降維后的最終詞義相似矩陣只保留該矩陣中每個詞與那些最有代表性的詞的詞義相似度元素。
58.根據(jù)權(quán)利要求57任一項所述的圖像檢索系統(tǒng),其特征在于,所述文本集為短文本集。
全文摘要
本發(fā)明公開了一種文本相似度、詞義相似度計算方法和系統(tǒng)及應用系統(tǒng)。該方法包括下列步驟根據(jù)詞匯數(shù)據(jù)庫進行初始化,計算得到所述詞匯數(shù)據(jù)庫中詞匯間的初始詞義相似度,并根據(jù)初始詞義相似度計算文本間的初始語義相似度;根據(jù)初始化得到的詞匯間的詞義相似度和文本間的初始語義相似度,交替迭代計算文本集中的各個文本間的語義相似度和詞匯間的詞義相似度直至收斂,根據(jù)迭代計算的收斂結(jié)果,以最終詞義相似度構(gòu)造所有詞匯間的最終詞義相似矩陣;根據(jù)所述最終詞義相似矩陣,將原始文本的文本詞頻向量變換為新的文本詞頻向量,計算出所述文本集中文本相似度。其能夠顯著提高現(xiàn)有的文本相關的,特別是有關短文本的信息檢索技術(shù)的性能。
文檔編號G06F17/30GK101079026SQ20071011822
公開日2007年11月28日 申請日期2007年7月2日 優(yōu)先權(quán)日2007年7月2日
發(fā)明者劉文印 申請人:北京百問百答網(wǎng)絡技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1