自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)

新聞 深度學(xué)習(xí)
本文就主題模型的評價指標(biāo)進(jìn)行討論,對當(dāng)下比較熱門的評價方法進(jìn)行總結(jié),并對未來這一領(lǐng)域可能的發(fā)展方向進(jìn)行展望。

基于統(tǒng)計學(xué)的主題模型諸如 LDA(Latent Dirichlet Allocation),Biterm 的應(yīng)用使得針對大量文本進(jìn)行信息的總結(jié)提取成為可能。但是提取的主題到底質(zhì)量如何,如何進(jìn)行量化分析和評價,仍然沒有確定的標(biāo)準(zhǔn)。

同時,隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,encoding-decoding, GAN 這種非監(jiān)督模型開始進(jìn)入到主題模型的應(yīng)用中來,如何判斷這些模型產(chǎn)生的主題有效性就更顯得重要了。同時,這些神經(jīng)網(wǎng)絡(luò)本身也可以作為評測的方法之一。

本文就主題模型的評價指標(biāo)進(jìn)行討論,對當(dāng)下比較熱門的評價方法進(jìn)行總結(jié),并對未來這一領(lǐng)域可能的發(fā)展方向進(jìn)行展望。

1. 主題模型

宏觀上講,主題模型就是用來在一系列文檔中發(fā)現(xiàn)抽象主題的一種統(tǒng)計模型,一般來說,這些主題是由一組詞表示了。如果一篇文章有一個中心思想,那么一些特定詞語會更頻繁的出現(xiàn)。比方說,如果一篇文章是在講狗的,那「狗」和「骨頭」等詞出現(xiàn)的頻率會高些。如果一篇文章是在講貓的,那「貓」和「魚」等詞出現(xiàn)的頻率會高些。而有些詞例如「這個」、「和」大概在兩篇文章中出現(xiàn)的頻率會大致相等。如果一篇文章 10% 和貓有關(guān),90% 和狗有關(guān),那么和狗相關(guān)的關(guān)鍵字出現(xiàn)的次數(shù)大概會是和貓相關(guān)的關(guān)鍵字出現(xiàn)次數(shù)的 9 倍。而一個主題模型則會用數(shù)學(xué)框架來體現(xiàn)文檔的這種特點(diǎn)。

如圖 1 所示,最左邊的就是各個主題(提前確定好的),然后在文中不同的顏色對應(yīng)不同的主題,比如黃色可能對應(yīng)狗,那么文中跟狗相關(guān)的詞都會標(biāo)成黃色,這樣最后就能獲得一個各個主題可能的主題分布。

如何找到好的主题模型量化评价指标?这是一份热门方法总结

圖 1:主題模型(圖源:https://medium.com/@tengyuanchang/%E7%9B%B4%E8%A7%80%E7%90%86%E8%A7%A3-lda-latent-dirichlet-allocation-%E8%88%87%E6%96%87%E4%BB%B6%E4%B8%BB%E9%A1%8C%E6%A8%A1%E5%9E%8B-ab4f26c27184)

本文主要是介紹主題模型的量化評價指標(biāo),因此不對主題模型做過多解釋。如果對主題模型沒有什么基礎(chǔ)的,可以看一下機(jī)器之心發(fā)過的一篇比較適合入門的教程,有需要可以自取。同時,除了教程中提到的這些概率模型,一些深度學(xué)習(xí)模型(GAN, Encoding-Decoding 等)也開始進(jìn)入這一領(lǐng)域,比如基于 GAN 的 ATM(Adversarial-neural Topic Model)就有不錯的表現(xiàn)。

觀察上文提到的那些主題模型,可以發(fā)現(xiàn)不管是概率模型 LDA,還是基于深度學(xué)習(xí)模型 ATM,都面臨一個問題,那就是這些模型該怎么去評價,這些模型提取出的主題真的有用嗎?換句話說,這些模型提取出的東西真的能表達(dá)一個主題嗎?舉個很簡單的例子,當(dāng)主題模型提取出一個主題(很多詞)時,如果這么模型是好的,那么這些詞一定是能表達(dá)同一個主題的,如果不好的話那這些詞就是貌合神離。一般來說,主題越多,我們得到的結(jié)果就越有分辨性,但是對應(yīng)的,當(dāng)主題變多時,結(jié)果毫無意義的情況就更加普遍,有些主題只有幾個詞,而且根本詞不對題。除此之外,經(jīng)過一些專家的實驗,發(fā)現(xiàn)貌合神離的情況主要有以下四種:

a. 通過詞對聯(lián)系傳遞后才聯(lián)系在一起的主題。比如說,「糖」,「甘蔗」和「糖醋排骨」,糖產(chǎn)生自甘蔗(主題可以是「甜食」),糖醋排骨中加了糖(主題可以是「料理」),糖醋排骨跟甘蔗卻很難組成一個主題。但是在關(guān)系傳遞中(通過「糖」聯(lián)系在一起),這三個詞被放到了同一個主題中。

b. 異常詞。由于算法錯誤或其他什么原因?qū)е峦耆幌喔傻脑~出現(xiàn)在這個主題中。

