2017-08-14 69 views
0

在刪除了停用詞並在一組文檔中應用了詞幹化過程之後,我應用了在Javascript中平分K-means以對從一些網頁接收的一組文檔進行聚類以查找它們的相似性。文本聚類:在k中選擇k意味着

什麼應該是一個很好的方法來找出在創建基於文本的羣集時應該創建多少個羣集?我看到了一些方法,例如彎頭,輪廓或信息標準方法,但假設我沒有任何有關我創建的集羣的信息,其他方法似乎更適合數字集羣,而不適用於基於文本的集羣。

entropy是否可以幫助我在文本聚類中應用平分k-均值後找到正確數量的聚類?或F-measure?我的意思是在達到一定數值後停止劃分集羣?這些對於大量數據是否有用?

+0

在文本上,它們都沒有可靠的工作。 –

+0

那我該如何確定K的個數?在文本聚類?有任何想法嗎? – user3026017

+0

你有很多小文件或一些長文件嗎? - 同一個詞的多個出現是否表示更大的相似性?或者僅僅是重要的獨特詞的出現? – knb

回答

0

簡短的回答:

您可以使用TermFequency- InverseDocument-Frequency(TF-IDF)。它強調在單個文檔中特別使用的罕見詞語,並且在所有文檔中找到這些詞語會受到懲罰。 如果您在數據集上應用了帶有TfIDF的PCA,則可以使用「Scree Plot」(〜Elbow方法)來查找合適數量的聚類。

朗例如:

以下是不使用k均值的一個例子,例如使用了一些長文檔,並已決定,有兩個「集羣」(使用主成分和TF-IDF ,實際上),但它創造性地使用了真實的數據:

在爲R軟件的tm筆者開發了PhD dissertation documenting the "textmining" package tm,英戈Feinerer,給出了一個例子(第10章)怎麼辦stylometry,那就是集羣/識別來自「綠野仙蹤」系列的5本書。對於其中的一本書,作者身份有爭議(系列中有兩位作者,湯普森和鮑姆,但他們對其中一本書的貢獻是未知的)。

Feinerer將文檔打印成500行塊以構建TermDocumentMatrix,然後在Matrix上執行主成分分析(PCA)變體(一個包含TfIDF),並通過目視檢查PCA圖表顯示有爭議的書往往是由湯普森撰寫的。但部分可能是由鮑姆寫的。

在情節中,這是由粉紅色的擺動橢圓(由我繪製)內的點表示。綠點是來自已知作者(T.)的書的大塊,黃點來自未知/有爭議的作者。 (這些點在圖中相互靠近,這就是證據;這是定性的,但這只是PDF中許多的一個例子) enter image description here

第95頁的Tf-IDF PCA圖看起來很相似。

我還沒有給出任何R代碼,因爲我不知道你是否喜歡R,而且這篇文章已經變得太長了,你可以在PDF中自己閱讀它。

(我不知道Javascript中的Tf-IDF的任何實現)。