IP Library Granted Patent US 12,242,930
Granted Patent B2
US 12,242,930 · App. 17/110,022 · Granted Mar 4, 2025

Federated machine-learning platform leveraging engineered features based on statistical tests

Inventors: Sundeep Pothula (Toronto, CA); Max Changchun Huang (Toronto, CA); Thejas Narayana Prasad (Spring, TX); Alain Charles Briancon (Germantown, MD); Jean Joseph Belanger (Austin, TX)
Assignee: Cerebri AI Inc.
G06N20/00G06F16/27G06F16/289G06N5/02G06Q10/06375H04L63/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 12,242,930
App. No.
17/110,022
Granted
Mar 4, 2025
Kind
B2
Abstract

Provided is a process including: receiving a data token to be passed from a first node to a second node; retrieving machine learning model attributes from a collection of one or more of the sub-models of a federated machine-learning model; determining based on the machine learning model attributes, that the data token is learning relevant to members of the collection of one or more of the sub-models and, in response, adding the data toke to a training set to be used by at least some members of the collection of one or more of the sub-models; determining a collection of data tokens to transmit from the second node to a third node of the set of nodes participating in a federated machine-learning model; and transmitting the collection of data tokens.

Claims (112)

1. A tangible, non-transitory, machine-readable medium storing instructions that when executed by one or more processors effectuate operations comprising:

receiving, with a computer system, a data token to be passed from a first node to a second node, wherein:

the first node and second nodes are members of a set of nodes participating in a federated machine-learning model executed by the computer system,

the federated machine-learning model comprises an application-layer network of sub-models of the federated machine-learning model,

different members of the set of nodes control different subsets of the sub-models in the application-layer network,

the data token corresponding to data upon which the federated machine-learning model operates, and

the data token is not among data upon which a sub-model of the second node was trained;

retrieving, with the computer system, machine learning model attributes from a collection of one or more of the sub-models of the federated machine-learning model;

determining, with the computer system, based on the machine learning model attributes, that the data token is learning relevant to members of the collection of one or more of the sub-models with means for statistics testing and, in response, adding the data token to a training set to be used by at least some members of the collection of one or more of the sub-models;

determining, with the computer system, a collection of data tokens to transmit from the second node to a third node of the set of nodes participating in a federated machine-learning model;

transmitting, with the computer system, the collection of data tokens from the second node to the third node across an interface between the second node and the third node;

obtaining, with the computer system, for a plurality of entities corresponding to the set of nodes, datasets, wherein:

the datasets comprise events involving the plurality of entities;

the datasets comprise or are otherwise associated with attributes of the plurality of entities; and

the events are distinct from the attributes;

forming, with the computer system, a plurality of objects, wherein each object of the plurality of objects comprises a different set of attributes and events;

forming, with the computer system, a library of classes with a plurality of object-orientation modelors;

forming, with the computer system, a plurality of object-manipulation functions, each function being configured to leverage a respective class among the library of classes;

receiving, with the computer system, a request from a first entity from the plurality of entities to determine a set of actions to achieve, or increase the likelihood of, a given targeted action;

assigning, with the computer system, the given targeted action to a first subset of classes from the library of classes;

determining, with the computer system, based on the assigning, the set of actions to achieve, or increase likelihood of, the given targeted action using a first subset of the plurality of object-manipulation functions leveraging the first subset of classes from the library of classes;

forming a third training dataset from the datasets;

training a third machine-learning model on the third training dataset by adjusting parameters of the third machine-learning model to optimize a third objective function that indicates interdependency of the plurality of object-manipulation functions in leveraging a specific class;

forming an interdependency graph using, at least in part, the third objective function, wherein the interdependency graph comprises a plurality of execution triggers, wherein each execution trigger from the plurality of execution triggers comprises a subset of the object-manipulation functions; and

storing the adjusted parameters of the trained third machine-learning model in memory.

2. The medium of claim 1 , wherein determining that the data token is learning relevant comprises determining a measure of a behavioral impact of the data token on an entity modeled by the federated machine-learning model.

