鲁棒的非语音非密集模糊子串匹配

时间:2013-10-09 10:58:25

标签: algorithm nlp substring named-entity-recognition fuzzy-comparison

如果您编写代码以模糊匹配两个字符串,例如“可口可乐”与“可口可乐”相比,有一些标准的方法,例如。

  1. 比较Levenshtein编辑距离(http://en.wikipedia.org/wiki/Levenshtein_distance
  2. 计算每个字符串的基于语音的哈希值(例如Double Metaphone)和比较。
  3. 但是,我无法找到有关为子字符串执行此操作的标准且有效方法的信息。例如。对于输入“告诉我关于可口可乐”(“干草堆”),您想要选择“可口可乐”公司(“针”)。

    您不能使用修改后的Levenshtein算法,因为您可能有数百万针(数据库中的公司)并且资源过于密集。可能你可以计算大海捞针中每个单词的语音散列并与每个指针进行比较,但语音表示也有很多限制,我想知道是否有一个完善的标准来处理这个不使用语音的问题?

    我正在寻找一种易于理解的简单算法。已经发布了类似的问题,其中答案建议例如Bitap算法,但是像Levenshtein一样,这似乎没有扩展。

0 个答案:

没有答案