我需要一個用於文本流聚類的輕量級工具。輕量級,因爲它沒有內存,因此它可以記住以前的文本條目。這裏的文本流意味着連續輸入字母數字和半結構化句子/短語,例如:任何應用程序的日誌。基於相似性的聚類意味着該算法應該將具有模式相似性的組中的文本聚類。例如:text1 ='aaababac'和text2 ='aaaaabac'應該組合在一起,因爲它們之間只有一個字符不同。情景是:首先text1出現算法應該給它一個索引。那麼text2現在出現了,該算法使用相同的方法給它一個索引。但條件是兩個索引應該彼此靠近,並且在處理text2時,該算法不知道早期文本中出現了什麼。 這是一種基於模式相似度的哈希。基於相似度的文本流聚類算法是否有新的突破?
現在我找不到任何有用的東西。我發現的最佳解決方案是simhash。 http://matpalm.com/resemblance/simhash/
感謝.....實際上關於'聚類'我們可以這樣說,它可以是一種散列算法,它根據它們遵循的模式獲取輸入文本聚類。關於爲什麼要記住一個散列而不是輸入文本本身的問題,我們可以使用:如果我們可以將文本(不是定量的)散列成一種索引(定量),我們可以有一個動態分析我們可以從中提取文本簇,也就是說,相似度較高的較小簇或簇成員之間相似度較低的較大簇。 –
哈希值的計算距離通常不能很好地工作。哈希被設計爲保持身份,而不是相似性;而附近的值被「加擾」到非常不同的位置,以均勻分佈在輸出範圍上。 (LSH先接近距離,使物體相同;然後甚至通過一個小的散列值範圍碰撞它們,它不計算散列鍵的距離,但認爲相同的鍵候選物!) –
這些詞可以作爲候選鍵嗎?但是,由於我們只有一個可用的通行證,並且我們在這裏處理智能代理(代理指的是算法)而不是專家代理,因此對於我們的情況,所有的單詞都可以是候選。請注意,專家意味着學習和優化類型的代理,而我們的例子,即智能代理不能有學習階段。這可以幫助嗎? –