3

我需要一个用于文本流聚类的轻量级工具。轻量级,因为它没有记忆,因此它可以记住以前的文本条目。这里的文本流意味着连续输入字母数字和半结构化的句子/短语,例如:任何应用程序的日志。基于相似性的聚类意味着算法应该将具有模式相似性的文本分组。例如: text1 = 'aaababac' 和 text2 = 'aaaaabac' 应该组合在一起,因为它们之间只有一个字符不同。场景是:首先出现 text1,算法应该给它一个索引。然后出现 text2 现在算法采用相同的方法给它一个索引。但条件是两个索引应该彼此靠近,并且在处理 text2 时,算法不知道早期文本中出现了什么。它是一种基于模式相似性的散列。

现在我找不到任何有用的东西。我发现的最佳解决方案是 simhash。 http://matpalm.com/resemblance/simhash/

4

2 回答 2

2

这个问题有点不明确。如果您不记得以前的条目,您将如何记住您看到的集群?特别是,通常只有在您看到大量“相似”项目时才将事物视为一个集群。如果没有至少一些关于频繁和不频繁的“记忆”,您就无法做到这一点。因此,不存在真正没有任何记忆的合理聚类算法。它可能不会记住文字对象,但记住摘要并没有那么不同。散列意味着记住至少部分先前看到的数据。但是,记忆数据中具有统计意义的随机部分是否比准确记忆更有好处呢?

发生的很多事情都是假装不记住事情,但实际上他们只是以不同的方式记忆数据。但只要它出版,它就被认为是成功的。即使它在实践中不起作用。

于 2012-06-22T23:34:10.220 回答
0

我认为您所描述的称为增量集群数据流集群

于 2012-06-22T23:48:14.157 回答