IP Library › Granted Patent US 10,891,295
Granted Patent B2
US 10,891,295 · App. 15/802,161 · Granted Jan 12, 2021

Methods and systems using linear expressions for machine learning models to rank search results

Inventors: Saravana Kumar Siva Kumaran (Fremont, CA); Kevin Hsu (Pleasanton, CA); Hua Ouyang (San Jose, CA); Ling Wang (Foster City, CA)
Assignee: Apple Inc.
G06F16/24578G06F16/951G06F17/12G06N5/003G06N20/00
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 10,891,295
App. No.
15/802,161
Granted
Jan 12, 2021
Kind
B2
Abstract

Methods and systems are disclosed using linear expressions for machine learning (ML) models for ranking search results. In one example, a method for a computer trains a ML model into a decision tree for ranking search results. The decision tree is converted into a linear expression including Boolean terms. The linear expression is transmitted to one or more search computers that use the linear expression to rank search results for a search query. According to another example, a method for a computer having a search engine includes receiving a linear expression including Boolean terms representing a decision tree. The search engine processes a search query and uses the linear expression to rank search results for the search query.

Claims (47)

1. A method for a computer comprising:

generating a decision tree for ranking search results for a machine learning (ML) model;

converting the decision tree into a linear expression including Boolean terms;

transmitting the linear expression to one or more search computers, wherein the one or more search computers use the linear expression directly to rank search results;

modifying the ML model and the decision tree;

converting the modified decision tree into a modified linear expression; and

transmitting the modified linear expression to the one or more search computers, wherein the one or more search computers use the linear expression or the modified linear expression to rank search results without modifying rank algorithms at the one or more search computers.

2. The method of claim 1 , wherein the decision tree or modified decision tree includes one or more nodes, each node is associated with one or more features.

3. The method of claim 2 , wherein the linear expression or modified linear expression represents the decision tree or modified decision tree.

4. A method for a search server having a search engine comprising:

receiving a linear expression including Boolean terms representing a decision tree;

processing a search query by the search engine directly using the linear expression representing the decision tree to rank search results for the search query;

receiving a modified linear expression including Boolean terms representing a modified decision tree; and

processing a search query by the search engine using the modified linear expression representing the modified decision tree to rank search results for the search query, wherein the linear expression or the modified linear expression are used to rank search results without modifying rank algorithms at the search engine.

5. The method of claim 4 , further comprising:

calculating a score for the linear expression or modified linear expression; and

ranking the linear expression or modified linear expression based on the score.

6. The method of claim 5 , wherein the search results are ranked based on the ranked linear expression or modified linear expression.

7. A computing system comprising:

a network interface;

a memory storing linear expressions representing decision trees; and

a processor coupled to the memory and network interface and configured to:

transmit the linear expressions from the network interface to a search engine, wherein the search engine is to use the linear expressions directly to rank search results of a search query;

generate modified decision trees for a modified ML model and convert the modified decision trees to modified linear expressions; and

transmit the modified linear expression to the search engine, wherein the linear expression or the modified linear expression are used to rank search results without modifying rank algorithms at the search engine.

8. The computing system of claim 7 , wherein the processor is further configured to train one or more machine learning (ML) models to generate the decision trees and convert the decision trees to the linear expressions.

9. The computing system of claim 7 , wherein the search engine is to use the modified linear expressions to rank search results of a search query.

10. The computing system of claim 7 , wherein the decision trees or modified decision trees include one or more nodes, each node is associated with one or more features.

11. The computing system of claim 7 , wherein the linear expressions or modified linear expressions represent the decision trees or modified decision trees.

12. A search server having a search engine comprising:

means for receiving a linear expression including Boolean terms representing a decision tree;

means for processing a search query by the search engine using the linear expression representing the decision tree directly to rank search results for the search query;

means for receiving a modified linear expression including Boolean terms representing a modified decision tree; and

means for processing a search query by the search engine using the modified linear expression representing the modified decision tree to rank search results for the search query, wherein the linear expression or the modified linear expression are used to rank search results without modifying rank algorithms at the search engine.

13. The search server of claim 12 , further comprising:

means for calculating a score for the linear expression or modified linear expression; and

means for ranking the linear expression or modified linear expression based on the score.

14. The search server of claim 13 , wherein the search results are ranked based on the ranked linear expression or modified linear expression.

15. A non-transitory machine-readable medium, including instructions, which if executed by a data processing system, causes the data processing system to perform a method comprising:

generating a decision tree for ranking search results for a machine learning (ML) model;

converting the decision tree into a linear expression including Boolean terms;

transmitting the linear expression to one or more computers, wherein the one or more computers use the linear expression directly to rank search results;

modifying the ML model and decision tree;

converting the modified decision tree into a modified linear expression; and

transmitting the modified linear expression to one or more computers, wherein the one or more search computers use the linear expression or the modified linear expression to rank search results without modifying rank algorithms at the one or more computers.

16. The method of claim 1 , wherein the linear expression is input to a ranking algorithm to rank search results for a search query at the one or more search computers.

17. The method of claim 1 , wherein the linear expression is program agnostic.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2018
From: SIVA KUMARAN, SARAVANA KUMAR; HSU, KEVIN; OUYANG, HUA; WANG, LING
To: APPLE INC.
Reel/Frame 045846/0773 →
Continuity (2)
Provisional Application 62514917 · Jun 4, 2017
Related Publication 20180349382A1 · Dec 6, 2018