WO2021137294A1 - 情報処理方法、および情報処理システム - Google Patents

情報処理方法、および情報処理システム Download PDF

Info

Publication number
WO2021137294A1
WO2021137294A1 PCT/JP2020/047284 JP2020047284W WO2021137294A1 WO 2021137294 A1 WO2021137294 A1 WO 2021137294A1 JP 2020047284 W JP2020047284 W JP 2020047284W WO 2021137294 A1 WO2021137294 A1 WO 2021137294A1
Authority
WO
WIPO (PCT)
Prior art keywords
inference
model
discrimination
result
information
Prior art date
Application number
PCT/JP2020/047284
Other languages
English (en)
French (fr)
Inventor
智行 奥野
洋平 中田
育規 石井
Original Assignee
パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ filed Critical パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority to CN202080090589.2A priority Critical patent/CN114902244A/zh
Priority to EP20910646.7A priority patent/EP4086814A4/en
Priority to JP2021568470A priority patent/JPWO2021137294A1/ja
Publication of WO2021137294A1 publication Critical patent/WO2021137294A1/ja
Priority to US17/850,335 priority patent/US20220327362A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0495Quantised networks; Sparse networks; Compressed networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0895Weakly supervised learning, e.g. semi-supervised or self-supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/096Transfer learning