c. 關(guān)系不明。詞之間沒有很明確的聯(lián)系。

d. 不平衡。詞之間的聯(lián)系都很明確,但是詞的意義都很寬泛,比如「學(xué)科」和「作業(yè)」,很難確定一個很明確的主題。

本文剩下的部分首先對兩類評價模型進(jìn)行介紹,然后分析了這些評價模型的效果,最后對評價模型的發(fā)展進(jìn)行了展望。

2 利用模型中的知識評價主題模型

目前評價的方法大部分都利用了一些參數(shù)或者是詞之間的聯(lián)系來確定模型的優(yōu)劣,很少有直接利用模型中獲得的東西來衡量主題模型的。Xing [4] 最近提出了幾種基于 Gibbs Sampling 過程中估算出的分布進(jìn)行評價的方式。

2.1 主題穩(wěn)定性

在 LDA 的 Gibbs Sampling 的過程中會產(chǎn)生(估算)兩個分布——一個是給定文檔時主題的分布,另一個是給定主題時詞的分布 (Φ),而主題穩(wěn)定性主要考慮的就是第二個分布。

如何找到好的主题模型量化评价指标?这是一份热门方法总结

如公式所示,對于一個給定的主題 k,要計算其所有 Gibbs Sampler 提取出的詞分布的平均值與各個 Gibbs Sampler 提取的詞分布的相似度 (原論文 [4] 中使用了 cosine similarity, Euclidean distance, KL-divergence 以及 Jaccard similarity 來計算這個相似度),取和后就得到了這個主題的主題穩(wěn)定度。

通過公式可以很清晰的看出,相較于前面的計算方式,主題穩(wěn)定性并不需要參數(shù)和多余的語料庫。然而,有些常用詞的詞頻很高,因此出現(xiàn)在主題中時主題的穩(wěn)定度會很高,但是它們跟主題卻并不相關(guān),這也就導(dǎo)致一些很差的主題有很高的主題穩(wěn)定度。

2.2 主題離散度

在前一節(jié)中提到過,Gibbs Sampling 產(chǎn)生了兩個分布,主題穩(wěn)定性使用了第二個分布,也就是通過詞的角度來判斷主題的優(yōu)劣。而本節(jié)的離散度使用的則是第一個分布,也就是說我們的目光轉(zhuǎn)向了文檔這一層次。通常來說,這個的參數(shù)是通過對多個 Gibbs Sampler 的結(jié)果取平均而得到的。同時,從這些 Gibbs Sampler 的結(jié)果中,我們還可以得到他們的標(biāo)準(zhǔn)方差(standard deviation)。但是標(biāo)準(zhǔn)方差太過敏感,于是為了能夠獲得一個更穩(wěn)定的結(jié)果,我們還可以用平均值除以偏差,以得到變異系數(shù)(coefficient of variance,cv)。按常理說,均值和變異系數(shù)都可以用來辨別一個主題的好壞,好主題的均值和 cv 應(yīng)該相對較小,反之則應(yīng)該較大。在 NYT 語料庫的測試中,這三個評判標(biāo)準(zhǔn)的效果如下圖所示。

如何找到好的主题模型量化评价指标?这是一份热门方法总结

圖 2:通過的得到的三種評測結(jié)果(圖源:https://arxiv.org/abs/1909.03524)

圖 2 中,藍(lán)色代表好主題(3.4 分),橘色代表差主題(1 分),可以看到只有 cv 對于兩個主題的區(qū)分度最大,而平均值(mu)和標(biāo)準(zhǔn)方差(sigma)中,藍(lán)色和橘色的區(qū)分度并不大,也就是說很難分辨出好主題和差主題。

因此,cv 是表征主題離散度最好的方式,所以某個主題 k 的主題離散度的計算公式可以表達(dá)為:

如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)

