Re-ranking search results for location refining and diversity
Abstract
An online booking system allows users to search and book listings of goods or services. When a user searches for listings, the listings are ranked and scored based on a number of factors including the location and the price of the listing, the number and quality of reviews and the number of successful prior bookings. In some situations, the listing scores overly skew the top ranking results to a particular region. The listing scores may be modified to address this skewing of results. When diversity in search results is desired, the listing scores are modified such that the top ranking results that are located in a diverse set of regions. When granular relevance of search results is desired, the listing scores are modified such that the top ranking results are located in regions that are more relevant to the search than the region to which the results are skewed.
Claims
exact text as granted — not AI-modifiedWe claim:
1 . A computer implemented method, comprising:
receiving a search query from a client device, the search query referencing a geographic area that includes a plurality of regions; accessing a plurality of listings available for booking, each of the listings associated with a region of the plurality of regions; computing a listing score for each of the plurality of listings based at least on the search query and the region with which each listing is associated; ranking the plurality of listings according to the listing scores, the ranked listings including a top subset of listings ranked above a remainder of the plurality of listings in the ranked listings, the top subset of listings associated with a subset of the regions; re-computing the listing score for a first listing in the remainder based on a combination of the listing scores of a second listing of the plurality of listings and a third listing in the top subset of listings, the first listing associated with a region of the regions not included in the subset of the regions, the recomputed listing score falling between the listing scores of the second listing and the third listing; modifying the rankings of the top subset of listings based on the recomputed listing score to add the first listing to the top subset of listings between the second listing and the third listing; and providing, for display in a user interface, results corresponding to the top subset of listings based on the modified rankings.
2 . The method of claim 1 , further comprising:
determining a promotion number that indicates a number of listings to be added to the top subset of listings; and re-computing the listing scores for the promotion number of listings in the remainder of the listings to add the promotion number of listings into the top subset of listings, the promotion number of listings including the first listing.
3 . The method of claim 2 , wherein determining the promotion number comprises:
selecting a group of regions from the plurality of regions; and determining the promotion number based on a number of regions of the group of regions and a promotion factor.
4 . The method of claim 3 , wherein selecting the group of regions comprises:
computing a relevance between the search query and each of the plurality of regions included in the geographic area; and selecting the group of regions based on the relevance of each of the plurality of regions.
5 . The method of claim 3 , wherein the first listing is associated with a region of the group of regions and none of the listings in the top subset of listings is associated with the region of the group of regions.
6 . The method of claim 2 , wherein determining the promotion number comprises:
determining a number of listings that a display page of the user interface can display; and determining the promotion number based on the number of listings that the display page of the user interface can display.
7 . A non-transitory computer readable medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to:
receive a search query from a client device, the search query referencing a geographic area that includes a plurality of regions; access a plurality of listings available for booking, each of the listings associated with a region of the plurality of regions; compute a listing score for each of the plurality of listings based at least on the search query and the region with which each listing is associated; rank the plurality of listings according to the listing scores, the ranked listings including a top subset of listings ranked above a remainder of the plurality of listings in the ranked listings, the top subset of listings associated with a subset of the regions; re-compute the listing score for a first listing in the remainder based on a combination of the listing scores of a second listing of the plurality of listings and a third listing in the top subset of listings, the first listing associated with a region of the regions not included in the subset of the regions, the recomputed listing score falling between the listing scores of the second listing and the third listing; modify the rankings of the top subset of listings based on the recomputed listing score to add the first listing to the top subset of listings between the second listing and the third listing; and provide, for display in a user interface, results corresponding to the top subset of listings based on the modified rankings.
8 . The computer readable medium of claim 7 , wherein the computer program instructions further comprise instructions that when executed cause the computer processor to:
determine a promotion number that indicates a number of listings to be added to the top subset of listings; and re-compute the listing scores for the promotion number of listings in the remainder of the listings to add the promotion number of listings into the top subset of listings, the promotion number of listings including the first listing.
9 . The computer readable medium of claim 8 , wherein the computer program instructions for determining the promotion number comprise instructions that when executed cause the computer processor to:
select a group of regions from the plurality of regions; and determine the promotion number based on a number of regions of the group of regions and a promotion factor.
10 . The computer readable medium of claim 9 , wherein the computer program instructions for selecting the group of regions comprise instructions that when executed cause the computer processor to:
compute a relevance between the search query and each of the plurality of regions included in the geographic area; and select the group of regions based on the relevance of each of the plurality of regions.
11 . The computer readable medium of claim 9 , wherein the first listing is associated with a region of the group of regions and none of the listings in the top subset of listings is associated with the region of the group of regions.
12 . The computer readable medium of claim 8 , wherein the computer program instructions for determining the promotion number regions comprise instructions that when executed cause the computer processor to:
determine a number of listings that a display page of the user interface can display; and determine the promotion number based on the number of listings that the display page of the user interface can display.
13 . A computer system comprising:
a non-transitory computer-readable storage medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to perform steps comprising:
receiving a search query from a client device, the search query referencing a geographic area that includes a plurality of regions;
accessing a plurality of listings available for booking, each of the listings associated with a region of the plurality of regions;
computing a listing score for each of the plurality of listings based at least on the search query and the region with which each listing is associated;
ranking the plurality of listings according to the listing scores, the ranked listings including a top subset of listings ranked above a remainder of the plurality of listings in the ranked listings, the top subset of listings associated with a subset of the regions;
re-computing the listing score for a first listing in the remainder based on a combination of the listing scores of a second listing of the plurality of listings and a third listing in the top subset of listings, the first listing associated with a region of the regions not included in the subset of the regions, the recomputed listing score falling between the listing scores of the second listing and the third listing;
modifying the rankings of the top subset of listings based on the recomputed listing score to add the first listing to the top subset of listings between the second listing and the third listing; and
providing, for display in a user interface, results corresponding to the top subset of listings based on the modified rankings.
14 . The computer system of claim 13 , wherein the steps further comprise:
determining a promotion number that indicates a number of listings to be added to the top subset of listings; and re-computing the listing scores for the promotion number of listings in the remainder of the listings to add the promotion number of listings into the top subset of listings, the promotion number of listings including the first listing.
15 . The computer system of claim 14 , wherein determining the promotion number comprises:
selecting a group of regions; and determining the promotion number based on a number of regions of the group of regions and a promotion factor.
16 . The computer system of claim 15 , wherein selecting the group of regions comprises:
computing a relevance between the search query and each of the plurality of regions included in the geographic area; and selecting the group of regions based on the relevance of each of the plurality of regions.
17 . The computer system of claim 15 , wherein the first listing is associated with a region of the group of regions and none of the listings in the top subset of listings is associated with the region of the group of regions.
18 . The computer system of claim 14 , wherein determining the promotion number comprises:
determining a number of listings that a display page of the user interface can display; and determining the promotion number based on the number of listings that the display page of the user interface can display.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.