Definitions

  • the present invention relates to an information processing method and an information processing system.
  • the present invention provides an information processing method for reducing the difference in inference results that occurs between two inference models.
  • the information processing method is an information processing method executed by a processor using a memory, in which first data is input to a first inference model, a first inference result is acquired, and the first inference result is obtained.
  • One data is input to the second inference model, the second inference result is acquired, and it is determined whether the input information is the output of the first inference model or the output of the second inference model.
  • the first discrimination result is input to the discrimination model that outputs the discriminant information, and the first discriminant information that is the discriminant information about the input first inference result is acquired.
  • the first error indicating the difference from the correct answer information indicating that it is the output of the first inference model is acquired, the second inference result is input to the discrimination model, and the input second inference result is obtained.
  • the second discrimination information which is the discrimination information, is acquired, and the second error indicating the difference between the second discrimination information and the correct answer information indicating that it is the output of the second inference model is acquired, and the first error is obtained.
  • the discriminant model is trained by machine learning so as to reduce the second error, the second data is input to the second inference model, the third inference result is acquired, and the trained discriminant is trained.
  • the third inference result is input to the model, the third discrimination information which is the discrimination information about the input third inference result is acquired, and the third discrimination information and the output of the first inference model are used.
  • This is an information processing method in which the second inference model is trained by machine learning so as to acquire a third error indicating a difference from the correct answer information indicating that there is, and to reduce the third error.
  • a recording medium such as a system, an apparatus, an integrated circuit, a computer program or a computer-readable CD-ROM, and the system, the apparatus, the integrated circuit, the computer program. And may be realized by any combination of recording media.
  • the information processing method of the present invention can reduce the difference in inference results that occurs between two inference models.
  • FIG. 1 is a block diagram showing a functional configuration of the processing system according to the first embodiment.
  • FIG. 2 is an explanatory diagram showing training of a discrimination model in the processing system according to the first embodiment.
  • FIG. 3 is an explanatory diagram showing correct answer information used for training the discrimination model in the processing system according to the first embodiment.
  • FIG. 4 is an explanatory diagram showing training of the discriminative model in the processing system according to the first embodiment.
  • FIG. 5 is an explanatory diagram showing correct answer information used for training the discriminative model in the processing system according to the first embodiment.
  • FIG. 6 is a flow chart showing the processing executed by the processing system according to the first embodiment.
  • FIG. 7 is a block diagram showing a functional configuration of the inference system according to the first embodiment.
  • FIG. 8 is a flow chart showing the processing executed by the inference system according to the first embodiment.
  • FIG. 9 is a block diagram showing a functional configuration of the processing system according to the second embodiment.
  • FIG. 10 is an explanatory diagram showing training of the discriminative model in the processing system according to the second embodiment.
  • FIG. 11 is a flow chart showing the processing executed by the processing system according to the second embodiment.
  • FIG. 12 is a block diagram showing a functional configuration of the processing system according to the third embodiment.
  • FIG. 13 is an explanatory diagram showing training of a discrimination model in the processing system according to the third embodiment.
  • FIG. 14 is an explanatory diagram showing correct answer information used for training the discrimination model in the processing system according to the third embodiment.
  • FIG. 15 is an explanatory diagram showing training of the discriminative model in the processing system according to the third embodiment.
  • FIG. 16 is an explanatory diagram showing correct answer information used for training the discriminative model in the processing system according to the third embodiment.
  • FIG. 17 is a flow chart showing the processing executed by the processing system according to the third embodiment.
  • FIG. 18 is a block diagram showing a functional configuration of the processing system according to the fourth embodiment.
  • FIG. 19 is a block diagram showing another example of the functional configuration of the processing system according to the fourth embodiment.
  • FIG. 20 is a schematic diagram for explaining a method of applying noise applied by the noise applying unit according to the fourth embodiment.
  • FIG. 21 is a flow chart showing the processing executed by the processing system according to the fourth embodiment.
  • FIG. 22 is a flow chart showing another example of the processing executed by the processing system according to the fourth embodiment.
  • FIG. 23 is a block diagram showing a functional configuration of the processing system according to the fifth embodiment.
  • FIG. 24 is a schematic diagram for explaining the noise added by the noise imparting unit in the fifth embodiment.
  • FIG. 25 is a schematic diagram for explaining a method of applying noise applied by the noise applying unit according to the fifth embodiment.
  • FIG. 26 is a flow chart showing the processing executed by the processing system according to the fifth embodiment.
  • the inference model is not an environment using a cloud computing environment or GPU (Graphical Processing Unit), but a processor on a device having limited computing resources such as computing power and memory capacity. It is required to work.
  • a method such as quantization of the inference model.
  • Patent Document 1 changes the settings for machine learning processing based on the calculation resources and performance specifications of the system. As a result, inference performance is maintained to some extent even if the calculation resources and performance specifications are restricted.
  • the information processing method is an information processing method executed by a processor using a memory, and the first data is input to the first inference model to acquire the first inference result.
  • the first data is input to the second inference model, the second inference result is acquired, and the input information is the output of the first inference model or the output of the second inference model.
  • the first inference result is input to the discrimination model that outputs the discrimination information for discriminating the above, the first discrimination information which is the discrimination information about the input first inference result is acquired, and the first discrimination information is obtained.
  • the discriminant model was trained by machine learning so as to reduce one error and the second error, the second data was input to the second inference model, the third inference result was acquired, and the training was performed.
  • the third inference result is input to the discrimination model, the third discrimination information which is the discrimination information about the input third inference result is acquired, and the third discrimination information and the first inference model are obtained.
  • This is an information processing method in which the second inference model is trained by machine learning so as to acquire a third error indicating a difference from the correct answer information indicating that it is an output and to reduce the third error.
  • the trained discriminant model after training a discriminant model capable of appropriately discriminating which of the first inference result and the second inference result, the trained discriminant model is used. 2 Train the second inference model so that the inference result is determined to be the first inference result. As a result, the second inference model is trained to output the same inference results as the first inference model. That is, the information processing method can reduce the difference in inference results that occurs between the first inference model and the second inference model. Therefore, the difference in inference results that occurs between the two inference models can be reduced. Specifically, it is possible to reduce the difference in inference results that may occur when a new second inference model is obtained based on the first inference model. As described above, the information processing method can reduce the difference in inference results that may occur when a new inference model is obtained based on the inference model.
  • another second data is input to the trained second inference model, another third inference result is acquired, and the second inference result is obtained based on the acquired third inference result.
  • the inference model may be further trained.
  • the trained second inference model is further trained using the new first data (in other words, the training is recursively repeated), so that the new second inference model is based on the first inference model. It is possible to further reduce the difference in inference results that can occur when obtaining. Therefore, the information processing method can further reduce the difference in inference results that occurs between the two inference models.
  • the information processing method is an information processing method executed by a processor using a memory, and the first data is input to the first inference model to acquire the first inference result.
  • the first data is input to the second inference model, the second inference result is acquired, and the input information is the output of the first inference model or the output of the second inference model.
  • the first inference result is input to the discrimination model that outputs the discrimination information for discriminating the above, the first discrimination information which is the discrimination information about the input first inference result is acquired, and the first discrimination information is obtained.
  • the discrimination model was trained by machine learning so as to reduce one error and the second error, the second data was input to the second inference model, the third inference result was acquired, and the training was performed.
  • the third inference result is input to the discrimination model, the third discrimination information which is the discrimination information about the input third inference result is acquired, and the third discrimination information and the first inference model are obtained.
  • the third inference model is trained by machine learning so as to acquire the third error indicating the difference from the correct answer information indicating that it is an output and to reduce the third error, and the trained third inference model is used. This is an information processing method for updating the second inference model by a conversion process for conversion.
  • the trained discriminant model after training a discriminant model capable of appropriately discriminating which of the first inference result and the second inference result, the trained discriminant model is used. 2 Train the third inference model so that the inference result is determined to be the first inference result. Then, the second inference model is updated by obtaining the second inference model by the conversion process from the trained third inference model. As a result, the second inference model is trained to output the same inference results as the first inference model. That is, the information processing method can reduce the difference in inference results that occurs between the first inference model and the second inference model. Therefore, the difference in inference results that occurs between the two inference models can be reduced.
  • the information processing method can reduce the difference in inference results that may occur when a new second inference model is obtained based on the inference model.
  • another second data is input to the updated second model, another third inference result is acquired, and the third inference is based on the acquired third inference result.
  • the model may be further trained by machine learning, and the second inference model may be further updated by the transformation process of the further trained third inference model.
  • the trained third inference model is further trained using the new first data to obtain the second inference model (in other words, the training is repeated recursively), so that the training is based on the first inference model. Therefore, the difference in inference results that can occur when a new second inference model is obtained can be further reduced. Therefore, the information processing method can further reduce the difference in inference results that occurs between the two inference models.
  • the first inference model, the second inference model, and the third inference model are neural network models
  • the conversion process may include a process of reducing the weight of the neural network model.
  • the second inference model is obtained by reducing the weight of the neural network model which is the third inference model. Therefore, it is possible to reduce the difference in inference results that may occur when a new lightweight second inference model is obtained based on the first inference model. Therefore, the information processing method can reduce the difference between the two inference models when a new lightweight inference model is obtained based on the inference model. Therefore, even in an environment where computational resources such as IoT devices are limited, it is possible to apply a second inference model that is close to the behavior of the first inference model while maintaining inference performance.
  • the weight reduction process may include a process of quantizing the neural network model.
  • the second inference model is obtained by quantizing the neural network model which is the third inference model. Therefore, the weight of the neural network model can be reduced without changing the network structure, and fluctuations in the inference performance and the inference result (behavior) before and after the weight reduction can be suppressed.
  • the quantization process may include a process of converting the coefficients of the neural network model from the floating point format to the fixed point format.
  • the second inference model is obtained by converting the coefficients (weights) of the neural network model, which is the third inference model, from the floating point format to the fixed point format. Therefore, it can be adapted to a general embedded environment while suppressing fluctuations in inference performance and inference results (behavior).
  • the weight reduction process may include a process of reducing the nodes of the neural network model or a process of reducing the connection of the nodes of the neural network model.
  • the second inference model is obtained by reducing the nodes or the connection of the nodes of the neural network model which is the third inference model. Therefore, since the reduction of the number of nodes and the connection of nodes directly leads to the reduction of the amount of calculation, the second inference model can be adapted to the environment where the constraint of the calculation resource is severe.
  • the feature amount obtained by inputting the first data into the first inference model is input to the discrimination model to obtain the fourth inference result, and in the training of the discrimination model, the first inference model is further performed.
  • the discriminant model may be trained by machine learning by further using the fourth error indicating the difference between the inference result and the fourth inference result.
  • the discrimination model is trained by further using the difference between the inference result (fourth inference result) by the discrimination model for the feature quantity obtained from the first inference model and the first inference result. This reduces the difference between the inference result of the discriminant model and the inference result of the first inference model, thereby reducing the difference in inference results that can occur when a new second inference model is obtained based on the first inference model. It can be made even smaller. Therefore, the information processing method can further reduce the difference in inference results that occurs between the two inference models.
  • noise is added to the second inference result, and in the acquisition of the second discrimination information, the second inference result to which the noise is added is input to the discrimination model to acquire the second discrimination information. You may.
  • the discrimination model it is possible to prevent the discrimination model from being able to easily distinguish between the first inference result and the second inference result.
  • the training of the discrimination model progresses, it becomes easy to discriminate between the first inference result and the second inference result, and the training of the second inference model using the discrimination information may be stagnant.
  • the training of the second inference model since noise is added to at least the second inference result, it becomes difficult to discriminate by the discriminant model. As a result, the training of the second inference model can be suppressed from stagnation.
  • the noise may be determined based on the discrete width of the second inference result.
  • the noise includes Gaussian noise
  • the amplitude of the distribution of the Gaussian noise may be determined based on the standard deviation of the Gaussian noise and the discrete width of the second inference result.
  • Gaussian noise it is possible to control the range in which the discrete width is covered by Gaussian noise. Therefore, Gaussian noise can be determined to the extent that the discrimination model cannot be discriminated, and excess or deficiency of noise can be suppressed.
  • the amplitude of the Gaussian noise distribution may be determined for each predetermined range of the element components of the second inference result.
  • the amplitude of the Gaussian noise distribution may be determined for each predetermined range of the channel component of the second inference result.
  • the noise can be determined for each predetermined range of each component. Therefore, it is possible to add noise that makes it difficult for the discrimination model to discriminate for each predetermined range of each component.
  • the noise may be added to a part of the second inference result having a predetermined element component.
  • the noise may be added to a part of the second inference result having a predetermined channel component.
  • noise is added to the second inference result, and in the acquisition of the second discrimination information, the second inference result to which the noise is added is input to the discrimination model to acquire the second discrimination information.
  • the noise includes Gaussian noise
  • the Gaussian noise may be determined based on the discrete width of the second inference result, and the discrete width may be determined based on the conversion setting in the conversion process.
  • the discrete width is determined in consideration of the content of the conversion and the noise is determined based on the discrete width, it is possible to add noise suitable for the inference result output by the inference model after the conversion. it can. Therefore, it is possible to effectively suppress the influence of the discretization of the inference result caused by the transformation of the inference model on the discrimination process of the discrimination model.
  • the first data and the second data may be image data.
  • the difference between the inference results generated between the two inference models can be reduced.
  • the information processing system inputs the acquisition unit that acquires the third data and the third data acquired by the acquisition unit into the second inference model, and acquires the second inference result.
  • the first data is input to the first inference model
  • the first inference result is acquired
  • the first data is input to the second inference model.
  • the discriminant model that acquires the second inference result and outputs the discriminant information that discriminates whether the input information is the output of the first inference model or the output of the second inference model.
  • the first inference result is input, the first discrimination information which is the discrimination information about the input first inference result is acquired, and it is said that it is the output of the first discrimination information and the first inference model.
  • the first error indicating the difference from the correct answer information to be shown is acquired, the second inference result is input to the discrimination model, and the second discrimination information which is the discrimination information about the input second inference result is acquired. Then, the second error indicating the difference between the second discrimination information and the correct answer information indicating that it is the output of the second inference model is acquired, and the first error and the second error are reduced.
  • the discriminant model is trained by machine learning, the second data is input to the second inference model, the third inference result is acquired, and the third inference result is input to the trained discriminant model.
  • the third discrimination information which is the discrimination information about the input third inference result, and shows the difference between the second discrimination information and the correct answer information indicating that it is the output of the first inference model.
  • It is an information processing system which is a second inference model obtained by training the second inference model by machine learning so as to acquire a third error and reduce the third error.
  • the information processing system executes inference processing using a new inference model generated so as to reduce the difference in inference results based on the existing inference model, and outputs the inference result. Can be done.
  • the information processing system inputs the acquisition unit that acquires the third data and the third data acquired by the acquisition unit into the second inference model, and acquires the second inference result.
  • the first data is input to the first inference model
  • the first inference result is acquired
  • the first data is input to the second inference model.
  • the discriminant model that acquires the second inference result and outputs discriminant information that discriminates whether the input information is the output of the first inference model or the output of the second inference model.
  • the first inference result is input, the first discrimination information which is the discrimination information about the input first inference result is acquired, and the first discrimination information and the output of the first inference model are obtained.
  • the first error indicating the difference from the correct answer information to be shown is acquired, the second inference result is input to the discrimination model, and the second discrimination information which is the discrimination information about the input second inference result is acquired. Then, the second error indicating the difference between the second discrimination information and the correct answer information indicating that it is the output of the second inference model is acquired, and the first error and the second error are reduced.
  • the discriminant model is trained by machine learning, the second data is input to the second inference model, the third inference result is acquired, and the third inference result is input to the trained discriminant model.
  • the second inference model is updated by training the third inference model by machine learning and converting the trained third inference model so as to acquire the three errors and reduce the third error. It is an information processing system which is the second inference model obtained by the above.
  • the information processing system executes inference processing using a new inference model generated so as to reduce the difference in inference results based on the existing inference model, and outputs the inference result. Can be done.
  • a recording medium such as a system, an apparatus, an integrated circuit, a computer program or a computer-readable CD-ROM, and the system, the apparatus, the integrated circuit, the computer program.
  • a recording medium such as a system, an apparatus, an integrated circuit, a computer program or a computer-readable CD-ROM, and the system, the apparatus, the integrated circuit, the computer program.
  • it may be realized by any combination of recording media.
  • Embodiment 1 an information processing method and an information processing system that reduce the difference in inference results that may occur when a new inference model is obtained based on the inference model will be described.
  • the information processing method is also simply referred to as a processing method
  • the information processing system is also simply referred to as a processing system.
  • FIG. 1 is a block diagram showing a functional configuration of the processing system 10 according to the present embodiment.
  • the processing system 10 is a system for obtaining a new inference model configured to output the same inference result as the existing inference model.
  • the processing system 10 includes an identification unit 11, a discrimination unit 12, a calculation unit 13, a discrimination training unit 14, and an identification training unit 15.
  • Each functional unit included in the processing system 10 can be realized by a processor (for example, a CPU (Central Processing Unit)) (not shown) executing a predetermined program using a memory.
  • the processing system 10 may be realized as one device, or may be realized by a plurality of devices capable of communicating with each other.
  • the identification unit 11 is a functional unit that identifies the input data (also referred to as input data) using an identification model that is an inference model.
  • the discriminative model is, for example, a neural network model.
  • the input data is, for example, image data, and this case will be described as an example.
  • the input data includes audio data output from a microphone, point group data output from a radar such as LiDAR (Light Detection and Ringing), and pressure.
  • Sensing data that can acquire correct answer data, such as pressure data output from a sensor, temperature data or humidity data output from a temperature sensor or humidity sensor, or fragrance data output from a fragrance sensor, can be used. ..
  • the input data corresponds to the first data and the second data.
  • the identification unit 11 acquires networks A and B as neural networks used in an identification model for identifying input data. More specifically, the identification unit 11 acquires the coefficients included in each of the networks A and B.
  • the discriminative model using the network A corresponds to the "existing inference model" and is also called the first inference model.
  • the discriminative model using the network B corresponds to a new inference model configured to output the same inference result as the existing inference model, and is also called a second inference model.
  • the discriminative model using the network B is trained by the discriminative training unit 15 to output the same discriminative result as the discriminative model using the network A (described later).
  • the identification unit 11 outputs an identification result (also referred to as a first inference result) indicating the result of identifying the input data by the identification model using the network A. Further, the identification unit 11 outputs an identification result (also referred to as a second inference result) indicating the result of identifying the input data using the network B. Further, the identification unit 11 outputs an identification result (also referred to as a third inference result) indicating the result of identifying the input data in the identification model using the network B trained by the identification training unit 15.
  • an identification result also referred to as a first inference result
  • an identification result also referred to as a second inference result
  • the identification unit 11 outputs an identification result (also referred to as a third inference result) indicating the result of identifying the input data in the identification model using the network B trained by the identification training unit 15.
  • the above identification result is information indicating the result of identifying the image data which is the input data, and includes, for example, the object or situation reflected in the image data, or the information indicating their attributes. Further, the identification result may include a feature amount which is information indicating the feature of the input data. Further, the identification result may be intermediate data of the processing of the identification model, or the feature amount may be intermediate data.
  • the discrimination unit 12 acquires the identification result by the identification unit 11, and the acquired identification information is the result of identification by the identification model using network A, or the result of identification by the identification model using network B. It is a functional part that determines whether or not there is.
  • the discrimination unit 12 performs the above discrimination using an inference model (also referred to as a discrimination model).
  • the discrimination model is, for example, a neural network model.
  • the discrimination unit 12 has identified the result of identification by the identification model using network A (also referred to as the identification result by network A) and the result of identification by the identification model using network B (also referred to as the identification result by network B) from the identification unit 11. To get).
  • the discrimination unit 12 inputs the discrimination result obtained from the discrimination unit 11 into the discrimination model, and acquires the discrimination information about the input discrimination result.
  • the discrimination information is information indicating whether the input identification result is the identification result by the network A or the identification result by the network B, for example, the identification result by the network A or the network. It is information that stochastically indicates whether it is the identification result by B.
  • the calculation unit 13 is a functional unit that calculates an error between the discrimination information output by the discrimination unit 12 and the correct answer information.
  • the calculation unit 13 acquires discrimination information indicating the result of discrimination by the discrimination unit 12 with respect to the identification result by the network A and error information (also referred to as a first error) indicating the difference between the correct answer information.
  • the correct answer information is information indicating that the discrimination information is the identification result by the network A.
  • the error information is calculated by calculating with the loss function held by the calculation unit 13 using the discrimination information and the correct answer information.
  • the loss function is, for example, a function that utilizes the squared sum error of the probabilities included in each of the discrimination information and the correct answer information, and this case will be described as an example, but the loss function is not limited to this.
  • the calculation unit 13 acquires discrimination information indicating the result of discrimination by the discrimination unit 12 with respect to the identification result by the network B and error information (also referred to as a second error) indicating the difference between the correct answer information.
  • the correct answer information is information indicating that the discrimination information is the identification result by the network B.
  • the error information is the same as when the network A is used.
  • the calculation unit 13 has error information (third) indicating the difference between the discrimination information indicating the result of discrimination by the discrimination unit 12 with respect to the discrimination result (corresponding to the third inference result) by the trained network B and the correct answer information. 3 error) is acquired.
  • the correct answer information is information indicating that the discrimination information is the identification result by the network A.
  • the discrimination training unit 14 is a functional unit that trains the discrimination model by machine learning.
  • the discrimination training unit 14 acquires the first error and the second error calculated by the calculation unit 13, and trains the discrimination model by machine learning so as to reduce the first error and the second error.
  • the discrimination training unit 14 refers to the loss function held by the calculation unit 13 and determines how to adjust the coefficients included in the discrimination model to reduce the first error and the second error.
  • the coefficients included in the discrimination model are updated so that the first error and the second error become smaller.
  • a well-known technique such as a method using a sum of squares error can be adopted.
  • the identification training unit 15 is a functional unit that trains an identification model using network B by machine learning.
  • the discriminative training unit 15 acquires the third error calculated by the calculation unit 13 and trains the discriminative model using the network B by machine learning so as to reduce the third error.
  • the identification training unit 15 refers to the loss function possessed by the calculation unit 13, determines how to adjust the coefficient included in the network B to reduce the third error, and reduces the third error.
  • the coefficient included in the network B is updated so as to be. At this time, the discrimination training unit 15 fixes the coefficient included in the discrimination model without changing it.
  • the network B trained by updating the coefficient is input to the identification unit 11.
  • the identification unit 11 acquires a new identification result by inputting new input data into the identification model using the network B updated by the identification training unit 15. Then, by using the acquired identification result as the identification information, the discrimination unit 12, the calculation unit 13, the discrimination training unit 14, and the identification training unit 15 execute the same processing as described above, so that the processing system 10 can perform the same processing. Further train network B.
  • the outline of updating network B by the processing system 10 will be described below.
  • the update of the network B is performed by repeatedly executing the training of the discriminative model and the training of the discriminative model using the network B.
  • (1) training of the discriminative model and (2) training of the discriminative model using the network B will be described.
  • FIG. 2 is an explanatory diagram showing training of a discrimination model in the processing system 10 according to the present embodiment.
  • FIG. 3 is an explanatory diagram showing correct answer information used for training the discrimination model in the processing system 10 in the present embodiment.
  • the identification unit 11 executes an identification process for identifying the image by each of the identification model using the network A and the identification model using the network B, and outputs the identification result.
  • the identification result is, for example, information such as "dog: 70%, cat: 30%".
  • the above identification result means that the probability that the subject shown in the input image is a dog is 70%, and the probability that the subject is a cat is 30%. The same shall apply hereinafter.
  • the identification result output by the identification unit 11 is provided to the determination unit 12.
  • the identification result provided by the identification unit 11 is the identification result identified by the identification model using the network A, or the identification result identified by the identification model using the network B. Is determined by a discrimination model using network D.
  • the discrimination information is, for example, information such as "A: 70%, B: 30%".
  • the above identification result has a 70% probability of being an identification result identified by an identification model using network A, and a 30% probability of being an identification result identified by an identification model using network B. means.
  • the calculation unit 13 calculates the error between the discrimination information output by the discrimination unit 12 and the correct answer information for the network A. Specifically, when the calculation unit 13 obtains the discrimination information "A: 70%, B: 30%" as the discrimination result for the discrimination result in the discrimination model using the network A, this discrimination information and the discrimination information are added. Compare with the correct answer information "A: 100%, B: 0%” indicating the identification result in the identification model using the network A (see FIG. 3). Then, the calculation unit 13 obtains an error calculated from 0.09, which is the square of the difference (1-0.7) of the probabilities relating to the network A between the discrimination information and the correct answer information.
  • the calculation unit 13 also calculates the error between the discrimination information output by the discrimination unit 12 and the correct answer information for the network B in the same manner as described above. That is, when the discriminative information "A: 70%, B: 30%" is obtained as the discriminative result for the discriminative result in the discriminative model using the network B, the calculation unit 13 uses the discriminative model using the network B. Compare with the correct answer information "A: 0%, B: 100%” indicating the identification result of (see FIG. 3). Then, the calculation unit 13 obtains an error calculated from 0.49, which is the square of the difference (1-0.3) of the probabilities relating to the network B between the discrimination information and the correct answer information.
  • the discrimination training unit 14 adjusts the coefficient included in the network D so as to reduce the error calculated by the calculation unit 13. At this time, the discrimination training unit 14 refers to the loss function and adjusts the coefficient so that the error is reduced by adjusting the coefficient. In this way, the discrimination training unit 14 updates the network D by adjusting the coefficient of the network D.
  • FIG. 4 is an explanatory diagram showing training of the discriminative model in the processing system 10 according to the present embodiment.
  • FIG. 5 is an explanatory diagram showing correct answer information used for training the discriminative model in the processing system 10 in the present embodiment.
  • the identification unit 11 executes an identification process for identifying the image by an identification model using the network B, and outputs the identification result.
  • the identification result is, for example, information such as "dog: 80%, cat: 20%".
  • the identification result output by the identification unit 11 is provided to the determination unit 12.
  • the identification result provided by the identification unit 11 is the identification result identified by the identification model using the network A, or the identification result identified by the identification model using the network B. Is determined by a discrimination model using network D.
  • the discrimination result is obtained as, for example, discrimination information such as "A: 20%, B: 80%".
  • the calculation unit 13 calculates the difference between the discrimination information output by the discrimination unit 12 and the correct answer information. Specifically, the calculation unit 13 uses the network A when the discrimination information "A: 20%, B: 80%" is obtained as the discrimination result for the discrimination result in the discrimination model using the network B. Compare with the correct answer information "A: 100%, B: 0%” indicating the identification result in the identification model (see FIG. 5). Then, the calculation unit 13 obtains an error calculated from 0.64, which is the square of the difference (1-0.2) of the probabilities relating to the network A between the discrimination information and the correct answer information.
  • the identification training unit 15 adjusts the coefficient included in the network B so as to reduce the error calculated by the calculation unit 13. At this time, the identification training unit 15 fixes the coefficient included in the network D without changing it.
  • the identification training unit 15 adjusts the coefficient included in the network B, it refers to the loss function and adjusts the coefficient so as to reduce the error by adjusting the coefficient. In this way, the identification training unit 15 updates the network B by adjusting the coefficients of the network B.
  • FIG. 6 is a flow chart showing processing (also referred to as a processing method) executed by the processing system 10 in the present embodiment.
  • step S101 the identification unit 11 inputs the input data to the identification model using the network A and acquires the identification result by the network A.
  • step S102 the identification unit 11 inputs the input data to the identification model using the network B and acquires the identification result by the network B.
  • step S103 the discrimination unit 12 acquires discrimination information by inputting the identification result by the network A acquired by the identification unit 11 in step S101 into the discrimination model. Further, the calculation unit 13 calculates an error between the discrimination information acquired by the discrimination unit 12 and the correct answer information.
  • the correct answer information is information indicating that the input identification result is the identification result by the network A.
  • step S104 the discrimination unit 12 acquires discrimination information by inputting the identification result by the network B acquired by the identification unit 11 in step S102 into the discrimination model. Further, the calculation unit 13 calculates an error between the discrimination information acquired by the discrimination unit 12 and the correct answer information.
  • the correct answer information is information indicating that the input identification result is the identification result by the network B.
  • step S105 the discrimination training unit 14 correctly discriminates whether the discrimination result input to the discrimination model is the discrimination result by the network A or B by using the error calculated in steps S103 and S104. Update the network coefficients of the discriminant model so that you can. This trains the discriminant model.
  • step S106 the identification unit 11 inputs the input data to the identification model using the network B and acquires the identification result by the network B.
  • step S107 the discrimination unit 12 acquires discrimination information by inputting the identification result by the network B acquired by the identification unit 11 in step S106 into the discrimination model. Further, the calculation unit 13 calculates an error between the discrimination information acquired by the discrimination unit 12 and the correct answer information.
  • the correct answer information is information indicating that the input identification result is the identification result by the network A.
  • step S108 the identification training unit 15 uses the error calculated in step S107 to determine the coefficient of the network B so that the identification unit 12 determines that the identification result by the network B is the identification result of the network A. Update.
  • the processing system 10 trains a discrimination model that can appropriately discriminate between the identification result by the network A and the discrimination result by the network B, and then uses the trained discrimination model. Then, the coefficient of the network B is updated so that the identification result by the network B is determined to be the identification result of the network A, thereby training the identification model using the network B. As a result, the discriminative model using network B is trained to output the same inference results as the discriminative model using network A. In this way, the processing system 10 can reduce the difference in the discrimination results that may occur when the discriminative model using the network B is obtained based on the discriminative model using the network A.
  • the inference system 20 using the network B obtained by the processing system 10 will be described.
  • the inference system is also called an information processing system.
  • FIG. 7 is a block diagram showing a functional configuration of the inference system 20 according to the present embodiment.
  • the inference system 20 includes an acquisition unit 21 and an inference unit 22.
  • Each functional unit included in the inference system 20 can be realized by a processor (for example, a CPU) (not shown) executing a predetermined program using a memory.
  • the acquisition unit 21 is a functional unit that acquires input data (also referred to as input data).
  • the input data is, for example, image data, like the data input to the processing system 10.
  • the acquisition unit 21 provides the acquired input data to the inference unit 22.
  • the input data corresponds to the third data.
  • the inference unit 22 is a functional unit that inputs the input data acquired by the acquisition unit 21 into the inference model (corresponding to the second inference model), acquires the inference result, and outputs it.
  • the inference model used by the inference unit 22 to obtain the inference result is a discriminative model using the network B trained by the processing system 10.
  • FIG. 8 is a flow chart showing the processing executed by the inference system 20 in the present embodiment.
  • step S201 the acquisition unit 21 acquires the input data.
  • step S202 the inference unit 22 inputs the input data acquired by the acquisition unit 21 into the inference model, acquires the inference result, and outputs it.
  • the inference system 20 can execute inference processing using a new inference model generated so as to reduce the difference in inference results based on the existing inference model, and output the inference result. it can.
  • the trained discriminant model is used.
  • the second inference model is trained so that the second inference result is determined to be the first inference result.
  • the second inference model is trained to output the same inference results as the first inference model. That is, the information processing method can reduce the difference in inference results that occurs between the first inference model and the second inference model. Therefore, the difference in inference results that occurs between the two inference models can be reduced. Specifically, it is possible to reduce the difference in inference results that may occur when a new second inference model is obtained based on the first inference model. As described above, the information processing method can reduce the difference in inference results that may occur when a new inference model is obtained based on the inference model.
  • the trained second inference model is further trained using the new first data (in other words, the training is recursively repeated), when a new second inference model is obtained based on the first inference model.
  • the difference in inference results that can occur can be further reduced. Therefore, the information processing method can further reduce the difference in inference results that occurs between the two inference models.
  • the information processing system can execute inference processing using a new inference model generated so as to reduce the difference in inference results based on the existing inference model, and output the inference result.
  • Embodiment 2 an information processing method and an information processing system that reduce the difference in inference results that may occur when a new inference model is obtained based on the inference model will be described with a configuration different from that in the first embodiment. ..
  • the same components as those in the first embodiment are designated by the same reference numerals, and detailed description thereof will be omitted.
  • FIG. 9 is a block diagram showing a functional configuration of the processing system 10A according to the present embodiment.
  • the processing system 10A of the present embodiment is a system for obtaining a new inference model configured to output the same inference result as the existing inference model.
  • the format of the existing inference model is different from the format of the new inference model.
  • the coefficients of the networks that make up the existing inference model are expressed in floating-point format
  • the coefficients of the networks that make up the new inference model are expressed in fixed-point format.
  • the processing system 10A is a system for obtaining a new network expressed in the fixed-point format by quantizing the existing inference model expressed in the floating-point format.
  • the processing system 10A includes an identification unit 11, a discrimination unit 12, a calculation unit 13, a discrimination training unit 14, an identification training unit 15A, and a conversion unit 16.
  • Each functional unit included in the processing system 10A can be realized by a processor (for example, a CPU) (not shown) executing a predetermined program using a memory, as in the first embodiment.
  • the identification unit 11, the discrimination unit 12, the calculation unit 13, and the discrimination training unit 14 are the same as those in the processing system 10 of the first embodiment.
  • the identification training unit 15A and the conversion unit 16 will be described in detail below.
  • the identification training unit 15A is a functional unit that trains an identification model using network B1 by machine learning.
  • the discriminative training unit 15A acquires the third error calculated by the calculation unit 13 and trains the discriminative model using the network B1 by machine learning so as to reduce the third error.
  • the identification training unit 15A refers to the loss function possessed by the calculation unit 13, determines how to adjust the coefficient included in the network B1 to reduce the third error, and reduces the third error.
  • the coefficient included in the network B1 is updated so as to be.
  • the discrimination training unit 15A fixes the coefficient included in the discrimination model without changing it.
  • the identification training unit 15A provides the trained network B1 to the conversion unit 16.
  • the conversion unit 16 is a functional unit that obtains network B by performing conversion processing on the coefficients of network B1.
  • the conversion unit 16 acquires the network B1 trained by the identification training unit 15A, and updates the network B by performing a predetermined conversion process on the coefficients of the network B1.
  • the identification unit 11 acquires a new identification result by inputting new input data into the updated identification model using the network B. Then, by using the acquired identification result as the identification information, the discrimination unit 12, the calculation unit 13, the discrimination training unit 14, the identification training unit 15A, and the conversion unit 16 execute the same processing as described above. System 10A further updates network B.
  • the conversion process includes, for example, a process of reducing the weight of the network B1.
  • the process of reducing the weight includes, for example, a process of quantizing the network B1.
  • the quantization process may include a process of converting the coefficients of the neural network model from the floating point format to the fixed point format.
  • the process of reducing the weight may include a process of reducing the number of nodes of the neural network model or a process of reducing the connection of the nodes of the neural network model.
  • FIG. 10 is an explanatory diagram showing training of the discriminative model in the processing system 10A according to the present embodiment.
  • the process from the input of the input image to the identification unit 11 to the calculation of the error by the calculation unit 13 is the same as that in the processing system 10 in the first embodiment.
  • the identification training unit 15A adjusts the coefficient included in the network B1 so as to reduce the error calculated by the calculation unit 13. At this time, the identification training unit 15A fixes the coefficient included in the network D without changing it.
  • the identification training unit 15A adjusts the coefficient included in the network B1, it refers to the loss function and adjusts the coefficient so as to reduce the error by adjusting the coefficient. In this way, the identification training unit 15A updates the network B1 by adjusting the coefficient of the network B1.
  • the conversion unit 16 acquires the network B1 trained by the identification training unit 15A and performs conversion processing on the coefficients of the network B1 to obtain a new network B.
  • FIG. 11 is a flow chart showing processing (also referred to as a processing method) executed by the processing system 10A in the present embodiment.
  • steps S101 to S107 shown in FIG. 11 is the same as the processing of the processing system 10 in the first embodiment (see FIG. 6).
  • step S121 the identification training unit 15A uses the error calculated in step S107 to determine the coefficient of the network B1 so that the identification unit 12 determines that the identification result by the network B is the identification result of the network A. Update.
  • step S122 the conversion unit 16 acquires the network B1 whose coefficient has been updated by the identification training unit 15A in step S121, and acquires the network B by converting the coefficient of the network B1.
  • step S123 the conversion unit 16 updates the network B input to the identification unit 11 by the network B acquired in step S122.
  • the processing system 10A trains a discrimination model that can appropriately discriminate between the discrimination result by the network A and the discrimination result by the network B, and then uses the trained discrimination model. Then, the coefficient of the network B1 is updated so that the identification result by the network B is determined to be the identification result of the network A, thereby training the identification model using the network B1. Further, the discriminative model using the network B is updated by obtaining the network B from the updated network B1 by the conversion process. As a result, the discriminative model using network B is trained to output the same inference results as the discriminative model using network A. In this way, the processing system 10A can reduce the difference in the discrimination results that may occur when the discriminative model using the network B is obtained based on the discriminative model using the network A.
  • the trained discriminant model is used.
  • the third inference model is trained so that the second inference result is determined to be the first inference result.
  • the second inference model is updated by obtaining the second inference model by the conversion process from the trained third inference model.
  • the second inference model is trained to output the same inference results as the first inference model. That is, the information processing method can reduce the difference in inference results that occurs between the first inference model and the second inference model. Therefore, the difference in inference results that occurs between the two inference models can be reduced.
  • the information processing method can reduce the difference in inference results that may occur when a new second inference model is obtained based on the inference model.
  • the trained third inference model is further trained using the new first data to obtain the second inference model (in other words, the training is repeated recursively), a new first inference model is used. 2
  • the difference in inference results that can occur when obtaining an inference model can be further reduced. Therefore, the information processing method can further reduce the difference in inference results that occurs between the two inference models.
  • the second inference model is obtained by reducing the weight of the neural network model, which is the third inference model. Therefore, it is possible to reduce the difference in inference results that may occur when a new lightweight second inference model is obtained based on the first inference model. Therefore, the information processing method can reduce the difference between the two inference models when a new lightweight inference model is obtained based on the inference model. Therefore, even in an environment where computational resources such as IoT devices are limited, it is possible to apply a second inference model that is close to the behavior of the first inference model while maintaining inference performance.
  • a second inference model is obtained by quantizing the neural network model, which is the third inference model. Therefore, the weight of the neural network model can be reduced without changing the network structure, and fluctuations in the inference performance and the inference result (behavior) before and after the weight reduction can be suppressed.
  • the second inference model is obtained by converting the coefficients of the neural network model, which is the third inference model, from the floating point format to the fixed point format. Therefore, it can be adapted to a general embedded environment while suppressing fluctuations in inference performance and inference results (behavior).
  • the second inference model is obtained by reducing the number of nodes or the connection of nodes in the neural network model which is the third inference model. Therefore, since the reduction of the number of nodes and the connection of nodes directly leads to the reduction of the amount of calculation, the second inference model can be adapted to the environment where the constraint of the calculation resource is severe.
  • FIG. 12 is a block diagram showing a functional configuration of the processing system 10B according to the present embodiment.
  • the processing system 10B of the present embodiment is a system for referring to an existing inference model and obtaining a new inference model that outputs the same inference result as the existing inference model.
  • FIG. 12 is a block diagram showing a functional configuration of the processing system 10B according to the present embodiment.
  • the identification unit 11B, the discrimination unit 12B, the first calculation unit 13B, the discrimination training unit 14B, the identification training unit 15B, and the second calculation unit 18 are provided.
  • Each functional unit included in the processing system 10B can be realized by a processor (for example, a CPU) (not shown) executing a predetermined program using a memory.
  • the processing system 10B may be realized as one device, or may be realized by a plurality of devices capable of communicating with each other.
  • the identification unit 11B is a functional unit that identifies input data using an identification model that is an inference model, like the identification unit 11 of the first embodiment, and is an identification result by networks A and B (that is, a first inference result). , The second inference result and the third inference result) are output.
  • the identification unit 11B provides the identification result by the network A (that is, the first inference result) to the second calculation unit 18, and outputs the feature map obtained as the identification result by the network A to the determination unit 12B.
  • the discrimination unit 12B inputs the discrimination result obtained from the discrimination unit 11B into the discrimination model, and acquires the discrimination information about the input discrimination result. Further, the discrimination unit 12B acquires the feature map output by the identification unit 11B, inputs the feature map to the discrimination model, and outputs the output discrimination result to the second calculation unit 18.
  • the first calculation unit 13B is the same functional unit as the calculation unit 13 of the first embodiment.
  • the second calculation unit 18 acquires the identification result by the network A from the identification unit 11B, and also acquires the identification result by the discrimination model that inputs the feature map. Then, the second calculation unit 18 calculates an error (corresponding to the fourth error) of the two acquired identification results.
  • the discrimination training unit 14B is a functional unit that trains the discrimination model by machine learning, similarly to the discrimination training unit 14 of the first embodiment.
  • the discrimination training unit 14B acquires the first error and the second error calculated by the calculation unit 13, and also acquires the third error calculated by the second calculation unit 18. Then, the discrimination training unit 14B trains the discrimination model by machine learning so as to reduce the first error, the second error, and the third error.
  • the discriminative training unit 15B is a functional unit that trains the discriminative model by machine learning, similarly to the discriminative training unit 15 of the first embodiment.
  • the identification training unit 15B acquires the third error calculated by the first calculation unit 13B, and also acquires the fourth error calculated by the second calculation unit 18. Then, the discriminative training unit 15B trains the discriminative model using the network B by machine learning so as to reduce the third error and the fourth error.
  • the outline of updating network B by the processing system 10B will be described below.
  • the update of the network B is performed by repeatedly executing the training of the discriminative model and the training of the discriminative model using the network B.
  • (1) training of the discriminative model and (2) training of the discriminative model using the network B will be described.
  • FIG. 13 is an explanatory diagram showing training of the discrimination model in the processing system 10B according to the present embodiment.
  • FIG. 14 is an explanatory diagram showing correct answer information used for training the discrimination model in the processing system 10B according to the present embodiment.
  • the identification unit 11B identifies the image by each of the identification model using the network A and the identification model using the network B when the input image is input. Executes the process and outputs the identification result. Further, the identification unit 11B provides the determination unit 12B with a feature map obtained as a result of identifying the input data using the network A.
  • the discrimination unit 12B determines that the identification result provided by the identification unit 11B is the identification result identified by the identification model using the network A, or the network B is used. Whether the discriminative result is identified by the discriminative model used is discriminated by a discriminative model using the network D, and discriminative information indicating the discriminative result is provided to the first calculation unit 13B. Further, the discriminating unit 12B provides the second calculation unit 18 with the discriminating result obtained by inputting the feature map provided by the discriminating unit 11B into the discriminating model.
  • the above identification result is information indicating the result of identifying the input feature map. For example, the object or situation reflected in the image data which is the input data from which the feature map is generated, or their attributes. Contains information indicating.
  • the first calculation unit 13B calculates the difference (first error and second error) between the discrimination information output by the discrimination unit 12 and the correct answer information, similarly to the calculation unit 13 of the first embodiment.
  • the second calculation unit 18 acquires the identification result by the network A from the identification unit 11B, and also acquires the identification result by the discrimination model for the feature map from the discrimination unit 12B. Then, the second calculation unit 18 calculates an error (corresponding to the fourth error) of the two acquired identification results.
  • the identification result by the network A is the information "dog: 90%, cat: 10%”
  • the identification result by the discrimination model is the information "dog: 80%, cat: 20%”
  • (0.9- An error calculated from 0.01, which is the square of 0.8) is obtained.
  • the identification result by the network A is treated as correct answer information for training the discrimination model (see FIG. 14).
  • the discrimination training unit 14B is a functional unit that trains the discrimination model by machine learning.
  • the discrimination training unit 14B adjusts the coefficients included in the network D so as to reduce the errors (first error, second error, fourth error) calculated by the first calculation unit 13B and the second calculation unit 18. ..
  • the discrimination training unit 14B refers to the loss function and adjusts the coefficient so as to reduce the error by adjusting the coefficient. In this way, the discrimination training unit 14B trains the discrimination model by updating by adjusting the coefficient of the network D.
  • FIG. 15 is an explanatory diagram showing training of the discriminative model in the processing system 10B according to the present embodiment.
  • FIG. 16 is an explanatory diagram showing correct answer information used for training the discriminative model in the processing system 10B in the present embodiment.
  • the identification unit 11B executes an identification process for identifying the image by an identification model using the network B, and outputs the identification result.
  • the identification result is, for example, information such as "dog: 80%, cat: 20%".
  • the identification result output by the identification unit 11B is provided to the determination unit 12B.
  • the discrimination unit 12B determines that the identification result provided by the identification unit 11B is the identification result identified by the identification model using the network A, or the network B is used. Whether it is the discrimination result identified by the discriminative model used is discriminated by the discriminative model using the network D. Further, the discrimination unit 12B provides the second calculation unit 18 with the identification result obtained by inputting the feature map provided by the identification unit 11B into the discrimination model.
  • the first calculation unit 13B calculates the difference (third error) between the discrimination information output by the discrimination unit 12 and the correct answer information.
  • the second calculation unit 18 acquires the identification result by the network A from the identification unit 11B, and also acquires the identification result by the discrimination model inputting the feature map from the discrimination unit 12B. Then, the second calculation unit 18 calculates an error (corresponding to the fourth error) of the two acquired identification results.
  • the identification result by the network A is the information "dog: 90%, cat: 10%”
  • the identification result by the discrimination model is the information "dog: 80%, cat: 20%”
  • (0.9- An error calculated from 0.01, which is the square of 0.8) is obtained.
  • the identification result by network A is treated as correct information for training network B (see FIG. 16).
  • the identification training unit 15B adjusts the coefficients included in the network B so as to reduce the errors (third error, fourth error) calculated by the first calculation unit 13B and the second calculation unit 18. At this time, the identification training unit 15B fixes the coefficient included in the network D without changing it.
  • the identification training unit 15B adjusts the coefficient included in the network B, it refers to the loss function and adjusts the coefficient so as to reduce the error by adjusting the coefficient. In this way, the identification training unit 15B updates the network B by adjusting the coefficients of the network B.
  • FIG. 17 is a flow chart showing the processing executed by the processing system 10B in the present embodiment.
  • steps S101 to S104 shown in FIG. 17 is the same as the processing of the processing system 10 in the first embodiment (see FIG. 6).
  • step S141 the identification unit 11B acquires the feature map as the identification result by the network A.
  • step S142 the discrimination unit 12B inputs the feature map into the discrimination model and acquires the discrimination result of the feature map using the discrimination model.
  • step S143 the second calculation unit 18 calculates the error between the identification result by the network A and the identification result of the feature map.
  • step S105A the discrimination training unit 14B correctly discriminates whether the discrimination result is based on network A or B, and the coefficient of the network of the discrimination model so that the discrimination model makes the same discrimination as network A. To update.
  • steps S106 and S107 is the same as the processing of the processing system 10 in the first embodiment (see FIG. 6).
  • step S151 the identification unit 11B acquires the feature map as the identification result by the network A.
  • step S152 the discrimination unit 12B inputs the feature map into the discrimination model and acquires the discrimination result of the feature map using the discrimination model.
  • step S153 the second calculation unit 18 calculates the error between the identification result by the network A and the identification result of the feature map.
  • step S108A the identification training unit 15B determines the coefficient of the network B so that the identification result by the network B is determined to be the identification result of the network A and the discrimination model makes the same determination as the network A. To update.
  • the processing system 10B of the present embodiment may further include the conversion unit 16 of the second embodiment.
  • the information processing method of the present embodiment discriminates by further using the difference between the inference result (fourth inference result) by the discrimination model for the feature quantity obtained from the first inference model and the first inference result. Train the model. This reduces the difference between the inference result of the discriminant model and the inference result of the first inference model, thereby reducing the difference in inference results that can occur when a new second inference model is obtained based on the first inference model. It can be made even smaller. Therefore, the information processing method can further reduce the difference in inference results that occurs between the two inference models.
  • the discriminative model using the network A is used, but the training form is not limited to this.
  • the discriminative model using network B may be trained without the discriminative model using network A.
  • the processing configuration is substantially the same as the training of the discriminative model using the network B of the second embodiment.
  • the discriminative model is trained using the discriminative result of the discriminative model using the network A.
  • the processing system 10C includes a discrimination unit 11, a discrimination unit 12, a calculation unit 13, a discrimination training unit 14, a discrimination training unit 15, and a noise addition unit 19.
  • the noise addition unit 19 adds noise to the inference result.
  • the noise addition unit 19 adds noise to the identification result of the identification model using the network A and the identification result of the identification model using the network B.
  • the noise may be Gaussian noise.
  • the process of reducing weight is a process of reducing nodes or reducing node connections
  • noise is generated by restoring some of the weights that lead to the deleted node or the weights related to the deleted connection. It may be noise.
  • the type of noise is not limited to this.
  • the noise-added identification result is input to the determination unit 12.
  • the noise addition unit 19 may add noise only to the second inference result.
  • the noise addition unit 19 adds noise to the identification result of the identification model using the network B.
  • the noise-added identification result is input to the determination unit 12.
  • the first inference result that is, the identification result of the identification model using the network A is input to the discrimination unit 12 as it is without adding noise.
  • FIG. 20 is a schematic diagram for explaining a method of applying noise applied by the noise applying unit 19 in the present embodiment.
  • the noise addition unit 19 adds noise to the entire inference result. For example, as shown in P1 of FIG. 20, noise is added to all the element components and channel components of the inference result.
  • the element component is represented by element E
  • the height component and width component of the element are represented by height H and width W
  • the channel component is represented by channel C.
  • the noise addition unit 19 may add noise to a part of the inference result. Specifically, the noise addition unit 19 may add noise to a part of the inference result having a predetermined element component. For example, as shown in P2 of FIG. 20, noise is added to a part of the inference result corresponding to a predetermined element component of the inference result.
  • the predetermined element component may be randomly determined.
  • the noise addition unit 19 may add noise to a part of the inference result having a predetermined channel component. For example, as shown in P3 of FIG. 20, noise is added to a part of the inference result corresponding to a predetermined channel component of the inference result.
  • the predetermined channel component may be randomly determined.
  • FIG. 21 is a flow chart showing the processing executed by the processing system 10C in the present embodiment.
  • steps S101 to S108 shown in FIG. 21 is the same as the processing of the processing system 10 in the first embodiment (see FIG. 6). Steps S161 and S162 are newly added between steps S102 and S103.
  • step S161 the noise addition unit 19 adds noise to the identification result of the identification model using the network A.
  • step S162 the noise addition unit 19 adds noise to the identification result of the identification model using the network B.
  • step S161 may be omitted as shown in FIG. 22.
  • noise is added to the second inference result, and in the acquisition of the second discrimination information, the second inference result in which noise is added to the discrimination model is input to the second inference result. 2 Acquire discrimination information.
  • the discrimination model it is possible to prevent the discrimination model from being able to easily distinguish between the first inference result and the second inference result.
  • the training of the discrimination model progresses, it becomes easy to discriminate between the first inference result and the second inference result, and the training of the second inference model using the discrimination information may be stagnant.
  • noise is added to at least the second inference result, which makes discrimination by the discrimination model difficult. As a result, the training of the second inference model can be suppressed from stagnation.
  • FIG. 23 is a block diagram showing a functional configuration of the processing system 10D according to the present embodiment.
  • the processing system 10D includes a discrimination unit 11, a discrimination unit 12, a calculation unit 13, a discrimination training unit 14, a discrimination training unit 15A, a conversion unit 16, and a noise addition unit 19D.
  • the noise addition unit 19D adds noise to the second inference result.
  • the noise addition unit 19D determines the noise to be applied based on the discrete width of the second inference result. Specifically, the noise addition unit 19D determines the amplitude of the distribution of Gaussian noise based on the standard deviation of Gaussian noise and the discrete width. For example, the noise addition unit 19D determines the amplitude of the distribution of Gaussian noise so that the width of the value corresponding to twice the standard deviation of Gaussian noise is equal to or larger than the discrete width of the second inference result. Details will be described with reference to FIG. 24.
  • FIG. 24 is a schematic diagram for explaining the noise applied by the noise imparting unit 19D in the present embodiment.
  • FIG. 24 shows the value of the second inference result and the distribution of Gaussian noise for each of the values.
  • the horizontal axis is the value of the second inference result
  • the vertical axis is the number of values (in other words, the frequency of occurrence of values).
  • the distance between the values is the discrete width ⁇ .
  • the amplitude of the Gaussian noise distribution is, for example, 2 ⁇ .
  • the noise addition unit 19D determines the Gaussian noise so that, for example, 2 ⁇ ⁇ ⁇ .
  • the above amplitude is an example, and is not limited to this value as long as the discrimination model can make it difficult to discriminate between the first inference result and the second inference result.
  • FIG. 25 is a schematic diagram for explaining a method of applying noise applied by the noise applying unit 19D in the present embodiment.
  • the noise addition unit 19D determines the amplitude with respect to the entire inference result. For example, the amplitude is uniquely determined for all the element components and channel components of the inference result, and the determined amplitude is used to add noise as shown in P4 of FIG.
  • the element component is represented by element E
  • the height component and width component of the element are represented by height H and width W
  • the channel component is represented by channel C.
  • the noise addition unit 19D may determine the amplitude for each part of the inference result. Specifically, the noise addition unit 19D may determine the amplitude for each predetermined range of the element component of the inference result. For example, as shown in P5 of FIG. 25, Gaussian noise having a different distribution is applied to each predetermined range of the element component by using the amplitude determined for each predetermined range of the element component of the inference result.
  • the noise addition unit 19D may determine the amplitude for each predetermined range of the channel component of the inference result. For example, as shown in P6 of FIG. 25, Gaussian noise having a different distribution is applied to each predetermined range of the channel component using the amplitude determined for each predetermined range of the channel component of the inference result.
  • the noise determined based on the discrete width may be noise different from Gaussian noise. Specifically, it may be noise generated by restoring a part of the weight connected to the deleted node or the weight related to the deleted connection as described above.
  • the noise addition unit 19D may add noise to the first inference result by using the above method as long as the discrete width of the first inference result can be obtained. Further, as the noise added to the first inference result, noise determined regardless of the discrete width (for example, Gaussian noise having a preset amplitude) may be added.
  • the range to which noise is applied may be the entire inference result as in the fourth embodiment, may be a part of the inference result having a predetermined element component, or may be a predetermined channel component. It may be a part of the inference result having.
  • the noise addition unit 19D determines the discrete width based on the conversion setting in the conversion process of the conversion unit 16. Specifically, the noise addition unit 19D determines the discrete width based on the weight reduction setting in the weight reduction process. For example, in the case of quantization processing, the discrete width is determined based on the number of bits after quantization. In the case of the process of reducing the number of nodes or the number of connected nodes, the discrete width is determined based on which node in the discriminative model is reduced.
  • FIG. 26 is a flow chart showing the processing executed by the processing system 10D in the present embodiment.
  • steps S101 to S107 and steps S121 to S123 shown in FIG. 26 are the same as the processes of the processing system 10A in the second embodiment (see FIG. 11).
  • a new step S171 is added between steps S102 and S103, and a new step S172 is added between steps S121 and S122.
  • step S171 the noise addition unit 19D adds noise of the determined amplitude to the identification result of the identification model using the network B. If the amplitude determination process described later has not been executed yet, the noise of the initialized amplitude is added.
  • noise may be added to the identification result of the identification model using the network A as in step S161 of the flowchart of FIG. 18 of the fourth embodiment.
  • step S172 the noise addition unit 19D determines the discrete width of the coefficient conversion and the amplitude of the noise. Specifically, the noise addition unit 19D determines the discrete width based on the conversion setting of the conversion unit 16. Further, the noise addition unit 19D determines the amplitude of noise based on the determined discrete width. As described above, the noise amplitude determined in step S172 is used as the noise amplitude given in step S171.
  • the discrete width of the inference result is determined based on the conversion setting in the conversion process.
  • the discrete width is determined in consideration of the content of the conversion, and the noise is determined based on the discrete width. Therefore, it is possible to add noise suitable for the inference result output by the inference model after the conversion. Therefore, it is possible to effectively suppress the influence of the discretization of the inference result caused by the transformation of the inference model on the discrimination process of the discrimination model.
  • the discrete width may be estimated from the inference result.
  • the noise addition unit 19D analyzes the distribution of the data in the second inference result and estimates the discrete width based on the distribution. In this case, the noise can be determined based on the discrete width of the inference result even if the conversion setting is not available.
  • each component may be configured by dedicated hardware or may be realized by executing a software program suitable for each component.
  • Each component may be realized by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • the software that realizes the information processing apparatus of the above-described embodiment and the above-described modification is the following program.
  • this program is an information processing method executed by a processor using a memory in a computer, inputting the first data into the first inference model, acquiring the first inference result, and inputting the first data.
  • Discrimination information that is input to the second inference model, the second inference result is acquired, and it is determined whether the input information is the output of the first inference model or the output of the second inference model.
  • the first discriminant result is input to the discriminant model that outputs the above, and the first discriminant information that is the discriminant information about the input first inference result is acquired, and the first discriminant information and the first discrimination information are obtained.
  • the first error indicating the difference from the correct answer information indicating that it is the output of the inference model is acquired, the second inference result is input to the discrimination model, and the discrimination information about the input second inference result is input.
  • the second discriminant information is acquired, and the second error indicating the difference between the second discriminant information and the correct answer information indicating that it is the output of the second inference model is acquired.
  • the discriminant model is trained by machine learning so as to reduce the second error, the second data is input to the second inference model, the third inference result is acquired, and the discriminant model is trained.
  • the third inference result is input, the third discrimination information which is the discrimination information about the input third inference result is acquired, and it is said that it is the output of the third discrimination information and the first inference model.
  • It is a program that acquires a third error indicating a difference from the correct answer information to be shown, and executes an information processing method for training the second inference model by machine learning so as to reduce the third error.
  • this program is an information processing method executed by a processor using a memory in a computer, and inputs the first data to the first inference model, acquires the first inference result, and obtains the first inference result. Discrimination information that is input to the second inference model, the second inference result is acquired, and it is determined whether the input information is the output of the first inference model or the output of the second inference model.
  • the first inference result is input to the discrimination model that outputs the above, the first discrimination information that is the discrimination information about the input first inference result is acquired, and the first discrimination information and the first The first error indicating the difference from the correct answer information indicating that it is the output of the inference model is acquired, the second inference result is input to the discrimination model, and the discrimination information about the input second inference result is obtained.
  • the second discriminant information is acquired, and the second error indicating the difference between the second discriminant information and the correct answer information indicating that it is the output of the second inference model is acquired.
  • the discriminant model is trained by machine learning so as to reduce the second error, the second data is input to the second inference model, the third inference result is acquired, and the discriminant model is trained.
  • the third inference result is input, the third discrimination information which is the discrimination information about the input third inference result is acquired, and the third discrimination information and the output of the first inference model are obtained.
  • the third error indicating the difference from the correct answer information to be shown
  • training the third inference model by machine learning so as to reduce the third error
  • converting the trained third inference model A program that executes an information processing method that updates the second inference model.
  • the present invention is not limited to this embodiment. As long as the gist of the present invention is not deviated, various modifications that can be conceived by those skilled in the art are applied to the present embodiment, and a form constructed by combining components in different embodiments is also within the scope of one or more embodiments. May be included within.
  • the present invention can be used in a system that generates a new inference model based on an existing inference model.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