D 表示第 D 篇文章,k 則表示主題 k。

3. 模擬人工評測結(jié)果

在第一節(jié)中提到了主題模型常出現(xiàn)的各種誤差,基于這些誤差,很多人提出了不同的方法,這些方法(包括本文后面提到的)都是為了解決上述一個或多個問題。目前傳統(tǒng)的方法大都是使用了目測或是先驗知識,常見的方法有很多。最直觀的方法就是讓人來判斷提取出的主題好還是不好,但是很明顯,這個方法需要大量的人力物力和時間。因此,人們開始探索如何用公式或是算法來模擬、估計人為判斷的結(jié)果。人為判斷的方法主要分為直接方法和間接方法(后文詳述),因此那些模擬人為判斷的算法也就大致可以被分為這兩類。當(dāng)然這些方法的分類很多,但在本節(jié)中介紹的主要是模擬人工測評結(jié)果的那一部分,所以分類就按照直接方法和間接方法來分。

有些方法被稱為直接方法,這些方法主要基于語言的內(nèi)部特性進(jìn)行判斷,比如說 Newman et al. (2010) 提出的主題連貫性(Topic Coherence)就利用 PMI(Pairwise Pointwise Mutual Information)對主題詞間的連貫性進(jìn)行計算,后面其他人也對這種連貫性的計算方式進(jìn)行了改進(jìn),但是本質(zhì)上還是在計算連貫性(會在后文詳述);還有一些方法被稱為間接方法,這些方法不是直接通過語言內(nèi)部特性進(jìn)行判斷的,而是采用一些其它的方式,比如在下游任務(wù)中的表現(xiàn),或是在測試集中的表現(xiàn)(混淆度,perplexity)。就包括。本節(jié)剩下的部分就會對這些方法進(jìn)行詳述。

3.1 混淆度 (perplexity)

簡單來說,混淆度就是利用概率計算某個主題模型在測試集上的表現(xiàn),混淆度越低,則說明這個主題模型越好。具體來說,就是在給定一個主題分布的情況下,計算某個文檔的 log-likelihood。在下面這個式子里,Phi 代表給定的主題矩陣,α參數(shù)確定主題的分布,w 則指代我們要預(yù)測的文章(d,與訓(xùn)練得到和α的文章的主題相同)。

如何找到好的主题模型量化评价指标?这是一份热门方法总结

得到了 log-likelihood 后,perplexity 就很好計算了,公式如下(這里的分母一般來說就是文章的單詞數(shù)):

如何找到好的主题模型量化评价指标?这是一份热门方法总结