3. The medium of claim 2 , wherein the measure of the behavioral impact is indicative of a change in expected spending over time, location, or products.

4. The medium of claim 1 , wherein determining the set of actions to achieve, or increase the likelihood of, the given targeted action further comprises:

forming a first training dataset from the datasets;

training, with one or more processors, a first machine-learning model on the first training dataset by adjusting parameters of the first machine-learning model to optimize a first objective function that indicates an accuracy of the first subset of the plurality of object-manipulation functions in leveraging the first subset of classes from the library of classes; and

storing, with one or more processors, the adjusted parameters of the trained first machine-learning model in memory.

5. The medium of claim 4 , wherein training comprises steps for training.

6. The medium of claim 4 , wherein:

at least some of the data in the first training dataset is obtained from the first entity.

7. The medium of claim 1 , the operations further comprising:

forming a second training dataset from the datasets;

training, with one or more processors, a second machine-learning model on the second training dataset by adjusting parameters of the second machine-learning model to optimize a second objective function that indicates an accuracy of the plurality of object-orientation modelors in generating the library of classes; and

storing the adjusted parameters of the trained second machine-learning model in memory.

8. The medium of claim 1 , wherein:

at least some of the obtained datasets are processed datasets, prepared by the corresponding entities from the plurality of entities, to not reveal more than a threshold amount of information.

9. The medium of claim 8 , wherein:

the processed datasets are prepared, by the corresponding entities from the plurality of entities, based on a set of rules, wherein the set of rules comprises cybersecurity and privacy policies.

10. The medium of claim 1 , wherein the datasets comprise:

consumers;

communications to consumers by an enterprise;

communications to an enterprise by consumers;

purchases by consumers from an enterprise;

non-purchase interactions by consumers with an enterprise; or

a customer relationship management system of an enterprise; and wherein:

the enterprise is a credit card issuer and the given targeted action is predicting whether a consumer will default;

the enterprise is a lender and the given targeted action is predicting whether a consumer will borrow;

the enterprise is an insurance company and the given targeted action is predicting whether a consumer will file a claim;

the enterprise is an insurance company and the given targeted action is predicting whether a consumer will sign-up for insurance;

the enterprise is a vehicle seller and the given targeted action is predicting whether a consumer will purchase a vehicle;

the enterprise is a seller of goods and the given targeted action is predicting whether a consumer will file a warranty claim;

the enterprise is a wireless operator and the given targeted action is predicting whether a consumer upgrade their cellphone; or

the enterprise is a bank and the given targeted action is predicting GDP variation.

11. The medium of claim 1 , wherein the plurality of object-manipulation functions comprises:

a sequence function used to change a collection of events into a time sequence for processing;

a feature function used to gather features of a first object-orientation modelor and then use the features in a second object-orientation modelor; and

an ensembling function used to combine a first subset of the library of classes.

12. The medium of claim 1 , wherein the plurality of object-orientation modelors comprises:

a scaled propensity modelor used to calculate probability of a customer making an economic commitment;

a timing modelor used to calibrate moments in time when a customer is likely to engage with the given targeted action;

an affinity modelor used to capture ranked likes and dislikes of an entity's customers for a first subset of targeted actions;

a best action modelor used to create a framework for concurrent Key Performance Index of the given targeted action at different points in a customer's journey; and

a cluster modelor used to group an entity's customers based on the customers' behavior into a finite list.

13. The medium of claim 1 , the operations further comprising:

forming an interdependency graph using, at least in part, ontology semantics by leveraging feature engineering modelors, wherein the feature engineering modelors comprise:

recency feature engineering modelors;

frequency feature engineering modelors;

lag feature engineering modelors;

difference feature engineering modelors; or

harmonic analysis feature engineering modelors.

14. The medium of claim 13 , wherein the ontology semantics comprise a concurrent ontology labeling datastore (COLD) methodology.

15. The medium of claim 1 , wherein:

the interdependency graph comprises a plurality of execution schedules, wherein each execution schedule from the plurality of execution schedules comprises a subset of the object-manipulation functions.