第1データを第1モデルに入力して第1結果を取得し(S101)、第1データを第2モデルに入力して第2結果を取得し(S102)、判別モデルに入力された第1結果についての判別情報と、第1モデルの出力であることを示す正解情報との誤差を取得し(S103)、判別モデルに入力された第2結果についての判別情報と、第2モデルの出力であることを示す正解情報との誤差を取得し(S104)、誤差を小さくするように判別モデルを機械学習により訓練し(S105)、第2データを第2モデルに入力して第3結果を取得し(S106)、判別モデルに入力された第3結果についての判別情報と、第1モデルの出力であることを示す正解情報との誤差を取得し(S107)、誤差を小さくするように第2モデルを機械学習により訓練する(S108)。

Description

情報処理方法、および情報処理システム
 本発明は、情報処理方法、および情報処理システムに関する。
 システムの計算リソース及び性能仕様に基づいて機械学習処理のための設定を変更する技術がある(特許文献1参照)。これにより、計算リソース及び性能仕様が制約されても推論性能がある程度維持される。
米国特許出願公開第2016/0328644号明細書
 しかしながら、上記文献で開示される技術では、推論性能は維持されても、設定変更前の機械学習処理により得られる推論モデルによる推論結果と、設定変更後の機械学習処理により得られる推論モデルの推論結果とが異なることがあるという問題がある。
 そこで、本発明は、2つの推論モデルの間に生じる推論結果の差異を小さくする情報処理方法などを提供する。
 本発明の一態様に係る情報処理方法は、プロセッサがメモリを用いて実行する情報処理方法であって、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、前記第2推論モデルを機械学習により訓練する情報処理方法である。
 なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
 本発明の情報処理方法は、2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。
