Elasticsearch allows you to configure a scoring algorithm or similarity per field. The similaritysetting provides a simple way of choosing a similarity algorithm other than the default TF/IDF, such as BM25.
Similarities are mostly useful for text fields, but can also apply to other field types.
Custom similarities can be configured by tuning the parameters of the built-in similarities. For more details about this expert options, see the similarity module.
The only similarities which can be used out of the box, without any further configuration are:
The similarity can be set on the field level when a field is first created, as follows:
PUT my_index
{
"mappings": { "my_type": { "properties": { "default_field": { "type": "text" }, "classic_field": { "type": "text", "similarity": "classic" } } } } }
| ![]() |
The default_field uses the BM25 similarity. |
| ![]() |
The classic_field uses the classic similarity (ie TF/IDF). |
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/similarity.html
本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/6472719.html,如需转载请自行联系原作者