如何在 Azure 搜索中实现成对查询相关的学习排名?

How can I implement pairwise query-dependent learning-to-rank in Azure Search?

问题:

我正在设置一个使用 Azure 搜索的产品,其中一个要求是搜索结果进行多阶段学习排名,其中最后阶段涉及 成对查询- 依赖机器学习的模型 例如RankNet.

Azure 搜索中是否对此有任何现有支持?如果不是,你会建议我从 Azure 搜索管道的哪个位置开始?

我尝试过的:

我一直希望找到与 ElasticSearch LTR Plugin 类似的东西,但没能找到。

我目前能想到的唯一选择是设置一个服务器,将查询从前端转发到 Azure 搜索,对搜索结果重新排序我的成对 LTR 方法,重建重新排序的搜索结果,并将其发送到前端。

但是,我很担心这个选项的效率低下,如果有现成的方法可以让我这样做,那将是不必要的。

语言/图书馆

如果相关:我主要使用 C# 进行编码,并且会使用 CNTK 进行机器学习。

这时候,你的建议就是要走的路。 Azure 搜索目前不提供在搜索管道中注入自定义排名器的方法。您需要将查询配置为 return 大量结果,然后重新对自己进行排名。抱歉,我们现在没有比这更好的答案了。如果你有时间,如果你能在这里 cast your vote 就太好了,因为我们最近经常听到这个。