図1は、実施の形態1における処理システムの機能構成を示すブロック図である。 図2は、実施の形態1における処理システムにおける判別モデルの訓練を示す説明図である。 図3は、実施の形態1における処理システムにおける判別モデルの訓練に用いられる正解情報を示す説明図である。 図4は、実施の形態1における処理システムにおける識別モデルの訓練を示す説明図である。 図5は、実施の形態1における処理システムにおける識別モデルの訓練に用いられる正解情報を示す説明図である。 図6は、実施の形態1における処理システムが実行する処理を示すフロー図である。 図7は、実施の形態1における推論システムの機能構成を示すブロック図である。 図8は、実施の形態1における推論システムが実行する処理を示すフロー図である。 図9は、実施の形態2における処理システムの機能構成を示すブロック図である。 図10は、実施の形態2における処理システムにおける識別モデルの訓練を示す説明図である。 図11は、実施の形態2における処理システムが実行する処理を示すフロー図である。 図12は、実施の形態3における処理システムの機能構成を示すブロック図である。 図13は、実施の形態3における処理システムにおける判別モデルの訓練を示す説明図である。 図14は、実施の形態3における処理システムにおける判別モデルの訓練に用いられる正解情報を示す説明図である。 図15は、実施の形態3における処理システムにおける識別モデルの訓練を示す説明図である。 図16は、実施の形態3における処理システムにおける識別モデルの訓練に用いられる正解情報を示す説明図である。 図17は、実施の形態3における処理システムが実行する処理を示すフロー図である。 図18は、実施の形態4における処理システムの機能構成を示すブロック図である。 図19は、実施の形態4における処理システムの機能構成の別の例を示すブロック図である。 図20は、実施の形態4におけるノイズ付与部が付与するノイズの付与方法を説明するための模式図である。 図21は、実施の形態4における処理システムが実行する処理を示すフロー図である。 図22は、実施の形態4における処理システムが実行する処理の別の例を示すフロー図である。 図23は、実施の形態5における処理システムの機能構成を示すブロック図である。 図24は、実施の形態5におけるノイズ付与部が付与するノイズを説明するための模式図である。 図25は、実施の形態5におけるノイズ付与部が付与するノイズの付与方法を説明するための模式図である。 図26は、実施の形態5における処理システムが実行する処理を示すフロー図である。
 近年、IoT機器にDeep Learning等の機械学習で訓練された推論モデルを組み込むことが検討されている。しかし、当該推論モデルは、コスト及びプライバシーの観点から、クラウドコンピューティング環境又はGPU(Graphical Processing Unit)を用いた環境ではなく、演算能力及びメモリ容量などの計算リソースが限られた機器上のプロセッサで動作することが求められる。このような計算リソースが限られたプロセッサ上で推論を行うために、推論モデルを量子化する等の手法を用いて推論モデルを軽量化することが考えられる。
 例えば、上記特許文献1で開示される技術は、システムの計算リソース及び性能仕様に基づいて機械学習処理のための設定を変更する。これにより、計算リソース及び性能仕様が制約されても推論性能がある程度維持される。
 しかし、推論性能が維持されても、軽量化前の推論モデルの振る舞いと、軽量化後の推論モデルの振る舞いとの間に差異が生じることがある。言い換えると、軽量化前の推論モデルの推論結果と、軽量化後の推論モデルの推論結果との間に差異が生じることがある。
 そこで、本発明の一態様に係る情報処理方法は、プロセッサがメモリを用いて実行する情報処理方法であって、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、前記第2推論モデルを機械学習により訓練する情報処理方法である。
 上記態様によれば、上記情報処理方法は、第1推論結果および第2推論結果のどちらであるかを適切に判別できる判別モデルの訓練をしたうえで、訓練されたその判別モデルを用いて第2推論結果が第1推論結果であると判別されるように第2推論モデルを訓練する。その結果、第2推論モデルは、第1推論モデルと同じ推論結果を出力するように訓練される。つまり、上記情報処理方法は、第1推論モデルと第2推論モデルとの間に生じる推論結果の差異を小さくすることができる。したがって、2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。具体的には、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。このように、上記情報処理方法は、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。
 例えば、訓練された前記第2推論モデルに、別の前記第2データを入力して、別の前記第3推論結果を取得し、取得した別の前記第3推論結果に基づいて、前記第2推論モデルをさらに訓練してもよい。
 上記態様によれば、訓練された第2推論モデルを新たな第1データを用いてさらに訓練する(言い換えると訓練を再帰的に繰り返す)ので、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異をより一層小さくすることができる。よって、上記情報処理方法は、2つの推論モデルの間に生じる推論結果の差異をより一層小さくすることができる。
 また、本発明の一態様に係る情報処理方法は、プロセッサがメモリを用いて実行する情報処理方法であって、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、第3推論モデルを機械学習により訓練し、訓練された前記第3推論モデルを変換する変換処理によって、前記第2推論モデルを更新する情報処理方法である。
 上記態様によれば、上記情報処理方法は、第1推論結果および第2推論結果のどちらであるかを適切に判別できる判別モデルの訓練をしたうえで、訓練されたその判別モデルを用いて第2推論結果が第1推論結果であると判別されるように第3推論モデルを訓練する。そして、訓練された第3推論モデルから変換処理により第2推論モデルを得ることで、第2推論モデルを更新する。その結果、第2推論モデルは、第1推論モデルと同じ推論結果を出力するように訓練される。つまり、上記情報処理方法は、第1推論モデルと第2推論モデルとの間に生じる推論結果の差異を小さくすることができる。したがって、2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。具体的には、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。このように、上記情報処理方法は、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。
 例えば、更新された前記第2モデルに、別の前記第2データを入力して、別の前記第3推論結果を取得し、取得した別の前記第3推論結果に基づいて、前記第3推論モデルを機械学習によりさらに訓練し、さらに訓練された前記第3推論モデルの前記変換処理によって前記第2推論モデルをさらに更新してもよい。
 上記態様によれば、訓練された第3推論モデルを新たな第1データを用いてさらに訓練して第2推論モデルを得る(言い換えると訓練を再帰的に繰り返す)ので、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異をより一層小さくすることができる。よって、上記情報処理方法は、2つの推論モデルの間に生じる推論結果の差異をより一層小さくすることができる。
 例えば、前記第1推論モデル、前記第2推論モデル、及び前記第3推論モデルは、ニューラルネットワークモデルであり、前記変換処理は、前記ニューラルネットワークモデルを軽量化する処理を含んでもよい。
 上記態様によれば、第3推論モデルであるニューラルネットワークモデルを軽量化することで第2推論モデルを得る。よって、第1推論モデルに基づいて、軽量化された新たな第2推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。よって、上記情報処理方法は、推論モデルに基づいて、軽量化された新たな推論モデルを得る場合に、上記2つの推論モデルの間に生じる差異を小さくすることができる。したがって、IoT機器などの計算リソースが限られた環境においても、推論性能を維持しつつ第1推論モデルの振る舞いに近い第2推論モデルを適用することができる。
 例えば、前記軽量化する処理は、前記ニューラルネットワークモデルを量子化する処理を含んでもよい。
 上記態様によれば、第3推論モデルであるニューラルネットワークモデルを量子化することで第2推論モデルを得る。そのため、ネットワーク構造を変更することなくニューラルネットワークモデルを軽量化でき、軽量化前後の推論性能及び推論結果(振る舞い)の変動を抑制することができる。
 例えば、前記量子化する処理は、前記ニューラルネットワークモデルの係数を浮動小数点形式から固定小数点形式へ変換する処理を含んでもよい。
 上記態様によれば、第3推論モデルであるニューラルネットワークモデルの係数(重み)を浮動小数点形式から固定小数点形式に変換することで第2推論モデルを得る。そのため、推論性能及び推論結果(振る舞い)の変動を抑制しながら、一般的な組込み環境に適応させることができる。
 例えば、前記軽量化する処理は、前記ニューラルネットワークモデルのノードを削減する処理、または、前記ニューラルネットワークモデルのノードの接続を削減する処理を含んでもよい。
 上記態様によれば、第3推論モデルであるニューラルネットワークモデルのノードの削減またはノードの接続の削減をすることで第2推論モデルを得る。そのため、ノード数及びノードの接続の削減は計算量の削減に直結するため、第2推論モデルを計算リソースの制約が厳しい環境に適応させることができる。
 例えば、さらに、前記第1データを前記第1推論モデルに入力することで得られる特徴量を前記判別モデルに入力して第4推論結果を取得し、前記判別モデルの訓練では、さらに前記第1推論結果と前記第4推論結果との差分を示す第4誤差をさらに用いて前記判別モデルを機械学習により訓練してもよい。
 上記態様によれば、第1推論モデルから得られる特徴量に対する判別モデルによる推論結果(第4推論結果)と、第1推論結果との差分をさらに用いて判別モデルを訓練する。これにより、判別モデルの推論結果と第1推論モデルの推論結果との差異を小さくし、これにより、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異をより一層小さくすることができる。よって、上記情報処理方法は、2つの推論モデルの間に生じる推論結果の差異をより一層小さくすることができる。
 例えば、さらに、前記第2推論結果にノイズを付与し、前記第2判別情報の取得では、前記判別モデルに前記ノイズが付与された前記第2推論結果を入力して前記第2判別情報を取得してもよい。
 上記態様によれば、判別モデルが第1推論結果と第2推論結果とを容易に見分けることができるようになることを抑制できる。判別モデルの訓練が進むと、第1推論結果と第2推論結果との判別が容易となり、判別情報を用いた第2推論モデルの訓練が停滞してしまうことがある。しかし、上記態様によれば、少なくとも第2推論結果にノイズが付与されるため、判別モデルによる判別が困難となる。その結果、第2推論モデルの訓練が停滞することを抑制できる。
 例えば、前記ノイズは、前記第2推論結果の離散幅に基づいて決定されてもよい。
 上記態様によれば、推論結果の特徴を残しつつ、判別モデルが推論結果の離散幅を特徴として推論結果を判別してしまうことを抑制できる。
 例えば、前記ノイズは、ガウスノイズを含み、前記ガウスノイズの分布の振幅は、前記ガウスノイズの標準偏差と前記第2推論結果の離散幅とに基づいて決定されてもよい。
 上記態様によれば、離散幅をガウスノイズでカバーする範囲を制御することができる。したがって、判別モデルが判別できない程度にガウスノイズを決定することができ、ノイズの過不足を抑制できる。
 例えば、前記ガウスノイズの分布の振幅は、前記第2推論結果のエレメント成分の所定の範囲ごとに決定されてもよい。
 例えば、前記ガウスノイズの分布の振幅は、前記第2推論結果のチャネル成分の所定の範囲ごとに決定されてもよい。
 上記態様によれば、振幅が各成分の所定の範囲ごとに決定されるため、各成分の所定の範囲ごとにノイズを決定することができる。したがって、各成分の所定の範囲ごとに、判別モデルが判別困難となるようなノイズをそれぞれ付与することができる。
 例えば、前記ノイズは、所定のエレメント成分を有する前記第2推論結果の一部に付与されてもよい。
 例えば、前記ノイズは、所定のチャネル成分を有する前記第2推論結果の一部に付与されてもよい。
 上記態様によれば、各成分の所定の範囲ごとに、判別モデルが判別困難となるようなノイズをそれぞれ付与することができる。
 例えば、さらに、前記第2推論結果にノイズを付与し、前記第2判別情報の取得では、前記判別モデルに前記ノイズが付与された前記第2推論結果を入力して前記第2判別情報を取得し、前記ノイズは、ガウスノイズを含み、前記ガウスノイズは、前記第2推論結果の離散幅に基づいて決定され、前記離散幅は、前記変換処理における変換設定に基づいて決定されてもよい。
 上記態様によれば、変換の内容を考慮して離散幅が決定されノイズが当該離散幅に基づいて決定されるため、変換後の推論モデルが出力する推論結果に適したノイズを付与することができる。したがって、推論モデルの変換により生じる推論結果の離散化による判別モデルの判別処理への影響を効果的に抑制することができる。
 例えば、前記第1データおよび前記第2データは、画像データであってもよい。
 上記態様によれば、画像データに対する推論に用いる推論モデルに基づいて新たな推論モデルを得る場合に、上記2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。
 また、本発明の一態様に係る情報処理システムは、第3データを取得する取得部と、前記取得部が取得した前記第3データを第2推論モデルに入力し、第2推論結果を取得して出力する推論部とを備え、前記第2推論モデルは、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、前記第2判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、前記第2推論モデルを機械学習により訓練する、ことにより得られた第2推論モデルである情報処理システムである。
 上記態様によれば、情報処理システムは、既存の推論モデルに基づいて、推論結果の差異を小さくするように生成された新たな推論モデルを用いて推論処理を実行し、推論結果を出力することができる。
 また、本発明の一態様に係る情報処理システムは、第3データを取得する取得部と、前記取得部が取得した前記第3データを第2推論モデルに入力し、第2推論結果を取得して出力する推論部とを備え、前記第2推論モデルは、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、第3推論モデルを機械学習により訓練し、訓練された前記第3推論モデルを変換する変換処理によって、前記第2推論モデルを更新することにより得られた第2推論モデルである情報処理システムである。
 上記態様によれば、情報処理システムは、既存の推論モデルに基づいて、推論結果の差異を小さくするように生成された新たな推論モデルを用いて推論処理を実行し、推論結果を出力することができる。
 なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
 以下、実施の形態について、図面を参照しながら具体的に説明する。
 なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
 (実施の形態1)
 本実施の形態において、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくする情報処理方法および情報処理システムについて説明する。以降において、情報処理方法を単に処理方法ともいい、情報処理システムを単に処理システムともいう。
 図1は、本実施の形態における処理システム10の機能構成を示すブロック図である。処理システム10は、既存の推論モデルと同じ推論結果を出力するように構成された新たな推論モデルを得るためのシステムである。
 図1に示されるように、処理システム10は、識別部11と、判別部12と、算出部13と、判別訓練部14と、識別訓練部15とを備える。処理システム10が備える各機能部は、プロセッサ(例えばCPU(Central Processing Unit))(不図示)が、メモリを用いて所定のプログラムを実行することで実現され得る。なお、処理システム10は、1つの装置として実現されてもよいし、互いに通信可能な複数の装置によって実現されてもよい。
 識別部11は、入力されたデータ(入力データともいう)を、推論モデルである識別モデルを用いて識別する機能部である。識別モデルは、例えば、ニューラルネットワークモデルである。入力データは、例えば画像データであり、この場合を例として説明するが、入力データは、マイクロフォンから出力される音声データ、LiDAR(Light Detection and Ranging)等のレーダから出力される点群データ、圧力センサから出力される圧力データ、温度センサ又は湿度センサから出力される温度データ又は湿度データ、または、香りセンサから出力される香りデータなどのような、正解データが取得可能なセンシングデータが用いられ得る。入力データは、第1データおよび第2データに相当する。
 識別部11は、入力データを識別する識別モデルに用いられるニューラルネットワークとして、ネットワークAおよびBを取得する。より具体的には、識別部11は、ネットワークAおよびBそれぞれに含まれる係数を取得する。ネットワークAを用いた識別モデルが、「既存の推論モデル」に相当し、第1推論モデルともいう。ネットワークBを用いた識別モデルが、既存の推論モデルと同じ推論結果を出力するように構成される新たな推論モデルに相当し、第2推論モデルともいう。ネットワークBを用いた識別モデルは、識別訓練部15によって、ネットワークAを用いた識別モデルと同じ識別結果を出力するように訓練される(後述)。
 識別部11は、入力データをネットワークAを用いた識別モデルで識別した結果を示す識別結果(第1推論結果ともいう)を出力する。また、識別部11は、入力データをネットワークBを用いて識別した結果を示す識別結果(第2推論結果ともいう)を出力する。また、識別部11は、識別訓練部15によって訓練された、ネットワークBを用いた識別モデルで、入力データを識別した結果を示す識別結果(第3推論結果ともいう)を出力する。
 上記識別結果は、入力データである画像データを識別した結果を示す情報であり、例えば、画像データに映っている物もしくは状況、または、それらの属性を示す情報を含む。また、上記識別結果は、入力データの特徴を示す情報である特徴量を含んでもよい。また、上記識別結果は、識別モデルの処理の中間データであってもよく、上記特徴量が中間データであってもよい。
 判別部12は、識別部11による識別結果を取得し、取得した識別情報が、ネットワークAを用いた識別モデルで識別した結果であるのか、または、ネットワークBを用いた識別モデルで識別した結果であるのかを判別する機能部である。判別部12は、推論モデル(判別モデルともいう)を用いて上記判別を行う。判別モデルは、例えば、ニューラルネットワークモデルである。
 判別部12は、識別部11から、ネットワークAを用いた識別モデルで識別した結果(ネットワークAによる識別結果ともいう)と、ネットワークBを用いた識別モデルで識別した結果(ネットワークBによる識別結果ともいう)とを取得する。判別部12は、識別部11から得た識別結果を判別モデルに入力して、入力された識別結果についての判別情報を取得する。判別情報は、入力された識別結果が、ネットワークAによる識別結果であるか、または、ネットワークBによる識別結果であるかを示す情報であり、例えば、ネットワークAによる識別結果であるか、または、ネットワークBによる識別結果であるかを確率的に示す情報である。
 算出部13は、判別部12が出力した判別情報と正解情報との誤差を算出する機能部である。算出部13は、ネットワークAによる識別結果に対して判別部12が判別した結果を示す判別情報と、正解情報との差分を示す誤差情報(第1誤差ともいう)とを取得する。ここで、正解情報は、判別情報がネットワークAによる識別結果であることを示す情報である。また、誤差情報は、判別情報と正解情報とを用いて、算出部13が保有している損失関数によって演算することで算出される。損失関数は、例えば、判別情報と正解情報とのそれぞれに含まれる確率の二乗和誤差を利用した関数であり、この場合を例として説明するがこれに限られない。
 また、算出部13は、ネットワークBによる識別結果に対して判別部12が判別した結果を示す判別情報と、正解情報との差分を示す誤差情報(第2誤差ともいう)とを取得する。ここで、正解情報は、判別情報がネットワークBによる識別結果であることを示す情報である。また、誤差情報については、ネットワークAを用いる場合と同様である。
 また、算出部13は、訓練されたネットワークBによる識別結果(第3推論結果に相当)に対して判別部12が判別した結果を示す判別情報と、正解情報との差分を示す誤差情報(第3誤差ともいう)を取得する。ここで、正解情報は、判別情報がネットワークAによる識別結果であることを示す情報である。
 判別訓練部14は、判別モデルを機械学習により訓練する機能部である。判別訓練部14は、算出部13が算出した第1誤差および第2誤差を取得し、第1誤差および第2誤差を小さくするように、判別モデルを機械学習により訓練する。判別訓練部14は、算出部13が保有している損失関数を参照し、判別モデルに含まれる係数をどのように調整すれば、第1誤差および第2誤差が小さくなるかを判断し、第1誤差および第2誤差が小さくなるように判別モデルに含まれる係数を更新する。損失関数には、二乗和誤差を用いる方法などの周知技術が採用され得る。
 識別訓練部15は、ネットワークBを用いた識別モデルを機械学習により訓練する機能部である。識別訓練部15は、算出部13が算出した第3誤差を取得し、第3誤差を小さくするように、ネットワークBを用いた識別モデルを機械学習により訓練する。識別訓練部15は、算出部13が保有している損失関数を参照し、ネットワークBに含まれる係数をどのように調整すれば、第3誤差が小さくなるかを判断し、第3誤差が小さくなるようにネットワークBに含まれる係数を更新する。このとき、識別訓練部15は、判別モデルに含まれる係数を変化させずに固定している。係数の更新によって訓練されたネットワークBは、識別部11に入力される。
 さらに、識別部11は、識別訓練部15が更新したネットワークBを用いた識別モデルに、新たな入力データを入力することで、新たな識別結果を取得する。そして、取得された識別結果を上記識別情報として用いることによって、判別部12、算出部13、判別訓練部14および識別訓練部15が上記と同様の処理を実行することで、処理システム10は、ネットワークBをさらに訓練する。
 以降において、処理システム10によるネットワークBの更新の概要について説明する。ネットワークBの更新は、判別モデルの訓練と、ネットワークBを用いた識別モデルの訓練とが繰り返し実行されることでなされる。以降において、(1)判別モデルの訓練と、(2)ネットワークBを用いた識別モデルの訓練とについて説明する。
 (1)判別モデルの訓練
 図2は、本実施の形態における処理システム10における判別モデルの訓練を示す説明図である。図3は、本実施の形態における処理システム10における判別モデルの訓練に用いられる正解情報を示す説明図である。
 識別部11は、入力画像が入力されたとき、ネットワークAを用いた識別モデルと、ネットワークBを用いた識別モデルとのそれぞれによって画像を識別する識別処理を実行し、識別結果を出力する。識別結果は、例えば、「犬:70%、猫:30%」という情報である。上記識別結果は、入力画像に映っている被写体が犬である確率が70%であり、被写体が猫である確率が30%であることを意味する。以降でも同様とする。識別部11が出力した識別結果は、判別部12に提供される。
 判別部12は、識別部11から提供された識別結果が、ネットワークAを用いた識別モデルによって識別された識別結果であるか、または、ネットワークBを用いた識別モデルによって識別された識別結果であるかをネットワークDを用いた判別モデルによって判別する。判別情報は、例えば、「A:70%、B:30%」という情報である。上記識別結果は、ネットワークAを用いた識別モデルで識別された識別結果である確率が70%であり、ネットワークBを用いた識別モデルで識別された識別結果である確率が30%であることを意味する。
 算出部13は、ネットワークAについて、判別部12が出力した判別情報と、正解情報との誤差を算出する。具体的には、算出部13は、ネットワークAを用いた識別モデルでの識別結果に対する判別結果として「A:70%、B:30%」という判別情報が得られた場合、この判別情報と、ネットワークAを用いた識別モデルでの識別結果を示す正解情報「A:100%、B:0%」とを比較する(図3参照)。そして、算出部13は、判別情報と正解情報とにおけるネットワークAに係る確率の差(1-0.7)の二乗である0.09から算出される誤差を得る。
 また、算出部13は、ネットワークBについても上記と同様に、判別部12が出力した判別情報と、正解情報との誤差を算出する。すなわち、算出部13は、ネットワークBを用いた識別モデルでの識別結果に対する判別結果として「A:70%、B:30%」という判別情報が得られた場合、ネットワークBを用いた識別モデルでの識別結果を示す正解情報「A:0%、B:100%」とを比較する(図3参照)。そして、算出部13は、判別情報と正解情報とにおけるネットワークBに係る確率の差(1-0.3)の二乗である0.49から算出される誤差を得る。
 判別訓練部14は、算出部13によって算出される誤差を小さくするように、ネットワークDに含まれる係数を調整する。このとき、判別訓練部14は、損失関数を参照し、係数の調整によって上記誤差が小さくなるように上記係数を調整する。このようにして、判別訓練部14は、ネットワークDの係数を調整することによってネットワークDを更新する。
 (2)ネットワークBを用いた識別モデルの訓練
 図4は、本実施の形態における処理システム10における識別モデルの訓練を示す説明図である。図5は、本実施の形態における処理システム10における識別モデルの訓練に用いられる正解情報を示す説明図である。
 図4に示されるように、識別部11に入力画像が入力されたとき、識別部11は、ネットワークBを用いた識別モデルによって画像を識別する識別処理を実行し、識別結果を出力する。識別結果は、例えば、「犬:80%、猫:20%」という情報である。識別部11が出力した識別結果は、判別部12に提供される。
 判別部12は、識別部11から提供された識別結果が、ネットワークAを用いた識別モデルによって識別された識別結果であるか、または、ネットワークBを用いた識別モデルによって識別された識別結果であるかをネットワークDを用いた判別モデルによって判別する。判別結果は、例えば、「A:20%、B:80%」という判別情報として得られる。
 算出部13は、判別部12が出力した判別情報と、正解情報との差分を算出する。具体的には、算出部13は、ネットワークBを用いた識別モデルでの識別結果に対する判別結果として「A:20%、B:80%」という判別情報が得られた場合、ネットワークAを用いた識別モデルでの識別結果を示す正解情報「A:100%、B:0%」とを比較する(図5参照)。そして、算出部13は、判別情報と正解情報とにおけるネットワークAに係る確率の差(1-0.2)の二乗である0.64から算出される誤差を得る。
 そして、識別訓練部15は、算出部13によって算出される誤差を小さくするように、ネットワークBに含まれる係数を調整する。このとき、識別訓練部15は、ネットワークDに含まれる係数を変化させずに固定している。
 識別訓練部15がネットワークBに含まれる係数を調整するときには、損失関数を参照し、係数の調整によって上記誤差を小さくするように上記係数を調整する。このようにして、識別訓練部15は、ネットワークBの係数を調整することによってネットワークBを更新する。
 以上のように構成された処理システム10が実行する処理について説明する。
 図6は、本実施の形態における処理システム10が実行する処理(処理方法ともいう)を示すフロー図である。
 ステップS101において、識別部11は、ネットワークAを用いた識別モデルに入力データを入力して、ネットワークAによる識別結果を取得する。
 ステップS102において、識別部11は、ネットワークBを用いた識別モデルに入力データを入力して、ネットワークBによる識別結果を取得する。
 ステップS103において、判別部12は、ステップS101で識別部11が取得したネットワークAによる識別結果を判別モデルに入力することで判別情報を取得する。また、算出部13は、判別部12が取得した判別情報と、正解情報との誤差を算出する。上記正解情報は、入力された識別結果が、ネットワークAによる識別結果であることを示す情報である。
 ステップS104において、判別部12は、ステップS102で識別部11が取得したネットワークBによる識別結果を判別モデルに入力することで判別情報を取得する。また、算出部13は、判別部12が取得した判別情報と、正解情報との誤差を算出する。上記正解情報は、入力された識別結果が、ネットワークBによる識別結果であることを示す情報である。
 ステップS105において、判別訓練部14は、ステップS103およびS104で算出された誤差を用いて、判別モデルに入力された識別結果がネットワークAまたはBのどちらによる識別結果であるかを判別モデルが正しく判別できるように、判別モデルのネットワークの係数を更新する。これにより、判別モデルが訓練される。
 ステップS106において、識別部11は、ネットワークBを用いた識別モデルに入力データを入力して、ネットワークBによる識別結果を取得する。
 ステップS107において、判別部12は、ステップS106で識別部11が取得したネットワークBによる識別結果を判別モデルに入力することで判別情報を取得する。また、算出部13は、判別部12が取得した判別情報と、正解情報との誤差を算出する。上記正解情報は、入力された識別結果が、ネットワークAによる識別結果であることを示す情報である。
 ステップS108において、識別訓練部15は、ステップS107で算出された誤差を用いて、ネットワークBによる識別結果がネットワークAの識別結果であると判別部12により判別されるように、ネットワークBの係数を更新する。
 以上の一連の処理により、処理システム10は、ネットワークAによる識別結果およびネットワークBによる識別結果のどちらであるかを適切に判別できる判別モデルの訓練をしたうえで、訓練されたその判別モデルを用いて、ネットワークBによる識別結果がネットワークAの識別結果であると判別されるようにネットワークBの係数を更新し、これにより、ネットワークBを用いた識別モデルを訓練する。その結果、ネットワークBを用いた識別モデルは、ネットワークAを用いた識別モデルと同じ推論結果を出力するように訓練される。このように、処理システム10は、ネットワークAを用いた識別モデルに基づいて、ネットワークBを用いた識別モデルを得る場合に生じ得る識別結果の差異を小さくすることができる。
 次に、処理システム10によって得られたネットワークBを用いた推論システム20について説明する。推論システムを情報処理システムともいう。
 図7は、本実施の形態における推論システム20の機能構成を示すブロック図である。
 図7に示されるように、推論システム20は、取得部21と、推論部22とを備える。推論システム20が備える各機能部は、プロセッサ(例えばCPU)(不図示)が、メモリを用いて所定のプログラムを実行することで実現され得る。
 取得部21は、入力されたデータ(入力データともいう)を取得する機能部である。入力データは、処理システム10に入力されるデータと同様に、例えば画像データである。取得部21は、取得した入力データを推論部22に提供する。入力データは、第3データに相当する。
 推論部22は、取得部21が取得した入力データを推論モデル(第2推論モデルに相当)に入力し、推論結果を取得して出力する機能部である。推論部22が推論結果を得るために用いる推論モデルは、処理システム10によって訓練された、ネットワークBを用いた識別モデルである。
 図8は、本実施の形態における推論システム20が実行する処理を示すフロー図である。
 図8に示されるように、ステップS201において、取得部21は、入力データを取得する。
 ステップS202において、推論部22は、取得部21が取得した入力データを推論モデルに入力し、推論結果を取得して出力する。
 このようにして、推論システム20は、既存の推論モデルに基づいて、推論結果の差異を小さくするように生成された新たな推論モデルを用いて推論処理を実行し、推論結果を出力することができる。
 以上のように、本実施の形態の情報処理方法は、第1推論結果および第2推論結果のどちらであるかを適切に判別できる判別モデルの訓練をしたうえで、訓練されたその判別モデルを用いて第2推論結果が第1推論結果であると判別されるように第2推論モデルを訓練する。その結果、第2推論モデルは、第1推論モデルと同じ推論結果を出力するように訓練される。つまり、上記情報処理方法は、第1推論モデルと第2推論モデルとの間に生じる推論結果の差異を小さくすることができる。したがって、2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。具体的には、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。このように、上記情報処理方法は、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。
 また、訓練された第2推論モデルを新たな第1データを用いてさらに訓練する(言い換えると訓練を再帰的に繰り返す)ので、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異をより一層小さくすることができる。よって、上記情報処理方法は、2つの推論モデルの間に生じる推論結果の差異をより一層小さくすることができる。
 また、画像データに対する推論に用いる推論モデルに基づいて新たな推論モデルを得る場合に、上記2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。
 また、情報処理システムは、既存の推論モデルに基づいて、推論結果の差異を小さくするように生成された新たな推論モデルを用いて推論処理を実行し、推論結果を出力することができる。
 (実施の形態2)
 本実施の形態において、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくする情報処理方法および情報処理システムについて、実施の形態1におけるものとは異なる構成を説明する。なお、実施の形態1におけるものと同じ構成要素については同じ符号を付し、詳細な説明を省略する。
 図9は、本実施の形態における処理システム10Aの機能構成を示すブロック図である。本実施の形態の処理システム10Aは、既存の推論モデルと同じ推論結果を出力するように構成された新たな推論モデルを得るためのシステムである。
 ここで、既存の推論モデルの形式と、新たな推論モデルの形式とは異なる。具体的には、既存の推論モデルを構成するネットワークの係数は、浮動小数点形式で表現されており、新たな推論モデルを構成するネットワークの係数は固定小数点形式で表現されている。この場合、処理システム10Aは、浮動小数点形式で表現された既存の推論モデルを量子化することで、固定小数点形式で表現された新たなネットワークを得るためのシステムであるといえる。
 図9に示されるように、処理システム10Aは、識別部11と、判別部12と、算出部13と、判別訓練部14と、識別訓練部15Aと、変換部16とを備える。処理システム10Aが備える各機能部は、実施の形態1におけるものと同様に、プロセッサ(例えばCPU)(不図示)が、メモリを用いて所定のプログラムを実行することで実現され得る。
 処理システム10Aの構成要素のうち、識別部11と、判別部12と、算出部13と、判別訓練部14とは、実施の形態1の処理システム10におけるものと同じである。識別訓練部15Aと、変換部16とについて以下で詳細に説明する。
 識別訓練部15Aは、ネットワークB1を用いた識別モデルを機械学習により訓練する機能部である。識別訓練部15Aは、算出部13が算出した第3誤差を取得し、第3誤差を小さくするように、ネットワークB1を用いた識別モデルを機械学習により訓練する。識別訓練部15Aは、算出部13が保有している損失関数を参照し、ネットワークB1に含まれる係数をどのように調整すれば、第3誤差が小さくなるかを判断し、第3誤差が小さくなるようにネットワークB1に含まれる係数を更新する。このとき、識別訓練部15Aは、判別モデルに含まれる係数を変化させずに固定している。識別訓練部15Aは、訓練されたネットワークB1を変換部16に提供する。
 変換部16は、ネットワークB1の係数に対して変換処理を行うことでネットワークBを得る機能部である。変換部16は、識別訓練部15Aによって訓練されたネットワークB1を取得し、ネットワークB1の係数に所定の変換処理を施すことによってネットワークBを更新する。
 さらに、識別部11は、更新された、ネットワークBを用いた識別モデルに、新たな入力データを入力することで、新たな識別結果を取得する。そして、取得された識別結果を上記識別情報として用いることによって、判別部12、算出部13、判別訓練部14、識別訓練部15Aおよび変換部16が上記と同様の処理を実行することで、処理システム10Aは、ネットワークBをさらに更新する。
 なお、変換処理は、例えば、ネットワークB1を軽量化する処理を含む。軽量化する処理は、例えばネットワークB1を量子化する処理を含む。例えば、ネットワークB1がニューラルネットワークモデルである場合、量子化する処理は、ニューラルネットワークモデルの係数を浮動小数点形式から固定小数点形式へ変換する処理を含んでもよい。また、軽量化する処理は、ニューラルネットワークモデルのノードを削減する処理、または、ニューラルネットワークモデルのノードの接続を削減する処理を含んでもよい。
 図10は、本実施の形態における処理システム10Aにおける識別モデルの訓練を示す説明図である。
 入力画像が識別部11に入力されてから算出部13によって誤差が算出されるまでの処理は、実施の形態1における処理システム10におけるものと同じである。
 算出部13によって誤差が算出された後に、識別訓練部15Aは、算出部13によって算出される誤差を小さくするように、ネットワークB1に含まれる係数を調整する。このとき、識別訓練部15Aは、ネットワークDに含まれる係数を変更することなく、固定している。
 識別訓練部15AがネットワークB1に含まれる係数を調整するときには、損失関数を参照し、係数の調整によって上記誤差を小さくするように上記係数を調整する。このようにして、識別訓練部15Aは、ネットワークB1の係数を調整することによってネットワークB1を更新する。
 変換部16は、識別訓練部15Aによって訓練されたネットワークB1を取得し、ネットワークB1の係数に対する変換処理を行うことで、新たなネットワークBを得る。
 以上のように構成された処理システム10Aが実行する処理について説明する。
 図11は、本実施の形態における処理システム10Aが実行する処理(処理方法ともいう)を示すフロー図である。
 図11に示されるステップS101~ステップS107に含まれる処理は、実施の形態1における処理システム10の処理と同じである(図6参照)。
 ステップS121において、識別訓練部15Aは、ステップS107で算出された誤差を用いて、ネットワークBによる識別結果がネットワークAの識別結果であると判別部12により判別されるように、ネットワークB1の係数を更新する。
 ステップS122において、変換部16は、ステップS121で識別訓練部15Aによって係数が更新されたネットワークB1を取得し、ネットワークB1の係数を変換することでネットワークBを取得する。
 ステップS123において、変換部16は、ステップS122において取得したネットワークBにより、識別部11に入力されるネットワークBを更新する。
 以上の一連の処理により、処理システム10Aは、ネットワークAによる識別結果およびネットワークBによる識別結果のどちらであるかを適切に判別できる判別モデルの訓練をしたうえで、訓練されたその判別モデルを用いて、ネットワークBによる識別結果がネットワークAの識別結果であると判別されるようにネットワークB1の係数を更新し、これにより、ネットワークB1を用いた識別モデルを訓練する。さらに、更新されたネットワークB1から変換処理によりネットワークBを得ることで、ネットワークBを用いた識別モデルを更新する。その結果、ネットワークBを用いた識別モデルは、ネットワークAを用いた識別モデルと同じ推論結果を出力するように訓練される。このように、処理システム10Aは、ネットワークAを用いた識別モデルに基づいて、ネットワークBを用いた識別モデルを得る場合に生じ得る識別結果の差異を小さくすることができる。
 以上のように、本実施の形態の情報処理方法は、第1推論結果および第2推論結果のどちらであるかを適切に判別できる判別モデルの訓練をしたうえで、訓練されたその判別モデルを用いて第2推論結果が第1推論結果であると判別されるように第3推論モデルを訓練する。そして、訓練された第3推論モデルから変換処理により第2推論モデルを得ることで、第2推論モデルを更新する。その結果、第2推論モデルは、第1推論モデルと同じ推論結果を出力するように訓練される。つまり、上記情報処理方法は、第1推論モデルと第2推論モデルとの間に生じる推論結果の差異を小さくすることができる。したがって、2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。具体的には、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。このように、上記情報処理方法は、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。
 また、訓練された第3推論モデルを新たな第1データを用いてさらに訓練して第2推論モデルを得る(言い換えると訓練を再帰的に繰り返す)ので、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異をより一層小さくすることができる。よって、上記情報処理方法は、2つの推論モデルの間に生じる推論結果の差異をより一層小さくすることができる。
 また、第3推論モデルであるニューラルネットワークモデルを軽量化することで第2推論モデルを得る。よって、第1推論モデルに基づいて、軽量化された新たな第2推論モデルを得る場合に生じ得る推論結果の差異を小さくすることができる。よって、上記情報処理方法は、推論モデルに基づいて、軽量化された新たな推論モデルを得る場合に、上記2つの推論モデルの間に生じる差異を小さくすることができる。したがって、IoT機器などの計算リソースが限られた環境においても、推論性能を維持しつつ第1推論モデルの振る舞いに近い第2推論モデルを適用することができる。
 また、第3推論モデルであるニューラルネットワークモデルを量子化することで第2推論モデルを得る。そのため、ネットワーク構造を変更することなくニューラルネットワークモデルを軽量化でき、軽量化前後の推論性能及び推論結果(振る舞い)の変動を抑制することができる。
 また、第3推論モデルであるニューラルネットワークモデルの係数を浮動小数点形式から固定小数点形式に変換することで第2推論モデルを得る。そのため、推論性能及び推論結果(振る舞い)の変動を抑制しながら、一般的な組込み環境に適応させることができる。
 また、第3推論モデルであるニューラルネットワークモデルのノードの削減またはノードの接続の削減をすることで第2推論モデルを得る。そのため、ノード数及びノードの接続の削減は計算量の削減に直結するため、第2推論モデルを計算リソースの制約が厳しい環境に適応させることができる。
 (実施の形態3)
 本実施の形態において、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくする情報処理方法および情報処理システムについて、実施の形態1におけるものとは異なる構成を説明する。なお、実施の形態1におけるものと同じ構成要素については同じ符号を付し、詳細な説明を省略する。
 図12は、本実施の形態における処理システム10Bの機能構成を示すブロック図である。本実施の形態の処理システム10Bは、既存の推論モデルを参照して、その既存の推論モデルと同じ推論結果を出力する新たな推論モデルを得るためのシステムである。
 図12は、本実施の形態における処理システム10Bの機能構成を示すブロック図である。
 図12に示されるように、識別部11Bと、判別部12Bと、第1算出部13Bと、判別訓練部14Bと、識別訓練部15Bと、第2算出部18とを備える。処理システム10Bが備える各機能部は、プロセッサ(例えばCPU)(不図示)が、メモリを用いて所定のプログラムを実行することで実現され得る。なお、処理システム10Bは、1つの装置として実現されてもよいし、互いに通信可能な複数の装置によって実現されてもよい。
 識別部11Bは、実施の形態1の識別部11と同様に、入力データを、推論モデルである識別モデルを用いて識別する機能部であり、ネットワークAおよびBによる識別結果(つまり第1推論結果、第2推論結果および第3推論結果)を出力する。
 また、識別部11Bは、ネットワークAによる識別結果(つまり第1推論結果)を第2算出部18に提供するとともに、ネットワークAによる識別結果として得られる特徴マップを判別部12Bに出力する。
 判別部12Bは、実施の形態1の判別部12と同様に、識別部11Bから得た識別結果を判別モデルに入力して、入力された識別結果についての判別情報を取得する。また、判別部12Bは、識別部11Bが出力した特徴マップを取得し、特徴マップを判別モデルに入力することで出力される識別結果を第2算出部18に出力する。
 第1算出部13Bは、実施の形態1の算出部13と同じ機能部である。
 第2算出部18は、ネットワークAによる識別結果を識別部11Bから取得し、また、特徴マップを入力とする判別モデルによる識別結果を取得する。そして、第2算出部18は、取得した2つの識別結果の誤差(第4誤差に相当)を算出する。
 判別訓練部14Bは、実施の形態1の判別訓練部14と同様に、判別モデルを機械学習により訓練する機能部である。判別訓練部14Bは、算出部13が算出した第1誤差および第2誤差を取得し、また、第2算出部18が算出した第3誤差を取得する。そして、判別訓練部14Bは、第1誤差、第2誤差および第3誤差を小さくするように、判別モデルを機械学習により訓練する。
 識別訓練部15Bは、実施の形態1の識別訓練部15と同様に、識別モデルを機械学習により訓練する機能部である。識別訓練部15Bは、第1算出部13Bが算出した第3誤差を取得し、また、第2算出部18が算出した第4誤差を取得する。そして、識別訓練部15Bは、第3誤差および第4誤差を小さくするように、ネットワークBを用いた識別モデルを機械学習により訓練する。
 以降において、処理システム10BによるネットワークBの更新の概要について説明する。ネットワークBの更新は、判別モデルの訓練と、ネットワークBを用いた識別モデルの訓練とが繰り返し実行されることでなされる。以降において、(1)判別モデルの訓練と、(2)ネットワークBを用いた識別モデルの訓練とについて説明する。
 (1)判別モデルの訓練
 図13は、本実施の形態における処理システム10Bにおける判別モデルの訓練を示す説明図である。図14は、本実施の形態における処理システム10Bにおける判別モデルの訓練に用いられる正解情報を示す説明図である。
 識別部11Bは、実施の形態1における識別部11と同様に、入力画像が入力されたとき、ネットワークAを用いた識別モデルと、ネットワークBを用いた識別モデルとのそれぞれによって画像を識別する識別処理を実行し、識別結果を出力する。さらに、識別部11Bは、入力データをネットワークAを用いて識別した結果として得られる特徴マップを判別部12Bに提供する。
 判別部12Bは、実施の形態1の判別部12と同様に、識別部11Bから提供された識別結果が、ネットワークAを用いた識別モデルによって識別された識別結果であるか、または、ネットワークBを用いた識別モデルによって識別された識別結果であるかをネットワークDを用いた判別モデルによって判別し、その判別結果を示す判別情報を第1算出部13Bに提供する。さらに、判別部12Bは、識別部11Bから提供された特徴マップを判別モデルに入力して得られる識別結果を第2算出部18に提供する。上記識別結果は、入力された特徴マップを識別した結果を示す情報であり、例えば、特徴マップの生成の元となった入力データである画像データに映っている物もしくは状況、または、それらの属性を示す情報を含む。
 第1算出部13Bは、実施の形態1の算出部13と同様に、判別部12が出力した判別情報と、正解情報との差分(第1誤差及び第2誤差)を算出する。
 第2算出部18は、ネットワークAによる識別結果を識別部11Bから取得し、また、特徴マップに対する判別モデルによる識別結果を判別部12Bから取得する。そして、第2算出部18は、取得した2つの識別結果の誤差(第4誤差に相当)を算出する。ネットワークAによる識別結果が「犬:90%、猫:10%」という情報であり、判別モデルによる識別結果が「犬:80%、猫:20%」という情報である場合、(0.9-0.8)の二乗である0.01から算出される誤差が得られる。ネットワークAによる識別結果は、判別モデルを訓練するための正解情報として扱われる(図14を参照)。
 判別訓練部14Bは、判別モデルを機械学習により訓練する機能部である。判別訓練部14Bは、第1算出部13Bおよび第2算出部18によって算出された誤差(第1誤差、第2誤差、第4誤差)を小さくするように、ネットワークDに含まれる係数を調整する。このとき、判別訓練部14Bは、損失関数を参照し、係数の調整によって上記誤差を小さくするように上記係数を調整する。このようにして、判別訓練部14Bは、ネットワークDの係数を調整することで更新することによって、判別モデルを訓練する。
 (2)ネットワークBを用いた識別モデルの訓練
 図15は、本実施の形態における処理システム10Bにおける識別モデルの訓練を示す説明図である。図16は、本実施の形態における処理システム10Bにおける識別モデルの訓練に用いられる正解情報を示す説明図である。
 識別部11Bは、入力画像が入力されたとき、ネットワークBを用いた識別モデルによって画像を識別する識別処理を実行し、識別結果を出力する。識別結果は、例えば、「犬:80%、猫:20%」という情報である。識別部11Bが出力した識別結果は、判別部12Bに提供される。
 判別部12Bは、実施の形態1の識別部11と同様に、識別部11Bから提供された識別結果が、ネットワークAを用いた識別モデルによって識別された識別結果であるか、または、ネットワークBを用いた識別モデルによって識別された識別結果であるかをネットワークDを用いた判別モデルによって判別する。また、判別部12Bは、識別部11Bから提供された特徴マップを判別モデルに入力して得られる識別結果を第2算出部18に提供する。
 第1算出部13Bは、判別部12が出力した判別情報と、正解情報との差分(第3誤差)を算出する。
 第2算出部18は、ネットワークAによる識別結果を識別部11Bから取得し、また、特徴マップを入力とする判別モデルによる識別結果を判別部12Bから取得する。そして、第2算出部18は、取得した2つの識別結果の誤差(第4誤差に相当)を算出する。ネットワークAによる識別結果が「犬:90%、猫:10%」という情報であり、判別モデルによる識別結果が「犬:80%、猫:20%」という情報である場合、(0.9-0.8)の二乗である0.01から算出される誤差が得られる。ネットワークAによる識別結果は、ネットワークBを訓練するための正解情報として扱われる(図16を参照)。
 識別訓練部15Bは、第1算出部13Bおよび第2算出部18によって算出された誤差(第3誤差、第4誤差)を小さくするように、ネットワークBに含まれる係数を調整する。このとき、識別訓練部15Bは、ネットワークDに含まれる係数を変更することなく、固定している。
 識別訓練部15BがネットワークBに含まれる係数を調整するときには、損失関数を参照し、係数の調整によって上記誤差を小さくするように上記係数を調整する。このようにして、識別訓練部15Bは、ネットワークBの係数を調整することによってネットワークBを更新する。
 以上のように構成された処理システム10Bが実行する処理について説明する。
 図17は、本実施の形態における処理システム10Bが実行する処理を示すフロー図である。
 図17に示されるステップS101~ステップS104に含まれる処理は、実施の形態1における処理システム10の処理と同じである(図6参照)。
 ステップS141において、識別部11Bは、ネットワークAによる識別結果としての特徴マップを取得する。
 ステップS142において、判別部12Bは、判別モデルに特徴マップを入力して、判別モデルを用いた特徴マップの識別結果を取得する。
 ステップS143において、第2算出部18は、ネットワークAによる識別結果と特徴マップの識別結果との誤差を算出する。
 ステップS105Aにおいて、判別訓練部14Bは、ネットワークAまたはBのどちらによる識別結果であるかを正しく判別できるように、かつ、判別モデルがネットワークAと同じ識別をするように、判別モデルのネットワークの係数を更新する。
 ステップS106およびS107に含まれる処理は、実施の形態1における処理システム10の処理と同じである(図6参照)。
 ステップS151において、識別部11Bは、ネットワークAによる識別結果としての特徴マップを取得する。
 ステップS152において、判別部12Bは、判別モデルに特徴マップを入力して、判別モデルを用いた特徴マップの識別結果を取得する。
 ステップS153において、第2算出部18は、ネットワークAによる識別結果と特徴マップの識別結果との誤差を算出する。
 ステップS108Aにおいて、識別訓練部15Bは、ネットワークBによる識別結果が、ネットワークAの識別結果であると判別されるように、かつ、判別モデルがネットワークAと同じ判別をするように、ネットワークBの係数を更新する。
 なお、本実施の形態の処理システム10Bが、さらに、実施の形態2における変換部16を備えてもよい。
 以上のように、本実施の形態の情報処理方法は、第1推論モデルから得られる特徴量に対する判別モデルによる推論結果(第4推論結果)と、第1推論結果との差分をさらに用いて判別モデルを訓練する。これにより、判別モデルの推論結果と第1推論モデルの推論結果との差異を小さくし、これにより、第1推論モデルに基づいて新たな第2推論モデルを得る場合に生じ得る推論結果の差異をより一層小さくすることができる。よって、上記情報処理方法は、2つの推論モデルの間に生じる推論結果の差異をより一層小さくすることができる。
 なお、上記実施の形態3のネットワークBを用いた識別モデルの訓練において、ネットワークAを用いた識別モデルを利用するとしたが、訓練の形態はこれに限られない。例えば、ネットワークAを用いた識別モデルなしで、ネットワークBを用いた識別モデルを訓練してもよい。この場合、処理の構成としては実施の形態2のネットワークBを用いた識別モデルの訓練と実質的に同一となる。なお、判別モデルは、ネットワークAを用いた識別モデルの識別結果を用いて訓練されている。
 (実施の形態4)
 本実施の形態において、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくする情報処理方法および情報処理システムについて、実施の形態1~3における構成とは異なる構成を説明する。なお、実施の形態1~3における構成と同じ構成要素については同じ符号を付し、詳細な説明を省略する。
 図18及び図19は、本実施の形態における処理システム10Cの機能構成を示すブロック図である。処理システム10Cは、識別部11と、判別部12と、算出部13と、判別訓練部14と、識別訓練部15とに加えてノイズ付与部19を備える。
 ノイズ付与部19は、推論結果にノイズを付与する。例えば、ノイズ付与部19は、図18に示したように、ネットワークAを用いた識別モデルの識別結果及びネットワークBを用いた識別モデルの識別結果にノイズを付与する。例えば、軽量化する処理が量子化する処理である場合、ノイズは、ガウスノイズであってもよい。また、例えば、軽量化する処理がノードの削減またはノードの接続の削減をする処理の場合は、ノイズは、削除したノードにつながる重みまたは削除した接続に関する重みの一部を復活させることで発生するノイズであってもよい。なお、ノイズの種類は、これに限定されない。ノイズが付与された識別結果が判別部12に入力される。
 なお、ノイズ付与部19は、第2推論結果にのみノイズを付与してもよい。例えば、ノイズ付与部19は、図19に示したように、ネットワークBを用いた識別モデルの識別結果にノイズを付与する。ノイズが付与された識別結果が判別部12に入力される。この場合、第1推論結果すなわちネットワークAを用いた識別モデルの識別結果は、ノイズが付与されずにそのまま判別部12に入力される。
 続いて、図20を参照して、推論結果が特徴量(特徴マップ)である場合におけるノイズの付与方法について説明する。図20は、本実施の形態におけるノイズ付与部19が付与するノイズの付与方法を説明するための模式図である。
 ノイズ付与部19は、推論結果の全体にノイズを付与する。例えば、図20のP1に示したように、推論結果の全てのエレメント成分及びチャネル成分にノイズが付与される。図20では、エレメント成分は、エレメントEで示され、エレメントの高さ成分と幅成分は、高さHと幅Wで示され、チャネル成分は、チャネルCで示される。
 なお、ノイズ付与部19は、推論結果の一部にノイズを付与してもよい。具体的には、ノイズ付与部19は、所定のエレメント成分を有する推論結果の一部にノイズを付与してもよい。例えば、図20のP2に示したように、推論結果の所定のエレメント成分に当たる推論結果の一部にノイズが付与される。なお、所定のエレメント成分は、ランダムに決定されてよい。
 また、ノイズ付与部19は、所定のチャネル成分を有する推論結果の一部にノイズを付与してもよい。例えば、図20のP3に示したように、推論結果の所定のチャネル成分に当たる推論結果の一部にノイズが付与される。なお、所定のチャネル成分は、ランダムに決定されてよい。
 以上のように構成された処理システム10Cが実行する処理について説明する。
 図21は、本実施の形態における処理システム10Cが実行する処理を示すフロー図である。
 図21に示されるステップS101~ステップS108の処理は、実施の形態1における処理システム10の処理と同じである(図6参照)。ステップS102とS103との間に、新たにステップS161及びS162が追加されている。
 ステップS161において、ノイズ付与部19は、ネットワークAを用いた識別モデルの識別結果にノイズを付与する。
 ステップS162において、ノイズ付与部19は、ネットワークBを用いた識別モデルの識別結果にノイズを付与する。
 なお、ネットワークBを用いた識別モデルの識別結果にのみノイズが付与される場合、図22に示すように、ステップS161は省略されてもよい。
 以上のように、本実施の形態の情報処理方法では、第2推論結果にノイズを付与し、第2判別情報の取得では、判別モデルにノイズが付与された第2推論結果を入力して第2判別情報を取得する。これにより、判別モデルが第1推論結果と第2推論結果とを容易に見分けることができるようになることを抑制できる。判別モデルの訓練が進むと、第1推論結果と第2推論結果との判別が容易となり、判別情報を用いた第2推論モデルの訓練が停滞してしまうことがある。しかし、本実施の形態によれば、少なくとも第2推論結果にノイズが付与されるため、判別モデルによる判別が困難となる。その結果、第2推論モデルの訓練が停滞することを抑制できる。
 (実施の形態5)
 本実施の形態において、推論モデルに基づいて新たな推論モデルを得る場合に生じ得る推論結果の差異を小さくする情報処理方法および情報処理システムについて、実施の形態1~4における構成とは異なる構成を説明する。なお、実施の形態1~4における構成と同じ構成要素については同じ符号を付し、詳細な説明を省略する。
 図23は、本実施の形態における処理システム10Dの機能構成を示すブロック図である。処理システム10Dは、識別部11と、判別部12と、算出部13と、判別訓練部14と、識別訓練部15A、変換部16とに加えてノイズ付与部19Dを備える。
 ノイズ付与部19Dは、第2推論結果にノイズを付与する。ノイズ付与部19Dは、第2推論結果の離散幅に基づいて付与するノイズを決定する。具体的には、ノイズ付与部19Dは、ガウスノイズの標準偏差と離散幅とに基づいてガウスノイズの分布の振幅を決定する。例えば、ノイズ付与部19Dは、ガウスノイズの標準偏差の2倍に相当する値の幅が第2推論結果の離散幅以上であるように、ガウスノイズの分布の振幅を決定する。詳細については、図24を参照して説明する。図24は、本実施の形態におけるノイズ付与部19Dが付与するノイズを説明するための模式図である。
 図24は、第2推論結果の値と、当該値それぞれに対するガウスノイズの分布と、を示す。図24において、横軸は第2推論結果の値、縦軸は値の数(言い換えると値の出現頻度)である。値の間の距離が離散幅Δである。ガウスノイズの分布の振幅は、例えば2σである。振幅に相当する値の幅を振幅で表現するとすると、ノイズ付与部19Dは、例えば2σ≧Δとなるようにガウスノイズを決定する。なお、上記の振幅は一例であり、判別モデルが第1推論結果と第2推論結果との判別を困難にすることができれば、この値に限定されない。
 さらに、図25を参照して、推論結果が特徴量(特徴マップ)である場合におけるガウスノイズの分布の振幅の決定方法について説明する。図25は、本実施の形態におけるノイズ付与部19Dが付与するノイズの付与方法を説明するための模式図である。
 ノイズ付与部19Dは、推論結果の全体に対して振幅を決定する。例えば、推論結果の全てのエレメント成分及びチャネル成分に対して一意に振幅が決定され、決定された振幅を用いて、図25のP4に示したように、ノイズが付与される。図25では、図20と同様に、エレメント成分は、エレメントEで示され、エレメントの高さ成分と幅成分は、高さHと幅Wで示され、チャネル成分は、チャネルCで示される。
 なお、ノイズ付与部19Dは、推論結果の一部ごとに振幅を決定してもよい。具体的には、ノイズ付与部19Dは、推論結果のエレメント成分の所定の範囲ごとに振幅を決定してもよい。例えば、推論結果のエレメント成分の所定の範囲ごとに決定された振幅を用いて、図25のP5に示したように、エレメント成分の所定の範囲ごとに異なる分布のガウスノイズが付与される。
 また、ノイズ付与部19Dは、推論結果のチャネル成分の所定の範囲ごとに振幅を決定してもよい。例えば、推論結果のチャネル成分の所定の範囲ごとに決定された振幅を用いて、図25のP6に示したように、チャネル成分の所定の範囲ごとに異なる分布のガウスノイズが付与される。
 また、離散幅に基づいて決定されるノイズは、ガウスノイズとは別のノイズであってもよい。具体的には、上述したような、削除したノードにつながる重みまたは削除した接続に関する重みの一部を復活させることで発生するノイズであってもよい。
 なお、ノイズ付与部19Dは、第1推論結果の離散幅が取得可能であれば、上記の方法を用いて第1推論結果にノイズを付与してもよい。また、第1推論結果に付与されるノイズは、離散幅に関わらず決定されるノイズ(例えば、予め設定される振幅のガウスノイズ)が付与されてもよい。
 また、ノイズが付与される範囲は、実施の形態4のように推論結果の全体であってもよいし、所定のエレメント成分を有する推論結果の一部であってもよいし、所定のチャネル成分を有する推論結果の一部であってもよい。
 さらに、ノイズ付与部19Dは、変換部16の変換処理における変換設定に基づいて離散幅を決定する。具体的には、ノイズ付与部19Dは、軽量化する処理における軽量化設定に基づいて離散幅を決定する。例えば、量子化する処理の場合は、量子化後のビット数に基づいて離散幅が決定される。また、ノードの削減またはノードの接続の削減する処理の場合は、識別モデルにおけるどのノードが削減されたかに基づいて離散幅が決定される。
 以上のように構成された処理システム10Dが実行する処理について説明する。
 図26は、本実施の形態における処理システム10Dが実行する処理を示すフロー図である。
 図26に示されるステップS101~ステップS107、ステップS121~S123の処理は、実施の形態2における処理システム10Aの処理と同じである(図11参照)。ステップS102とS103との間に、新たにステップS171が追加され、ステップS121とS122との間に、新たにステップS172が追加されている。
 ステップS171において、ノイズ付与部19Dは、ネットワークBを用いた識別モデルの識別結果に決定された振幅のノイズを付与する。後述の振幅の決定処理がまだ実行されていない場合は、初期設定された振幅のノイズが付与される。
 なお、実施の形態4の図18のフローチャートのステップS161のように、ネットワークAを用いた識別モデルの識別結果にノイズが付与されてもよい。
 ステップS172において、ノイズ付与部19Dは、係数変換の離散幅とノイズの振幅を決定する。具体的には、ノイズ付与部19Dは、変換部16の変換設定に基づいて離散幅を決定する。また、ノイズ付与部19Dは、決定された離散幅に基づいてノイズの振幅を決定する。このように、ステップS172において決定されたノイズの振幅がステップS171において付与されるノイズの振幅として用いられる。
 以上のように、本実施の形態の情報処理方法では、推論結果の離散幅は、変換処理における変換設定に基づいて決定される。これにより、変換の内容を考慮して離散幅が決定されノイズが当該離散幅に基づいて決定されるため、変換後の推論モデルが出力する推論結果に適したノイズを付与することができる。したがって、推論モデルの変換により生じる推論結果の離散化による判別モデルの判別処理への影響を効果的に抑制することができる。
 なお、離散幅は、推論結果から推定されてもよい。例えば、ノイズ付与部19Dは、第2推論結果におけるデータの分布を分析し、当該分布に基づいて離散幅を推定する。この場合、変換設定が入手できなくても推論結果の離散幅に基づいてノイズを決定することができる。
 また、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態および上記変形例の情報処理装置などを実現するソフトウェアは、次のようなプログラムである。
 すなわち、このプログラムは、コンピュータに、プロセッサがメモリを用いて実行する情報処理方法であって、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、前記第2推論モデルを機械学習により訓練する情報処理方法を実行させるプログラムである。
 また、このプログラムは、コンピュータに、プロセッサがメモリを用いて実行する情報処理方法であって、第1データを第1推論モデルに入力して、第1推論結果を取得し、前記第1データを第2推論モデルに入力して、第2推論結果を取得し、入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、第2データを前記第2推論モデルに入力して、第3推論結果を取得し、訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、前記第3誤差を小さくするように、第3推論モデルを機械学習により訓練し、訓練された前記第3推論モデルを変換する変換処理によって、前記第2推論モデルを更新する情報処理方法を実行させるプログラムである。
 以上、一つまたは複数の態様に係る情報処理装置などについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
 本発明は、既存の推論モデルに基づいて新たな推論モデルを生成するシステムに利用可能である。
 10、10A、10B、10C、10D  処理システム
 11、11B  識別部
 12、12B  判別部
 13  算出部
 13B  第1算出部
 14、14B  判別訓練部
 15、15A、15B  識別訓練部
 16  変換部
 18  第2算出部
 19、19D  ノイズ付与部
 20  推論システム
 21  取得部
 22  推論部
 A、B、B1、D  ネットワーク

