用于对相似单词(或短语)进行分组的算法



我正在寻找一种算法来帮助我对相似的单词进行分类/分组(例如,"Amazon.com"类似于"Amazon"或"Amz"或"Amzon")。Levenshtein 是一种通常建议使用的算法,但还有其他算法,如 Jaro Winkler 等(例如,这是具有几个单词相似性指标的 Python 库)

我想知道那些做过类似单词聚合/分组的人是否有更有效的建议。谢谢!

我做过这样的事情。我使用Levenshtein进行了很多启发式方法。

您应该真正查看数据并尝试找出最适合您的数据。Jaro Winkler非常适合名字。如果您尝试将其用于md5 id,您将度过一段糟糕的时光。如果字符串自然彼此非常接近,则这两种方法可能没有足够的粒度来帮助你,或者你可能需要来自外部源的更多信息。

总之,尝试

设置一些沙盒环境并尝试通过数据运行不同的算法,看看哪个效果更好。您还可以查看每个算法所犯的错误,看看 a) 您是否可以忍受它或 b) 您可以轻松修复它。

最新更新