Information processing method and information processing system

JP7610602B2Active Publication Date: 2025-01-08PANASONIC INTELLECTUAL PROPERTY CORP OF AMERICA
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2022534936
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-02-04
Filing Date
2021-05-24
Publication Date
2025-01-08
Estimated Expiration
2041-05-24

AI Technical Summary

Benefits of technology

【0014】 本開示の一態様に係る情報処理方法等によれば、入力データの組み合わせによらず、2つの推論モデルの間に生じる推論結果の差異を小さくすることができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007610602000001
    Figure 0007610602000001
  • Figure 0007610602000002
    Figure 0007610602000002
  • Figure 0007610602000003
    Figure 0007610602000003
Patent Text Reader

Abstract

The present invention comprises acquiring first feature information by inputting first data to a first model (S101), acquiring second feature information by inputting the first data to a second model (S102), acquiring a first conversion result by performing a conversion process on the first feature information (S103), acquiring a second conversion result by performing the conversion process on the second feature information (S104), acquiring a first projection result by performing a projection process on the first conversion result (S105), acquiring a second projection result by performing the projection process on the second conversion result (S106), calculating an error between the first projection result and the second projection result (S107), and training the second model so as to reduce the error (S108). The conversion process is a process by which the error between the first projection result and the second projection result becomes larger than an error between a projection result acquired by performing the projection process on the first feature information and a projection result acquired by performing the projection process on the second feature information.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to an information processing method and an information processing system. [Background technology]

[0002] There is a technique for changing settings for machine learning processing based on the computational resources and performance specifications of a system (see, for example, Patent Literature 1). This allows inference performance to be maintained to a certain degree even if the computational resources and performance specifications are restricted.

[0003] There is also a technology that reduces the difference in inference performance between two inference models with different input data based on the distance in the projection space of the input data (see, for example, Non-Patent Document 1). This makes it possible to reduce the difference in inference performance to a certain extent even if the input data is different.

[0004] Here, the inference performance is the precision or accuracy of the inference result for the correct answer data, for example, the correct answer rate of the inference result for the entire input data. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] US Patent Application Publication No. 2016 / 0328644 [Non-patent literature]

[0006] [Non-Patent Document 1] Eric Tzeng, Judy Hoffman, Ning Zhang, Kate Saenko, and Trevor Darrell, “Deep domain confusion: Maximizing for domain invariance”, arXiv:1412.3474 Summary of the Invention [Problem to be solved by the invention]

[0007] However, the technology disclosed in Patent Document 1 above has the problem that even if inference performance is maintained, the inference results using the inference model obtained by machine learning processing before the settings are changed may differ from the inference results using the inference model obtained by machine learning processing after the settings are changed.

[0008] Furthermore, the technology disclosed in Non-Patent Document 1 has a problem that, depending on the combination of input data, the distance in the projective space of the input data may become small, and training by machine learning processing may not progress.

[0009] The present disclosure is intended to solve the above-mentioned conventional problems, and aims to provide an information processing method, etc. that reduces the difference in inference results between two inference models regardless of the combination of input data. [Means for solving the problem]

[0010] An information processing method according to one aspect of the present disclosure is an information processing method executed by a processor, comprising: inputting first data into a first inference model to obtain first feature information; inputting the first data into a second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first conversion result to obtain a first projection result; performing the projection process on the second conversion result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training the second inference model by machine learning to reduce the first error; and the conversion process is a process in which the error between the first projection result and the second projection result is greater than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information.

[0011] An information processing method according to one aspect of the present disclosure is an information processing method executed by a processor, comprising: inputting first data into a first inference model to obtain first feature information; inputting the first data into a second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first conversion result to obtain a first projection result; performing the projection process on the second conversion result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training a third inference model by machine learning to reduce the first error, wherein the conversion process is a process such that the error between the first projection result and the second projection result is greater than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information; and performing a model conversion process to convert the trained third inference model to update the second inference model.

[0012] An information processing system according to one embodiment of the present disclosure includes an acquisition unit that acquires second data, and an inference unit that inputs the second data acquired by the acquisition unit into a second inference model, acquires and outputs a second inference result, and the second inference model includes an information processing method executed by a processor, the information processing method including inputting first data into a first inference model to acquire first feature information, inputting the first data into the second inference model to acquire second feature information, performing a conversion process on the first feature information to acquire a first conversion result, performing the conversion process on the second feature information to acquire a second conversion result, and performing a projection process on the first conversion result. a first projection result is obtained, the second transformation result is subjected to the projection processing to obtain a second projection result, a first error indicating the error between the first projection result and the second projection result is obtained, and the second inference model is trained by machine learning to reduce the first error, wherein the transformation processing is a processing in which the error between the first projection result and the second projection result is larger than the error between a first non-transformed projection result obtained by performing the projection processing on the first feature information and a second non-transformed projection result obtained by performing the projection processing on the second feature information.

[0013] An information processing system according to one embodiment of the present disclosure includes an acquisition unit that acquires second data, and an inference unit that inputs the second data acquired by the acquisition unit into a second inference model, and acquires and outputs a second inference result, wherein the second inference model is an information processing method executed by a processor, comprising: inputting first data into a first inference model to acquire first feature information, inputting the first data into the second inference model to acquire second feature information, performing a conversion process on the first feature information to acquire a first conversion result, performing the conversion process on the second feature information to acquire a second conversion result, performing a projection process on the first conversion result to acquire the first projection result, and projecting the second conversion result onto the first conversion result. The projection process is performed to obtain a second projection result, a first error indicating the error between the first projection result and the second projection result is obtained, and a third inference model is trained by machine learning to reduce the first error, and the conversion process is a process in which the error between the first projection result and the second projection result is larger than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information, and the second inference model is updated by a model conversion process that converts the trained third inference model, thereby resulting in a model obtained by executing the information processing method. Effect of the Invention

[0014] According to an information processing method and the like relating to one embodiment of the present disclosure, it is possible to reduce the difference in inference results between two inference models regardless of the combination of input data. [Brief description of the drawings]

[0015] [Figure 1] FIG. 1 is a block diagram showing a functional configuration of the information processing system according to the first embodiment. [Diagram 2] FIG. 2 is an explanatory diagram showing training in the second inference unit in the information processing system according to the first embodiment. [Diagram 3] FIG. 3 is a flow diagram showing the processing executed by the information processing system according to the first embodiment. [Figure 4]FIG. 4 is a block diagram showing a functional configuration of the inference system according to the first embodiment. [Diagram 5] FIG. 5 is a flow diagram showing the processing executed by the inference system according to the first embodiment. [Figure 6] FIG. 6 is a block diagram showing a functional configuration of the information processing system according to the second embodiment. As shown in FIG. [Figure 7] FIG. 7 is an explanatory diagram showing training in the second inference unit in the information processing system according to the second embodiment. [Figure 8] FIG. 8 is a flow diagram showing a process executed by the information processing system according to the second embodiment. [Figure 9] FIG. 9 is a block diagram showing a functional configuration of the information processing system according to the third embodiment. As shown in FIG. [Figure 10] FIG. 10 is an explanatory diagram showing training in the second inference unit in the information processing system according to the third embodiment. [Figure 11] FIG. 11 is a flow diagram showing a process executed by the information processing system according to the third embodiment. [Figure 12] FIG. 12 is a block diagram showing a functional configuration of an information processing system according to the fourth embodiment. As shown in FIG. [Figure 13] FIG. 13 is an explanatory diagram showing a change in the projection processing in the information processing system according to the fourth embodiment. [Figure 14] FIG. 14 is an explanatory diagram showing training in the second inference unit in the information processing system according to the fourth embodiment. [Figure 15] FIG. 15 is a flow diagram showing a process executed by the information processing system according to the fourth embodiment. [Figure 16] FIG. 16 is a flow diagram illustrating a change process of the projection process among the processes executed by the information processing system according to the fourth embodiment. [Figure 17] FIG. 17 is a block diagram showing a functional configuration of an information processing system according to the fifth embodiment. As shown in FIG. [Figure 18] FIG. 18 is an explanatory diagram showing a change in the conversion process in the information processing system according to the fifth embodiment. [Figure 19] FIG. 19 is an explanatory diagram showing training in the second inference unit in the information processing system according to the fifth embodiment. [Figure 20] FIG. 20 is a flow diagram showing the processing executed by the information processing system according to the fifth embodiment. [Figure 21] FIG. 21 is a flow diagram showing a process of changing the conversion process among the processes executed by the information processing system according to the fifth embodiment. [Figure 22] FIG. 22 is a block diagram showing a functional configuration of an information processing system according to the sixth embodiment. As shown in FIG. [Figure 23] FIG. 23 is an explanatory diagram showing a change in the combination of the conversion process and the projection process in the information processing system according to the sixth embodiment. [Figure 24] FIG. 24 is an explanatory diagram showing training in the second inference unit in the information processing system according to the sixth embodiment. [Diagram 25] FIG. 25 is a flow diagram showing a process executed by the information processing system according to the sixth embodiment. [Figure 26] FIG. 26 is a flow diagram showing a change in the combination of the conversion process and the projection process among the processes executed by the information processing system according to the sixth embodiment. [Figure 27] FIG. 27 is a flowchart showing a process executed by an information processing system according to a modified example. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0016] (How one aspect of the present disclosure was achieved) In recent years, the incorporation of inference models trained by machine learning such as deep learning into IoT devices has been considered. However, from the viewpoints of cost and privacy, such inference models are required to run on processors on devices with limited computational resources such as computing power and memory capacity, rather than on cloud computing environments or environments using GPUs (Graphical Processing Units). In order to perform inference on such processors with limited computational resources, it is conceivable to reduce the weight of the inference model by using techniques such as quantizing the inference model.

[0017] For example, the technology disclosed in Patent Document 1 changes settings for machine learning processing based on the system's computational resources and performance specifications. This allows inference performance to be maintained to a certain degree even if the computational resources and performance specifications are restricted. Here, inference performance refers to the precision or accuracy of the inference result for correct answer data, for example, the accuracy rate of the inference result for all input data. Note that when one input data has multiple inference targets, the inference performance may be the accuracy rate of the inference result for all multiple inference targets in one input data.

[0018] However, even if the inference performance is maintained, a difference may occur between the behavior of the inference model before and after weight reduction. In other words, a difference may occur between the inference results of the inference model before and after weight reduction.

[0019] In contrast, the technology disclosed in Non-Patent Document 1 reduces the difference in inference performance between two inference models with different input data based on the distance in the projection space of the input data. This makes it possible to reduce the difference in inference performance to a certain extent even if the input data is different.

[0020] However, depending on the combination of input data, the distance in the projective space between the inference results output by the two inference models based on the input data may become small, and training by machine learning processing may not progress. For example, when the input data is identical or similar, the distance in the projective space between the inference results output may become small, making it difficult to progress with training.

[0021] In view of such problems, the inventors have conducted extensive research and repeated experiments, and as a result have come up with an information processing method according to one embodiment of the present disclosure, which can reduce the difference in inference results between two inference models regardless of the combination of input data.

[0022] An information processing method according to one aspect of the present disclosure is an information processing method executed by a processor, comprising: inputting first data into a first inference model to obtain first feature information; inputting the first data into a second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first conversion result to obtain a first projection result; performing the projection process on the second conversion result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training the second inference model by machine learning to reduce the first error; and the conversion process is a process in which the error between the first projection result and the second projection result is greater than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information.

[0023] According to the above aspect, the information processing method performs a conversion process on the first feature information and the second feature information so that the error between the first projection result and the second projection result is larger than the error between the first non-converted projection result and the second non-converted projection result. As a result, training can be progressed more easily than when the error between the first non-converted projection result and the second non-converted projection result is used for training by machine learning processing. In addition, the information processing method trains the second inference model so that the error between the first projection result and the second projection result is smaller. As a result, the second inference model is trained to output the same inference result as the first inference model. That is, the information processing method can reduce the difference in the inference result that occurs between the first inference model and the second inference model. Specifically, the difference in the inference result that may occur when a new second inference model is obtained using the first inference model as a model can be reduced. In this way, the information processing method can reduce the difference in the inference result that may occur when a new inference model is obtained using an inference model as a model. Therefore, the above information processing method can reduce the difference in inference results between two inference models regardless of the combination of input data.

[0024] Furthermore, in training the second inference model, the second inference model may be trained by machine learning further using a second error indicating the difference between a first inference result obtained by inputting the first data into the first inference model and a second inference result obtained by inputting the first data into the second inference model.

[0025] According to the above aspect, the second inference model is trained by further using the error between the inference result for the first data obtained from the first inference model (first inference result) and the inference result for the first data obtained from the second inference model (second inference result). In this way, in addition to training to reduce the difference between the projection results, training is also performed to directly reduce the difference between the inference results of the first inference model and the inference results of the second inference model, thereby further reducing the difference in the inference results that occurs between the two inference models.

[0026] An information processing method according to one aspect of the present disclosure is an information processing method executed by a processor, comprising: inputting first data into a first inference model to obtain first feature information; inputting the first data into a second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first conversion result to obtain a first projection result; performing the projection process on the second conversion result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training a third inference model by machine learning to reduce the first error, wherein the conversion process is a process such that the error between the first projection result and the second projection result is greater than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information; and performing a model conversion process to convert the trained third inference model to update the second inference model.