Claims (20)

  1.  プロセッサがメモリを用いて実行する情報処理方法であって、
     第1データを第1推論モデルに入力して、第1推論結果を取得し、
     前記第1データを第2推論モデルに入力して、第2推論結果を取得し、
     入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、
     前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、
     前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、
     前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、
     前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、
     第2データを前記第2推論モデルに入力して、第3推論結果を取得し、
     訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、
     前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、
     前記第3誤差を小さくするように、前記第2推論モデルを機械学習により訓練する
     情報処理方法。
  2.  訓練された前記第2推論モデルに、別の前記第2データを入力して、別の前記第3推論結果を取得し、
     取得した別の前記第3推論結果に基づいて、前記第2推論モデルをさらに訓練する
     請求項1に記載の情報処理方法。
  3.  プロセッサがメモリを用いて実行する情報処理方法であって、
     第1データを第1推論モデルに入力して、第1推論結果を取得し、
     前記第1データを第2推論モデルに入力して、第2推論結果を取得し、
     入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、
     前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、
     前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、
     前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、
     前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、
     第2データを前記第2推論モデルに入力して、第3推論結果を取得し、
     訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、
     前記第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、
     前記第3誤差を小さくするように、第3推論モデルを機械学習により訓練し、
     訓練された前記第3推論モデルを変換する変換処理によって、前記第2推論モデルを更新する
     情報処理方法。
  4.  更新された前記第2推論モデルに、別の前記第2データを入力して、別の前記第3推論結果を取得し、
     取得した別の前記第3推論結果に基づいて、前記第3推論モデルを機械学習によりさらに訓練し、
     さらに訓練された前記第3推論モデルの前記変換処理によって前記第2推論モデルをさらに更新する
     請求項3に記載の情報処理方法。
  5.  前記第1推論モデル、前記第2推論モデル、及び前記第3推論モデルは、ニューラルネットワークモデルであり、
     前記変換処理は、前記ニューラルネットワークモデルを軽量化する処理を含む
     請求項3又は4に記載の情報処理方法。
  6.  前記軽量化する処理は、前記ニューラルネットワークモデルを量子化する処理を含む
     請求項5に記載の情報処理方法。
  7.  前記量子化する処理は、前記ニューラルネットワークモデルの係数を浮動小数点形式から固定小数点形式へ変換する処理を含む
     請求項6に記載の情報処理方法。
  8.  前記軽量化する処理は、前記ニューラルネットワークモデルのノードを削減する処理、または、前記ニューラルネットワークモデルのノードの接続を削減する処理を含む
     請求項5~7のいずれか1項に記載の情報処理方法。
  9.  さらに、
     前記第1データを前記第1推論モデルに入力することで得られる特徴量を前記判別モデルに入力して第4推論結果を取得し、
     前記判別モデルの訓練では、さらに前記第1推論結果と前記第4推論結果との差分を示す第4誤差をさらに用いて前記判別モデルを機械学習により訓練する
     請求項1~8のいずれか1項に記載の情報処理方法。
  10.  さらに、前記第2推論結果にノイズを付与し、
     前記第2判別情報の取得では、前記判別モデルに前記ノイズが付与された前記第2推論結果を入力して前記第2判別情報を取得する、
     請求項1~9のいずれか1項に記載の情報処理方法。
  11.  前記ノイズは、前記第2推論結果の離散幅に基づいて決定される
     請求項10に記載の情報処理方法。
  12.  前記ノイズは、ガウスノイズを含み、
     前記ガウスノイズの分布の振幅は、前記ガウスノイズの標準偏差と前記第2推論結果の離散幅とに基づいて決定される
     請求項11に記載の情報処理方法。
  13.  前記ガウスノイズの分布の振幅は、前記第2推論結果のエレメント成分の所定の範囲ごとに決定される
     請求項12に記載の情報処理方法。
  14.  前記ガウスノイズの分布の振幅は、前記第2推論結果のチャネル成分の所定の範囲ごとに決定される
     請求項12又は13に記載の情報処理方法。
  15.  前記ノイズは、所定のエレメント成分を有する前記第2推論結果の一部に付与される
     請求項10~14のいずれか1項に記載の情報処理方法。
  16.  前記ノイズは、所定のチャネル成分を有する前記第2推論結果の一部に付与される
     請求項10~15のいずれか1項に記載の情報処理方法。
  17.  さらに、前記第2推論結果にノイズを付与し、
     前記第2判別情報の取得では、前記判別モデルに前記ノイズが付与された前記第2推論結果を入力して前記第2判別情報を取得し、
     前記ノイズは、ガウスノイズを含み、
     前記ガウスノイズは、前記第2推論結果の離散幅に基づいて決定され、
     前記離散幅は、前記変換処理における変換設定に基づいて決定される
     請求項3~8のいずれか1項に記載の情報処理方法。
  18.  前記第1データおよび前記第2データは、画像データである
     請求項1~17のいずれか1項に記載の情報処理方法。
  19.  第3データを取得する取得部と、
     前記取得部が取得した前記第3データを第2推論モデルに入力し、第2推論結果を取得して出力する推論部とを備え、
     前記第2推論モデルは、
      第1データを第1推論モデルに入力して、第1推論結果を取得し、
      前記第1データを第2推論モデルに入力して、第2推論結果を取得し、
      入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、
     前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、
      前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、
     前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、
      前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、
      第2データを前記第2推論モデルに入力して、第3推論結果を取得し、
      訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、
     前記第2判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、
      前記第3誤差を小さくするように、前記第2推論モデルを機械学習により訓練する、
     ことにより得られた第2推論モデルである
     情報処理システム。
  20.  第3データを取得する取得部と、
     前記取得部が取得した前記第3データを第2推論モデルに入力し、第2推論結果を取得して出力する推論部とを備え、
     前記第2推論モデルは、
      第1データを第1推論モデルに入力して、第1推論結果を取得し、
      前記第1データを第2推論モデルに入力して、第2推論結果を取得し、
      入力された情報が前記第1推論モデルの出力であるか、または、前記第2推論モデルの出力であるかを判別した判別情報を出力する判別モデルに、前記第1推論結果を入力して、入力された前記第1推論結果についての前記判別情報である第1判別情報を取得し、
     前記第1判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第1誤差を取得し、
      前記判別モデルに前記第2推論結果を入力して、入力された前記第2推論結果についての前記判別情報である第2判別情報を取得し、
      前記第2判別情報と、前記第2推論モデルの出力であることを示す正解情報との差分を示す第2誤差を取得し、
      前記第1誤差、および、前記第2誤差を小さくするように、前記判別モデルを機械学習により訓練し、
      第2データを前記第2推論モデルに入力して、第3推論結果を取得し、
      訓練された前記判別モデルに前記第3推論結果を入力して、入力された前記第3推論結果についての前記判別情報である第3判別情報を取得し、
     第3判別情報と、前記第1推論モデルの出力であることを示す正解情報との差分を示す第3誤差を取得し、
      前記第3誤差を小さくするように、第3推論モデルを機械学習により訓練し、
      訓練された前記第3推論モデルを変換する変換処理によって、前記第2推論モデルを更新する
     ことにより得られた第2推論モデルである
     情報処理システム。
