TECHNOLOGICAL FIELD

The present disclosure relates generally to machine learning and, in particular, to machine learning model development.

BACKGROUND

Machine learning is a process to analyze data in which the dataset is used to determine a machine learning model (also called a rule or a function) that maps input data (also called independent, explanatory or predictor variables) to output data (also called dependent or response variables) according to a machine learning algorithm. A broad array of machine learning algorithms are available, with new algorithms the subject of active research. One type of machine learning is supervised learning in which a model is trained with a dataset including known output data for a sufficient number of input data. Once a model is trained, it may be deployed, i.e., applied to new input data to predict the expected output.

Machine learning may be applied to a number of different types of problems, such as classification problems in which the output data includes labels, classes, categories and the like. In some particular examples, machine learning may be applied in object detection problems to detect and classify (e.g., label) instances of objects depicted in digital images (including videos). Many successful uses of supervised learning rely on vast quantities of labeled training data to perform well. But the generation of this training data is often a very labor and cost intensive.

Therefore it would be desirable to have a system and method that takes into account at least some of the issues discussed above, as well as other possible issues.

BRIEF SUMMARY

Example implementations of the present disclosure are directed to machine learning model development and/or deployment in which training data may be produced in a less laborious and cost intensive manner than existing techniques. Example implementations generate training data by combining network inversion applied to a classification layer of an artificial neural network (ANN) classifier that is partially trained, and the decoder of an autoencoder or a generative adversarial network (GAN). This newly-generated, added training data may then be combined with an initial training dataset to further train the classification layer.

The present disclosure thus includes, without limitation, the following example implementations.

Some example implementations provide a method of machine learning model development, the method comprising building an autoencoder including an encoder trained to map an input into a latent representation, and a decoder trained to map the latent representation to a reconstruction of the input; building an artificial neural network classifier including the encoder of the autoencoder, and a classification layer partially trained to perform a classification in which one of a number of classes to which the input belongs is predicted based on the latent representation; applying neural network inversion to the classification layer to find inverted latent representations within a decision boundary between classes of the number of classes in which a result of the classification is ambiguous; obtaining inverted inputs from the inverted latent representations; labeling each inverted input of the inverted inputs with one of the number of classes that is its ground truth, and thereby producing added training data for the classification; and further training the classification layer using the added training data.

In some example implementations of the method of any preceding example implementation, or any combination of any preceding example implementations, the method further comprises training the classification layer with an initial training dataset to partially train the classification layer, wherein further training the classification layer includes producing an updated training dataset from the initial training dataset and the added training data, and further training the classification layer with the updated training dataset.

In some example implementations of the method of any preceding example implementation, or any combination of any preceding example implementations, obtaining the inverted inputs includes applying the inverted latent representations to the decoder of the autoencoder that maps the respective ones of the inverted latent representations to the inverted inputs.

In some example implementations of the method of any preceding example implementation, or any combination of any preceding example implementations, obtaining the inverted inputs includes applying the inverted latent representations to a generative adversarial network (GAN) that produces the inverted inputs from the respective ones of the inverted latent representations.

In some example implementations of the method of any preceding example implementation, or any combination of any preceding example implementations, the GAN includes a generative network and a discriminative network, and for each inverted latent representation from which an inverted input is obtained, the generative network generates candidate inverted inputs from the inverted latent representation, and the discriminative network evaluates the candidate inverted inputs based on a reference input, until the GAN converges on one of the candidate inverted inputs that is the inverted input obtained from the inverted latent representation.

In some example implementations of the method of any preceding example implementation, or any combination of any preceding example implementations, the input and inverted inputs are images, and the latent representation and inverted latent representations are feature vectors that describe features of the images.

In some example implementations of the method of any preceding example implementation, or any combination of any preceding example implementations, the method further comprises deploying the artificial neural network classifier including the classification layer further trained using the added training data, including receiving a new input image; and applying new input image to the artificial neural network classifier in which the encoder maps the new input image to a feature vector, and the classification layer predicts one of the number of classes to which the new input image belongs based on the feature vector.

Some example implementations provide an apparatus for machine learning model development. The apparatus comprises a memory configured to store computer-readable program code; and processing circuitry configured to access the memory, and execute the computer-readable program code to cause the apparatus to at least perform the method of any preceding example implementation, or any combination of any preceding example implementations.

Some example implementations provide a computer-readable storage medium for machine learning model development, the computer-readable storage medium being non-transitory and having computer-readable program code stored therein that, in response to execution by processing circuitry, causes an apparatus to at least perform the method of any preceding example implementation, or any combination of any preceding example implementations.

These and other features, aspects, and advantages of the present disclosure will be apparent from a reading of the following detailed description together with the accompanying figures, which are briefly described below. The present disclosure includes any combination of two, three, four or more features or elements set forth in this disclosure, regardless of whether such features or elements are expressly combined or otherwise recited in a specific example implementation described herein. This disclosure is intended to be read holistically such that any separable features or elements of the disclosure, in any of its aspects and example implementations, should be viewed as combinable unless the context of the disclosure clearly dictates otherwise.

It will therefore be appreciated that this Brief Summary is provided merely for purposes of summarizing some example implementations so as to provide a basic understanding of some aspects of the disclosure. Accordingly, it will be appreciated that the above described example implementations are merely examples and should not be construed to narrow the scope or spirit of the disclosure in any way. Other example implementations, aspects and advantages will become apparent from the following detailed description taken in conjunction with the accompanying figures which illustrate, by way of example, the principles of some described example implementations.

