IP Library Granted Patent US 8,954,414
Granted Patent B2
US 8,954,414 · App. 13/302,764 · Granted Feb 10, 2015

Search model updates

Inventors: Ran Gilad-Bachrach (Bellevue, WA); Luke Evans Simon (Redmond, WA); Aparna Rajaraman (Woodinville, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F17/30
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,954,414
App. No.
13/302,764
Granted
Feb 10, 2015
Kind
B2
Abstract

Search model updates are described. In one or more implementations, a search service uses a model to rank items in a search result, the model formed using an initial set of data. An update is generated using a subsequent set of data, which is formed after the initial set of data, that provides feedback describing user interaction with one or more items in the search result formed using the model, the generating of the update performed without use of at least a portion of the initial set of data. The model and the update are employed to rank items in a search result for a subsequent search.

Claims (34)

1. A method implemented by one or more computing devices of a search service, the method comprising:

using a model to rank items in a search result, wherein the search result describes different types of content to be displayed on a same results page, the model formed using an initial set of data;

generating an update using a subsequent set of data, which is formed after the initial set of data, that provides feedback describing user interaction with one or more of the items in the search result, the generating of the update performed without use of at least a portion of the initial set of data; and

employing the update to modify the model and adjust the ranking of items in the search results page for a subsequent search.

2. The method as described in claim 1 , wherein the different types of content include at least two of a webpage, image, video, shopping, news, or maps.

3. The method as described in claim 1 , wherein the subsequent set of data describes an amount of interaction with respective items in the search results.

4. The method as described in claim 3 , wherein the amount of interaction is described at least in part based on a number of clicks associated with the respective items.

5. The method as described in claim 1 , further comprising:

generating a second update using another subsequent set of data, which is formed after the initial set of data and the subsequent set of data, that provides feedback describing user interaction with one or more of the items in the search result formed using the model and the update, the generating of the update performed without use of at least a portion of the initial set of data and the subsequent set of data; and

employing the second update to modify the model as previously modified by the update by adjusting the ranking of items in a search result for a subsequent search.

6. The method as described in claim 5 , wherein the generating of the second update is performed without use of the initial set of data or the subsequent set of data.

7. The method as described in claim 1 , further comprising:

generating a second update using another subsequent set of data, which is formed after the initial set of data and the subsequent set of data, that provides feedback describing user interaction with one or more of the items in the search result formed using the model and the update; and

employing the second update to modify the model to rank items in a search result for a subsequent search.

8. The method as described in claim 7 , wherein the generating of the second update is performed without use of the initial set of data and the subsequent set of data.

9. The method as described in claim 1 , wherein the generating of the update is performed without using the initial set of data.

10. The method as described in claim 1 , wherein the generating of the update is performed by computing a gradient of an objective function at the model using the subsequent set of data.

11. The method as described in claim 1 , wherein the generating is performed at least in part by employing a multiplicative algebraic reconstruction (MART) algorithm.

12. The method as described in claim 1 , wherein the generating is performed using an algorithm that is configured to learn an ensemble of trees such that each additional said tree is configured to add an inverse to a gradient of a loss function given the model that was generated using previous said trees.

13. A method implemented by one or more computing devices of a search service, the method comprising:

using a first model to rank items of a plurality of content types against each other in a search result page;

collecting data that describes user engagement with individual said items in the search result page;

computing a gradient of an objective function at the first model using the collected data; and

using the gradient to modify the first model to arrive at a second model to rank items of a plurality of content types against each other in a search result page.

14. The method as described in claim 13 , wherein the using of the first model to rank items, and using the gradient and first model to arrive at a second model are performed at least in part through use of one or more machine-learning algorithms.

15. The method as described in claim 13 , wherein the using is performed at least in part by employing a multiplicative algebraic reconstruction (MART) algorithm.

16. The method as described in claim 13 , wherein the using of the gradient employs an algorithm that is configured to learn an ensemble of trees such that each additional said tree is configured to add an inverse to the gradient of a loss function given the first model that generated using previous said trees.

17. The method as described in claim 16 , wherein the previous said tress used to generate the first model are not utilized, directly, to generate the second model.

18. A method implemented by one or more computing devices of a search service, the method comprising:

forming a search result page that includes a plurality of items of varying content types that are ranked against each other through use of a plurality of models, each said model being configured to rank different types of content and formed using an initial set of data;

receiving feedback that describes user interaction with one or more search results formed using the plurality of models;

generating one or more updates for respective said models using feedback in which each said update is generated without use of the initial set of data; and

using the generated one or more updates to modify the plurality of models to adjust the ranking of items in a subsequent search result page for a subsequent search.

19. The method as described in claim 18 , wherein the generating of the update is performed by computing a gradient of an objective function at the model using the feedback.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034544/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2011
From: GILAD-BACHRACH, RAN; SIMON, LUKE EVANS; RAJARAMAN, APARNA
To: MICROSOFT CORPORATION
Reel/Frame 027284/0007 →
Continuity (1)
Related Publication 20130132378A1 · May 23, 2013