我正在搜索一种哈希函数来索引相似的文本。因此,例如,如果我们有两个非常长的文本,分别称为“A”和“B”,其中 A 和 B 差别不大,那么应用于 A 和 B 的哈希函数(称为 H)应该返回相同的数字。
所以 H(A) = H(B) 其中 A 和 B 是相似的文本。
我尝试了“DoubleMetaphone”(我使用意大利语文本),但我发现它非常依赖于字符串前缀。例如:
A = “这是我要散列的非常长的文本” B = “这是非常”
==> doubleMetaPhone(A) = doubleMetaPhone(B)
这对我来说不是很好,因为具有相同前缀的字符串可以被比较为相似,我不想要这个。
谁能建议我任何其他方式?