PCT/JP2020/047284 2019-12-30 2020-12-17 情報処理方法、および情報処理システム WO2021137294A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202080090589.2A CN114902244A (zh) 2019-12-30 2020-12-17 信息处理方法以及信息处理系统
EP20910646.7A EP4086814A4 (en) 2019-12-30 2020-12-17 INFORMATION PROCESSING PROCEDURES AND INFORMATION PROCESSING SYSTEM
JP2021568470A JPWO2021137294A1 (ja) 2019-12-30 2020-12-17
US17/850,335 US20220327362A1 (en) 2019-12-30 2022-06-27 Information processing method and information processing system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962954934P 2019-12-30 2019-12-30
US62/954,934 2019-12-30
JP2020128062 2020-07-29
JP2020-128062 2020-07-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/850,335 Continuation US20220327362A1 (en) 2019-12-30 2022-06-27 Information processing method and information processing system

Publications (1)

Publication Number Publication Date
WO2021137294A1 true WO2021137294A1 (ja) 2021-07-08

Family

ID=76685910

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/047284 WO2021137294A1 (ja) 2019-12-30 2020-12-17 情報処理方法、および情報処理システム

Country Status (5)

Country Link
US (1) US20220327362A1 (ja)
EP (1) EP4086814A4 (ja)
JP (1) JPWO2021137294A1 (ja)
CN (1) CN114902244A (ja)
WO (1) WO2021137294A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160328644A1 (en) 2015-05-08 2016-11-10 Qualcomm Incorporated Adaptive selection of artificial neural networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160328644A1 (en) 2015-05-08 2016-11-10 Qualcomm Incorporated Adaptive selection of artificial neural networks

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BELAGIANNIS VASILEIOS, FARSHAD AZADE, GALASSO FABIO: "Adversarial Network Compression", ARXIV:1803.10750V2, 2018, Cornell University, pages 431 - 449, XP047501187, Retrieved from the Internet <URL:https://arxiv.org/pdf/1803.10750v2.pdf.> [retrieved on 20210304] *
See also references of EP4086814A4
TAKAHASHI: "TAKAHASHI Spring GAN Festival", GAN ABEJA TECH BLOG, 30 May 2017 (2017-05-30), pages 1 - 26, XP055838614, Retrieved from the Internet <URL:https://tech-blog.abeja.asia/entry/everyday_gan> [retrieved on 20210304] *
XU ZHENG, HSU YEN-CHANG, HUANG JIAWEI: "Training Shallow and Thin Networks for Acceleration via Knowledge Distillation with Conditional Adversarial Networks", ARXIV:1709.00513V2, 2018, pages 1 - 10, XP081312839, Retrieved from the Internet <URL:https://arxiv.org/pdf/1709.00513v2.pdf> [retrieved on 20210304] *

