文本聚類
文本聚類
文本聚類(Text clustering)文檔聚類主要是依據著名的聚類假設:同類的文檔相似度較大,而不同類的文檔相似度較小。作為一種無監督的機器學習方法,聚類由於不需要訓練過程,以及不需要預先對文檔手工標註類別,因此具有一定的靈活性和較高的自動化處理能力,已經成為對文本信息進行有效地組織、摘要和導航的重要手段,為越來越多的研究人員所關注。
①文檔聚類可以作為多文檔自動文摘等自然語言處理應用的預處理步驟,比較典型的例子是哥倫比亞大學開發的多文檔文摘系統Newsblaster。Newsblaster將每天發生的重要新聞文本進行聚類處理,並對同主題文檔進行冗餘消除、信息融合、文本生成等處理,從而生成一篇簡明扼要的摘要文檔;
②對搜索引擎返回的結果進行聚類,使用戶迅速定位到所需要的信息。Hua-Jun Zeng等人提出了對搜索引擎返回的結果進行聚類的學習演演算法。比較典型的系統則有vivisimo和infonetware等。系統允許用戶輸入檢索關鍵詞,而後對檢索到的文檔進行聚類處理,並輸出各個不同類別的簡要描述,從而可以縮小檢索的範圍,用戶只需關注比較有希望的主題。另外這種方法也可以為用戶二次檢索提供線索;
③對用戶感興趣的文檔(如用戶瀏覽器cache中的網頁)聚類,從而發現用戶的興趣模式並用於信息過濾和信息主動推薦等服務。
④聚類技術還可以用來改善文本分類的結果,如俄亥俄州立大學的Y.C. Fang, S. Parthasarathy和F. Schwartz等人的工作。
⑥文檔集合的自動整理。如Scatter/Gather[ ]是一個基於聚類的文檔瀏覽系統。而微軟的Ji-Rong Wen等人則利用聚類技術對用戶提出的查詢記錄進行聚類,並利用結果更新搜索引擎網站的FAQ。
劃分法
(partitioning methods):給定一個有N個元組或者紀錄的數據集,分裂法將構造K個分組,每一個分組就代表一個聚類,K模糊聚類演演算法中可以放寬);對於給定的K,演演算法首先給出一個初始的分組方法,以後通過反覆迭代的方法改變分組,使得每一次改進之後的分組方案都較前一次好,而所謂好的標準就是:同一分組中的記錄越近越好,而不同分組中的紀錄越遠越好。使用這個基本思想的演演算法有:K-MEANS演演算法、K-MEDOIDS演演算法、CLARANS演演算法;
層次法
(hierarchical methods):這種方法對給定的數據集進行層次似的分解,直到某種條件滿足為止。具體又可分為“自底向上”和“自頂向下”兩種方案。例如在“自底向上”方案中,初始時每一個數據紀錄都組成一個單獨的組,在接下來的迭代中,它把那些相互鄰近的組合併成一個組,直到所有的記錄組成一個分組或者某個條件滿足為止。代表演演算法有:BIRCH演演算法、CURE演演算法、CHAMELEON演演算法等;
基於密度的方法
(density-based methods):基於密度的方法與其它方法的一個根本區別是:它不是基於各種各樣的距離的,而是基於密度的。這樣就能克服基於距離的演演算法只能發現“類圓形”的聚類的缺點。這個方法的指導思想就是,只要一個區域中的點的密度大過某個閥值,就把它加到與之相近的聚類中去。代表演演算法有:DBSCAN演演算法、OPTICS演演算法、DENCLUE演演算法等;
基於網格的方法
(grid-based methods):這種方法首先將數據空間劃分成為有限個單元(cell)的網格結構,所有的處理都是以單個的單元為對象的。這麼處理的一個突出的優點就是處理速度很快,通常這是與目標資料庫中記錄的個數無關的,它只與把數據空間分為多少個單元有關。代表演演算法有:STING演演算法、CLIQUE演演算法、WAVE-CLUSTER演演算法;
基於模型的方法