[0027] According to the above aspect, the information processing method performs a conversion process on the first feature information and the second feature information so that the error between the first projection result and the second projection result is larger than the error between the first non-converted projection result and the second non-converted projection result. As a result, training can be progressed more easily than when the error between the first non-converted projection result and the second non-converted projection result is used for training by machine learning processing. The information processing method also trains a third inference model so that the error between the first projection result and the second projection result is smaller. Then, the second inference model is updated by obtaining a second inference model from the trained third inference model by a model conversion process. As a result, it can be said that the second inference model is indirectly trained to output the same inference result 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. Specifically, it can reduce the difference in inference results that may occur when a new second inference model is obtained using the first inference model as a model. In this way, the information processing method can reduce the difference in inference results that may occur when a new inference model is obtained using an inference model as a model. Therefore, the information processing method can reduce the difference in inference results between two inference models regardless of the combination of input data.

[0028] Furthermore, the above 3 In training the inference model, the third inference model may be trained by machine learning further using a second error indicating the difference between a first inference result obtained by inputting the first data into the first inference model and a second inference result obtained by inputting the first data into the second inference model.

[0029] According to the above aspect, a third inference model is trained by further using an error between an inference result for the first data obtained from the first inference model (first inference result) and an inference result for the first data obtained from the second inference model (second inference result). Then, the second inference model is updated by obtaining a second inference model from the trained third inference model by a model conversion process. In this way, in addition to training to reduce the difference between the projection results, training is also performed to directly reduce the difference between the inference results of the first inference model and the second inference model, thereby further reducing the difference in inference results that occurs between the two inference models.

[0030] Furthermore, the projection process may be changed so that the first error becomes larger.

[0031] According to the above aspect, the projection process is changed so that the error (first error) between the first projection result and the second projection result becomes larger. This makes it easier to progress with training by machine learning processing than when the projection process is not changed. In other words, it is possible to prevent the training from stagnation.

[0032] Furthermore, the conversion process may be changed so that the first error becomes larger.

[0033] According to the above aspect, the conversion process is changed so that the error (first error) between the first projection result and the second projection result becomes larger. This makes it easier to progress with the training by the machine learning process than if the conversion process was not changed. In other words, it is possible to prevent the training from stagnation.

[0034] Furthermore, the combination of the conversion process and the projection process may be changed so that the first error becomes larger.

[0035] According to the above aspect, the combination of the transformation process and the projection process is changed so that the error (first error) between the first projection result and the second projection result becomes larger. This makes it easier to progress with the training by the machine learning process than when at least one of the transformation process and the projection process is not changed. In other words, it is possible to prevent the training from stagnation.

[0036] Moreover, the first inference model, the second inference model, and the third inference model may be neural network models, and the model conversion process may include a process of reducing the weight of the neural network model.

[0037] According to the above aspect, 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 using the first inference model as a model. Therefore, the above information processing method can reduce the difference between the two inference models when a new lightweight inference model is obtained using an inference model as a model. Therefore, even in an environment with limited computational resources such as an IoT device, it is possible to apply a second inference model that is close to the behavior of the first inference model while maintaining inference performance.

[0038] The weight reduction process may include a process of quantizing the neural network model.

[0039] According to the above aspect, the second inference model is obtained by quantizing the neural network model, which is the third inference model. Therefore, the neural network model can be made lighter without changing the network structure, and the fluctuation of the inference performance and the inference result (behavior) before and after the lightening can be suppressed.

[0040] The quantizing step may also include converting coefficients of the neural network model from floating point format to fixed point format.

[0041] According to the above aspect, the second inference model is obtained by converting the coefficients (weights) of the neural network model, which is the third inference model, from floating-point format to fixed-point format. Therefore, it is possible to adapt the second inference model to a general embedded environment while suppressing fluctuations in inference performance and inference results (behavior).

[0042] The weight reduction process may include a process of reducing nodes in the neural network model, or a process of reducing connections between nodes in the neural network model.

[0043] According to the above aspect, the second inference model is obtained by reducing the number of nodes or the number of node connections of the neural network model, which is the third inference model. Therefore, since the reduction in the number of nodes and the number of node connections directly leads to a reduction in the amount of calculation, the second inference model can be adapted to an environment with severe constraints on calculation resources.

[0044] The conversion process may also include a process of scaling the input.

[0045] According to the above aspect, the first conversion result and the second conversion result are obtained by changing the scale of the first feature information and the second feature information. As a result, for example, the difference in scale between the first feature information and the second feature information can be eliminated or reduced, and therefore the difference between the first feature information and the second feature information can be clarified. In other words, the difference can be enlarged. As a result, the difference between the first projection result and the second projection result is also clarified, and therefore the training can be made to proceed more easily. In other words, the training can be prevented from stagnating. From another perspective, it can be said that the difference in distribution between the first feature information and the second feature information can be clarified. Then, these clarified differences become smaller through training by machine learning processing, and therefore the difference in the inference results occurring between the two inference models can be made even smaller.

[0046] The projection process may include projecting an input into an inner product space.

[0047] According to the above aspect, the first and second transformation results are projected into a space in which an inner product is defined to obtain the first and second projection results. This allows the norm of the first and second projection results to be defined, and for example, the second inference model can be trained to reduce the norm of the first and second projection results. As a result, the above information processing method can reduce the difference in inference results between two inference models.

[0048] The projection process may also include a process of reducing the dimensionality of the input.

[0049] According to the above aspect, the first projection result and the second projection result are obtained by reducing the dimensions of the first conversion result and the second conversion result. As a result, for example, a projection axis that represents the difference between the first conversion result and the second conversion result is selected, and then a process of reducing dimensions other than the selected projection axis is performed to obtain the first projection result and the second projection result. As a result, the above information processing method can further reduce the time required to calculate the error between the first projection result and the second projection result. In addition, the above information processing method can efficiently reduce the difference in inference results that occurs between two inference models.

[0050] The dimensionality reduction process may also include principal component analysis.

[0051] According to the above aspect, a principal component analysis is performed on the first conversion result and the second conversion result, and a process of reducing dimensions is performed to obtain a first projection result and a second projection result. This reduces principal components other than the specific principal component, making it possible to clarify the difference between the first projection result and the second projection result. For example, the specific principal component may be set to a principal component that is likely to have a larger error (distance) between the distribution of the first projection result and the distribution of the second projection result than other principal components. As a result, the above information processing method can further reduce the time required to calculate the error between the first projection result and the second projection result. In addition, it is possible to efficiently reduce the difference in inference results that occurs between two inference models.

[0052] The first data may be image data.

[0053] According to the above aspect, when a new inference model is obtained by using an inference model used for inference on image data as a model, the difference in inference results between the two inference models can be reduced.

[0054] An information processing system according to one embodiment of the present disclosure includes an acquisition unit that acquires second data, and an inference unit that inputs the second data acquired by the acquisition unit into a second inference model, acquires and outputs a second inference result, and the second inference model includes an information processing method executed by a processor, the information processing method including inputting first data into a first inference model to acquire first feature information, inputting the first data into the second inference model to acquire second feature information, performing a conversion process on the first feature information to acquire a first conversion result, performing the conversion process on the second feature information to acquire a second conversion result, and performing a projection process on the first conversion result. a first projection result is obtained, the second transformation result is subjected to the projection processing to obtain a second projection result, a first error indicating the error between the first projection result and the second projection result is obtained, and the second inference model is trained by machine learning to reduce the first error, wherein the transformation processing is a processing in which the error between the first projection result and the second projection result is larger than the error between a first non-transformed projection result obtained by performing the projection processing on the first feature information and a second non-transformed projection result obtained by performing the projection processing on the second feature information.

[0055] According to the above aspect, the information processing system can execute an inference process using a new inference model generated to reduce the difference in the inference result based on an existing inference model, and output the inference result. In this way, the new inference model with a smaller difference in the inference result can be used instead of the existing inference model. In other words, the information processing system can reduce the difference in the inference result between two inference models regardless of the combination of input data.

[0056] An information processing system according to one embodiment of the present disclosure includes an acquisition unit that acquires second data, and an inference unit that inputs the second data acquired by the acquisition unit into a second inference model, and acquires and outputs a second inference result, wherein the second inference model is an information processing method executed by a processor, comprising: inputting first data into a first inference model to acquire first feature information, inputting the first data into the second inference model to acquire second feature information, performing a conversion process on the first feature information to acquire a first conversion result, performing the conversion process on the second feature information to acquire a second conversion result, performing a projection process on the first conversion result to acquire the first projection result, and projecting the second conversion result onto the first conversion result. The projection process is performed to obtain a second projection result, a first error indicating the error between the first projection result and the second projection result is obtained, and a third inference model is trained by machine learning to reduce the first error, and the conversion process is a process in which the error between the first projection result and the second projection result is larger than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information, and the second inference model is updated by a model conversion process that converts the trained third inference model, thereby resulting in a model obtained by executing the information processing method.

[0057] According to the above aspect, the information processing system can execute an inference process using a new inference model generated to reduce the difference in the inference result based on an existing inference model, and output the inference result. In other words, the information processing system can reduce the difference in the inference result between two inference models regardless of the combination of input data.

[0058] In addition, these comprehensive or specific aspects may be realized by a system, an apparatus, an integrated circuit, a computer program, or a recording medium such as a computer-readable CD-ROM, or may be realized by any combination of a system, an apparatus, an integrated circuit, a computer program, or a recording medium.

[0059] Hereinafter, an embodiment according to one aspect of the present disclosure will be described with reference to the drawings.

[0060] The embodiments described below are all comprehensive or specific examples. The numerical values, shapes, materials, components, component arrangement and connection forms, steps, and order of steps shown in the following embodiments are merely examples and are not intended to limit the present disclosure. Furthermore, among the components in the following embodiments, components that are not described in an independent claim showing a top concept are described as optional components.

[0061] (Embodiment 1) In this first embodiment, an information processing method and an information processing system are described that reduce the difference in inference results that may occur when a new inference model is obtained using an inference model as a model, regardless of the combination of input data.

[0062] 1 is a block diagram showing the functional configuration of an information processing system 10A according to the present embodiment 1. The information processing system 10A is a system for obtaining a new inference model that is trained to output the same inference result as an existing inference model.

[0063] As shown in FIG. 1, the information processing system 10A includes a first inference unit 11A, a second inference unit 12A, an output conversion unit 13A, a spatial projection unit 14A, an error calculation unit 15A, a training unit 16A, and a training control unit 17A.

[0064] The information processing system 10A is realized, for example, by a computer device including a processor (for example, a CPU (Central Processing Unit)) and a memory, in which the processor executes a program stored in the memory. The information processing system 10A may be realized in one device, or in multiple devices that can communicate with each other.

[0065] The first inference unit 11A and the second inference unit 12A infer the input data (also referred to as input data) using an inference model. The inference model is, for example, a neural network model. The input data is, for example, image data. In the following, the input data is described as being image data, but the input data does not necessarily need to be limited to the example of image data. The input data may be, for example, sensing data such as audio data output from a microphone, point cloud data output from a radar such as LiDAR (Light Detection and Ranging), pressure data output from a pressure sensor, temperature data or humidity data output from a temperature sensor or humidity sensor, or scent data output from a scent sensor. The input data corresponds to the first data.

[0066] The first inference unit 11A acquires network A as a neural network used in an inference model that infers input data. More specifically, the first inference unit 11A acquires coefficients included in network A. The inference model using network A corresponds to an "existing inference model" and is also referred to as the first inference model.

[0067] The first inference unit 11A inputs input data into an inference model using the network A and outputs an inference result (also referred to as a first inference result) obtained by inputting the input data into the inference model using the network A, and feature information (also referred to as first feature information).

[0068] The second inference unit 12A acquires network B as a neural network used in an inference model that infers input data. More specifically, the second inference unit 12A acquires coefficients included in network B. The inference model using network B corresponds to a new inference model trained to output the same inference result as the existing inference model, and is also referred to as the second inference model. As will be described later, the inference model using network B is trained by the training unit 16A to output the same inference result as the inference model using network A.

[0069] The second inference unit 12A outputs an inference result (also referred to as a second inference result) obtained by inputting input data into an inference model using network B, and feature information (also referred to as second feature information).

[0070] Here, the inference result is information indicating the result of inferring the input data, and includes, for example, information indicating the objects or situations shown in the image data, or their attributes. The inference result may also include feature amounts, which are information indicating the characteristics of the input data. The inference result may also be intermediate data of the processing of the inference model, and the feature amounts may be intermediate data.

[0071] Here, the feature amount is described as intermediate data in the processing of the inference model, that is, the feature information is described as intermediate output of the inference model. For example, when the input data is image data, the feature information is a feature map showing the features of the image data. Note that the inference model may be a model in which the feature information is the final output.

