IP Library Granted Patent US 11,656,969
Granted Patent B2
US 11,656,969 · App. 17/540,128 · Granted May 23, 2023

Using machine learning model to make action recommendation to improve performance of client application

Inventors: Jess Robert Kerlin (Walnut Creek, CA); Eric Antoine MacKinnon (Henderson, NV); Paul Ernest Stolorz (Los Altos, CA)
Assignee: Data.ai Inc.
G06F11/3452G06F11/3495G06N20/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 11,656,969
App. No.
17/540,128
Granted
May 23, 2023
Kind
B2
Abstract

A system and a method are disclosed for recommending a set of actions to be performed to improve a target performance metric of a client application. An action recommendation system receives the target performance metric from a user associated with the client application. The action recommendation system determines features of the client application describing characteristics and performance history of the client application. The features of the client application and the target performance metric is provided as input to a machine learning model that outputs sets of target features that are likely to result in improvement for the target performance metric. The action recommendation system ranks the sets of target features and selects one of the sets based on the ranking. The action recommendation system determines a set of recommended actions based on the selected set of target features and presents the set of recommended actions to the user.

Claims (47)

1. A method comprising:

receiving, from a client device, input of a target performance metric of a client application;

determining a plurality of features of the client application;

inputting the target performance metric and the plurality of features of the client application into a machine learning model and receiving as output from the machine learning model one or more sets of target features different from the plurality of features of the client application, the machine learning model trained using training data including sets of changes in features associated with historical client applications, each of the sets labeled by corresponding changes in performance metrics of the historical client applications;

ranking the one or more sets of target features output from the machine learning model based on sets of distance weights representing distances between the plurality of features of the client application and the one or more sets of target features;

selecting a set of target features from the one or more sets of target features based on the ranking;

determining a set of recommended actions associated with the selected set of target features; and

providing, for display at the client device, the selected set of recommended actions to be performed on the client application.

2. The method of claim 1 further comprising:

identifying one or more adjustable features; and

inputting the one or more adjustable features into the machine learning model.

3. The method of claim 2 , wherein the selected set of recommended actions are configured to cause change in the one or more adjustable features.

4. The method of claim 2 , wherein the one or more adjustable features are indicated by an input received from the client device.

5. The method of claim 1 , wherein the features of the client application include one or more of characteristics of the client application, and performance of the client application.

6. The method of claim 1 , wherein ranking the one or more sets of target features is based on an expected change in the target performance metric.

7. The method of claim 1 , wherein ranking the one or more sets of target features is based on a number of target features in the one or more sets of target features.

8. A non-transitory computer-readable medium comprising computer program instructions that, when executed by a computer processor, cause the processor to perform operations, the instructions comprising instructions to:

receive, from a client device, input of a target performance metric of a client application;

determine a plurality of features of the client application;

input the target performance metric and the plurality of features of the client application into a machine learning model and receiving as output from the machine learning model one or more sets of target features different from the plurality of features of the client application, the machine learning model trained using training data including sets of changes in features associated with historical client applications, each of the sets labeled by corresponding changes in performance metrics of the historical client applications;

rank the one or more sets of target features output from the machine learning model based on sets of distance weights representing distances between the plurality of features of the client application and the one or more sets of target features;

select a set of target features from the one or more sets of target features based on the ranking;

determine a set of recommended actions associated with the selected set of target features; and

provide, for display at the client device, the selected set of recommended actions to be performed on the client application.

9. The non-transitory computer-readable medium of claim 8 , wherein the instructions comprise instructions to:

identify one or more adjustable features; and

input the one or more adjustable features into the machine learning model.

10. The non-transitory computer-readable medium of claim 9 , wherein the selected set of recommended actions are configured to cause change in the one or more adjustable features.

11. The non-transitory computer-readable medium of claim 9 , wherein the one or more adjustable features are indicated by an input received from the client device.

12. The non-transitory computer-readable medium of claim 8 , wherein the features of the client application include one or more of characteristics of the client application, and performance of the client application.

13. The non-transitory computer-readable medium of claim 8 , wherein ranking the one or more sets of target features is based on an expected change in the target performance metric.

14. The non-transitory computer-readable medium of claim 8 , wherein ranking the one or more sets of target features is based on a number of target features in the one or more sets of target features.

15. A system comprising:

one or more processors; and

a non-transitory computer-readable medium comprising computer program instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving, from a client device, input of a target performance metric of a client application;

determining a plurality of features of the client application;

inputting the target performance metric and the plurality of features of the client application into a machine learning model and receiving as output from the machine learning model one or more sets of target features different from the plurality of features of the client application, the machine learning model trained using training data including sets of changes in features associated with historical client applications, each of the sets labeled by corresponding changes in performance metrics of the historical client applications;

ranking the one or more sets of target features output from the machine learning model based on sets of distance weights representing distances between the plurality of features of the client application and the one or more sets of target features;

selecting a set of target features from the one or more sets of target features based on the ranking;

determining a set of recommended actions associated with the selected set of target features; and

providing, for display at the client device, the selected set of recommended actions to be performed on the client application.

16. The system of claim 15 , to the operations further comprising:

identifying one or more adjustable features; and

inputting the one or more adjustable features into the machine learning model.

17. The system of claim 16 , wherein the selected set of recommended actions are configured to cause change in the one or more adjustable features.

18. The system of claim 16 , wherein the one or more adjustable features are indicated by an input received from the client device.

Assignments (5)
SECURITY INTEREST Recorded Mar 15, 2024
From: PATHMATICS, INC.; DATA. AI INC.
To: BAIN CAPITAL CREDIT, LP
Reel/Frame 066781/0974 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2024
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY
To: DATA.AI INC. (PREVIOUSLY KNOWN AS “APP ANNIE INC.”)
Reel/Frame 066792/0448 →
THIRD AMENDMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 23, 2022
From: DATA.AI INC.
To: SILICON VALLEY BANK
Reel/Frame 061303/0520 →
CHANGE OF NAME Recorded Jun 13, 2022
From: APP ANNIE INC.
To: DATA.AI INC.
Reel/Frame 060348/0849 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2021
From: KERLIN, JESS ROBERT; MACKINNON, ERIC ANTOINE; STOLORZ, PAUL ERNEST
To: APP ANNIE INC.
Reel/Frame 058264/0975 →
Continuity (2)
Continuation 17346117 · Jun 11, 2021
Related Publication 20220398183A1 · Dec 15, 2022
Cited By (1)
US 12,229,038