A training method of a machine learning model having a predetermined number of parameters, the training method being performed by a training device, the training device including a memory storing the machine learning model, processing circuitry configured to execute the training the machine learning model using the memory, and an interface connected to the processing circuitry, the method comprising:
- receiving training data through the interface;
- training the predetermined number of parameters for the received training data by using the machine learning model to generate a first machine learning model having a plurality of characteristics, wherein the training includes training a parameter other than a part of parameters of the predetermined number of parameters while removing the part of the parameters multiple times;
- performing a plurality of inferences on the first machine learning model having the predetermined number of parameters generated by the training performed multiple times under a plurality of conditions in which another part of parameters different from each other are removed among the predetermined number of parameters;
- calculating a relationship between a computational complexity and an accuracy of inference using the first machine learning model for the conditions based on results of the plurality of inferences, the computational complexity being based on a product of a number of multiply-accumulate computations and a number of bits of weight parameters;
- generating characteristic data indicating the relationship between the computational complexity and the accuracy of inference related to the first machine learning model, wherein the characteristic data allows specifying the computational complexity from the accuracy of inference;
- and
- outputting through the interface, the first machine learning model and the characteristic data.