[0072] The output conversion unit 13A acquires feature information from the first inference unit 11A and the second inference unit 12A, and converts the acquired feature information by a conversion process. More specifically, the output conversion unit 13A acquires the first feature information from the first inference unit 11A, and acquires the second feature information from the second inference unit 12A. Then, the output conversion unit 13A converts the acquired first feature information and second feature information using a conversion process, respectively, to acquire a conversion result for the input feature information. That is, the output conversion unit 13A outputs a conversion result (also referred to as a first conversion result) that is a result of converting the first feature information by the conversion process, and a conversion result (also referred to as a second conversion result) that is a result of converting the second feature information by the conversion process.

[0073] Here, the conversion process is a projection process performed by the spatial projection unit 14A described later, in which the error between a projection result (also referred to as the first projection result) indicating the result when the first conversion result is projected and a projection result (also referred to as the second projection result) indicating the result when the second conversion result is projected is greater than the error between a projection result (also referred to as the first non-converted projection result) indicating the result when the first feature information is projected and a projection result (also referred to as the second non-converted projection result) indicating the result when the second feature information is projected.

[0074] The spatial projection unit 14A acquires the conversion result by the output conversion unit 13A and projects the acquired conversion result by a projection process. More specifically, the spatial projection unit 14A acquires a first conversion result and a second conversion result from the output conversion unit 13A. Then, the spatial projection unit 14A projects each of the conversion results acquired from the output conversion unit 13A using a projection process to acquire a projection result for the input conversion result. That is, the spatial projection unit 14A outputs a projection result (also called a first projection result) which is a result of projecting the first conversion result by the projection process, and a projection result (also called a second projection result) which is a result of projecting the second conversion result by the projection process.

[0075] The error calculation unit 15A acquires the projection results by the spatial projection unit 14A, and calculates the error between the acquired projection results. More specifically, the error calculation unit 15A acquires the first projection result and the second projection result by the spatial projection unit 14A. Then, the error calculation unit 15A calculates error information (also called the first error) indicating the difference between the acquired first projection result and the second projection result. Here, the error information is calculated by performing an operation using a loss function held by the error calculation unit 15A. The loss function is, for example, a norm (distance) in the projective space between the projection results, and the norm is calculated, for example, by a function using the square sum error between the coordinates of the projection results. Note that the error calculation method is not limited to this.

[0076] The training unit 16A trains the inference model using network B by machine learning. The training unit 16A acquires the first error calculated by the error calculation unit 15A, and trains the inference model using network B by machine learning so as to reduce the first error. More specifically, the training unit 16A refers to the loss function held by the error calculation unit 15A, and updates the coefficients included in network B so as to reduce the first error. As the loss function, a well-known technique such as a norm based on a sum of squares error may be adopted.

[0077] The training control unit 17A controls the training of an inference model using a neural network. More specifically, the training control unit 17A judges whether the difference in behavior between the network A and the network B updated by the training unit 16A reaches the required performance, and decides whether to further train the inference model using the network B based on the judgment result. For example, the training control unit 17A acquires the first inference result output by the first inference unit 11A and the second inference result output by the second inference unit 12A that acquires the network B updated by the training unit 16A, and judges whether the difference between the first inference result and the second inference result is smaller than an allowable value.

[0078] For example, when the training control unit 17A determines that the difference in behavior between network A and network B reaches the required performance, it terminates the training of the inference model using network B. More specifically, when the difference between the first inference result and the second inference result is smaller than an allowable value, the training control unit 17A terminates the training.

[0079] Furthermore, for example, when the training control unit 17A determines that the difference in behavior between the network A and the network B does not reach the required performance, it continues training of the inference model using the network B. In this case, for example, the training control unit 17A inputs new input data to the first inference unit 11A and the second inference unit 12A, and causes the first inference unit 11A, the second inference unit 12A, the output conversion unit 13A, the space projection unit 14A, the error calculation unit 15A, and the training unit 16A to execute the above-mentioned processes again using the network A, the new network B, and the new input, thereby further training the inference model using the network B.

[0080] The following provides an overview of the update of network B by information processing system 10A.

[0081] FIG. 2 is an explanatory diagram showing training in the second inference unit 12A in the information processing system 10A according to the first embodiment.

[0082] When input data is input, the first inference unit 11A executes an inference process to infer an image using an inference model using the network A, and outputs feature information, which is an intermediate output. The feature information is, for example, an intermediate feature map in a neural network. The intermediate feature map includes feature amounts that indicate the features of the image data. The same applies hereinafter. The feature information output by the first inference unit 11A is provided to the output conversion unit 13A.

[0083] When input data is input, the second inference unit 12A executes an inference process to infer an image by an inference model using the network B, and outputs feature information as an intermediate output. The feature information is the same as the feature information output by the first inference unit 11A. The feature information output by the second inference unit 12A is provided to the output conversion unit 13A.

[0084] The output conversion unit 13A performs a conversion process on the feature information provided from the first inference unit 11A and the second inference unit 12A. The conversion process is, for example, a scale conversion that changes the range of values ​​that the feature information takes. As an example, the conversion process f is a linear scale conversion obtained by the following (Equation 1) where the input is x and the coefficient used in the scale conversion is a.

[0085] f(x)=a×x (Equation 1)

[0086] However, the conversion process is not limited to this. This conversion process makes the error E1 between the first projection result and the second projection result obtained by the subsequent projection process larger than the error E0 between the first non-converted projection result and the second non-converted projection result that have not been subjected to the conversion process. In other words, a conversion process (for example, a coefficient of linear scale conversion) is set so that the error E1 is larger than the error E0.

[0087] The spatial projection unit 14A performs a projection process on the conversion result output by the output conversion unit 13A. The projection process is, for example, a process of reducing the dimension of the input, such as a principal component analysis process. A specific principal component is selected, and principal components other than the selected principal component are reduced. That is, when performing the above process on an n-dimensional input to obtain an m-dimensional (n>m) projection result, the spatial projection unit 14A obtains an input x=(x1, x2, . . . , xn) and outputs a projection result y=(y1, y2, . . . , ym). Note that the projection process is not limited to this.

[0088] The error calculation unit 15A calculates the error between the projection results output by the spatial projection unit 14A. The error is, for example, a norm (distance) in the projection space between the projection results, and the norm is calculated by a function that uses the square sum error between the coordinates of the projection results. That is, when the first projection result y1=(y11, y12, . . . , y1m) and the second projection result y2=(y21, y22, . . . , y2m) are output as the projection results by the spatial projection unit 14A, the error calculation unit 15A calculates the square sum error between the projection results y1 and y2 by the following (Equation 2). Note that the error calculation method is not limited to this.

[0089] (y11-y21) 2 +(y12-y22) 2 +…+(y1m-y2m) 2 (Formula 2)

[0090] The training unit 16A adjusts the coefficients included in the network B so as to reduce the error calculated by the error calculation unit 15A. At this time, the training unit 16A refers to the loss function and adjusts the coefficients so as to reduce the error by adjusting the coefficients. In this way, the training unit 16A updates the network B by adjusting the coefficients of the network B.

[0091] The process executed by the information processing system 10A configured as above will be described.

[0092] FIG. 3 is a flow diagram showing a process (also called an information processing method) executed by the information processing system 10A according to the first embodiment.

[0093] In step S101, the first inference unit 11A inputs input data to an inference model using network A, and acquires first feature information from network A.

[0094] In step S102, the second inference unit 12A inputs input data to an inference model using network B and acquires second feature information from network B.

[0095] In step S103, the output conversion unit 13A performs a conversion process on the first feature information of the network A acquired by the first inference unit 11A in step S101, thereby acquiring a first conversion result.

[0096] In step S104, the output conversion unit 13A performs a conversion process on the second feature information from network B acquired by the second inference unit 12A in step S102, thereby acquiring a second conversion result.

[0097] In step S105, the spatial projection unit 14A performs a projection process on the first conversion result acquired by the output conversion unit 13A in step S103, thereby acquiring a first projection result.

[0098] In step S106, the spatial projection unit 14A performs a projection process on the second conversion result acquired by the output conversion unit 13A in step S104, thereby acquiring a second projection result.

[0099] In step S107, the error calculation unit 15A calculates an error E1 between the first projection result acquired by the spatial projection unit 14A in step S105 and the second projection result acquired by the spatial projection unit 14A in step S106.

[0100] In step S108, the training section 16A uses the error E1 calculated in step S107 to update the coefficients of network B so as to reduce the error E1.

[0101] In step S109, the training control unit 17A judges whether the difference in behavior between network A and network B updated by the training unit 16A reaches a predetermined required performance. That is, the training control unit 17A judges whether the difference between the inference result by the inference model using network A and the inference result by the inference model using the updated network B is smaller than an allowable value. If the required performance is reached, the processing is terminated. If the required performance is not reached, the processing returns to step S102, and the same series of processing as above is repeated.

[0102] Through the above series of processes, the information processing system 10A performs a transformation process on the first feature information by network A and the second feature information by network B so that the error E1 between the first projection result and the second projection result is larger than the error E0 between the first non-transformed projection result and the second non-transformed projection result. As a result, it is possible to make the training progress more easily than in the case where the error E0 is used for training by machine learning processing. System 10Atrains the inference model using network B so as to reduce error E1. As a result, the inference model using network B is trained to output the same inference result as the inference model using network A. In this way, the information processing system 10A can reduce the difference in inference results that may occur when a new inference model is obtained using the inference model using network A as a model. Therefore, regardless of the combination of input data, it is possible to reduce the difference in inference results that may occur between the inference model using network A and the inference model using network B.

[0103] Next, an inference system 20A using the network B obtained by the information processing system 10A will be described. An inference system is also called an information processing system.

[0104] FIG. 4 is a block diagram showing the functional configuration of the inference system 20A according to the first embodiment.

[0105] As shown in FIG. 4, the inference system 20A includes an acquisition unit 21A and a second inference unit 22A.

[0106] Inference system 20A is realized, for example, in a computer device having a processor (e.g., a CPU) and a memory, by the processor executing a program stored in the memory. Inference system 20A may be realized in one device, or in multiple devices that can communicate with each other.

[0107] The acquiring unit 21A acquires input data (also referred to as input data). The input data is, for example, image data, similar to the data input to the information processing system 10A. In the following, the input data is described as being image data, but the input data is not necessarily limited to being image data, similar to the case of the information processing system 10A.

[0108] The acquiring unit 21A provides the acquired input data to the second inference unit 22A. The input data corresponds to the second data.

[0109] The second inference unit 22A inputs the input data acquired by the acquisition unit 21A to an inference model (corresponding to the second inference model), acquires an inference result, and outputs it. The inference model used by the second inference unit 22A to obtain an inference result is an inference model using the network B trained by the information processing system 10A.

[0110] FIG. 5 is a flow diagram showing the processing executed by the inference system 20A according to the first embodiment.

[0111] In step S201, the acquiring unit 21A acquires input data.

[0112] In step S202, the second inference unit 22A inputs the input data acquired by the acquisition unit 21A into the inference model, and in step S203, acquires and outputs the inference result.

[0113] In this way, inference system 20A can execute inference processing using a new inference model that is generated to reduce the difference in inference results by using an existing inference model as a model, and output the inference results.

[0114] As described above, the information processing method according to the first embodiment performs a conversion process on the first feature information and the second feature information so that the error between the first projection result and the second projection result is larger than the error between the first non-converted projection result and the second non-converted projection result. As a result, training can be progressed more easily than when the error between the first non-converted projection result and the second non-converted projection result is used for training by machine learning processing. In addition, the information processing method trains the second inference model so that the error between the first projection result and the second projection result is smaller. As a result, the second inference model is trained to output the same inference result as the first inference model. That is, the information processing method can reduce the difference in the inference result that occurs between the first inference model and the second inference model. Specifically, the difference in the inference result that may occur when a new second inference model is obtained using the first inference model as a model can be reduced. In this way, the information processing method can reduce the difference in the inference result that may occur when a new inference model is obtained using an inference model as a model. Therefore, the above information processing method can reduce the difference in inference results between two inference models regardless of the combination of input data.

[0115] In addition, when a new inference model is obtained by using an inference model used for inference on image data as a model, the difference in inference results between the two inference models can be reduced.

[0116] Furthermore, the information processing system can execute an inference process using a new inference model that is generated to reduce the difference in the inference results by using an existing inference model as a model, and output the inference results. In this way, the new inference model that reduces the difference in the inference results can be used instead of the existing inference model. In other words, the information processing system can reduce the difference in the inference results that occurs between two inference models, regardless of the combination of input data.

[0117] Also, the first conversion result and the second conversion result are obtained by changing the scale of the first feature information and the second feature information. As a result, for example, the difference in scale between the first feature information and the second feature information can be eliminated or reduced, and therefore the difference between the first feature information and the second feature information can be clarified. In other words, the difference can be enlarged. As a result, the difference between the first projection result and the second projection result is also clarified, and therefore the training can be made to proceed more easily. In other words, the training can be prevented from stagnating. From another perspective, it can be said that the difference in distribution between the first feature information and the second feature information can be clarified. Then, as these clarified differences become smaller through training by machine learning processing, the difference in the inference results occurring between the two inference models can be made even smaller.

[0118] (Embodiment 2) In this embodiment 2, we will explain an information processing method and information processing system that are different from the information processing method and information processing system of embodiment 1, and that reduce the differences in inference results that may occur when obtaining a new inference model using an inference model as a model, regardless of the combination of input data.

