【发布时间】:2016-12-25 05:10:42
【问题描述】:
我需要自动匹配产品名称(食品)。问题类似于 Fuzzy matching of product names
主要问题是,即使是相关关键字的单个字母变化也会产生巨大的差异,但要检测哪些是相关关键字并不容易。例如,考虑三个产品名称 Lenovo T400、Lenovo R400 和 New Lenovo T-400, Core 2 Duo。
从任何标准来看,前两个都是非常相似的字符串(好吧,在这种情况下,soundex 可能有助于区分 T 和 R,但名称也可能是 400T 和 400R),第一个和第三个作为字符串彼此相距很远,但它们是相同的产品。
显然,匹配算法不可能 100% 精确,我的目标是自动匹配大约 80% 的名称,并且置信度很高。
但是有一个复杂的问题:我的字符串有错误,因为我要搜索的文件是图像识别的结果。产品标题在这些文件中没有空格。
例如,我想查找产品名称cookiesoreovarianta 并且我有字符串
cookiesoreovariantb(真正的其他产品)
cookiesoreovariamtq(真正的其他产品,“a”和“q”在某些字体中是相似的符号)
cookiesoreovariamta(只是一个错误)
我确实没有没有完整的规范名称数据库。
我将如何处理这个问题。有什么想法吗?
【问题讨论】:
标签: string-matching fuzzy