根據(jù)定義可以看出,log-likelihood(log-可能性)越高,也就意味著提取出的主題能表達(dá)特定主題的能力越好,這個提取出的主題質(zhì)量也就越高,混淆度也就越小。但是這里的 log-likelihood 是沒辦法求的,Wallach09a (http://dirichlet.net/pdf/wallach09evaluation.pdf)中提出了一些對 likelihood 進(jìn)行估計的方法,感興趣的可以自己看一下,因為其效果并不很好(下面會介紹原因),故而這里對其計算方法就不做詳述了。

但是為了測試這個方法的有效性,有人在 Amazon Mechanical Turk 平臺上進(jìn)行了一個大規(guī)模實驗。他們在每個話題中找到了基于 perplexity 確定的最有可能的 5 組詞,然后隨機(jī)加入了第六組詞,讓參與者找出這組隨機(jī)加入的詞。

如果每個參與者都能識別出異常詞,那么我們可以認(rèn)為這個提取出的主題是優(yōu)秀的,可以描述出一個特定的主題。然而,如果許多人把正常的 5 組詞中的一組認(rèn)成異常詞,這就意味著他們看不出這些詞之間的聯(lián)系有什么邏輯,我們也就可以認(rèn)為這個主題不夠好——因為它描述的主題并不明確。這個實驗證明了混淆度的結(jié)果與人為判斷的結(jié)果不太相關(guān)。

3.2 主題連貫性(Coherence)

由于混淆度在很多場景的應(yīng)用效果不佳,本部分將著重介紹最后一個方法,也就是主題連貫性。主題連貫性主要是用來衡量一個主題內(nèi)的詞是否是連貫的。那么這些詞怎么就算是是連貫的呢?如果這些詞是相互支撐的,那么這組詞就是連貫的。換句話說,如果把好多個主題的詞放在一起,用完美的聚類器做聚類,那么同一個主題的詞應(yīng)該在同一個類別中。根據(jù)定義可以發(fā)現(xiàn),第一節(jié)中提到的四個問題中的前三個,都可以通過主題連貫性解決。

Newman et al. (2010) 提出使用 PMI 計算主題連貫性后,Mimno et al. (2011) 基于主題連貫性的理念,又使用了一種基于條件概率的方式對連貫性進(jìn)行計算,Musat et al. (2011) 也在同年提出利用 WordNet 的層級概念來獲取主題間的聯(lián)系;然后,Aletras and Stevenson (2013a) 也提出了一種基于分布相似度的方法來求連貫性。目前來說,比較常見的幾種方法(Roder et al. (2015) 中整理的,在 Gensim 中有打包好的函數(shù),可以直接調(diào)用)如下所示(假設(shè)有一個主題,包含 {game, sport, ball, team}):

PMI:為了了解其他幾種方式的計算方法,首先要先看一下 PMI 的計算方法(如下圖所示)。在后面的兩個方法中,這里epsilon 的越小,將會得到越小的結(jié)果。這個公式可能看起來有些費(fèi)解,不過沒關(guān)系,可以先放一下,在后面看到例子之后,這個公式就很好理解了。

如何找到好的主题模型量化评价指标?这是一份热门方法总结

C_uci:本方法由 University of California Irvine(UCI)的 David Newman 提出,故而稱其為 UCI 方法。本方法的基本原理是基于滑動窗口,對給定主題詞中的所有單詞對(one-set 分割)的點(diǎn)態(tài)互信息 (point twise mutual information, PMI) 進(jìn)行計算。 

 

如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)
因此上面提到的示例主題 {game, sport, ball, team} 的 UCI 分?jǐn)?shù)則為:
如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)
C_umass:本方法由 University of Massachusetts(UMASS)的 Hanna M. Wallach 等人提出,故而稱其為 UMASS 方法。本方法的基本原理是基于文檔并發(fā)計數(shù),利用 one-preceding(每個詞只與位于其前面詞組成詞對)分割和對數(shù)條件概率計算連貫度。
如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)
因此剛剛的示例主題的 UMass 分?jǐn)?shù)為:
如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)
C_npmi:本方法使用歸一化點(diǎn)態(tài)互信息 (NPMI) 的,與 C_uci 很類似,只是將 PMI 換成 NPMI,算是 C_uci 的增強(qiáng)版。具體來說,NPMI 的計算方法如下圖所示。
如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)

C_v (Coefficient of variance):本方法基于滑動窗口,對主題詞進(jìn)行 one-set 分割(一個 set 內(nèi)的任意兩個詞組成詞對進(jìn)行對比),并使用歸一化點(diǎn)態(tài)互信息 (NPMI) 和余弦相似度來間接獲得連貫度。

C_p:本方法也是基于滑動窗口,但分詞方法為 one-preceding(每個詞只與位于其前面和后面的詞組成詞對),并利用 Fitelson 相關(guān)度來表征連貫度。

3.3 模擬人工判別結(jié)果

3.3.1 間接方法

如前文所述,人工判別方法也被分為兩類,一類是直接方法,一類是間接方法。人工判別的間接方法被稱為異常詞檢測,主要就是在主題模型提取出的各個主題中加入一個異常詞,然后讓人來找出這個異常詞。

為了模擬這種間接人工判別的結(jié)果,Jey Han Lau(2014)從那些發(fā)給人工做判別的主題詞中提取了詞之間的聯(lián)系特征,提取的方法為以下三種:

如何找到好的主题模型量化评价指标?这是一份热门方法总结

然后將這些特征進(jìn)行合并,利用 Ranking SVM Regression 來找到異常詞。同時,Jey 還利用了 NPMI 進(jìn)行詞之間的聯(lián)系特征進(jìn)行提取。最終的結(jié)果如下圖所示:

如何找到好的主题模型量化评价指标?这是一份热门方法总结