[0119] An information processing system according to a second embodiment, which is configured by partially modifying the information processing system 10A according to the first embodiment, will be described below.

[0120] In the following, for the information processing system of embodiment 2, components similar to those of information processing system 10A of embodiment 1 have already been explained, so they are assigned the same symbols and their detailed explanations are omitted, and the explanation will focus on the differences from information processing system 10A.

[0121] 6 is a block diagram showing a functional configuration of an information processing system 10B according to the present embodiment 2. The information processing system 10B is a system for obtaining a new inference model that is trained to output the same inference result as an existing inference model.

[0122] Here, the format of the existing inference model is different from the format of the new inference model. Specifically, for example, the coefficients of the network constituting the existing inference model are expressed in floating-point format, and the coefficients of the network constituting the new inference model are expressed in fixed-point format. In this case, for example, the information processing system 10B can be said to be a system for obtaining a new network expressed in fixed-point format by quantizing the existing inference model expressed in floating-point format.

[0123] As shown in FIG. 6, the information processing system 10B includes a first inference unit 11A, a second inference unit 12B, an output conversion unit 13A, a spatial projection unit 14A, an error calculation unit 15A, a training unit 16B, a training control unit 17A, and a conversion unit 18B.

[0124] Among the components of the information processing system 10B, the first inference unit 11A, the output conversion unit 13A, the space projection unit 14A, the error calculation unit 15A, and the training control unit 17A are the same as those in the information processing system 10A according to embodiment 1. Therefore, the second inference unit 12B, the training unit 16B, and the conversion unit 18B will be described in detail below.

[0125] The second inference unit 12B, like the second inference unit 12A according to the first embodiment, performs inference on the input data by using an inference model.

[0126] Similarly to the second inference unit 12A according to the first embodiment, the second inference unit 12B acquires network B as a neural network used in an inference model for inferring input data. More specifically, the second inference unit 12B acquires coefficients included in network B. The inference model using network B corresponds to a new inference model trained to output the same inference result as the existing inference model, and is also referred to as the second inference model.

[0127] The second inference unit 12A and the second inference unit 12B in embodiment 1 differ in that (A) the second inference unit 12A in embodiment 1 acquires a network that does not undergo network conversion, whereas (B) the second inference unit 12B acquires a network B that has been converted by a conversion unit 18B described later and that is in a format different from the network A used in the existing inference model.

[0128] In addition, like the second inference unit 12A in embodiment 1, the second inference unit 12B outputs an inference result (also referred to as the second inference result) obtained by inputting input data into an inference model using network B, and feature information (also referred to as the second feature information).

[0129] The training unit 16B trains an inference model (also called a third inference model) using the network B1 by machine learning. Here, the network B1 is a network of the same type as the network A used in the existing inference model. In other words, the network B1 is a network of a different type from the network B. The training unit 16B acquires the first error calculated by the error calculation unit 15A, and trains the inference model using the network B1 by machine learning so as to reduce the first error. More specifically, the training unit 16B refers to the loss function held by the error calculation unit 15A, and updates the coefficients included in the network B1 so as to reduce the first error. The loss function is the same as that in the first embodiment.

[0130] The conversion unit 18B performs a model conversion process on the coefficients of the network B1 to obtain a network B. More specifically, the conversion unit 18B obtains the network B1 trained by the training unit 16B, and performs a predetermined model conversion process on the coefficients of the network B1 to obtain a network B.

[0131] The model conversion process includes, for example, a process of reducing the weight of the network B1. The reduction process includes, for example, a process of quantizing the network B1. For example, if the network B1 is a neural network model, the quantization process may include a process of converting coefficients of the neural network model from a floating-point format to a fixed-point format. The reduction process may also include a process of reducing nodes of the neural network model, or a process of reducing connections of nodes of the neural network model.

[0132] FIG. 7 shows a second inference unit in the information processing system 10B according to the second embodiment. 12B FIG.

[0133] The process from when the input data is input to the first inference unit 11A until the error calculation unit 15A calculates the error is similar to the process in training in the information processing system 10A according to the first embodiment.

[0134] After the error calculation unit 15A calculates the error, the training unit 16B adjusts the coefficients included in the network B1 so as to reduce the error calculated by the error calculation unit 15A. At this time, the training unit 16B refers to the loss function and adjusts the coefficients so as to reduce the error by adjusting the coefficients. In this way, the training unit 16B updates the network B1 by adjusting the coefficients of the network B1.

[0135] The conversion unit 18B obtains a new network B by acquiring the network B1 trained by the training unit 16B and performing conversion processing on the coefficients of the network B1.

[0136] The process executed by the information processing system 10B configured as above will be described.

[0137] FIG. 8 is a flow diagram showing a process (also called an information processing method) executed by the information processing system 10B according to the second embodiment.

[0138] The processes included in steps S101 to S107 and step S109 shown in FIG. 8 are similar to the processes of the information processing system 10A according to the first embodiment (see FIG. 3 and the like).

[0139] In step S121, the training section 16B uses the error E1 calculated by the error calculation section 15A in step S107 to update the coefficients of the network B1 so as to reduce the error E1.

[0140] In step S122, the conversion unit 18B obtains the network B1 whose coefficients have been updated by the training unit 16B in step S121, and obtains the network B by converting the coefficients of the network B1.

[0141] In step S123, the conversion unit 18B converts the network B acquired in step S122 into 1 Thus, the network B input to the second inference unit 12B is updated.

[0142] Through the above series of processes, the information processing system 10B trains an inference model using network B1 so as to reduce the error between the first projection result and the second projection result. Then, network B is obtained from the trained network B1 through a model conversion process, thereby updating network B. As a result, the inference model using network B is trained to output the same inference result as the inference model using network A. In this way, the information processing system 10B can reduce the difference in inference results that may occur when an inference model using network B is obtained by using an inference model using network A as a model.

[0143] As described above, the information processing method according to the second embodiment performs a conversion process on the first feature information and the second feature information so that the error between the first projection result and the second projection result is larger than the error between the first non-converted projection result and the second non-converted projection result. As a result, training can be progressed more easily than when the error between the first non-converted projection result and the second non-converted projection result is used for training by machine learning processing. In addition, the information processing method trains the third inference model so that the error between the first projection result and the second projection result is smaller. Then, the second inference model is updated by obtaining the second inference model from the trained third inference model by a model conversion process. As a result, it can be said that the second inference model is indirectly trained to output the same inference result as the first inference model. In other words, the information processing method can reduce the difference in inference results that occurs between the first inference model and the second inference model. Specifically, it can reduce the difference in inference results that may occur when a new second inference model is obtained using the first inference model as a model. In this way, the information processing method can reduce the difference in inference results that may occur when a new inference model is obtained using an inference model as a model, and therefore can reduce the difference in inference results between two inference models regardless of the combination of input data.

[0144] Also, the second inference model is obtained by reducing the weight of the neural network model, which is the third inference model. Thus, it is possible to reduce the difference in inference results that may occur when a new lightweight second inference model is obtained using the first inference model as a model. Thus, the above information processing method can reduce the difference between the two inference models when a new lightweight inference model is obtained using an inference model as a model. Therefore, even in an environment with limited computational resources, such as an IoT device, it is possible to apply a second inference model that is close to the behavior of the first inference model while maintaining inference performance.

[0145] In addition, the second inference model is obtained by quantizing the neural network model, which is the third inference model. Therefore, the neural network model can be made lighter without changing the network structure, and the fluctuations in inference performance and inference results (behavior) before and after the reduction in weight can be suppressed.

[0146] In addition, the second inference model is obtained by converting the coefficients (weights) of the neural network model, which is the third inference model, from floating-point format to fixed-point format. This makes it possible to adapt to general embedded environments while suppressing fluctuations in inference performance and inference results (behavior).

[0147] In addition, the second inference model is obtained by reducing the number of nodes or the number of node connections of the neural network model, which is the third inference model. Therefore, since the reduction in the number of nodes and the number of node connections directly leads to a reduction in the amount of calculation, the second inference model can be adapted to an environment with severe constraints on calculation resources.

[0148] Furthermore, the inference model obtained by the configuration of the present embodiment 2 may be used in the inference system in the embodiment 1. In this case, the inference system can execute inference processing using a new inference model generated so as to reduce the difference in the inference results by using an existing inference model as a model, and output the inference results.

[0149] (Embodiment 3) In this embodiment 3, we will explain an information processing method and information processing system that is different from the information processing methods and information processing systems in embodiments 1 and 2, and that reduces the differences in inference results that may occur when obtaining a new inference model using an inference model as a model, regardless of the combination of input data.

[0150] An information processing system according to the third embodiment, which is configured by partially modifying the information processing system 10A according to the first embodiment, will be described below.

[0151] In the following, for the information processing system of embodiment 3, components similar to those of information processing system 10A of embodiment 1 have already been explained, so they are assigned the same symbols and their detailed explanations are omitted, and the explanation will focus on the differences from information processing system 10A.

[0152] 9 is a block diagram showing a functional configuration of an information processing system 10C according to the present embodiment 3. The information processing system 10C is a system for obtaining a new inference model that is trained to output the same inference result as an existing inference model.

[0153] As shown in FIG. 9, the information processing system 10C includes a first inference unit 11C, a second inference unit 12C, an output conversion unit 13A, a spatial projection unit 14A, an error calculation unit 15A, a training unit 16C, a training control unit 17A, and a second error calculation unit 19C.

[0154] Among the components of the information processing system 10C, the output conversion unit 13A, the space projection unit 14A, the error calculation unit 15A, and the training control unit 17A are the same as those in the information processing system 10A according to embodiment 1. Therefore, the first inference unit 11C, the second inference unit 12C, the training unit 16C, and the second error calculation unit 19C will be described in detail below.

[0155] The first inference unit 11C has the following function in addition to the same functions as the first inference unit 11A according to embodiment 1. That is, the first inference unit 11C provides the second error calculation unit 19C with an inference result (also called a first inference result) obtained by inputting input data into an inference model using network A.

[0156] The second inference unit 12C has the following function in addition to the same functions as the second inference unit 12A according to embodiment 1. That is, the second inference unit 12C inputs input data into an inference model using network B and provides an inference result (also called a second inference result) obtained by inputting the input data into the inference model using network B to the second error calculation unit 19C.

[0157] Here, (1) the first inference unit 11C is described as outputting the first inference result to the second error calculation unit 19C and outputting the first feature information to the output conversion unit 13A, and the second inference unit 12C is described as outputting the second inference result to the second error calculation unit 19C and outputting the second feature information to the output conversion unit 13A. However, (2) the first inference unit 11C is described as outputting the first feature information to the second error calculation unit 19C and outputting the first inference result to the output conversion unit 13A, and the second inference unit 12C is described as outputting the second feature information to the second error calculation unit 19C and outputting the second The inference result may be output to the output conversion unit 13A; (3) the first inference unit 11C may output the first inference result to the second error calculation unit 19C and the output conversion unit 13A, and the second inference unit 12C may output the second inference result to the second error calculation unit 19C and the output conversion unit 13A; (4) the first inference unit 11C may output the first feature information to the second error calculation unit 19C and the output conversion unit 13A, and the second inference unit 12C may output the second feature information to the second error calculation unit 19C and the output conversion unit 13A.

[0158] In addition, when the first inference unit 11C and the second inference unit 12C output the first inference result and the second inference result to the output conversion unit 13A, the output conversion unit 13A acquires the first inference result and the second inference result, and outputs a first conversion result which is the result of converting the first inference result by a conversion process, and a second conversion result which is the result of converting the second inference result by a conversion process.

[0159] The second error calculation unit 19C calculates the error between the inference results output by the first inference unit 11C and the second inference unit 12C. That is, the second error calculation unit 19C calculates error information (also called a second error) indicating the difference between the first inference result output by the first inference unit 11C and the second inference result output by the second inference unit 12C. Here, the error information is calculated by performing an operation using a loss function held by the second error calculation unit 19C. The loss function may be the same as that in the error calculation unit 15A according to the first embodiment.

[0160] In addition, when the first inference unit 11C and the second inference unit 12C output the first feature information and the second feature information to the second error calculation unit 19C, the second error calculation unit 19C calculates a second error indicating the difference between the first feature information and the second feature information.

[0161] The training unit 16C trains the inference model using the network B by machine learning. The training unit 16C acquires the first error calculated by the error calculation unit 15A and the second error calculated by the second error calculation unit 19C, and trains the inference model using the network B by machine learning so as to reduce the first error and the second error. More specifically, the training unit 16C refers to the loss functions held by the error calculation unit 15A and the second error calculation unit 19C, and updates the coefficients included in the network B so as to reduce the first error and the second error. For the loss function, a well-known technique such as a norm based on a sum of squares error may be adopted.

[0162] FIG. 10 is an explanatory diagram showing training in the second inference unit 12C in the information processing system 10C according to the third embodiment.

[0163] The process from when the input data is input to first inference unit 11C to when the error is calculated by error calculation unit 15A is the same as the process in training in information processing system 10A according to the first embodiment.

