我正在寻找一种方法,根据分数(?)、匹配数(?)等对相似性(模糊)搜索的结果进行排序。所以需要一些建议
流程是这样的:我有一个文章列表和一个搜索输入。用户输入一个字符串,该字符串被拆分为单词,然后使用所有搜索词在属于每篇文章的标记之间进行搜索。我正在使用以下公式:
var distance = levenshtein_distance(a, b);
var longest_word = Math.max(a.length, b.length);
return (longest_word - distance) / longest_word;
结果为[0,1],越大越好。
因此,仅使用算术平均值来计算一篇文章的综合权重并不好,因为它不考虑匹配数,而只考虑平均值。
这种情况有什么最佳实践吗?
尝试了算术平均公式,看起来不太好
听起来您正在寻找一种更好的方法来根据分数和匹配数对模糊搜索结果进行排序。您可以考虑的一种方法是使用加权平均值而不是简单的算术平均值。这将使您在相似度分数计算中更加重视某些因素,例如匹配数。