IP Library Granted Patent US 11,327,979
Granted Patent B2
US 11,327,979 · App. 16/708,925 · Granted May 10, 2022

Ranking search results using hierarchically organized machine learning based models

Inventors: Jayesh Govindarajan (Palo Alto, CA); Nicholas Beng Tek Geh (San Carlos, CA); Ammar Haris (Lake Forest Park, WA); Zachary Alexander (Snoqualmie, WA); Scott Thurston Rickard, Jr. (Bellevue, CA); Clifford Z. Huang (Seattle, WA)
Assignee: salesforce.com, inc.
G06F16/24578G06F16/2457G06F16/90324G06F16/90348G06N20/00G06N20/20
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 11,327,979
App. No.
16/708,925
Granted
May 10, 2022
Kind
B2
Abstract

A multi-tenant system stores a hierarchy of machine-learned models, wherein each machine-learned model is configured to receive as input a set of search results and generate as output scores for ranking the set of search results. Each machine-learned model is associated with a set of dimensions. The system evaluates search query performance. Performance below a threshold causes a new model to be generated and added to the hierarchy of models. Upon execution of a new search query associated with the same set of dimensions as the newly created model, the new model is used to rank that search query's search results.

Claims (40)

1. A method comprising:

storing a hierarchy of machine-learned models, wherein machine-learned models of the hierarchy are configured to receive as input a set of search results and generate as output scores for ranking the set of search results, the hierarchy of machine-learned models comprising a plurality of levels, levels of the hierarchy associated with respective sets of dimensions describing search queries, wherein machine-learned models at a level are associated with a respective n-tuple of values corresponding to the set of dimensions for that level;

training a particular machine-learned model using queries associated with a particular n-tuple of values;

adding the particular machine-learned model to the hierarchy of machine-learned models in a level corresponding to the n-tuple of values;

matching a new search query to the particular machine-learned model based on a respective set of dimensions of the search query; and

ranking search results of the new search query using the particular machine-learned model responsive to the dimensions of the new search query matching the particular machine-learned model.

2. The method of claim 1 , further comprising:

evaluating the performance of a set of search queries;

wherein training the particular machine-learned model is responsive to the evaluation.

3. The method of claim 2 , wherein evaluating the performance of the set of search queries comprises determining a score for a model corresponding to the set of search queries based on an aggregate measure of quality of a plurality of searches performed using the model, the measure of quality of a search determined using a rank of a search result accessed by a user from a set of ranked search results provided to the user.

4. The method of claim 1 , further comprising:

training the particular machine-learned model using previous search queries and a rank of a search result that a user accessed from each set of search results provided to the user in response to one of the previous search queries.

5. The method of claim 1 , wherein a first level of the hierarchy of machine-learned models comprises a base model, the base model associated with a first set of dimensions representing an empty set, the first level including a base model applicable to a plurality of entities and a plurality of organizations.

6. The method of claim 5 , wherein the hierarchy of machine-learned models comprises a second level associated with a second set of dimensions including an organization dimension, wherein the second level comprises a second set of models, each model for a specific organization.

7. The method of claim 6 , wherein the hierarchy of machine-learned models comprises a third level associated with a third set of dimensions including an entity type dimension, wherein the third level comprises a third set of models, each model for a specific entity type.

8. The method of claim 7 , wherein the hierarchy of machine-learned models comprises a fourth level associated with a fourth set of dimensions including the organization dimension and the entity type dimension, the fourth level comprising a fourth set of models, each model for a specific organization and a specific entity type.

9. A method for ranking search results in a multi-tenant system, the method comprising:

receiving a search query from a user;

identifying a plurality of dimensions of the search query;

receiving a plurality of search results from a search engine corresponding to the search query;

accessing a hierarchy of machine-learned models, wherein machine-learned models of the hierarchy are configured to receive as input a set of search results and generate as output scores for ranking the set of search results, the hierarchy of machine-learned models comprising a plurality of levels, levels of the hierarchy associated with respective sets of dimensions describing search queries, wherein machine-learned models at a level are associated with a respective n-tuple of values corresponding to the set of dimensions for that level;

identifying a machine-learned model that matches the dimensions of the search query; and

using the identified machine-learned model to rank the search results.

10. The method of claim 9 , wherein identifying the machine-learned model is responsive to an entity associated with the search query or an organization associated with the search query.

11. The method of claim 9 , wherein a first level of the hierarchy of machine-learned models comprises a base model, the base model associated with a first set of dimensions representing an empty set, the first level including a base model applicable to a plurality of entities and a plurality of organizations.

12. The method of claim 11 , wherein the hierarchy of machine-learned models comprises a second level associated with a second set of dimensions including an organization dimension, wherein the second level comprises a second set of models, each model for a specific organization.

13. The method of claim 12 , wherein the hierarchy of machine-learned models comprises a third level associated with a third set of dimensions including an entity type dimension, wherein the third level comprises a third set of models, each model for a specific entity type.

14. The method of claim 13 , wherein the hierarchy of machine-learned models comprises a fourth level associated with a fourth set of dimensions including the organization dimension and the entity type dimension, the fourth level comprising a fourth set of models, each model for a specific organization and a specific entity type.

15. A non-transitory computer readable storage medium, storing instructions for ranking search results in a multi-tenant system, the instructions for:

receiving a search query from a user;

identifying a plurality of dimensions of the search query;

receiving a plurality of search results from a search engine corresponding to the search query;

accessing a hierarchy of machine-learned models, wherein machine-learned models of the hierarchy are configured to receive as input a set of search results and generate as output scores for ranking the set of search results, the hierarchy of machine-learned models comprising a plurality of levels, levels of the hierarchy associated with respective sets of dimensions describing search queries, wherein machine-learned models at a level are associated with a respective n-tuple of values corresponding to the set of dimensions for that level;

identifying a machine-learned model that matches the dimensions of the search query; and

using the identified machine-learned model to rank the search results.

16. The non-transitory computer readable storage medium of claim 15 , wherein identifying the machine-learned model is responsive to an entity associated with the search query or an organization associated with the search query.

17. The non-transitory computer readable storage medium of claim 15 , wherein a first level of the hierarchy of machine-learned models comprises a base model, the base model associated with a first set of dimensions representing an empty set, the first level including a base model applicable to a plurality of entities and a plurality of organizations.

18. The non-transitory computer readable storage medium of claim 17 , wherein the hierarchy of machine-learned models comprises a second level associated with a second set of dimensions including an organization dimension, wherein the second level comprises a second set of models, each model for a specific organization.

19. The non-transitory computer readable storage medium of claim 18 , wherein the hierarchy of machine-learned models comprises a third level associated with a third set of dimensions including an entity type dimension, wherein the third level comprises a third set of models, each model for a specific entity type.

20. The non-transitory computer readable storage medium of claim 19 , wherein the hierarchy of machine-learned models comprises a fourth level associated with a fourth set of dimensions including the organization dimension and the entity type dimension, the fourth level comprising a fourth set of models, each model for a specific organization and a specific entity type.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0470 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2020
From: GOVINDARAJAN, JAYESH; GEH, NICHOLAS BENG TEK; ALEXANDER, ZACHARY; HUANG, CLIFFORD Z.; HARIS, AMMAR; RICKARD, SCOTT THURSTON, JR.
To: SALESFORCE.COM, INC.
Reel/Frame 051590/0581 →
Continuity (3)
Continuation 15730660 · Oct 11, 2017
Provisional Application 62407441 · Oct 12, 2016
Related Publication 20200117671A1 · Apr 16, 2020
Cited By (1)
US 12,541,496