Also Published As

Publication number Publication date
EP4086814A1 (en) 2022-11-09
US20220327362A1 (en) 2022-10-13
EP4086814A4 (en) 2023-03-01
CN114902244A (zh) 2022-08-12
JPWO2021137294A1 (ja) 2021-07-08

Similar Documents

Publication Publication Date Title
WO2020166322A1 (ja) 学習データ取得装置、モデル学習装置、それらの方法、およびプログラム
JPWO2018207334A1 (ja) 画像認識装置、画像認識方法および画像認識プログラム
US12026046B2 (en) Error log anomaly detection
US20200160149A1 (en) Knowledge completion method and information processing apparatus
JP7205640B2 (ja) 学習方法、学習プログラム、および学習装置
JPWO2021059348A5 (ja)
WO2021137294A1 (ja) 情報処理方法、および情報処理システム
JP7205641B2 (ja) 学習方法、学習プログラム、および学習装置
US20220405561A1 (en) Electronic device and controlling method of electronic device
JP7171478B2 (ja) 情報処理方法、及び情報処理システム
JPWO2021059349A5 (ja)
KR20180022180A (ko) 전자전 위협신호의 분류를 위한 딥 신경망 학습장치 및 방법
Rodrigues et al. H∞ filtering for Markovian jump linear systems with mode partial information
WO2022249224A1 (ja) 情報処理装置、情報処理方法、およびプログラム
JPWO2018198298A1 (ja) パラメータ推定装置、パラメータ推定方法、及びプログラム
WO2022009541A1 (ja) 情報処理方法、及び、情報処理システム
US20230204549A1 (en) Apparatus and automated method for evaluating sensor measured values, and use of the apparatus
US20220005471A1 (en) Optimization apparatus, optimization method, and program
CN112783747A (zh) 一种应用程序的执行时间预测方法及装置
WO2022196227A1 (ja) 情報処理方法、情報処理システム、および、プログラム
US20190236354A1 (en) Information processing method and information processing system
WO2018211914A1 (ja) 推定プログラム、推定方法および推定装置
WO2023218661A1 (ja) システム設計学習装置、システム設計学習方法、及びコンピュータ読み取り可能な記録媒体
WO2021111831A1 (ja) 情報処理方法、情報処理システム及び情報処理装置
WO2023095240A1 (ja) 支援装置、支援方法、および支援プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20910646

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021568470

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020910646

Country of ref document: EP

Effective date: 20220801