IP Library › Granted Patent US 11,243,747
Granted Patent B2
US 11,243,747 · App. 17/007,253 · Granted Feb 8, 2022

Application digital content control using an embedded machine learning module

Inventors: Thomas William Randall Jacobs (Cupertino, CA); Peter Raymond Fransen (Soquel, CA); Kevin Gary Smith (Lehi, UT); Kent Andrew Edmonds (San Jose, CA); Jen-Chan Jeff Chien (Saratoga, CA); Gavin Stuart Peter Miller (Los Altos, CA)
Assignee: Adobe Inc.
G06F8/33G06F21/6245G06N5/02G06N20/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,243,747
App. No.
17/007,253
Granted
Feb 8, 2022
Kind
B2
Abstract

Application personalization techniques and systems are described that leverage an embedded machine learning module to preserve a user's privacy while still supporting rich personalization with improved accuracy and efficiency of use of computational resources over conventional techniques and systems. The machine learning module, for instance, may be embedded as part of an application to execute within a context of the application to learn user preferences to train a model using machine learning. This model is then used within the context of execution of the application to personalize the application, such as control access to digital content, make recommendations, control which items of digital marketing content are exposed to a user via the application, and so on.

Claims (37)

1. In a digital medium application creation environment, a method implemented by at least one computing device, the method comprising:

generating, by the at least one computing device computing device, an application having executable code, the generating based on user interaction with a software development kit as executed by the at least one computing device;

receiving, by the at least one computing device, a user input caused via interaction with the software development kit to select a machine learning module included as part of the software development kit;

embedding, by the at least one computing device, the selected machine learning module from the software development kit as part of the executable code of the application, the machine learning module configured to train a model using machine learning based on user interaction within a context of the application during execution of the executable code of the application; and

outputting, by the at least one computing device, the application as having the embedded machine learning module included as part of the executable code.

2. The method as described in claim 1 , wherein the software development kit includes a set of software development tools that are executable by the at least one computing device to create the application based on the user interaction.

3. The method as described in claim 2 , wherein the set of software development tools includes an option to select the machine learning module from a plurality of machine learning modules configured to support different configurations of models for machine learning, one to another.

4. The method as described in claim 2 , wherein the set of software development tools are configured to specify application programming interfaces and employ debugging.

5. The method as described in claim 1 , wherein the machine learning module is configured to generate a recommendation based on a pattern identified in the user interaction with the application as learned during execution of the application.

6. The method as described in claim 1 , wherein the machine learning module is configured to:

transmit data describing the model, once trained, via a network; and

receive a recommendation via the network in response to transmission of the data.

7. The method as described in claim 6 , wherein the data describes weights assigned to respective nodes of a neural network that form the model as part of the machine learning.

8. The method as described in claim 6 , wherein the data does not indicate how the model is trained.

9. In a digital medium application creation environment, a system comprising:

a processor; and

a computer-readable storage medium having instructions stored thereon that, responsive to execution by the processor, causes the processor to perform operations comprising:

generating an application based on user interaction with a software development kit as executed by the processor;

receiving a user input caused via interaction with the software development kit to select a machine learning module included as part of the software development kit;

embedding the selected machine learning module from the software development kit as part of executable code of the application, the machine learning module configured to train a model using machine learning based on user interaction within a context of the application when executed; and

outputting the application as having the embedded machine learning module included as part of the executable code.

10. The system as described in claim 9 , wherein the software development kit includes a set of software development tools that are executable to create the application based on the user interaction.

11. The system as described in claim 10 , wherein the set of software development tools includes an option to select the machine learning module from a plurality of machine learning modules configured to support different configurations of models for machine learning, one to another.

12. The system as described in claim 10 , wherein the set of software development tools are configured to specify application programming interfaces and employ debugging.

13. The system as described in claim 9 , wherein the machine learning module is configured to generate a recommendation based on a pattern identified in the user interaction with the application as learned during execution of the application.

14. The system as described in claim 9 , wherein the machine learning module is configured to:

transmit data describing the model, once trained, via a network; and

receive a recommendation via the network in response to transmission of the data.

15. The system as described in claim 14 , wherein the data describes weights assigned to respective nodes of a neural network that form the model as part of the machine learning.

16. The system as described in claim 14 , wherein the data does not indicate how the model is trained.

17. In a digital medium application creation environment, a system comprising:

means for generating an application having executable code based on user interaction with a software development kit;

means for receiving a user input caused via interaction with the software development kit to select a machine learning module included as part of the software development kit; and

means for embedding the selected machine learning module from the software development kit as part of the executable code of the application, the machine learning module configured to train a model using machine learning based on user interaction within a context of the application when executed.

18. The system as described in claim 17 , wherein the software development kit includes a set of software development tools that are executable to create the application based on the user interaction.

19. The system as described in claim 18 , wherein the set of software development tools includes an option to select the machine learning module from a plurality of machine learning modules configured to support different configurations of models for machine learning, one to another.

20. The system as described in claim 18 , wherein the set of software development tools are configured to specify application programming interfaces and employ debugging.

Continuity (2)
Division 15785298 · Oct 16, 2017
Related Publication 20200401380A1 · Dec 24, 2020
Cited By (2)
US 12,613,683 US 12,645,437