[0164] Furthermore, when input data is input, the first inference unit 11C executes an inference process to infer an image using an inference model using the network A, and outputs an inference result. The inference result is, for example, information such as "dog: 70%, cat: 30%". The above inference result means that there is a 70% probability that the subject shown in the input image is a dog, and a 30% probability that the subject is a cat. The same applies hereinafter. The inference result output by the first inference unit 11C is provided to the second error calculation unit 19C.

[0165] Furthermore, when input data is input, the second inference unit 12C executes an inference process to infer an image by an inference model using the network B, and outputs an inference result. The inference result is the same information as the inference result output by the first inference unit 11C. The inference result output by the second inference unit 12C is provided to the second error calculation unit 19C.

[0166] The second error calculation unit 19C calculates the error between the inference results output by the first inference unit 11C and the second inference unit 12C. Specifically, when the information "dog: 70%, cat: 30%" is obtained as the inference result in the inference model using network A, and the information "dog: 60%, cat: 40%" is obtained as the inference result in the inference model using network B, the second error calculation unit 19C obtains an error calculated from 0.02, which is the sum of 0.01, which is the square of the difference in the probabilities related to dogs in the inference results (0.7-0.6), and 0.01, which is the square of the difference in the probabilities related to cats in the inference results (0.3-0.4).

[0167] The training unit 16C adjusts the coefficients included in the network B so as to reduce the errors calculated by the error calculation unit 15A and the second error calculation unit 19C. At this time, the training unit 16C refers to the loss function and adjusts the coefficients so as to reduce the errors by adjusting the coefficients.

[0168] In this manner, training unit 16C updates network B by adjusting its coefficients.

[0169] The process executed by the information processing system 10C configured as above will be described.

[0170] FIG. 11 is a flow diagram showing a process (also called an information processing method) executed by the information processing system 10C according to the present embodiment.

[0171] The processes included in steps S101 to S107 and step S109 shown in FIG. 11 are similar to the processes of the information processing system 10A according to the first embodiment (see FIG. 3 and the like).

[0172] In step S141, the first inference unit 11C inputs input data to an inference model using network A, and obtains a first inference result by network A.

[0173] In step S142, the second inference unit 12C inputs input data to an inference model using network B and obtains a second inference result by network B.

[0174] In step S143, the second error calculation unit 19C calculates an error E2 between the first inference result acquired by the first inference unit 11C in step S141 and the second inference result acquired by the second inference unit 12C in step S142.

[0175] In step S108C, the training section 16C updates the coefficients of the network B so that the error E1 calculated by the error calculation section 15A in step S107 and the error E2 calculated by the second error calculation section 19C in step S143 become smaller.

[0176] Through the above series of processes, the information processing system 10C trains the inference model using network B so that the error E1 between the first projection result and the second projection result is reduced. Furthermore, the information processing system 10C trains the inference model using network B so that the error E2 between the first inference result and the second inference result is reduced. As a result, the inference model using network B is further trained to output the same inference result as the inference model using network A. In this way, the information processing system 10C can further reduce the difference in inference results that may occur when a new inference model is obtained using the inference model using network A as a model. Therefore, regardless of the combination of input data, the difference in inference results that occurs between the inference model using network A and the inference model using network B can be further reduced.

[0177] As described above, the information processing method according to the third embodiment trains the second inference model by further using the error between the inference result for the first data obtained from the first inference model (first inference result) and the inference result for the first data obtained from the second inference model (second inference result). In this way, in addition to training to reduce the difference between the projection results, training is also performed to directly reduce the difference between the inference result of the first inference model and the inference result of the second inference model, so that the difference in the inference results between the two inference models can be further reduced.

[0178] Furthermore, the configuration according to the third embodiment may be applied to the second embodiment. In this case, a third inference model is trained by further using an error between an inference result for the first data obtained from the first inference model (first inference result) and an inference result for the first data obtained from the second inference model (second inference result). Then, the second inference model is updated by obtaining the second inference model from the trained third inference model by a model conversion process. This makes it possible to further reduce the difference between the inference result of the first inference model and the inference result of the second inference model, and further reduce the difference in the inference results occurring between the two inference models.

[0179] (Embodiment 4) In this embodiment 4, we will explain an information processing method and information processing system that is different from the information processing methods and information processing systems of embodiments 1 to 3, and that reduces the differences in inference results that may occur when obtaining a new inference model using an inference model as a model, regardless of the combination of input data.

[0180] An information processing system according to the fourth embodiment, which is configured by partially modifying the information processing system 10A according to the first embodiment, will be described below.

[0181] In the following, for the information processing system of embodiment 4, components similar to those of information processing system 10A of embodiment 1 have already been explained, so they are assigned the same symbols and their detailed explanations are omitted, and the explanation will focus on the differences from information processing system 10A.

[0182] In this embodiment, a description will be given of a configuration different from the information processing methods and information processing systems according to embodiments 1 to 3. Note that components that are substantially the same as those in embodiments 1 to 3 are given the same reference numerals, and detailed description will be omitted.

[0183] 12 is a block diagram showing a functional configuration of an information processing system 10D according to the present embodiment 4. The information processing system 10D is a system for obtaining a new inference model that is trained to output the same inference result as an existing inference model.

[0184] As shown in FIG. 12, the information processing system 10D includes a first inference unit 11A, a second inference unit 12A, an output conversion unit 13A, a spatial projection unit 14D, an error calculation unit 15D, a training unit 16A, a training control unit 17D, and a first selection unit 51D.

[0185] Among the components of information processing system 10D, first inference unit 11A, second inference unit 12A, output conversion unit 13A, and training unit 16A are the same as those in information processing system 10A according to embodiment 1. Therefore, the spatial projection unit 14D, error calculation unit 15D, training control unit 17D, and first selection unit 51D will be described in detail below.

[0186] The spatial projection unit 14D has the following functions in addition to the functions of the spatial projection unit 14A according to the first embodiment. That is, the spatial projection unit 14D acquires the projection process recorded or changed by the first selection unit 51D. Then, the spatial projection unit 14D projects the conversion result obtained from the output conversion unit 13A using the projection process obtained from the first selection unit 51D, and outputs the projection result for the input conversion result. In addition, the spatial projection unit 14D notifies the first selection unit 51D of the projection process executed by the spatial projection unit 14D. Details of the recording and change of the projection process by the first selection unit 51D will be described later.

[0187] The error calculation unit 15D has the following function in addition to the same function as the error calculation unit 15A in the embodiment 1. That is, the error calculation unit 15D outputs error information (also called a first error) calculated based on the projection result obtained from the space projection unit 14D to the first screening unit 51D.

[0188] The first selection unit 51D changes the projection process executed by the spatial projection unit 14D so that the error information calculated by the error calculation unit 15D becomes larger. Specifically, the first selection unit 51D records a combination of the executed projection process and the calculated error information, and changes the projection process based on the recorded combination. The first selection unit 51D records the combination of the projection process executed by the spatial projection unit 14D and the error information calculated by the error calculation unit 15D based on a comparison result between the combination of the projection process executed by the spatial projection unit 14D and the error information calculated by the error calculation unit 15D and the combination of the projection process and the error information recorded by the first selection unit 51D.

[0189] In detail, first, the first selection unit 51D acquires the projection process executed by the spatial projection unit 14D and the first error calculated by the error calculation unit 15D. The first selection unit 51D refers to the projection process and error information recorded by the first selection unit 51D, and if the combination of the acquired projection process and the first error does not exist in the recorded projection process and error information, in other words, if the projection process and the first error are the combination of the projection process and the error information first acquired by the first selection unit 51D, the first selection unit 51D records the projection process and the first error. If the combination of the acquired projection process and the first error exists in the recorded projection process and error information, the first selection unit 51D compares the first error with the recorded error information. If the first error is larger than the recorded error information, the first selection unit 51D records the projection process and the first error. When the first error is smaller than the recorded error information, the first screening unit 51D does not perform the recording process, and holds the recorded projection process and error information.

[0190] The first selection unit 51D refers to the history of the comparison of the above combinations, and if there is a candidate projection process that has not yet been compared, changes the projection process executed by the spatial projection unit 14D. If there is no candidate projection process that has not yet been compared, the first selection unit 51D changes the projection process executed by the spatial projection unit 14D to the projection process recorded by the first selection unit 51D, and ends the recording and changing process of the projection process. For example, the projection process may be a process (projection process A) that projects the input into an inner product space, or a process (projection process B) that reduces the dimension of the input. The process that reduces the dimension of the input may include principal component analysis. The candidates for the projection process may include different types of projection processes such as projection process A and projection process B, or may include multiple projection processes of the same type but with different processing parameters.

[0191] The recording and change processing of the projection processing by the first selection unit 51D may be terminated based on a preset threshold. In this case, the first selection unit 51D compares the first error with the threshold, and if the first error is greater than the threshold, the first selection unit 51D records the projection processing and the first error, changes the projection processing performed by the spatial projection unit 14D to the projection processing recorded by the first selection unit 51D, and terminates the recording and change processing of the projection processing. If the first error is smaller than the threshold, the first selection unit 51D refers to the projection processing and error information recorded by the first selection unit 51D, and repeats the subsequent processing in the same manner, thereby changing the projection processing performed by the spatial projection unit 14D.

[0192] The recording and change processing of the projection processing by the first selection unit 51D may be performed again based on the network B updated by the training unit 16A. In this case, the first selection unit 51D receives an instruction from the training control unit 17D and similarly executes the above processing to change the projection processing executed by the space projection unit 14D.

[0193] The training control unit 17D has the following functions in addition to the functions of the training control unit 17A according to the first embodiment. That is, the training control unit 17D causes the first selection unit 51D to execute the change process of the projection process again based on the network B updated by the training unit 16A. For example, the training control unit 17D causes the first inference unit 11A and the second inference unit 12A to input new input data, and causes the first inference unit 11A, the second inference unit 12A, the output conversion unit 13A, the space projection unit 14D, the error calculation unit 15D, the first selection unit 51D, and the training unit 16A to execute the above processes again using the network A, the new network B, and the new input, thereby further training the inference model using the network B.

[0194] FIG. 13 is an explanatory diagram showing a change in the projection processing in the information processing system 10D according to the fourth embodiment.

[0195] The process from when the input data is input to first inference unit 11A to when the error is calculated by error calculation unit 15D is the same as the process in training in information processing system 10A according to the first embodiment.

[0196] After the error calculation unit 15D calculates the error, the first selection unit 51D changes the projection process executed by the space projection unit 14D so as to increase the error calculated by the error calculation unit 15D. For example, when the projection process executed by the space projection unit 14D is a projection process that reduces the dimension of an n-dimensional input to obtain an m-dimensional (n>m) projection result, the change in the projection process includes a process of increasing or decreasing the dimension m of the projection result, which is a parameter, and a process of changing the combination of the projection axes. The details of the procedure for changing the projection process by the first selection unit 51D will be described later.

[0197] FIG. 14 shows a second inference unit in an information processing system 10D according to the fourth embodiment. 12A FIG.

[0198] The process from when the input data is input to the first inference unit 11A to when the training unit 16A updates the network B is the same as the process in training in the information processing system 10A according to the first embodiment.

[0199] The projection process executed by the spatial projection unit 14D is a process changed by the first selection unit 51D. For example, when the first selection unit 51D changes the projection process executed by the spatial projection unit 14D to a projection process that reduces the dimension of an n-dimensional input to obtain a k-dimensional (n>k) projection result, the spatial projection unit 14D acquires an input x=(x1, x2, . . . , xn) and outputs a projection result z=(z1, z2, . . . , zk).

[0200] The error calculation unit 15D calculates the error between the projection results output by the spatial projection unit 14D. The error is, for example, the norm (distance) in the projection space between the projection results, and the norm is calculated by a function that uses the square sum error between the coordinates of the projection results. That is, when the first projection result z1=(z11, z12, . . ., z1k) and the second projection result z2=(z21, z22, . . ., z2k) are output as the projection results by the spatial projection unit 14D, the error calculation unit 15D calculates the square sum error between the projection results z1 and z2 by the following (Equation 3). Note that the error calculation method is not limited to this.

[0201] (z11-z21) 2 +(z12-z22) 2 +…+(z1k-z2k) 2 (Formula 3)

[0202] The training unit 16A adjusts the coefficients included in the network B so as to reduce the error calculated by the error calculation unit 15D. At this time, the training unit 16A refers to the loss function and adjusts the coefficients so that the error is reduced by adjusting the coefficients. In this way, the training unit 16A updates the network B by adjusting the coefficients of the network B.

[0203] The process executed by the information processing system 10D configured as above will be described.

[0204] Fig. 15 and Fig. 16 are flow diagrams showing processes (also referred to as information processing methods) executed by the information processing system 10D according to the embodiment 4. Fig. 15 is a flow diagram showing processes, excluding the change process of the projection process, among the processes executed by the information processing system 10D according to the embodiment 4. Fig. 16 is a flow diagram showing the change process of the projection process among the processes executed by the information processing system 10D according to the embodiment 4.

[0205] The processes included in steps S101 to S109 shown in FIG. 15 are similar to the processes of the information processing system 10A according to the first embodiment (see FIG. 3).