相關(guān)度比較結(jié)果(圖源:https://www.aclweb.org/anthology/E14-1056.pdf)

圖中顯示的是 Jey 的方法(WI-Auto-PMI, WI-Auto-NPMI)與人工判別(WI-Human)的關(guān)聯(lián)度,可以看到這些方法與人工判別得到的結(jié)果還是比較一致的。

3.3.2 直接方法

另外一種人工方法叫直接方法,這種方法就比較簡單粗暴,就是讓人直接對各個主題進(jìn)行評分。對于這種直接方法,Jey 使用了以下 4 中方法對主題進(jìn)行評分:

OC(Observed Coherence)-Auto-PMI:對一個主題內(nèi)的詞計算 PMI,計算方法其實就是 PMI,如下圖所示:  

如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)
同樣的,Jey 又使用了 NPMI 對主題進(jìn)行評分,同時,他又使用了 log conditional probability(LCP)進(jìn)行計算:

 

如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)

 

最后,Jey 又使用 Aletras and Stevenson (2013a) 中的 distributional similarity(DS)對主題進(jìn)行了評分。最終的結(jié)果如下圖所示:
 
如何找到好的主題模型量化評價指標(biāo)?這是一份熱門方法總結(jié)

 

相關(guān)度比較結(jié)果(圖源:https://www.aclweb.org/anthology/E14-1056.pdf)

由上圖可知,這些方法與人工判別的結(jié)果在大部分結(jié)果上還是很一致的,只有部分結(jié)果(PMI 等)沒能得到很好的一致性。

4. 展望與總結(jié)

本文主要介紹了主題模型存在的一些問題和當(dāng)前比較流行的主題模型評價方法,也對主流的主題模型評價方法進(jìn)行了簡單的分類。

如何找到好的主题模型量化评价指标?这是一份热门方法总结

對于未來,我主要有兩點(diǎn)想法,一是要適應(yīng)時代的發(fā)展,也就是當(dāng)前越來越多的數(shù)據(jù)集和越來越多的小數(shù)據(jù)集的學(xué)習(xí)模型,如何更好的利用這些數(shù)據(jù)集,或者如何找到合適的小數(shù)據(jù)集的處理方式都是很不錯的嘗試方向,甚至直接使用監(jiān)督模型來對主題模型進(jìn)行評價都可以;第二個就是要時刻記得本質(zhì)問題,這也是為什么我要在文章的第一節(jié)就提出主題模型常見錯誤的原因,評價方法的本質(zhì)還是為了找到這些錯誤,站在這些專家的肩膀上,我們可以把這些常見錯誤分而治之,利用不同的模型解決不同的錯誤,或是如何找到這些錯誤的共同特點(diǎn),從而完成一個更加通用的建模,這些都是這個領(lǐng)域可以探索的方向。當(dāng)然這個領(lǐng)域的未來發(fā)展方向還有很多,我在這里也只是拋磚引玉。

希望大家喜歡這種探索的過程! 

 

責(zé)任編輯:張燕妮 來源: 機(jī)器之心
相關(guān)推薦

2023-09-01 14:02:25

用戶分析攻略

2024-11-07 08:50:56

用戶分析分類維度標(biāo)簽

2020-06-01 15:04:44

甲骨文自治數(shù)據(jù)庫

2013-05-23 13:32:30

編程攻誠獅工程師

2018-06-14 15:34:59

深度學(xué)習(xí)GitHub機(jī)器學(xué)習(xí)

2018-04-19 08:10:09

機(jī)器學(xué)習(xí)數(shù)據(jù)科學(xué)面試題

2012-11-27 09:54:57

簡歷創(chuàng)業(yè)項目

2023-04-28 15:41:08

模型ChatGPT

2019-07-16 07:52:49

NumPyPython機(jī)器學(xué)習(xí)

2019-12-05 07:55:47

監(jiān)控指標(biāo)巡檢指標(biāo)數(shù)據(jù)庫

2021-10-22 06:04:05

勒索軟件攻擊報告

2019-03-24 14:14:40

代碼閱讀源代碼

2012-01-06 15:12:46

掃描儀推薦

2021-05-18 09:12:40

TCP網(wǎng)絡(luò)分層網(wǎng)絡(luò)協(xié)議

2019-11-14 21:21:50

數(shù)據(jù)挖掘數(shù)據(jù)處理數(shù)據(jù)分析

2018-03-27 08:48:44

JavaScript前端 web

2022-04-29 08:48:25

開源

2019-03-18 08:08:24

知識圖譜技術(shù)

2017-07-06 09:33:18

AMDEPYC處理器

2019-01-15 09:34:30

MySQL高性能優(yōu)化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號