lypido  
                (lypido)
               
                 
              
                  
                    May 27, 2014, 11:34am
                   
                   
              1 
               
             
            
              Hello,
is it possible to normalize the scores of a query so that the highest 
scoring document gets a score of 1 and the others a scaled score < 1?
Thanks
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/281e7890-01f1-4bcf-bc0f-7a2c95e407be%40googlegroups.com . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
              2 Likes 
            
            
           
          
            
              
                dadoonet  
                (David Pilato)
               
              
                  
                    May 27, 2014, 11:37am
                   
                   
              2 
               
             
            
              May be using function_score? http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html#_using_function_score 
The new score can be restricted to not exceed a certain limit by setting the max_boostparameter. The default for max_boost is FLT_MAX.
-- 
David Pilato | Technical Advocate | Elasticsearch.com  
@dadoonet  | @elasticsearchfr 
Le 27 mai 2014 à 13:34:26, lypido@gmail.com  (lypido@gmail.com ) a écrit:
Hello,
is it possible to normalize the scores of a query so that the highest scoring document gets a score of 1 and the others a scaled score < 1?
Thanks 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/281e7890-01f1-4bcf-bc0f-7a2c95e407be%40googlegroups.com . 
For more options, visit https://groups.google.com/d/optout .
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/etPan.538478e9.235ba861.1e56%40MacBook-Air-de-David.local . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
               
            
            
           
          
            
              
                lypido  
                (lypido)
               
              
                  
                    May 27, 2014, 11:56am
                   
                   
              3 
               
             
            
              Sadly, this doesn't work, as max_boost only cuts the scores off at that 
point.
Am Dienstag, 27. Mai 2014 13:37:22 UTC+2 schrieb David Pilato:
May be using function_score? 
Elasticsearch Platform — Find real-time answers at scale | Elastic 
The new score can be restricted to not exceed a certain limit by setting 
the max_boostparameter. The default for max_boost is FLT_MAX.
-- 
David Pilato  | Technical Advocate  | Elasticsearch.com  
@dadoonet  https://twitter.com/dadoonet  | @elasticsearchfr https://twitter.com/elasticsearchfr 
Le 27 mai 2014 à 13:34:26, lyp...@gmail.com  <javascript:> ( 
lyp...@gmail.com  <javascript:>) a écrit:
Hello,
is it possible to normalize the scores of a query so that the highest 
scoring document gets a score of 1 and the others a scaled score < 1?
Thanks 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an 
email to elasticsearc...@googlegroups.com  <javascript:>. 
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/281e7890-01f1-4bcf-bc0f-7a2c95e407be%40googlegroups.com https://groups.google.com/d/msgid/elasticsearch/281e7890-01f1-4bcf-bc0f-7a2c95e407be%40googlegroups.com?utm_medium=email&utm_source=footer  
. 
For more options, visit https://groups.google.com/d/optout .
 
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/ce14b963-d7a6-4abb-9bad-ae23c135af04%40googlegroups.com . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
               
            
            
           
          
            
              
                dadoonet  
                (David Pilato)
               
              
                  
                    May 27, 2014,  5:10pm
                   
                   
              4 
               
             
            
              I think but I might be wrong that you can use a function_score with a script and run a script like :
"script_score" : { 
"script" : "_score > 1.0 ? 1.0 : _score" 
}
-- 
David Pilato | Technical Advocate | Elasticsearch.com  
@dadoonet  | @elasticsearchfr 
Le 27 mai 2014 à 13:56:32, lypido@gmail.com  (lypido@gmail.com ) a écrit:
Sadly, this doesn't work, as max_boost only cuts the scores off at that point.
Am Dienstag, 27. Mai 2014 13:37:22 UTC+2 schrieb David Pilato: 
May be using function_score? http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html#_using_function_score 
The new score can be restricted to not exceed a certain limit by setting the max_boostparameter. The default for max_boost is FLT_MAX.
-- 
David Pilato | Technical Advocate | Elasticsearch.com  
@dadoonet  | @elasticsearchfr 
Le 27 mai 2014 à 13:34:26, lyp...@gmail.com  (lyp...@gmail.com ) a écrit:
Hello,
is it possible to normalize the scores of a query so that the highest scoring document gets a score of 1 and the others a scaled score < 1?
Thanks 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/ce14b963-d7a6-4abb-9bad-ae23c135af04%40googlegroups.com . 
For more options, visit https://groups.google.com/d/optout .
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/etPan.5384c700.79e2a9e3.28b%40MacBook-Air-de-David.local . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
               
            
            
           
          
            
              
                harto  
                (Stuart Campbell)
               
              
                  
                    August 2, 2016,  2:55am
                   
                   
              5 
               
             
            
              Hello, sorry for bumping this very old topic.
I'm also interested in knowing if it's possible to normalize _score values into the range 0,1.0 (where the top result has score 1.0).
The proposed solution floors scores above 1.0, but if I understood correctly the OP wanted to know if all scores could effectively be divided by max_score.
The reason this is interesting to me is: I don't know how to determine weights for functions in a function_score query. I.e. if a given query can produce _score values in an arbitrary range, how can I know if a weight of 1, 5, 100 or 50000 is effective?
             
            
               
               
              6 Likes