[0206] In step S161, the first screening unit 51D first determines whether or not to perform threshold processing, which will be described later. If threshold processing is not to be performed, the first screening unit 51D performs the processing of step S163, which will be described later. If threshold processing is to be performed, the first screening unit 51D determines whether the error E1 calculated by the error calculation unit 15D in step S107 is greater than a predetermined threshold. If the error E1 is greater than the threshold, the first screening unit 51D performs the processing of step S162, which will be described later. If the error E1 is smaller than the threshold, the first screening unit 51D performs the processing of step S163, which will be described later.

[0207] In step S162, the first selection unit 51D records the combination of the projection process executed by the spatial projection unit 14D and the error E1.

[0208] In step S163, the first sorting unit 51D judges whether the error calculation process by the error calculation unit 15D in step S107 is the first error calculation, or whether the error E1 calculated by the error calculation unit 15D in step S107 is larger than the recorded error. That is, the first sorting unit 51D refers to the combination recorded by the first sorting unit 51D, and if the combination is not recorded, it judges that it is the first error calculation process, and performs the process of step S162D described later. If the combination is recorded and the error E1 is larger than the error of the recorded combination, it performs the process of step S162D described later. If the error E1 is smaller than the error of the recorded combination, it performs the process of step S164 described later.

[0209] In step S162D, the first selection unit 51D records a combination of the projection process performed by the spatial projection unit 14D and the error E1.

[0210] In step S164, the first selection unit 51D refers to the comparison history of the above combinations and determines whether there are any projection process candidates that have not yet been compared. If there are any other projection process candidates, the first selection unit 51D performs the process of step S165, which will be described later. If there are no other projection process candidates, the first selection unit 51D performs the process of step S105D, which will be described later.

[0211] In step S165, the first selection unit 51D changes the projection process executed by the spatial projection unit 14D.

[0212] In step S105D, the spatial projection unit 14D performs a projection process of the combination recorded by the first selection unit 51D in step S162 or step S162D on the first conversion result acquired by the output conversion unit 13A in step S103, and acquires a first projection result.

[0213] In step S106D, the spatial projection unit 14D performs a projection process of the combination recorded by the first selection unit 51D in step S162 or step S162D on the second conversion result acquired by the output conversion unit 13A in step S104, and acquires a second projection result.

[0214] In step S107D, the error calculation unit 15D calculates an error E1 between the first projection result acquired by the spatial projection unit 14D in step S105D and the second projection result acquired by the spatial projection unit 14D in step S106D.

[0215] In step S166, the training control unit 17D judges whether the first selection unit 51D changes the projection process again each time the training unit 16A updates the coefficients of network B. If the first selection unit 51D changes the projection process again based on the updated network B, the process returns to step S105, and if the first selection unit 51D does not change the projection process again, the process returns to step S105D, and the same series of processes as above are repeated.

[0216] Through the above series of processes, the information processing system 10D changes the projection process so that the error E1 between the first projection result and the second projection result becomes large, and then E1 The inference model using network B is trained so that is small. As a result, it is possible to make the training by machine learning processing progress more easily than in the case where the projection processing is not changed. In other words, it is possible to prevent the training from stagnation.

[0217] As described above, the information processing method according to the fourth embodiment changes the projection process so that the error (first error) between the first projection result and the second projection result becomes larger. This makes it easier to progress with training by machine learning processing than when the projection process is not changed. In other words, it is possible to prevent the training from stagnation.

[0218] Furthermore, the first and second transformation results are projected into a space in which an inner product is defined to obtain a first and second projection result. This allows the norm between the first and second projection results to be defined, and for example, the second inference model can be trained to reduce the norm between the first and second projection results. As a result, the information processing method can reduce the difference between the inference results that occurs between the two inference models.

[0219] Furthermore, the first projection result and the second projection result are obtained by reducing the dimensions of the first conversion result and the second conversion result. As a result, for example, a projection axis that represents the difference between the first conversion result and the second conversion result is selected, and then a process of reducing dimensions other than the selected projection axis is performed to obtain the first projection result and the second projection result. As a result, the information processing method can further reduce the time required to calculate the error between the first projection result and the second projection result. Furthermore, the information processing method can efficiently reduce the difference in inference results that occurs between two inference models.

[0220] Furthermore, a principal component analysis is performed on the first conversion result and the second conversion result, and a process of reducing dimensions is performed to obtain a first projection result and a second projection result. This reduces principal components other than the specific principal component, making it possible to clarify the difference between the first projection result and the second projection result. For example, the specific principal component may be set to a principal component in which the error (distance) between the distribution of the first projection result and the distribution of the second projection result is likely to be larger than that of other principal components. As a result, the information processing method can further reduce the time required to calculate the error between the first projection result and the second projection result. Also, it is possible to efficiently reduce the difference in inference results occurring between two inference models.

[0221] The configuration of the fourth embodiment may be applied to the second or third embodiment.

[0222] (Embodiment 5) In this embodiment 5, we will explain an information processing method and information processing system that is different from the information processing methods and information processing systems of embodiments 1 to 4, and that reduces the differences in inference results that may occur when obtaining a new inference model using an inference model as a model, regardless of the combination of input data.

[0223] An information processing system according to the fifth embodiment, which is configured by partially modifying the information processing system 10A according to the first embodiment, will be described below.

[0224] 17 is a block diagram showing a functional configuration of an information processing system 10E according to the present embodiment 5. The information processing system 10E is a system for obtaining a new inference model that is trained to output the same inference result as an existing inference model.

[0225] As shown in FIG. 17, the information processing system 10E includes a first inference unit 11A, a second inference unit 12A, an output conversion unit 13E, a spatial projection unit 14A, an error calculation unit 15E, a training unit 16A, a training control unit 17E, and a second selection unit 52E.

[0226] Among the components of information processing system 10E, first inference unit 11A, second inference unit 12A, spatial projection unit 14A, and training unit 16A are similar to those in information processing system 10A according to embodiment 1. Therefore, output conversion unit 13E, error calculation unit 15E, training control unit 17E, and second selection unit 52E will be described in detail below.

[0227] The output conversion unit 13E has the following functions in addition to the functions of the output conversion unit 13A according to the first embodiment. That is, the output conversion unit 13E acquires the conversion process recorded or changed by the second screening unit 52E. Then, the output conversion unit 13E converts the feature information obtained from the first inference unit 11A and the second inference unit 12A using the conversion process obtained from the second screening unit 52E, and outputs the conversion result for the input feature information. In addition, the output conversion unit 13E notifies the second screening unit 52E of the conversion process executed by the output conversion unit 13E. Details of the recording and change of the conversion process by the second screening unit 52E will be described later.

[0228] The error calculation unit 15E has the following function in addition to the same function as the error calculation unit 15A according to the embodiment 1. That is, the error calculation unit 15E outputs error information (also called a first error) calculated based on the projection result obtained from the space projection unit 14A to the second screening unit 52E.

[0229] The second screening unit 52E changes the conversion process executed by the output conversion unit 13E so that the error information calculated by the error calculation unit 15E becomes larger. Specifically, the second screening unit 52E records a combination of the executed conversion process and the calculated error information, and changes the conversion process based on the recorded combination. The second screening unit 52E records the combination of the conversion process executed by the output conversion unit 13E and the error information calculated by the error calculation unit 15E based on a comparison result between the combination of the conversion process executed by the output conversion unit 13E and the error information calculated by the error calculation unit 15E and the combination of the conversion process and the error information recorded by the second screening unit 52E.

[0230] In detail, first, the second screening unit 52E acquires the conversion process executed by the output conversion unit 13E and the first error calculated by the error calculation unit 15E. The second screening unit 52E refers to the conversion process and error information recorded by the second screening unit 52E, and if the combination of the acquired conversion process and the first error does not exist in the recorded conversion process and error information, in other words, if the conversion process and the first error are the combination of the conversion process and the error information first acquired by the second screening unit 52E, the second screening unit 52E records the conversion process and the first error. If the combination of the acquired conversion process and the first error exists in the recorded conversion process and error information, the second screening unit 52E compares the first error with the recorded error information. If the first error is larger than the recorded error information, the second screening unit 52E records the conversion process and the first error. When the first error is smaller than the recorded error information, the second screening unit 52E does not perform the recording process, and holds the recorded conversion process and error information.

[0231] The second selection unit 52E refers to the history of the comparison of the above combinations, and if there is a candidate conversion process that has not yet been compared, changes the conversion process executed by the output conversion unit 13E. If there is no candidate conversion process that has not yet been compared, the second selection unit 52E changes the conversion process executed by the output conversion unit 13E to the conversion process recorded by the second selection unit 52E, and ends the recording and change process of the conversion process. For example, the conversion process may be a process of scaling the input. The candidates for the conversion process may include different types of conversion processes such as conversion process A and conversion process B, or may include multiple conversion processes of the same type but with different process parameters. The conversion process may be a conversion process using a neural network model, and the parameters of the above process may be coefficients of the neural network model.

[0232] The recording and change processing of the conversion process by the second screening unit 52E may be terminated based on a preset threshold. In this case, the second screening unit 52E compares the first error with the threshold, and if the first error is greater than the threshold, the second screening unit 52E records the conversion process and the first error, changes the conversion process executed by the output conversion unit 13E to the conversion process recorded by the second screening unit 52E, and terminates the recording and change processing of the conversion process. If the first error is smaller than the threshold, the second screening unit 52E refers to the conversion process and error information recorded by the second screening unit 52E, and repeats the subsequent processing in the same manner, thereby changing the conversion process executed by the output conversion unit 13E.

[0233] In addition, the recording and change processing of the conversion process by the second selection unit 52E may be performed again based on the network B updated by the training unit 16A. In this case, the second selection unit 52E receives an instruction from the training control unit 17E and changes the conversion process by similarly executing the above processing.

[0234] The training control unit 17E has the following functions in addition to the functions of the training control unit 17A according to the first embodiment. That is, the training control unit 17E causes the second selection unit 52E to execute the change process of the conversion process again based on the network B updated by the training unit 16A. For example, the training control unit 17E causes the first inference unit 11A and the second inference unit 12A to input new input data, and causes the first inference unit 11A, the second inference unit 12A, the output conversion unit 13E, the space projection unit 14A, the error calculation unit 15E, the second selection unit 52E, and the training unit 16A to execute the above processes again using the network A, the new network B, and the new input, thereby further training the inference model using the network B.

[0235] FIG. 18 is an explanatory diagram showing a change in the conversion process in the information processing system 10E according to the fifth embodiment.

[0236] The process from when the input data is input to first inference unit 11A to when the error is calculated by error calculation unit 15E is the same as the process in training in information processing system 10A according to the first embodiment.

[0237] After the error calculation unit 15E calculates the error, the second selection unit 52E changes the conversion process executed by the output conversion unit 13E so as to increase the error calculated by the error calculation unit 15E. For example, when the conversion process executed by the output conversion unit 13E is a scale conversion f that changes the range of values ​​that the feature information takes, which is obtained by (Equation 1), the conversion process can be changed by changing the parameter a or changing the function used for the scale conversion, which is obtained by the following (Equation 4): Scale Transformation The procedure for changing the conversion process by the second sorting unit 52E is described in detail below.

[0238] f2(x)=a×tanh(x) (Equation 4)

[0239] FIG. 19 shows a second inference unit in an information processing system 10E according to the fifth embodiment. 12A FIG.

[0240] The process from when the input data is input to the first inference unit 11A to when the training unit 16A updates the network B is the same as the process in training in the information processing system 10A according to the first embodiment.

[0241] The conversion process executed by the output conversion unit 13E is the process changed by the second selection unit 52E. For example, when the second selection unit 52E changes the conversion process executed by the output conversion unit 13E to the scale conversion f2 obtained by (Equation 4), the output conversion unit 13E acquires the input x and outputs the conversion result f2(x).

[0242] Thereafter, the processing after the conversion result is input to the space projection unit 14A is the same as the processing in training in the information processing system 10A according to the first embodiment.

[0243] The processes executed by the information processing system 10E configured as above will be described.

[0244] Fig. 20 and Fig. 21 are flow diagrams showing processes (also referred to as information processing methods) executed by the information processing system 10E according to the embodiment 5. Fig. 20 is a flow diagram showing processes, excluding the change process of the conversion process, among the processes executed by the information processing system 10E according to the embodiment 5. Fig. 21 is a flow diagram showing the change process of the conversion process among the processes executed by the information processing system 10E according to the embodiment 5.

[0245] The processes included in steps S101 to S109 shown in FIG. 20 are similar to those of the information processing system 10A according to the first embodiment (see FIG. 3).

[0246] In step S161E, the second screening unit 52E first determines whether or not to perform threshold processing, which will be described later. If threshold processing is not performed, the second screening unit 52E performs the processing of step S163E, which will be described later. If threshold processing is performed, the second screening unit 52E determines whether the error E1 calculated by the error calculation unit 15E in step S107 is greater than a predetermined threshold. If the error E1 is greater than the threshold, the second screening unit 52E performs the processing of step S181, which will be described later. If the error E1 is smaller than the threshold, the second screening unit 52E performs the processing of step S163E, which will be described later.

[0247] In step S181, the second selection unit 52E records a combination of the conversion process executed by the output conversion unit 13E and the error E1.

