IP Library › Granted Patent US 12,518,218
Granted Patent B2
US 12,518,218 · App. 17/223,859 · Granted Jan 6, 2026

Dynamically scalable machine learning model generation and retraining through containerization

Inventors: Nithya Rajagopalan (Bangalore, IN); Panish Ramakrishna (Bangalore, IN); Ashutosh Patel (Bangalore, IN); Ranjith Pavanje Raja Rao (Bangalore, IN); Mayank Kamboj (Bangalore, IN); Arjun Swami (Bangalore, IN)
Assignee: SAP SE
G06N20/20G06F9/45558G06F9/5077G06F18/23213G06N5/043G06F2009/4557
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,518,218
App. No.
17/223,859
Filed
Apr 6, 2021
Granted
Jan 6, 2026
Kind
B2
Examiner
HUANG, YAO D
Art Unit
2124
USPC
706/12
Abstract

In an example embodiment, a model generation component may additionally assign various cloud resources to a machine learned model so that the training or retraining of the model can be performed using these resource. The containers may be weighted to handle model generation work of different weight. Having one single configuration for a container responsible for generating all models leads to overuse of hardware resources because machine learning algorithms are very resource intensive, and thus dynamically selecting the weight improves hardware utilization.

Claims (41)

1 . A system comprising:

at least one hardware processor; and

a computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:

obtaining a dynamic weighted container assignment machine learned model trained via training using a first machine learning algorithm, the training comprising obtaining a first set of training data and passing the first set of training data through the machine learning algorithm to learn a coefficient for each of a plurality of features of the training data, the dynamic weighted container assignment machine learned model being trained to output a container configuration for a combination of an entity and an inference machine learned model, the container configuration including a category indicating a count of each of a plurality of computing resources to be assigned to the combination of the entity and the inference model;

receiving, at an application server in a cloud environment, a request to generate a first inference model for a first entity of a plurality of entities corresponding to the cloud environment;

in response to the receiving, inputting a set of features corresponding to the entity and to the first inference model to the dynamic weighted container assignment machine learned model to obtain a container configuration for the first inference model, the set of features comprising an indication of whether a type of a second machine learning algorithm is a neural network or a non-neural network, the dynamic weighted container assignment machine learning model designed to output a different container configuration if the type of the second machine learning algorithm is a neural network than if the type of the second machine learning algorithm is a non-neural network;

generating a container based on the obtained container configuration; and

causing a first version of the first inference model to be generated and trained using the container, the second machine learning algorithm, and a second set of training data.

2 . The system of claim 1 , wherein the first machine learning algorithm is a clustering algorithm.

3 . The system of claim 2 , wherein the clustering algorithm is a k-nearest neighbor algorithm.

4 . The system of claim 1 , wherein the first entity is a group of users.

5 . The system of claim 1 , wherein the operations further comprise:

receiving, at the application server, training data parameters for the first inference model and wherein the causing the first version of the first inference model to be generated and trained further includes filtering the second set of training data based on the training data parameters.

6 . The system of claim 1 , further comprising repeating the inputting and generating for a subsequent version of the first inference model, causing a different container configuration to be used for retraining of the first inference model than was used in a prior training of the first inference model.

7 . The system of claim 1 , wherein the inputting a set of features is only performed once a threshold amount of historic data of metadata about model generation runs is gathered.

8 . The system of claim 1 , wherein the set of features corresponding to the entity and to the first inference model includes information about a volume of the second set of training data.

9 . The system of claim 1 , wherein the set of features corresponding to the entity and to the first inference model includes information about a number of unique features in the second set of training data.

10 . A method comprising:

obtaining a dynamic weighted container assignment machine learned model trained via training using a first machine learning algorithm, the training comprising obtaining a first set of training data and passing the first set of training data through the machine learning algorithm to learn a coefficient for each of a plurality of features of the training data, the dynamic weighted container assignment machine learned model being trained to output a container configuration for a combination of an entity and an inference machine learned model, the container configuration including a category indicating a count of each of a plurality of computing resources to be assigned to the combination of the entity and the inference model;

receiving, at an application server in a cloud environment, a request to generate a first inference model for a first entity of a plurality of entities corresponding to the cloud environment;

in response to the receiving, inputting a set of features corresponding to the entity and to the first inference model to the dynamic weighted container assignment machine learned model to obtain a container configuration for the first inference model, the set of features comprising an indication of whether a type of a second machine learning algorithm is a neural network or a non-neural network, the dynamic weighted container assignment machine learning model designed to output a different container configuration if the type of the second machine learning algorithm is a neural network than if the type of the second machine learning algorithm is a non-neural network;

generating a container based on the obtained container configuration; and

causing a first version of the first inference model to be generated and trained using the container, the second machine learning algorithm, and a second set of training data.

11 . The method of claim 10 , wherein the first machine learning algorithm is a clustering algorithm.

12 . The method of claim 11 , wherein the clustering algorithm is a k-nearest neighbor algorithm.

13 . The method of claim 10 , wherein the first entity is a group of users.

14 . The method of claim 10 , further comprising:

receiving, at the application server, training data parameters for the first inference model and wherein the causing the first version of the first inference model to be generated and trained further includes filtering the second set of training data based on the training data parameters.

