我正在做一些關於如何將文章聚合到'新聞報道'ala Google新聞的研究。用於分組新聞文章的遞增聚類算法?
查看這裏關於這個主題的以前的問題,我經常會看到它建議簡單地從文章中提取單詞的矢量,如果文章的某些部分(如標題),然後使用類似k-means算法的東西來聚集文章。
但是這會導致幾個問題:
使用K-手段,你怎麼提前知道有多少K在?在一個充滿活力的新聞環境中,你可能會有不同數量的故事,而且事先並不知道一組文章所代表的故事數量。
隨着層次聚類算法,你如何決定爲你的故事要使用的集羣?您將在樹的底部顯示只有單個文章的集羣,您顯然不想使用這些集羣,並且在樹的根目錄下有一個集羣,其中包含所有文章,而這些集羣又是您不想要的......但你怎麼知道應該用哪個集羣來代表故事呢?
最後,無論是k-means還是層次算法,我所閱讀的大多數文獻似乎都假設您有一組預設的文檔集合,並且它們會一次集中它們。但是,如果你經常收到新的文章,情況會怎樣。怎麼了?你是否必須從頭開始整理所有文章,現在還有一個呢?這就是爲什麼我想知道是否有方法可以讓您「隨意添加」文章,而無需從頭開始重新集羣。我無法想象這非常有效。
感謝埃裏克! 這是一個有用的文件:) 它解決了預先確定聚類數量的問題,並且我猜測閾值的選擇對於聚類的質量來說是相當關鍵的......但它是可以實驗的東西用。 我想知道,雖然......你知道,如果這個算法將在增量方面的工作呢?我的意思是,如果有新的文章出現,並根據與現有羣集的距離最短的原則將其分配到羣集,這將導致與從頭開始重新計算羣集相同的結果,還是針對所有意圖和目的的結果「一樣好'? – Peter 2010-08-31 21:40:40
根據他的結論段落,我相信答案是肯定的,它會執行「一樣好」,就好像您從頭重新計算了集羣,假設您的距離計算已正確完成。我認爲用腳本語言實現原型並不需要太長時間(很容易快速解析許多數據格式,併爲集羣可視化提供了很好的庫)。那麼你可以有一個戰略模式,一個策略使用自適應k-means和一個策略使用正常的k-means每次重新計算。 – 2010-09-01 01:11:50
k-nearest-neighbors可能有助於在線聚類新文章。 – crizCraig 2012-07-23 22:59:47