[0248] In step S163E, the second sorting unit 52E judges whether the error calculation process by the error calculation unit 15E in step S107 is the first error calculation, or whether the error E1 calculated by the error calculation unit 15E in step S107 is larger than the recorded error. That is, the second sorting unit 52E refers to the combination recorded by the second sorting unit 52E, and if the combination is not recorded, it judges that it is the first error calculation process, and performs the process of step S181E described later. If the combination is recorded and the error E1 is larger than the error of the recorded combination, it performs the process of step S181E described later. If the error E1 is smaller than the recorded error, it performs the process of step S182 described later.

[0249] In step S181E, the second selection unit 52E records the combination of the conversion process executed by the output conversion unit 13E and the error E1.

[0250] In step S182, the second selection unit 52E refers to the comparison history of the above combinations and determines whether there are any conversion process candidates that have not yet been compared. If there are any other conversion process candidates, the second selection unit 52E performs the process of step S183, which will be described later. If there are no other conversion process candidates, the second selection unit 52E performs the process of step S103E, which will be described later.

[0251] In step S183, the second selection unit 52E changes the conversion process to be executed by the output conversion unit 13E.

[0252] In step S103E, the output conversion unit 13E performs a conversion process on the first feature information acquired by the first inference unit 11A in step S101, using the combination recorded by the second selection unit 52E in step S181 or step S181E, to acquire a first conversion result.

[0253] In step S104E, the output conversion unit 13E performs a conversion process on the second feature information acquired by the second inference unit 12A in step S102, using the combination recorded by the second selection unit 52E in step S181 or step S181E, to acquire a second conversion result.

[0254] In step S105E, the spatial projection unit 14A performs a projection process on the first conversion result acquired by the output conversion unit 13E in step S103E, and acquires a first projection result.

[0255] In step S106E, the spatial projection unit 14A performs a projection process on the second conversion result acquired by the output conversion unit 13E in step S104E, and acquires a second projection result.

[0256] In step S107E, the error calculation unit 15E calculates an error E1 between the first projection result acquired by the spatial projection unit 14A in step S105E and the second projection result acquired by the spatial projection unit 14A in step S106E.

[0257] In step S102E, the second inference unit 12A inputs input data to an inference model using network B and acquires second feature information from network B.

[0258] In step S184, the training control unit 17E detects whether the training unit 16A is a B Each time the coefficients of are updated, the second screening unit 52E judges whether or not to change the conversion process again. If the second screening unit 52E changes the conversion process again based on the updated network B, the process returns to step S103. If the second screening unit 52E does not change the conversion process again, the process returns to step S103E, and the same series of processes as above are repeated.

[0259] Through the above series of processes, the information processing system 10E changes the conversion process so that the error E1 between the first projection result and the second projection result becomes large, and then E1 The inference model using network B is trained so that is small. As a result, it is possible to make the training by machine learning processing progress more easily than in the case where the conversion processing is not changed. In other words, it is possible to prevent the training from stagnation.

[0260] As described above, the information processing method according to the fifth embodiment changes the conversion process so that the error (first error) between the first projection result and the second projection result becomes larger. This makes it easier to progress with the training by the machine learning process than when the conversion process is not changed. In other words, it is possible to prevent the training from stagnation.

[0261] The configuration of the fifth embodiment may be applied to the second or third embodiment.

[0262] (Embodiment 6) In this embodiment 6, we will explain an information processing method and information processing system that is different from the information processing methods and information processing systems of embodiments 1 to 5, and that reduces the differences in inference results that may occur when obtaining a new inference model using an inference model as a model, regardless of the combination of input data.

[0263] An information processing system according to the sixth embodiment, which is configured by partially modifying the information processing system 10A according to the first embodiment, will be described below.

[0264] 22 is a block diagram showing a functional configuration of an information processing system 10F according to the embodiment 6. The information processing system 10F is a system for obtaining a new inference model that is trained to output the same inference result as an existing inference model.

[0265] As shown in FIG. 22, the information processing system 10F includes a first inference unit 11A, a second inference unit 12A, an output conversion unit 13F, a spatial projection unit 14F, an error calculation unit 15F, a training unit 16A, a training control unit 17F, and a third selection unit 53F.

[0266] Among the components of information processing system 10F, first inference unit 11A, second inference unit 12A, and training unit 16A are the same as those in information processing system 10A of embodiment 1. Therefore, output conversion unit 13F, space projection unit 14F, error calculation unit 15F, training control unit 17F, and third selection unit 53F will be described in detail below.

[0267] The output conversion unit 13F has the following functions in addition to the functions of the output conversion unit 13A according to the first embodiment. That is, the output conversion unit 13F acquires the conversion process recorded or changed by the third screening unit 53F. Then, the output conversion unit 13F converts the feature information obtained from the first inference unit 11A and the second inference unit 12A using the conversion process obtained from the third screening unit 53F, and outputs the conversion result for the input feature information. In addition, the output conversion unit 13F notifies the third screening unit 53F of the conversion process executed by the output conversion unit 13F. Details of the recording and change of the conversion process by the third screening unit 53F will be described later.

[0268] The spatial projection unit 14F has the following functions in addition to the functions of the spatial projection unit 14A according to the first embodiment. That is, the spatial projection unit 14F acquires the projection process recorded or changed by the third selection unit 53F. Then, the spatial projection unit 14F projects the conversion result obtained from the output conversion unit 13F using the projection process obtained from the third selection unit 53F, and outputs the projection result for the input conversion result. In addition, the spatial projection unit 14F notifies the third selection unit 53F of the projection process executed by the spatial projection unit 14F. Details of the recording and change of the projection process by the third selection unit 53F will be described later.

[0269] The error calculation unit 15F has the following function in addition to the same function as the error calculation unit 15A according to the embodiment 1. That is, the error calculation unit 15F outputs error information (also called a first error) calculated based on the projection result obtained from the space projection unit 14F to the third screening unit 53F.

[0270] The third selection unit 53F changes the conversion process executed by the output conversion unit 13F and the projection process executed by the spatial projection unit 14F so that the error information calculated by the error calculation unit 15F becomes larger. Specifically, the third selection unit 53F records a combination of the executed conversion process, the executed projection process, and the calculated error information, and changes the conversion process and the projection process based on the recorded combination. The third selection unit 53F records a combination of the conversion process executed by the output conversion unit 13F, the projection process executed by the spatial projection unit 14F, and the error information calculated by the error calculation unit 15F, based on a comparison result between the combination of the conversion process executed by the output conversion unit 13F, the projection process executed by the spatial projection unit 14F, and the error information calculated by the error calculation unit 15F and the combination of the conversion process, the projection process, and the error information recorded by the third selection unit 53F.

[0271] In detail, first, the third selection unit 53F acquires the conversion process performed by the output conversion unit 13F, the projection process performed by the space projection unit 14F, and the first error calculated by the error calculation unit 15F. The third selection unit 53F refers to the conversion process, projection process, and error information recorded by the third selection unit 53F, and records the conversion process, projection process, and first error if the recorded conversion process, projection process, and error information do not exist, in other words, if the conversion process, projection process, and first error are a combination of the conversion process, projection process, and error information first acquired by the third selection unit 53F. If the recorded conversion process, projection process, and error information include a combination of the acquired conversion process, projection process, and first error, the third selection unit 53F compares the first error with the recorded error information. If the first error is larger than the recorded error information, the third screening unit 53F records the conversion process, the projection process, and the first error. If the first error is smaller than the recorded error information, the third screening unit 53F does not perform the recording process, and holds the recorded conversion process, the projection process, and the error information.

[0272] The third selection unit 53F refers to the history of the comparison of the above combinations, and if there is a candidate combination of the conversion process and the projection process that has not yet been compared, changes the conversion process executed by the output conversion unit 13F and the projection process executed by the space projection unit 14F. If there is no candidate combination of the conversion process and the projection process that has not yet been compared, the third selection unit 53F changes the conversion process executed by the output conversion unit 13F and the projection process executed by the space projection unit 14F to the conversion process and the projection process recorded by the third selection unit 53F, and ends the recording and change process of the combination of the conversion process and the projection process. The above conversion process is the same as that in the fifth embodiment. Also, the above projection process is the same as that in the fourth embodiment.

[0273] The recording and changing process of the combination of the conversion process and the projection process by the third selection unit 53F may be terminated based on a preset threshold. In this case, the third selection unit 53F compares the first error with the threshold, and if the first error is greater than the threshold, the third selection unit 53F records the combination of the conversion process, the projection process, and the first error, changes the conversion process performed by the output conversion unit 13F to the conversion process recorded by the third selection unit 53F, changes the projection process performed by the space projection unit 14F to the projection process recorded by the third selection unit 53F, and terminates the recording and changing process of the combination of the conversion process and the projection process. If the first error is smaller than the threshold, the third selection unit 53F refers to the conversion process, the projection process, and the error information recorded by the third selection unit 53F, and repeats the subsequent processes in the same manner, thereby changing the conversion process and the projection process.

[0274] The recording and change process of the combination of the conversion process and the projection process by the third selection unit 53F may be performed again based on the network B updated by the training unit 16A. In this case, the third selection unit 53F receives an instruction from the training control unit 17F and executes the above process in the same manner to change the conversion process and the projection process.

[0275] The process of changing the combination of the conversion process and the projection process by the third selection unit 53F may be performed in sequence or simultaneously. That is, when the process of changing the combination of the conversion process and the projection process by the third selection unit 53F is performed in sequence, the conversion process is changed so that the first error becomes larger, and the projection process is changed based on the changed conversion process so that the first error becomes larger, or the projection process is changed so that the first error becomes larger, and the conversion process is changed based on the changed projection process so that the first error becomes larger. When the process of changing the combination of the conversion process and the projection process by the third selection unit 53F is performed simultaneously, the combination of the conversion process and the projection process is changed so that the first error becomes larger. In this case, a well-known technique such as Bayesian optimization may be adopted as the method of change.

[0276] The training control unit 17F has the following functions in addition to the same functions as the training control unit 17A according to the first embodiment. That is, the training control unit 17F causes the third selection unit 53F to execute the process of changing the combination of the conversion process and the projection process again based on the network B updated by the training unit 16A. For example, the training control unit 17F causes the first inference unit 11A and the second inference unit 12A to input new input data, and causes the first inference unit 11A, the second inference unit 12A, the output conversion unit 13F, the space projection unit 14F, the error calculation unit 15F, the third selection unit 53F, and the training unit 16A to execute the above processes again using the network A, the new network B, and the new input, thereby further training the inference model using the network B.

[0277] FIG. 23 is an explanatory diagram showing a change in the combination of the conversion process and the projection process in the information processing system 10F according to the sixth embodiment.

[0278] The process from when the input data is input to first inference unit 11A to when the error is calculated by error calculation unit 15F is the same as the process in training in information processing system 10A according to the first embodiment.

[0279] After the error is calculated by the error calculation unit 15F, the third selection unit 53F changes the conversion process performed by the output conversion unit 13F and the projection process performed by the space projection unit 14F so as to increase the error calculated by the error calculation unit 15F. Details of the change in the conversion process are the same as those in the fifth embodiment. Details of the change in the projection process are the same as those in the fourth embodiment.

[0280] FIG. 24 shows a second inference unit in an information processing system 10F according to the sixth embodiment. 12A FIG.

[0281] The process from when the input data is input to the first inference unit 11A to when the training unit 16A updates the network B is the same as the process in training in the information processing system 10A according to the first embodiment.

[0282] The conversion process executed by the output conversion unit 13F is the process changed by the third screening unit 53F. Details of the process of the output conversion unit 13F when the third screening unit 53F changes the conversion process are the same as those in the information processing system 10E according to the fifth embodiment.

[0283] The projection process executed by the spatial projection unit 14F is the process changed by the third screening unit 53F. Details of the process of the spatial projection unit 14F when the third screening unit 53F changes the projection process are the same as those in the information processing system 10D according to the fourth embodiment.

[0284] Thereafter, the processing after the projection result is input to the error calculation unit 15F is the same as the processing in training in the information processing system 10A according to the first embodiment.

[0285] The process executed by the information processing system 10F configured as above will be described.

[0286] Fig. 25 and Fig. 26 are flow diagrams showing processes (also referred to as information processing methods) executed by the information processing system 10F according to the embodiment 6. Fig. 25 is a flow diagram showing processes executed by the information processing system 10F according to the embodiment 6, excluding a process of changing the combination of the conversion process and the projection process. Fig. 26 is a flow diagram showing a process of changing the combination of the conversion process and the projection process, among the processes executed by the information processing system 10F according to the embodiment 6.

[0287] The processes included in steps S101 to S109 shown in FIG. 25 are similar to the processes of the information processing system 10A according to the first embodiment (see FIG. 3).

[0288] In step S161F, the third screening unit 53F first determines whether or not to perform threshold processing, which will be described later. If threshold processing is not to be performed, the third screening unit 53F performs the processing of step S163F, which will be described later. If threshold processing is to be performed, the third screening unit 53F determines whether the error E1 calculated by the error calculation unit 15F in step S107 is greater than a predetermined threshold. If the error E1 is greater than the threshold, the third screening unit 53F performs the processing of step S191, which will be described later. If the error E1 is smaller than the threshold, the third screening unit 53F performs the processing of step S163F, which will be described later.

