我正在使用弹性搜索进行研究。我打算使用余弦相似度,但我注意到它不可用,而是我们将BM25作为默认评分函数。
这有什么理由吗?查询文档的余弦相似性是否不合适?为什么BM25被选为默认值?谢谢
长期弹性搜索使用TF / IDF算法来查找查询中的相似性。但数字版本之前更改为BM25更高效。您可以阅读the documentation中的信息。 And good article explains what is elastic search and how to the similarity in ES。
您还可以为elasticsearch编写自定义算法。 Here a good article about how to do。