Classification model training using diverse training source and inference engine using same
AssigneeMacronix International Co., Ltd.
InventorsShih-Hung Chen, Tzu-Hsiang Su
Life of this patent
Estimating the term…
Abstract
A method for generating a classification model using a training data set. An iterative procedure for training an ANN model, in which an iteration includes selecting a small sample of training data from a source of training data, training the model using the sample, using the model in inference mode over a larger sample of the training data, and reviewing the results of the inferencing. The results can be evaluated to determine whether the model is satisfactory, and if it does not meet specified criteria, then cycles of sampling, training, inferencing and reviewing results (STIR cycles) are repeated in an iterative process until the criteria are met. A classification engine trained as described herein is provided.
Claims27
A method for generating a classification model to classify objects in a plurality of categories using a training data set S of objects, using one or more programmed computers:
- for an index i=1, accessing a first training subset ST(i) including some of the objects in the training data set S;
- training a first model M(i) using the first training subset ST(i);
- using the first model M(i) to classify a first evaluation subset SE(i) of the training data set S excluding the first training subset ST(i), and identifying a first error subset ER(i) of objects in the first evaluation subset SE(i) classified erroneously;
- (a) incrementing the index i, and accessing another training subset ST(i) including some of the objects in error subset ER(i−1);
- (b) training a model M(i) using a combination of the training subsets ST(i), for i between 1 and i inclusive;
- (c) using the model M(i) to classify an evaluation subset SE(i) of the training data set S excluding the training subsets ST(i), for i between 1 and i inclusive, and identifying an error subset ER(i) of objects in the evaluation subset SE(i) classified erroneously;
- and
- (d) evaluating the error subset ER(i) to estimate performance of the model M(i), and if performance is satisfactory, save model M(i), and if performance is not satisfactory, then repeat steps (a) to (d):
- and
- wherein accessing another training subset ST(i), for i>1, including some of the objects in the error subset ER(i−1) includes, for a given category in the plurality of categories, having less than a minimum number M of objects classified erroneously in the error subset, adding objects from one or more of the error subset or error subsets ER(i), for i=to i−2 to 1, to establish the minimum number M in the given category in the training subset.
A computer program product comprising:
- non-transitory computer readable memory, storing a computer program including logic to execute a procedure for generating a classification model to classify objects in a plurality of categories using a training data set S of objects, the procedure including:
- for an index i=1, accessing a first training subset ST(i) including some of the objects in the training data set S;
- training a first model M(i) using the first training subset ST(i);
- using the first model M(i) to classify a first evaluation subset SE(i) of the training data set S excluding the first training subset ST(i), and identifying a first error subset ER(i) of objects in the first evaluation subset SE(i) classified erroneously;
- (a) incrementing the index i, and accessing another training subset ST(i) including some of the objects in error subset ER(i−1);
- (b) training a model M(i) using a combination of the training subsets ST(i), for i between 1 and i inclusive;
- (c) using the model M(i) to classify an evaluation subset SE(i) of the training data set S excluding the training subsets ST(i), for i between 1 and i inclusive, and identifying an error subset ER(i) of objects in the evaluation subset SE(i) classified erroneously;
- and
- (d) evaluating the error subset ER(i) to estimate performance of the model M(i), and if performance is satisfactory, save model M(i), and if performance is not satisfactory, then repeat steps (a) to (d);
- and
- wherein accessing another training subset ST(i), for i>1, including some of the objects in the error subset ER(i−1) includes, for a given category in the plurality of categories, having less than a minimum number M of objects classified erroneously in the error subset, adding objects from one or more of the error subset or error subsets ER(i), for i=to i−2 to 1, to establish the minimum number M in the given category in the training subset.
Dependencies are inferred from the claim text.