[0289] In step S191, the third selection unit 53F records a combination of the conversion process executed by the output conversion unit 13F, the projection process executed by the spatial projection unit 14F, and the error E1.

[0290] In step S163F, the third screening unit 53F judges whether the error calculation process by the error calculation unit 15F in step S107 is the first error calculation, or whether the error E1 calculated by the error calculation unit 15F in step S107 is larger than the recorded error. That is, the third screening unit 53F refers to the combination recorded by the third screening unit 53F, and if the combination is not recorded, it judges that it is the first error calculation process, and performs the process of step S191F described later. If the combination is recorded and the error E1 is larger than the error of the recorded combination, it performs the process of step S191F described later. If the error E1 is smaller than the recorded error, it performs the process of step S192 described later.

[0291] In step S191F, the third selection unit 53F records a combination of the conversion process performed by the output conversion unit 13F, the projection process performed by the spatial projection unit 14F, and the error E1.

[0292] In step S192, the third selection unit 53F refers to the history of the comparison of the above combinations and judges whether there are any candidate combinations of the conversion process and the projection process that have not yet been compared. If there are any other candidate combinations of the conversion process and the projection process, the process of step S193 described later is performed. If there are no other candidate combinations of the conversion process and the projection process, the process of step S103F described later is performed.

[0293] In step S193, the third selection unit 53F changes the conversion process executed by the output conversion unit 13F and the projection process executed by the space projection unit 14F.

[0294] In step S103F, the output conversion unit 13F performs a conversion process on the first feature information acquired by the first inference unit 11A in step S101, using the combination recorded by the third selection unit 53F in step S191 or step S191F, and acquires a first conversion result.

[0295] In step S104F, the output conversion unit 13F performs a conversion process on the second feature information acquired by the second inference unit 12A in step S102, using the combination recorded by the third selection unit 53F in step S191 or step S191F, to acquire a second conversion result.

[0296] In step S105F, the spatial projection unit 14F performs a projection process of the combination recorded by the third selection unit 53F in step S191 or step S191F on the first conversion result acquired by the output conversion unit 13F in step S103F, and acquires a first projection result.

[0297] In step S106F, the spatial projection unit 14F performs a projection process of the combination recorded by the third selection unit 53F in step S191 or step S191F on the second conversion result acquired by the output conversion unit 13F in step S104F, and acquires a second projection result.

[0298] In step S107F, the error calculation unit 15F calculates an error E1 between the first projection result acquired by the spatial projection unit 14F in step S105F and the second projection result acquired by the spatial projection unit 14F in step S106F.

[0299] In step S102F, the second inference unit 12A inputs input data to an inference model using network B and acquires second feature information from network B.

[0300] In step S194, the training control unit 17F detects whether the training unit 16A is a B Each time the coefficients of are updated, the third selection unit 53F judges whether or not to change the combination of the transformation process and the projection process again. If the third selection unit 53F changes the combination of the transformation process and the projection process again based on the updated network B, the process returns to step S103, and if the combination of the transformation process and the projection process is not changed again, the process returns to step S103F, and the same series of processes as above are repeated.

[0301] Through the above series of processes, the information processing system 10F changes the combination of the conversion process and the projection process so that the error E1 between the first projection result and the second projection result becomes large, and then E1 The inference model using network B is trained so that is small. As a result, training by machine learning processing can be made to proceed more easily than in the case where at least one of the transformation processing and the projection processing is not changed. In other words, it is possible to prevent the training from stagnation.

[0302] As described above, the information processing method according to the sixth embodiment changes the combination of the conversion process and the projection process so that the error (first error) between the first projection result and the second projection result becomes larger. This makes it easier to progress with the training by the machine learning process than when at least one of the conversion process and the projection process is not changed. In other words, it is possible to prevent the training from stagnation.

[0303] The configuration of this embodiment may be applied to the second or third embodiment.

[0304] (Modification) In the processes executed by the information processing systems 10A to 10F according to the first to sixth embodiments, a determination as to whether conversion processing is necessary may be performed. In the following, a modified example in which a determination as to whether conversion processing is necessary is performed will be described. In the following, the process executed by the information processing system 10A according to the first embodiment will be described as an example, but the process executed by the information processing systems 10B to 10F according to the second to sixth embodiments is similar to the process executed by the information processing system 10A according to the first embodiment.

[0305] FIG. 27 is a flowchart showing a process executed by an information processing system according to a modified example.

[0306] The processes included in steps S101 to S109 shown in FIG. 27 are similar to the processes of the information processing system 10A according to the first embodiment (see FIG. 3).

[0307] In step S110, the error calculation unit 15A judges whether or not a necessity determination is made as to whether or not a conversion process is necessary. If the necessity determination is not made, the process of step S108 is performed. If the necessity determination is made, the process of step S111, which will be described later, is performed.

[0308] In step S111, the spatial projection unit 14A performs a projection process on the first feature information by the network A acquired by the first inference unit 11A in step S101, and acquires a first non-transformed projection result.

[0309] In step S112, the spatial projection unit 14A performs a projection process on the second feature information by network B acquired by the second inference unit 12A in step S102, and acquires a second untransformed projection result.

[0310] In step S113, the error calculation unit 15A calculates an error E0 between the first non-transformed projection result acquired by the spatial projection unit 14A in step S111 and the second non-transformed projection result acquired by the spatial projection unit 14A in step S112.

[0311] In step S114, the error calculation unit 15A judges whether the error E1 calculated by the error calculation unit 15A in step S107 is greater than the error E0 calculated by the error calculation unit 15A in step S113. If the error E1 is greater than the error E0, the error calculation unit 15A judges that the conversion process is necessary and performs the process of step S108. If the error E1 is smaller than the error E0, the error calculation unit 15A judges that the conversion process is unnecessary and performs the process of step S108A described later.

[0312] In the process of step S114, the error calculation unit 15A may determine that the conversion process is necessary when the error E0 is larger than a predetermined threshold, and may determine that the conversion process is unnecessary when the error E0 is smaller than the predetermined threshold.

[0313] In step S108A, the training unit 16A uses the error E0 calculated in step S113 to update the coefficients of network B so as to reduce the error E0, and performs the process of step S109.

[0314] (supplement) In the first to sixth embodiments and the modified examples, each function of the information processing systems 10A to 10F can be realized by a processor (for example, a CPU) (not shown) executing a predetermined program.

[0315] In the first to sixth embodiments and the modified examples, each component may be configured with 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. Here, the software for realizing the information processing device of these embodiments and modified examples is a program such as the following.

[0316] In other words, this program causes a computer to execute an information processing method executed by a processor, the information processing method being a process of inputting first data into a first inference model to obtain first feature information, inputting the first data into a second inference model to obtain second feature information, performing a conversion process on the first feature information to obtain a first conversion result, performing the conversion process on the second feature information to obtain a second conversion result, performing a projection process on the first conversion result to obtain a first projection result, performing the projection process on the second conversion result to obtain a second projection result, obtaining a first error indicating the error between the first projection result and the second projection result, training the second inference model by machine learning to reduce the first error, and the conversion process being a process in which the error between the first projection result and the second projection result is greater than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information.

[0317] Moreover, this program is a program for causing a computer to execute an information processing method executed by a processor, the information processing method including inputting first data into a first inference model to obtain first feature information, inputting the first data into a second inference model to obtain second feature information, performing a conversion process on the first feature information to obtain a first conversion result, performing the conversion process on the second feature information to obtain a second conversion result, performing a projection process on the first conversion result to obtain a first projection result, performing the projection process on the second conversion result to obtain a second projection result, obtaining a first error indicating an error between the first projection result and the second projection result, training a third inference model by machine learning to reduce the first error, the conversion process being a process such that the error between the first projection result and the second projection result is greater than the error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information, and performing a model conversion process to convert the trained third inference model to update the second inference model.

[0318] These programs are recorded, for example, in a computer-readable non-transitory recording medium.

[0319] As described above, the embodiments and modifications have been described as examples of the technology disclosed in this application. However, the present disclosure is not limited to these embodiments and modifications. As long as it does not deviate from the gist of the present disclosure, various modifications conceived by a person skilled in the art to these embodiments and modifications, and forms constructed by combining components in different embodiments and modifications may also be included within the scope of one or more aspects of the present disclosure. [Industrial Applicability]

[0320] The present disclosure can be used in a system that generates new inference models based on existing inference models. [Explanation of symbols]

[0321] 10A, 10B, 10C, 10D, 10E, 10F Information Processing Systems 11A, 11C 1st reasoning section 12A, 12B, 12C 2nd reasoning section 13A, 13E, 13F Output conversion section 14A, 14D, 14F Spatial projection section 15A, 15D, 15E, 15F error calculation section 16A, 16B, 16C Training Department 17A, 17D, 17E, 17F Training Control Unit 18B conversion unit 19C 2nd error calculation section 20A Inference Systems 21A Acquisition Department 22A 2nd reasoning section 51D First Sorting Section 52E Second Sorting Department 53F 3rd Sorting Section A, B, B1 Network

Claims

1. A processor-executed information processing method, comprising: inputting the first data into a first inference model to obtain first feature information; inputting the first data into a second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first transformation result to obtain a first projection result; performing the projection process on the second transformation result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training the second inference model by machine learning so as to reduce the first error; The transformation process is a process in which an error between the first projection result and the second projection result is larger than an error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information. Information processing methods.

2. moreover, In training the second inference model, the second inference model is trained by machine learning using a second error indicating a difference between a first inference result obtained by inputting the first data into the first inference model and a second inference result obtained by inputting the first data into the second inference model. The information processing method according to claim 1 .

3. A processor-executed information processing method, comprising: inputting the first data into a first inference model to obtain first feature information; inputting the first data into a second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first transformation result to obtain a first projection result; performing the projection process on the second transformation result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training a third inference model by machine learning so as to reduce the first error; the transformation process is a process in which an error between the first projection result and the second projection result is larger than an error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information, A model conversion process is performed to convert the trained third inference model, thereby updating the second inference model. Information processing methods.

4. moreover, In training the third inference model, the third inference model is trained by machine learning using a second error indicating a difference between a first inference result obtained by inputting the first data into the first inference model and a second inference result obtained by inputting the first data into the second inference model. The information processing method according to claim 3.

5. moreover, The projection process is changed so that the first error becomes larger. The information processing method according to any one of claims 1 to 4.

6. moreover, The conversion process is changed so that the first error becomes larger. The information processing method according to any one of claims 1 to 5.

7. moreover, The combination of the transformation process and the projection process is changed so that the first error becomes larger. The information processing method according to any one of claims 1 to 4.

8. the first inference model, the second inference model, and the third inference model are neural network models; The model conversion process includes a process of reducing the weight of the neural network model.

5. The information processing method according to claim 3.

9. The weighting process includes a process of quantizing the neural network model. The information processing method according to claim 8.

10. The quantization process includes converting coefficients of the neural network model from a floating-point format to a fixed-point format. The information processing method according to claim 9.

11. The weight reduction process includes a process of reducing nodes of the neural network model, or a process of reducing connections of nodes of the neural network model. The information processing method according to any one of claims 8 to 10.

12. The conversion process includes a process of scaling the input. The information processing method according to any one of claims 1 to 11.

13. The projection process includes a process of projecting an input into an inner product space. The information processing method according to any one of claims 1 to 12.

14. The projection process includes a process of reducing the dimension of the input. The information processing method according to any one of claims 1 to 13.

15. The process of reducing the dimension includes principal component analysis. The information processing method according to claim 14.

16. The first data is image data. The information processing method according to any one of claims 1 to 15.

17. An acquisition unit that acquires second data; an inference unit that inputs the second data acquired by the acquisition unit into a second inference model, and acquires and outputs a second inference result; The second inference model is A processor-executed information processing method, comprising: inputting the first data into a first inference model to obtain first feature information; inputting the first data into the second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first transformation result to obtain a first projection result; performing the projection process on the second transformation result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training the second inference model by machine learning so as to reduce the first error; The transformation process is a process in which an error between the first projection result and the second projection result is larger than an error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information. The model is obtained by executing the information processing method. Information processing system.

18. An acquisition unit that acquires second data; an inference unit that inputs the second data acquired by the acquisition unit into a second inference model, and acquires and outputs a second inference result; The second inference model is A processor-executed information processing method, comprising: inputting the first data into a first inference model to obtain first feature information; inputting the first data into the second inference model to obtain second feature information; performing a conversion process on the first feature information to obtain a first conversion result; performing the conversion process on the second feature information to obtain a second conversion result; performing a projection process on the first transformation result to obtain a first projection result; performing the projection process on the second transformation result to obtain a second projection result; obtaining a first error indicating an error between the first projection result and the second projection result; training a third inference model by machine learning so as to reduce the first error; the transformation process is a process in which an error between the first projection result and the second projection result is larger than an error between a first non-transformed projection result obtained by performing the projection process on the first feature information and a second non-transformed projection result obtained by performing the projection process on the second feature information, The second inference model is updated by a model conversion process that converts the trained third inference model, and the model is obtained by executing the information processing method. Information processing system.

Citation Information

Patent Citations

  • Adaptive selection of artificial neural networks

    US20160328644A1