Diversifying search results
First Claim
1. A system comprising:
- one or more processors; and
one or more computer storage media storing computer-usable instructions that, when used by the one or more processors, cause the one or more processors to;
determine for each database record included in search result data retrieved from a database in response to a search query received from a remote client device, a corresponding rank based on a determined relevancy of the database record;
select a first database record having a first corresponding rank in the retrieved search result data to add into a first position of a search result dataset, wherein each database record is selected from the retrieved search result data based on a defined set of data diversity rules for addition to the search result dataset;
determine that at least one rule in the defined set of data diversity rules is violated when a second database record having a second corresponding rank directly behind the first corresponding rank in the retrieved search result data is considered for addition into a second position directly behind the first position of the search result dataset; and
based at least in part on the determination that less than the at least one rule is violated when a third database record having a third corresponding rank in the retrieved search result data is considered for addition into the second position directly behind the first position of the search result dataset, add the third database record into the second position directly behind the first position of the search result dataset.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are a system comprising a computer-readable storage medium storing at least one program, and a computer-implemented method for generating search results. A data access module accesses search results data indicative of a plurality items and that is indicative of ranking values of the plurality of items. A controller module generates page data based on the search results data. The controller module selects a first item from the plurality of items. A diversification module accesses a first rule of the page data. The diversification module determines a deviance value and a reordering-cost value of a second item from the plurality of items. The controller module can select, based at least on a first combination of the deviance and the reordering-cost values of the second item, the second item for placement ahead of the first item on the page data.
28 Citations
15 Claims
-
1. A system comprising:
-
one or more processors; and one or more computer storage media storing computer-usable instructions that, when used by the one or more processors, cause the one or more processors to; determine for each database record included in search result data retrieved from a database in response to a search query received from a remote client device, a corresponding rank based on a determined relevancy of the database record; select a first database record having a first corresponding rank in the retrieved search result data to add into a first position of a search result dataset, wherein each database record is selected from the retrieved search result data based on a defined set of data diversity rules for addition to the search result dataset; determine that at least one rule in the defined set of data diversity rules is violated when a second database record having a second corresponding rank directly behind the first corresponding rank in the retrieved search result data is considered for addition into a second position directly behind the first position of the search result dataset; and based at least in part on the determination that less than the at least one rule is violated when a third database record having a third corresponding rank in the retrieved search result data is considered for addition into the second position directly behind the first position of the search result dataset, add the third database record into the second position directly behind the first position of the search result dataset. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-implemented method to diversify generation of search results data, the method comprising:
-
determining, by a server, for each database record included in search result data retrieved from a database in response to a search query received from a remote client device, a corresponding rank based on a determined relevancy of the database record; selecting, by the server, a first database record having a first corresponding rank in the retrieved search result data to add into a first position of a search result dataset, wherein each database record is selected from the retrieved search result data based on a defined set of data diversity rules for addition to the search result dataset; determining, by the server, that at least one rule in the defined set of data diversity rules is violated when a second database record having a second corresponding rank directly behind the first corresponding rank in the retrieved search result data is considered for addition into a second position directly behind the first position of the search result dataset; and based at least in part on the determination that less than the at least one rule is violated when a third database record having a third corresponding rank in the retrieved search result data is considered for addition into the second position directly behind the first position of the search result dataset, adding the third database record into the second position directly behind the first position of the search result dataset. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A machine-readable storage medium embodying instructions that, when executed by a machine, cause the machine to perform operations comprising:
-
determining for each database record included in search result data retrieved from a database in response to a search query received from a remote client device, a corresponding rank based on a determined relevancy of the database record; selecting a first database record having a first corresponding rank in the retrieved search result data to add into a first position of a search result dataset, wherein each database record is selected from the retrieved search result data based on a defined set of data diversity rules for addition to the search result dataset; determining that at least one rule in the defined set of data diversity rules is violated when a second database record having a second corresponding rank directly behind the first corresponding rank in the retrieved search result data is considered for addition into a second position directly behind the first position of the search result dataset; and based at least in part on the determination that less than the at least one rule is violated when a third database record having a third corresponding rank in the retrieved search result data is considered for addition into the second position directly behind the first position of the search result dataset, adding the third database record into the second position directly behind the first position of the search result dataset. - View Dependent Claims (13, 14, 15)
-
Specification