我需要一个用于文本流聚类的轻量级工具。轻量级,因为它没有内存,因此它可以记住以前的文本条目。这里的文本流意味着连续输入字母数字和半结构化句子/短语,例如:任何应用程序的日志。基于相似性的聚类意味着该算法应该将具有模式相似性的组中的文本聚类。例如:text1 ='aaababac'和text2 ='aaaaabac'应该组合在一起,因为它们之间只有一个字符不同。情景是:首先text1出现算法应该给它一个索引。那么text2现在出现了,该算法使用相同的方法给它一个索引。但条件是两个索引应该彼此靠近,并且在处理text2时,该算法不知道早期文本中出现了什么。 这是一种基于模式相似度的哈希。基于相似度的文本流聚类算法是否有新的突破?
现在我找不到任何有用的东西。我发现的最佳解决方案是simhash。 http://matpalm.com/resemblance/simhash/
感谢.....实际上关于'聚类'我们可以这样说,它可以是一种散列算法,它根据它们遵循的模式获取输入文本聚类。关于为什么要记住一个散列而不是输入文本本身的问题,我们可以使用:如果我们可以将文本(不是定量的)散列成一种索引(定量),我们可以有一个动态分析我们可以从中提取文本簇,也就是说,相似度较高的较小簇或簇成员之间相似度较低的较大簇。 –
哈希值的计算距离通常不能很好地工作。哈希被设计为保持身份,而不是相似性;而附近的值被“加扰”到非常不同的位置,以均匀分布在输出范围上。 (LSH先接近距离,使物体相同;然后甚至通过一个小的散列值范围碰撞它们,它不计算散列键的距离,但认为相同的键候选物!) –
这些词可以作为候选键吗?但是,由于我们只有一个可用的通行证,并且我们在这里处理智能代理(代理指的是算法)而不是专家代理,因此对于我们的情况,所有的单词都可以是候选。请注意,专家意味着学习和优化类型的代理,而我们的例子,即智能代理不能有学习阶段。这可以帮助吗? –