ES-LTR粗排模块
官方资源:https://github.com/HeiBoWang/elasticsearch-learning-to-rank
Elasticsearch学习排名插件使用机器学习提高搜索相关性排名。它为维基媒体基金会和Snagajob等地方的搜索提供了动力!
这个插件有什么功能
此插件:
- 允许您在Elasticsearch中存储特征(Elasticsearch查询模板)
- 记录特征得分(相关性得分)以创建离线模型开发的训练集
- 在使用您存储的功能的Elasticsearch中存储线性、xgboost或ranklib排名模型
- 使用存储的模型对搜索结果进行排序
文档
详细的开发文档:Elasticsearch Learning to Rank: the documentation — Elasticsearch Learning to Rank documentation
直接开始实战
demo: https://github.com/o19s/hello-ltr
jupyter环境: https://github.com/o19s/hello-ltr/blob/master/notebooks/elasticsearch/tmdb/hello-ltr%20(ES).ipynb
安装
在这里找到符合你ES版本的预编译的插件: https://github.com/o19s/elasticsearch-learning-to-rank/releases
本地编译和部署
./gradlew clean check
./bin/elasticsearch-plugin install file:///path/to/elasticsearch-learning-to-rank/build/distributions/ltr-<LTR-VER>-es<ES-VER>.zip