16. The medium of claim 1 , wherein the attributes comprising:

entity restrictions for at least some of the plurality of entities;

entity business protocols for at least some of the plurality of entities;

entity policies for at least some of the plurality of entities;

entity authorized users for at least some of the plurality of entities; and

entity security protocols for at least some of the plurality of entities.

17. The medium of claim 1 , wherein:

at least some of the datasets are updated in real-time.

18. The medium of claim 1 , wherein:

at least some of the datasets are updated using a record level stream.

19. A method, comprising:

receiving, with a computer system, a data token to be passed from a first node to a second node, wherein:

the first node and second nodes are members of a set of nodes participating in a federated machine-learning model executed by the computer system,

the federated machine-learning model comprises an application-layer network of sub-models of the federated machine-learning model,

different members of the set of nodes control different subsets of the sub-models in the application-layer network,

the data token corresponding to data upon which the federated machine-learning model operates, and

the data token is not among data upon which a sub-model of the second node was trained;

retrieving, with the computer system, machine learning model attributes from a collection of one or more of the sub-models of the federated machine-learning model;

determining, with the computer system, based on the machine learning model attributes, that the data token is learning relevant to members of the collection of one or more of the sub-models with means for statistics testing and, in response, adding the data token to a training set to be used by at least some members of the collection of one or more of the sub-models;

determining, with the computer system, a collection of data tokens to transmit from the second node to a third node of the set of nodes participating in a federated machine-learning model;

transmitting, with the computer system, the collection of data tokens from the second node to the third node across an interface between the second node and the third node;

obtaining, with the computer system, for a plurality of entities corresponding to the set of nodes, datasets, wherein:

the datasets comprise events involving the plurality of entities;

the datasets comprise or are otherwise associated with attributes of the plurality of entities; and

the events are distinct from the attributes;

forming, with the computer system, a plurality of objects, wherein each object of the plurality of objects comprises a different set of attributes and events;

forming, with the computer system, a library of classes with a plurality of object-orientation modelors;

forming, with the computer system, a plurality of object-manipulation functions, each function being configured to leverage a respective class among the library of classes;

receiving, with the computer system, a request from a first entity from the plurality of entities to determine a set of actions to achieve, or increase the likelihood of, a given targeted action;

assigning, with the computer system, the given targeted action to a first subset of classes from the library of classes;

determining, with the computer system, based on the assigning, the set of actions to achieve, or increase likelihood of, the given targeted action using a first subset of the plurality of object-manipulation functions leveraging the first subset of classes from the library of classes;

forming a third training dataset from the datasets;

training a third machine-learning model on the third training dataset by adjusting parameters of the third machine-learning model to optimize a third objective function that indicates interdependency of the plurality of object-manipulation functions in leveraging a specific class;

forming an interdependency graph using, at least in part, the third objective function, wherein the interdependency graph comprises a plurality of execution triggers, wherein each execution trigger from the plurality of execution triggers comprises a subset of the object-manipulation functions; and

