Включение статических сигналов релевантности в оценку
Во многих областях есть статические сигналы, известные своей корреляцией с релевантностью. Например, PageRank и длина URL — две часто используемые характеристики для веб-поиска, позволяющие настраивать оценку веб-страниц независимо от запроса.
Существует два основных запроса, позволяющих объединять вклад статической оценки с текстовой релевантностью, например, вычисленной с помощью BM25: - script_score запрос - rank_feature запрос
Например, предположим, что у вас есть поле pagerank, которое вы хотите объединить с оценкой BM25, чтобы итоговая оценка была равна score = bm25_score + pagerank / (10 + pagerank).
С помощью script_score запроса запрос будет выглядеть так:
GET index/_search
{
"query": {
"script_score": {
"query": {
"match": { "body": "elasticsearch" }
},
"script": {
"source": "_score * saturation(doc['pagerank'].value, 10)"
}
}
}
} |
|
в то время как с помощью rank_feature запроса он будет выглядеть так:
GET _search
{
"query": {
"bool": {
"must": {
"match": { "body": "elasticsearch" }
},
"should": {
"rank_feature": {
"field": "pagerank",
"saturation": {
"pivot": 10
}
}
}
}
}
} |
|
Хотя оба варианта возвращают похожие оценки, есть компромиссы: script_score обеспечивает большую гибкость, позволяя объединять оценку текстовой релевантности со статическими сигналами по вашему усмотрению. С другой стороны, rank_feature запрос предоставляет лишь несколько способов включения статических сигналов в оценку. Однако он полагается на rank_feature и rank_features поля, которые индексируют значения особым способом, что позволяет rank_feature запросу пропустить неконкурентные документы и быстрее получить лучшие совпадения запроса.
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/static-scoring-signals.html