| CPC G06F 17/11 (2013.01) [G06N 3/0985 (2023.01); G06N 20/00 (2019.01); G06F 17/18 (2013.01)] | 30 Claims |

|
1. A non-transitory computer-readable medium comprising computer-readable instructions stored thereon that when executed by a processor cause the processor to:
(A) generate values of a first set of hyperparameters for a first trained machine learning model and values of a second set of hyperparameters for a second trained machine learning model;
(B) input the values of the first set of hyperparameters and a set of real data into the first trained machine learning model and the values of the second set of hyperparameters and the set of real data into the second trained machine learning model;
(C) execute the first trained machine learning model to generate a plurality of cluster centroids from the set of real data and the values of the first set of hyperparameters;
(D) execute the second trained machine learning model to generate a plurality of synthetic data vectors based on the plurality of cluster centroids, the values of the second set of hyperparameters, and the set of real data;
(E) combine the plurality of synthetic data vectors with the set of real data to obtain a plurality of combined data vectors arranged in a plurality of rows and a plurality of columns, wherein each row of the plurality of rows corresponds to one of the plurality of combined data vectors;
(F) add a first binary label to each of the plurality of rows, the first binary label indicating whether a row of the plurality of rows comprises actual real data or actual synthetic data;
(G) execute a third machine learning model to classify each of the plurality of combined data vectors using a second binary label, wherein the second binary label indicates whether each of the plurality of combined data vectors comprises predicted real data or predicted synthetic data;
(H) compute an objective function value based on the first binary label and the second binary label;
(I) determine whether the objective function value is optimal or not;
(J) responsive to determining that the objective function value does not have an optimal value, update the values of the first set of hyperparameters and the values of the second set of hyperparameters and repeat (B)-(J), or responsive to determining that the objective function value is an optimal value, execute (K); and
(K) output the plurality of synthetic data vectors as a set of synthetic data.
|