IP Library Granted Patent US 11,727,287
Granted Patent B2
US 11,727,287 · App. 17/882,950 · Granted Aug 15, 2023

Multi-client service system platform

Inventors: George Banis (Cambridge, MA); Adam Starikiewicz (Dublin, IE); Kevin M. Walsh (Somerville, MA); Stephen Purcell (Somerville, MA); Hector Urdiales (Dublin, IE); Andrea Bergonzo (Dublin, IE)
G06N5/04G06N20/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,727,287
App. No.
17/882,950
Filed
Aug 8, 2022
Granted
Aug 15, 2023
Kind
B2
Examiner
KIM, HARRY H
Art Unit
2411
USPC
706/45
Abstract

A modular machine learning-as-a-service (MLAAS) system uses machine learning to respond to tasks without requiring machine learning modeling or design knowledge by its users. The MLAAS system receives an inference request including a model identifier and a target defining features for use in processing the inference request. The features correspond to a task for evaluation using a machine learning model associated with the model identifier. An inference outcome is generated by processing the inference request using the target as input to the model. Feedback indicating an accuracy of the inference outcome with respect to the task is later received and used to generate a training data set, which the MLAAS can use to further train model used to generate the inference outcome. As a result, the training of a machine learning model by the MLAAS system is limited to using data resulting from an inference performed using that model.

Claims (47)

1. A method, comprising:

receiving an inference request including a model identifier and a target defining a set of features for use in processing the inference request, wherein the set of features correspond to a task for evaluation using a machine learning model associated with the model identifier;

determining based on the model identifier an additional feature, related to the set of features, for processing the inference request;

generating an inference outcome corresponding to the inference request being processed using the target and the additional feature as input to the machine learning model; and

training the machine learning model based on feedback resulting from the inference outcome, the feedback indicating an accuracy of the inference outcome with respect to the task.

2. The method of claim 1 , wherein the feedback indicates a default feedback based on the task.

3. The method of claim 1 , wherein the training comprises:

generating a training data set based upon the inference request and the feedback, wherein the training data set is used to train the machine learning model.

4. The method of claim 1 , wherein the inference request is included in an application programming interface (API) call, wherein the API call includes a request identifier for the inference request, the model identifier, and the target.

5. The method of claim 1 , comprising:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome.

6. The method of claim 1 , comprising:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome, wherein the selection strategy is a maximum likelihood estimation used to select the inference outcome based on the inference outcome having a highest score amongst the plurality of candidate inference outcomes.

7. The method of claim 1 , comprising:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome, wherein the selection strategy is a multi-arm bandit approach used to select the inference outcome based on a distribution of values of each of the plurality of candidate inference outcomes after a number of inference iterations are completed.

8. The method of claim 1 , comprising:

limiting the training of the machine learning model to data from an inference perform using the machine learning model based upon the inference request.

9. The method of claim 1 , comprising:

selectively training a version of the machine learning model, used to generate the inference outcome based on a request identifier, using the inference outcome.

10. A non-transitory machine readable medium comprising instructions, which when executed by a machine, causes the machine to perform operations including:

receiving an inference request including a model identifier and a target defining a set of features for use in processing the inference request, wherein the set of features correspond to a task for evaluation using a machine learning model associated with the model identifier;

determining based on the model identifier an additional feature, related to the set of features, for processing the inference request;

generating an inference outcome corresponding to the inference request being processed using the target and the additional feature as input to the machine learning model; and

training the machine learning model based on feedback resulting from the inference outcome, the feedback indicating a default feedback based on the task.

11. The non-transitory machine readable medium of claim 10 , wherein the feedback indicates an accuracy of the inference outcome with respect to the task.

12. The non-transitory machine readable medium of claim 10 , the operations including:

generating a training data set based upon the inference request and the feedback, wherein the training data set is used to train the machine learning model.

13. The non-transitory machine readable medium of claim 10 , wherein the inference request is included in an application programming interface (API) call, wherein the API call includes a request identifier for the inference request, the model identifier, and the target.

14. The non-transitory machine readable medium of claim 10 , the operations including:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome.

15. The non-transitory machine readable medium of claim 10 , the operations including:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome, wherein the selection strategy is a maximum likelihood estimation used to select the inference outcome based on the inference outcome having a highest score amongst the plurality of candidate inference outcomes.

16. The non-transitory machine readable medium of claim 10 , the operations including:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome, wherein the selection strategy is a multi-arm bandit approach used to select the inference outcome based on a distribution of values of each of the plurality of candidate inference outcomes after a number of inference iterations are completed.

17. The non-transitory machine readable medium of claim 10 , the operations including:

limiting the training of the machine learning model to data from an inference perform using the machine learning model based upon the inference request.

18. A computing device comprising:

a memory comprising machine executable code for performing a method; and

a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to perform operations including:

receiving an inference request including a model identifier and a target defining a set of features for use in processing the inference request, wherein the set of features correspond to a task for evaluation using a machine learning model associated with the model identifier;

determining based on the model identifier an additional feature, related to the set of features, for processing the inference request;

generating an inference outcome corresponding to the inference request being processed using the target and the additional feature as input to the machine learning model; and

training the machine learning model based on feedback resulting from the inference outcome, the feedback indicating an accuracy of the inference outcome with respect to the task.

19. The computing device of claim 18 , the operations including:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome, wherein the selection strategy is a maximum likelihood estimation used to select the inference outcome based on the inference outcome having a highest score amongst the plurality of candidate inference outcomes.

20. The computing device of claim 18 , the operations including:

using a selection strategy to select one of a plurality of candidate inference outcomes, generated based on different processing of the target using the machine learning model, as the inference outcome, wherein the selection strategy is a multi-arm bandit approach used to select the inference outcome based on a distribution of values of each of the plurality of candidate inference outcomes after a number of inference iterations are completed.

Assignments (2)
SECURITY INTEREST Recorded Feb 12, 2026
From: HUBSPOT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 074818/0036 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2022
From: BANIS, GEORGE; STARIKIEWICZ, ADAM; WALSH, KEVIN M.; PURCELL, STEPHEN; URDIALES, HECTOR; BERGONZO, ANDREA
To: HUBSPOT, INC.
Reel/Frame 060744/0099 →
Continuity (3)
Continuation 16716688 · Dec 17, 2019
Provisional Application 62785544 · Dec 27, 2018
Related Publication 20220383199A1 · Dec 1, 2022