借助LDA主题分析的短文本相似性计算 - 综述帖
目標(biāo):針對給定輸入文本與文本庫,計算得出文本庫中與輸入文本最相似的文本
綜述帖:http://www.cnblogs.com/kinzznsblog/p/8780239.html
原理帖:http://www.cnblogs.com/kinzznsblog/p/8780172.html
實現(xiàn)帖:
?
?
對于人類,兩句話的相似性一般都從語義上進(jìn)行考慮,大白話說就是”這兩句話說的是同一件事兒/同一個意思“。相似的句子可能會有相似的語法。
對于當(dāng)前的計算機(jī)來說,已經(jīng)用標(biāo)點符號等區(qū)分開了句子與句子,但如何理解、表達(dá)句子的意思是個難題,也就是需要人工定義語義的概念。另外,人類語言世界中的句子通常都有一定的使用環(huán)境,但到了計算機(jī)系統(tǒng)中全都統(tǒng)一存儲為二進(jìn)制,使得部分語義在”語言數(shù)字化“這一過程中丟失。(類比所有的模擬信號轉(zhuǎn)化為數(shù)字信號都存在這樣的問題。)
短文本是社交網(wǎng)絡(luò)中更加流行的文本形式,特點在于長度短、特征稀疏、實時性強(qiáng),在輿論監(jiān)控、熱點追蹤上可以挖掘出更多有用的信息。短文本由于其特征稀疏、語義依賴強(qiáng)、不遵循語法等特點難以直接應(yīng)用已有長文本處理技術(shù)進(jìn)行分析。
文本分析主要分析方向為文本的特征提取、分類、相似度分析和情感分析等。其研究方法可以主要分為兩種,基于句法-語義規(guī)則的理性方法、統(tǒng)計數(shù)學(xué)方法。
?
?
基于以上背景,短文本理解通常可以按顯性分析和隱性分析兩個角度進(jìn)行劃分:
顯性分析方法是從人的角度解釋性強(qiáng)的解釋方法,包括詞義、詞性、句法、語義等。這種方法需要有知識庫進(jìn)行匹配。詞匯角度的分析上,已有的研究包括WordNet、Hownet、哈工大同義詞詞林等;ESA算法構(gòu)建一個詞與文本的共現(xiàn)矩陣,詞向量的每一個維度代表一個明確的知識庫文本,如Wikipedia文章或標(biāo)題。句法角度的分析,已有研究包括哈工大LTP平臺,Stanford Parser,Berkeley Parser,并通常與詞匯分析共同使用。
隱性分析方法是將文本轉(zhuǎn)化為向量表示,從統(tǒng)計規(guī)律上彌補(bǔ)因文本數(shù)字化導(dǎo)致的語義缺失,使計算機(jī)理解文本,而少注重可解釋性。
LSA的核心是在相同語境下出現(xiàn)的詞具有較高的語義相關(guān)性,其構(gòu)建一個詞語文本的共現(xiàn)矩陣,矩陣每項通常是經(jīng)過平滑或轉(zhuǎn)化的共現(xiàn)次數(shù),再通過SVD方法將原始矩陣降維。HAL構(gòu)建詞與詞的共現(xiàn)矩陣,每個維度代表一個語境詞,統(tǒng)計目標(biāo)詞匯與語境詞匯的共現(xiàn)次數(shù)。LSA和HAL方法中的向量維度是難以從人的角度進(jìn)行解釋的。
可以在一定程度進(jìn)行解釋的算法稱為半隱性分析方法,同樣是用向量對詞語和文本進(jìn)行表示,但是在二者之間可以使用“主題”對向量維度進(jìn)行理解。這一類的代表算法是LDA(Latent Dirichlet Allocation),算法結(jié)果為得到兩個概率矩陣,維度分別為文本-主題的概率分布矩陣和主題-詞的概率分布矩陣。
下圖對上述算法的共現(xiàn)矩陣關(guān)系進(jìn)行總結(jié):
(此部分來自參考論文?王仲遠(yuǎn),程健鵬,王海勛等. 短文本理解研究. 計算機(jī)研究與發(fā)展. 53(2). 2016,2:262-269.)
除了上述方法,更直接的方法可以利用現(xiàn)有工具將文本、詞匯直接轉(zhuǎn)為向量,利用聚類、距離計算等方法進(jìn)行分析。
?
?
相似性的計算只需在以上模型的基礎(chǔ)上進(jìn)一步進(jìn)行向量距離的度量、聚類等即可實現(xiàn)。
?
?
?
?
以上。歡迎各路大神指點。
?
轉(zhuǎn)載于:https://www.cnblogs.com/kinzznsblog/p/8780239.html
總結(jié)
以上是生活随笔為你收集整理的借助LDA主题分析的短文本相似性计算 - 综述帖的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5.6基本包装类型
- 下一篇: 函数计算进行自动化运维专题