模糊搜索 - minimumSimilarity 有问题

Fuzzy Search - having issue with minimumSimilarity

我正在使用 Lucene.Net 版本 3.0.3 并使用 StandardAnalyzer 创建索引。

我的索引中有一段文本,模糊搜索似乎对其不起作用。

据我了解,CUBAEXPOR 一定是找到了 90%,但现在找到了 88%。

它基于搜索词的长度和索引词的长度中较小的一个。因此,由于您的搜索词的长度为 9,因此 0.88 的相似度是允许一个编辑距离的最小值。

最大编辑距离的计算是这样的:

int maxEdits = (int)((1-minSim) * (Math.min(textLength, targetLength)));

此外,请记住,浮点精度在这里可能是个问题!因此,如果您要设置 minSim = 0.8,并尝试将长度设置为 5,您将得到 0 个 maxEdits,因为 (1-(float).8)*5 = .99999994,并将其转换为 int 会得到 0.

总而言之,我不会过分担心确切地在您的模糊查询中画线的地方。
(我很高兴 lucene 取消了这种基于百分比的模糊相似性 tomfoolery)