System and method for providing search results with configurable scoring formula
First Claim
1. A method of providing search results in response to a query comprising:
- comparing the query to either;
(a) a plurality of documents, or (b) information representative of said plurality of documents;
creating, for at least one of said documents, a score data structure which comprises a plurality of fields of information containing numerical values regarding a plurality of aspects of how said at least one document compares to the query, said plurality of aspects including at least one of the following aspects;
whether there was a perfect match in the comparison, a rarity of a word in a match of the comparison, a number of common words that have limited significance in evaluating a query that were matches in the comparison, a number of words that have greater significance in evaluating a query that were matches in the comparison, a number of words that when extended by particular suffixes were matches in the comparison, and a number of words that required global synonymy that were matches in the comparison;
selecting, based on a function, a first rank set from a plurality of rank sets, wherein each of the rank sets comprises a plurality of formulas that compute scalar scores based on score data structures;
computing a scalar score for said at least one document by applying one of the plurality of formulas in said first rank set to said score data structure;
providing information to a user based at least in part on the computed scalar score wherein each of said plurality of documents has an assigned class, wherein each of said plurality of formulas is associated with a class; and
selecting said one of said plurality of formulas based on said formula being associated with the same class to which said at least one document is assigned.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for scoring documents in a search, wherein the scoring algorithm may be reconfigured dynamically. When a query is submitted, a score data structure is created for each document to be scored, which contains fields of information about how a given document compares to a query. A ranker object embodies a formula that derives a scalar score from the information contained in a score data structure. Scoring software is configured to apply the formula embodied in a ranker object to the values in the score data structure. Thus, the scoring formula can be dynamically changed without recompiling the scoring software by providing a new ranker object. Preferably, ranker objects are organized into rank sets, where each rank set contains a different ranker object for each class of document to be scored.
-
Citations
14 Claims
-
1. A method of providing search results in response to a query comprising:
-
comparing the query to either;
(a) a plurality of documents, or (b) information representative of said plurality of documents;creating, for at least one of said documents, a score data structure which comprises a plurality of fields of information containing numerical values regarding a plurality of aspects of how said at least one document compares to the query, said plurality of aspects including at least one of the following aspects;
whether there was a perfect match in the comparison, a rarity of a word in a match of the comparison, a number of common words that have limited significance in evaluating a query that were matches in the comparison, a number of words that have greater significance in evaluating a query that were matches in the comparison, a number of words that when extended by particular suffixes were matches in the comparison, and a number of words that required global synonymy that were matches in the comparison;selecting, based on a function, a first rank set from a plurality of rank sets, wherein each of the rank sets comprises a plurality of formulas that compute scalar scores based on score data structures; computing a scalar score for said at least one document by applying one of the plurality of formulas in said first rank set to said score data structure; providing information to a user based at least in part on the computed scalar score wherein each of said plurality of documents has an assigned class, wherein each of said plurality of formulas is associated with a class; and selecting said one of said plurality of formulas based on said formula being associated with the same class to which said at least one document is assigned. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for producing search results from a query, the system comprising:
-
a database that stores information indicative of a plurality of documents; scoring logic that compares the query to at least one of the documents and that produces score information indicative of a comparison between the query and the at least one document regarding a plurality of aspects of how said sat least one document compares to the query, said scoring logic being adapted to compute a scalar score based on said score information by applying a ranker object to said score information and said plurality of aspects including at least one of the following aspects;
whether there was a perfect match in the comparison, a rarity of a word in a match of the comparison, a number of common words that have limited significance in evaluating a query that were matches in the comparison, a number of words that have greater significance in evaluating a query that were matches in the comparison, a number of words that when extended by particular suffixes were matches in the comparison, and a number of words that required global synonymy that were matches in the comparison; anda first plurality of ranker objects, each of the plurality of ranker objects being indicative of a formula that produces a scalar score based on the score information, each of the first plurality of ranker objects being accessible to said scoring logic and being createable independently of said scoring logic, wherein said scoring logic is adapted to select a ranker object from among said first plurality of ranker objects to be applied to said score information, wherein each of the plurality of ranker objects is associated with a class, and wherein said scoring logic selects a ranker object based on the class of said at least one document. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A computer-readable medium having computer executable instructions to perform a method of producing search results from a query, the method comprising:
-
receiving data indicative of a comparison between the query and a document regarding a plurality of aspects of how said sat least one document compares to the query, said plurality of aspects including at least one of the following aspects;
whether there was a perfect match in the comparison, a rarity of a word in a match of the comparison, a number of common words that have limited significance in evaluating a query that were matches in the comparison, a number of words that have greater significance in evaluating a query that were matches in the comparison, a number of words that when extended by particular suffixes were matches in the comparison, and a number of words that required global synonymy that were matches in the comparison;selecting an object from among a first plurality of objects, wherein said document is associated with a predetermined class, and wherein said selecting act comprises selecting said object based on the class with which said document is associated; applying said object to said data to compute a scalar score for said document, said object indicating a formula to be applied to said data, said object being createable independently of the computer-executable instructions; creating search results based on said scalar score and wherein the computer-executable instructions are executable on a first computer; and transmitting information including the scalar score to a second computer different from said first computer.
-
-
14. A computer-readable medium having stored thereon a data structure having a plurality of items, the items comprising:
-
an identifier that identifies the data structure, said data structure regarding a plurality of aspects of how at least one document compares to a query, said plurality of aspects including at least one of the following aspects;
whether there was a perfect match in the comparison, a rarity of a word in a match of the comparison, a number of common words that have limited significance in evaluating a query that were matches in the comparison, a number of words that have greater significance in evaluating a query that were matches in the comparison, a number of words that when extended by particular suffixes were matches in the comparison, and a number of words that required global synonymy that were matches in the comparison; anda plurality of ranker objects, each ranker object being associated with one of a plurality of classes of documents, each ranker object specifying a formula to be applied to a predetermined set of values in order to produce a scalar score, each ranker object being selectable based on a class of documents to be compared with a query wherein said identifier is a name associated with the data structure, wherein the formula specified by at least one of the ranker objects computes said scalar score as a weighted sum of said values, and wherein the formula specified by at least one of the ranker objects computes said scalar score as a mathematical function of said values.
-
Specification