storing the adjusted parameters of the trained third machine-learning model in memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 24, 2020
From: POTHULA, SUNDEEP; HUANG, MAX CHANGCHUN; PRASAD, THEJAS NARAYANA; BRIANCON, ALAIN CHARLES; BELANGER, JEAN JOSEPH
To: CEREBRI AI INC.
Reel/Frame 054746/0608 →
Continuity (2)
Provisional Application 62943511 · Dec 4, 2019
Related Publication 20210174257A1 · Jun 10, 2021
References Cited (36)
US 10402723B1 · Silberman et al. · 2019 [cited by applicant]
US 10484343B1 · Silberman et al. · 2019 [cited by applicant]
US 10762563B2 · Belanger et al. · 2020 [cited by applicant]
US 10783535B2 · Belanger et al. · 2020 [cited by applicant]
US 10861028B2 · Silberman et al. · 2020 [cited by applicant]
US 11068942B2 · Briancon et al. · 2021 [cited by applicant]
US 11082409B2 · Silberman et al. · 2021 [cited by applicant]
US 20160103692A1 · Guntaka · 2016 [cited by examiner]
US 20170168472A1 · Ando · 2017 [cited by examiner]
US 20170337214A1 · Ko · 2017 [cited by examiner]
US 20180349929A1 · Blomberg · 2018 [cited by examiner]
US 20190228461A1 · Domokos · 2019 [cited by examiner]
US 20190333054A1 · Cona · 2019 [cited by examiner]
US 20200034884A1 · Ramanuja · 2020 [cited by examiner]
US 20200134492A1 · Copeland · 2020 [cited by examiner]
US 20200285980A1 · Sharad · 2020 [cited by examiner]
US 20210067339A1 · Schiatti · 2021 [cited by examiner]
US 20210150037A1 · Radhakrishnan · 2021 [cited by examiner]
US 20210150269A1 · Choudhury · 2021 [cited by examiner]
Definition of “Open Systems Interconnection model” at Free On-Line Dictionary of Computing, at https://foldoc.org/Open+Systems+Interconnection (last updated Feb. 13, 2004) (Year: 2004). [cited by examiner]
Konečný, Jakub, et al. “Federated optimization: Distributed machine learning for on-device intelligence.” arXiv preprint arXiv:1610.02527 (2016), pp. 1-38 (Year: 2016). [cited by examiner]
Galtier, Mathieu N., et al. “Substra: a framework for privacy-preserving, traceable and collaborative machine learning.” arXiv preprint arXiv:1910.11567 (Oct. 25, 2019), pp. 1-22 (Year: 2019). [cited by examiner]
Kawa, Deep, et al. “Credit risk assessment from combined bank records using federated learning.” International Research Journal of Engineering and Technology (IRJET) 6.4 (Apr. 2019): pp. 1355-1358 (Year: 2019). [cited by examiner]
Li, Tian, et al. “Fair resource allocation in federated learning.” arXiv preprint arXiv:1905.10497 (May 25, 2019) (Year: 2019). [cited by examiner]
Wang, Guan, et al. “Measure Contribution of Participants in Federated Learning.” arXiv preprint arXiv:1909.08525 (Sep. 17, 2019), pp. 1-8 (Year: 2019). [cited by examiner]
U.S. Appl. No. 15/456,059, filed Mar. 10, 2017. [cited by applicant]
U.S. Appl. No. 16/891,827, filed Jun. 3, 2020. [cited by applicant]
U.S. Appl. No. 16/127,933, filed Sep. 11, 2018. [cited by applicant]
U.S. Appl. No. 62/748,287, filed Oct. 19, 2018. [cited by applicant]
U.S. Appl. No. 62/698,769, filed Jul. 16, 2018. [cited by applicant]
U.S. Appl. No. 16/127,933 filled Sep. 11, 2018. [cited by applicant]
McMahan, Brendan et al., “Federated Learning: Collaborative Machine Learning without Centralized Training Data,” Google AI Blog, Apr. 6, 2017, https://ai.googleblog.com/2017/04/federated-learning-collaborative.html. [cited by applicant]
Konečný, Jakub et al., “Federated Optimization: Distributed Optimization Beyond the Datacenter,” arXiv:1511.03575 Nov. 11, 2015, https://arxiv.org/abs/1511.03575. [cited by applicant]
Brownlee, Jason, “Basic Feature Engineering with Time Series Data in Python,” Machine Learning Mastery Blog Dec. 14, 2016. https://machinelearningmastery.com/basic-feature-engineering-time-series-data-python/. [cited by applicant]
Gamboa, John Cristian Borges, “Deep Learning for Time-Series Analysis,” Jan. 7, 2017, arXiv:1701.01887, https://arxiv.org/abs/1701.01887. [cited by applicant]
Yuan, Yexi, “Recency, Frequency, Monetary Model with Python—and how Sephora uses it to optimize their Google and Facebook Ads,” Towards Data Science, Aug. 17, 2019, https://towardsdatascience.com/recency-frequency-monet… [cited by applicant]
Cited By (1)
US 12,646,008