15 . A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

obtaining a dynamic weighted container assignment machine learned model trained via training using a first machine learning algorithm, the training comprising obtaining a first set of training data and passing the first set of training data through the machine learning algorithm to learn a coefficient for each of a plurality of features of the training data, the dynamic weighted container assignment machine learned model being trained to output a container configuration for a combination of an entity and an inference machine learned model, the container configuration including a category indicating a count of each of a plurality of computing resources to be assigned to the combination of the entity and the inference model;

receiving, at an application server in a cloud environment, a request to generate a first inference model for a first entity of a plurality of entities corresponding to the cloud environment;

in response to the receiving, inputting a set of features corresponding to the entity and to the first inference model to the dynamic weighted container assignment machine learned model to obtain a container configuration for the first inference model, the set of features comprising an indication of whether a type of a second machine learning algorithm is a neural network or a non-neural network, the dynamic weighted container assignment machine learning model designed to output a different container configuration if the type of the second machine learning algorithm is a neural network than if the type of the second machine learning algorithm is a non-neural network;

generating a container based on the obtained container configuration; and

causing a first version of the first inference model to be generated and trained using the container, the second machine learning algorithm, and a second set of training data.

16 . The non-transitory machine-readable medium of claim 15 , wherein the first machine learning algorithm is a clustering algorithm.

17 . The non-transitory machine-readable medium of claim 16 , wherein the clustering algorithm is a k-nearest neighbor algorithm.

18 . The non-transitory machine-readable medium of claim 15 , wherein the first entity is a group of users.

19 . The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

receiving, at the application server, training data parameters for the first inference model and wherein the causing the first version of the first inference model to be generated and trained further includes filtering the second set of training data based on the training data parameters.

20 . The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

repeating the inputting and generating for a subsequent version of the first inference model, causing a different container configuration to be used for retraining of the first inference model than was used in a prior training of the first inference model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2021
From: RAJAGOPALAN, NITHYA; RAMAKRISHNA, PANISH; PATEL, ASHUTOSH; RAO, RANJITH PAVANJE RAJA; KAMBOJ, MAYANK; SWAMI, ARJUN
To: SAP SE
Reel/Frame 055841/0956 →
Continuity (1)
Related Publication 20220318687A1 · Oct 6, 2022
References Cited (29)
US 9122562B1 · Stickle · 2015 [cited by examiner]
US 10452992B2 · Lee et al. · 2019 [cited by applicant]
US 11397794B1 · Baghani · 2022 [cited by examiner]
US 11635988B1 · Gao · 2023 [cited by examiner]
US 20130031489A1 · Gubin et al. · 2013 [cited by applicant]
US 20180018587A1 · Kobayashi · 2018 [cited by examiner]
US 20180315494A1 · Kolde et al. · 2018 [cited by applicant]
US 20190155633A1 · Faulhaber, Jr. · 2019 [cited by examiner]
US 20200073717A1 · Hari · 2020 [cited by examiner]
US 20210117217A1 · Croteau · 2021 [cited by examiner]
US 20220058512A1 · Noorizadeh et al. · 2022 [cited by applicant]
US 20220180178A1 · Tasinga et al. · 2022 [cited by applicant]
US 20220284351A1 · Wetherbee · 2022 [cited by examiner]
US 20220292303A1 · Cao · 2022 [cited by examiner]
US 20220318686A1 · Rajagopalan et al. · 2022 [cited by applicant]
US 20230013340A1 · Wu · 2023 [cited by examiner]
Zhang et al., “Finding the Big Data Sweet Spot: Towards Automatically Recommending Configurations for Hadoop Clusters on Docker Containers,” 2015 IEEE International Conference on Cloud Engineering (Year: 2015). [cited by examiner]
Wang et al., “Toward Accurate Platform-Aware Performance Modeling for Deep Neural Networks,” arXiv:2012.00211v1 [cs.LG] Dec. 1, 2020 (Year: 2020). [cited by examiner]
Yeung et al., “Towards GPU Utilization Prediction for Cloud Deep Learning,” HotCloud'20: Proceedings of the 12th USENIX Conference on Hot Topics in Cloud Computing (2020) (Year: 2020). [cited by examiner]
Shi et al., “Optimization of K-NN by feature weight Learning,” Proceedings of the Fourth International Conference on Machine Learning and Cybernetics, Guangzhou, Aug. 18-21, 2005 (Year: 2005). [cited by examiner]
“U.S. Appl. No. 17/223,796, Non Final Office Action mailed May 10, 2024”, 64 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Examiner Interview Summary mailed Jul. 2, 2024”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Response filed Jul. 11, 2024 to non Final Office Action mailed May 10, 2024”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Final Office Action mailed Sep. 27, 2024”, 51 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Response filed Nov. 21, 2024 to Final Office Action mailed Sep. 27, 2024”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Examiner Interview Summary mailed Nov. 22, 2024”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Non Final Office Action mailed Mar. 10, 2025”, 54 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Examiner Interview Summary mailed Mar. 31, 2025”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 17/223,796, Response filed Apr. 9, 2025 to Non Final Office Action mailed Mar. 10, 2025”, 14 pgs. [cited by applicant]