lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ramzi Alqrainy (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (SOLR-3747) Solr Score threshold 'reasonably', independent of results returned?
Date Tue, 21 Aug 2012 02:28:37 GMT

     [ https://issues.apache.org/jira/browse/SOLR-3747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Ramzi Alqrainy updated SOLR-3747:
---------------------------------

    Description: 
Usually, search results are sorted by their score (how well the document matched the query),
but it is common to need to support the sorting of supplied data too.

Boosting affects the scores of matching documents in order to affect ranking in score-sorted
search results. Providing a boost value, whether at the document or field level, is optional.


When the results are returned with scores, we want to be able to only "keep" results that
are above some score (i.e. results of a certain quality only). Is it possible to do this when
the returned subset could be anything?

I ask because it seems like on some queries a score of say 0.008 is resulting in a decent
match, whereas other queries a higher score results in a poor match.

I have written pseudo code to accomplish what I said


      double scoreLimit = 0.75  #For example
      searchResults = new Results[numberOfResults];
      boolean lastScore=false;
      solrSearchResults = Calling Solr Engine.
      for( Result result : solrSearchResults) {

        if (lastScore != false && result.score/lastScore<scoreLimit) break;

        	lastScore = result.score;

            Adding new result to searchResults array      					
      }

  was:
Usually, search results are sorted by their score (how well the document matched the query),
but it is common to need to support the sorting of supplied data too.

Boosting affects the scores of matching documents in order to affect ranking in score-sorted
search results. Providing a boost value, whether at the document or field level, is optional.


When the results are returned with scores, we want to be able to only "keep" results that
are above some score (i.e. results of a certain quality only). Is it possible to do this when
the returned subset could be anything?

I ask because it seems like on some queries a score of say 0.008 is resulting in a decent
match, whereas other queries a higher score results in a poor match.

I have written pseudo code to accomplish what I said


      double scoreLimit = 0.75  #For example
      searchResults = new Results[numberOfResults];
      boolean lastScore=false;
      solrSearchResults = Calling Solr Engine.
      for( Result result : solrSearchResults) {
        if (lastScore != false && result.score/lastScore<scoreLimit) break;
        	lastScore = result.score;
            Adding new result to searchResults array      					
      }

    
> Solr Score threshold 'reasonably', independent of results returned? 
> --------------------------------------------------------------------
>
>                 Key: SOLR-3747
>                 URL: https://issues.apache.org/jira/browse/SOLR-3747
>             Project: Solr
>          Issue Type: Task
>          Components: Schema and Analysis
>            Reporter: Ramzi Alqrainy
>              Labels: documentation
>   Original Estimate: 5h
>  Remaining Estimate: 5h
>
> Usually, search results are sorted by their score (how well the document matched the
query), but it is common to need to support the sorting of supplied data too.
> Boosting affects the scores of matching documents in order to affect ranking in score-sorted
search results. Providing a boost value, whether at the document or field level, is optional.

> When the results are returned with scores, we want to be able to only "keep" results
that are above some score (i.e. results of a certain quality only). Is it possible to do this
when the returned subset could be anything?
> I ask because it seems like on some queries a score of say 0.008 is resulting in a decent
match, whereas other queries a higher score results in a poor match.
> I have written pseudo code to accomplish what I said
>       double scoreLimit = 0.75  #For example
>       searchResults = new Results[numberOfResults];
>       boolean lastScore=false;
>       solrSearchResults = Calling Solr Engine.
>       for( Result result : solrSearchResults) {
>         if (lastScore != false && result.score/lastScore<scoreLimit) break;
>         	lastScore = result.score;
>             Adding new result to searchResults array      					
>       }

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message