WO2021111831A1 - 情報処理方法、情報処理システム及び情報処理装置 - Google Patents

情報処理方法、情報処理システム及び情報処理装置 Download PDF

Info

Publication number
WO2021111831A1
WO2021111831A1 PCT/JP2020/042078 JP2020042078W WO2021111831A1 WO 2021111831 A1 WO2021111831 A1 WO 2021111831A1 JP 2020042078 W JP2020042078 W JP 2020042078W WO 2021111831 A1 WO2021111831 A1 WO 2021111831A1
Authority
WO
WIPO (PCT)
Prior art keywords
inference
data
inference model
error
model
Prior art date
Application number
PCT/JP2020/042078
Other languages
English (en)
French (fr)
Inventor
育規 石井
洋平 中田
智行 奥野
Original Assignee
パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ filed Critical パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority to EP20895904.9A priority Critical patent/EP4071671A4/en
Priority to JP2021562534A priority patent/JPWO2021111831A1/ja
Priority to CN202080081589.6A priority patent/CN114730393A/zh
Publication of WO2021111831A1 publication Critical patent/WO2021111831A1/ja
Priority to US17/828,464 priority patent/US20220292370A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/55Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/096Transfer learning

Definitions

  • This disclosure relates to an information processing method, an information processing system, and an information processing device for training an inference model by machine learning.
  • Patent Document 1 discloses a technique for transforming an inference model while maintaining the inference performance as much as possible before and after the transformation of the inference model.
  • transformation of the inference model (for example, transformation from the first inference model to the second inference model) is performed so that the inference performance does not deteriorate.
  • the present disclosure provides an information processing method and the like that can bring the behavior of the first inference model closer to the behavior of the second inference model.
  • the information processing method is a method executed by a computer, in which the first data belonging to the first type and the second data belonging to the second type different from the first type are acquired and described.
  • the first data is input to the first inference model to calculate the first inference result
  • the first data is input to the second inference model to calculate the second inference result
  • the second data is used to calculate the second inference.
  • Input to the model to calculate the third inference result calculate the first error between the first inference result and the second inference result, and calculate the second error between the second inference result and the third inference result. It includes a process of calculating and training the second inference model by machine learning based on the first error and the second error.
  • a recording medium such as a system, method, integrated circuit, computer program or computer-readable CD-ROM, and the system, method, integrated circuit, computer program. And any combination of recording media may be realized.
  • the behavior of the first inference model and the behavior of the second inference model can be brought close to each other.
  • FIG. 1 is a block diagram showing an example of an information processing system according to a comparative example.
  • FIG. 2 is a diagram showing an example of a feature space immediately before the identification layer in the first inference model and a feature space immediately before the identification layer in the second inference model in the comparative example.
  • FIG. 3 is a block diagram showing an example of the information processing system according to the embodiment.
  • FIG. 4 is a flowchart showing an example of the information processing method according to the embodiment.
  • FIG. 5 is a diagram showing an example of a feature space immediately before the identification layer in the first inference model and a feature space immediately before the identification layer in the second inference model in the embodiment.
  • FIG. 6 is a block diagram showing an example of an information processing device according to another embodiment.
  • the inference model is transformed so that the inference performance does not deteriorate.
  • the behavior in the second inference model may be different.
  • the behavior is the output of the inference model for each of the plurality of inputs. That is, even if the statistical inference result is the same between the first inference model and the second inference model, the individual inference results may differ. This difference can cause problems.
  • the inference result may be correct in the first inference model and the inference result may be incorrect in the second inference model, or the inference result may be incorrect in the first inference model and the second inference.
  • the inference result may be the correct answer.
  • the behavior of the first inference model and the second inference model are different in this way, for example, when the inference performance of the first inference model is improved and the second inference model is generated from the improved first inference model. Even so, the inference performance of the second inference model may not be improved or deteriorated. Further, for example, in the subsequent processing using the inference result of the inference model, different processing results may be output between the first inference model and the second inference model for the same input. In particular, when the process is a process related to safety (for example, an object recognition process in a vehicle), the difference in behavior may pose a danger.
  • the process is a process related to safety (for example, an object recognition process in a vehicle)
  • the difference in behavior may pose a danger.
  • the information processing method is a method executed by a computer, and the first data belonging to the first type and the second data belonging to the second type different from the first type.
  • Data and data are acquired, the first data is input to the first inference model to calculate the first inference result, the first data is input to the second inference model to calculate the second inference result, and the above.
  • the second data is input to the second inference model to calculate the third inference result, the first error between the first inference result and the second inference result is calculated, and the second inference result and the third inference result are calculated. It includes a process of calculating a second error with the inference result and training the second inference model by machine learning based on the first error and the second error.
  • the second inference model is trained by machine learning using the second error between the second inference result and the third inference result calculated by inputting different types of the first data and the second data in. Therefore, the behavior of the first inference model and the behavior of the second inference model can be brought close to each other. In addition, the difference between the recognition performance of the first inference model and the recognition performance of the second inference model can be maintained or reduced, or the difference can be suppressed from opening.
  • first type and the second type may be classes.
  • the type may be the class to which the data belongs.
  • the configuration of the first inference model and the configuration of the second inference model may be different.
  • processing accuracy of the first inference model and the processing accuracy of the second inference model may be different.
  • the second inference model may be obtained by reducing the weight of the first inference model.
  • the behavior of the first inference model and the behavior of the lightened second inference model can be brought close to each other.
  • the training parameters are calculated so that the first error becomes small and the second error becomes large, and the second inference model is updated using the calculated training parameters. Good.
  • the first inference result and the second inference result calculated by inputting the same first data into different first inference models and second inference models match that is, the first error is set.
  • the second and third inference results calculated by inputting different types of first and second data into the same second inference model do not match that is, so that they are smaller.
  • the matching rate between the behavior of the first inference model and the behavior of the second inference model can be improved. ..
  • first inference model and the second inference model may be neural network models.
  • the behaviors of the first inference model and the second inference model which are neural network models, can be brought close to each other.
  • the information processing system has an acquisition unit for acquiring first data belonging to the first type and second data belonging to a second type different from the first type, and the first data.
  • Input to the first inference model to calculate the first inference result input the first data to the second inference model to calculate the second inference result, and input the second data to the second inference model.
  • the inference result calculation unit that calculates the third inference result, the first error calculation unit that calculates the first error between the first inference result and the second inference result, the second inference result, and the third inference. It includes a second error calculation unit that calculates a second error with the result, and a training unit that trains the second inference model by machine learning based on the first error and the second error.
  • the information processing device is based on an acquisition unit that acquires sensing data, a control unit that inputs the sensing data into a second inference model and acquires an inference result, and the acquired inference result.
  • the second inference model is trained by machine learning based on the first error and the second error, and the first error is the first inference result and the second inference result.
  • the second error is an error between the second inference result and the third inference result, and the first inference result is calculated by inputting the first data into the first inference model.
  • the second inference result is calculated by inputting the first data into the second inference model, and the third inference result is calculated by inputting the second data into the second inference model.
  • the data is data belonging to the first type
  • the second data is data belonging to a second type different from the first type.
  • the second inference model that is closer to the behavior of the first inference model can be used for the device.
  • the performance of inference processing using the inference model in the embedded environment can be improved.
  • FIG. 1 is a block diagram showing an example of the information processing system 1a according to the comparative example.
  • the information processing system 1a includes an acquisition unit 10a, an inference result calculation unit 20a, a first inference model 21, a second inference model 22, a first error calculation unit 30, a training unit 50a, and learning data 100.
  • the information processing system 1a is a system for training the second inference model 22 by machine learning, and the learning data 100 is used during machine learning.
  • the second inference model 22 is a model obtained by reducing the weight of the first inference model 21.
  • the first inference model 21 is a floating point model
  • the second inference model 22 is a fixed point model.
  • the information processing system 1a trains the second inference model 22 by machine learning so that even the lightened second inference model 22 has the same recognition performance as the first inference model 21.
  • the training data 100 includes many types of data.
  • the training data 100 includes image data.
  • the image may be a captured image or a generated image.
  • the acquisition unit 10a acquires the first data belonging to the first type.
  • the first type is, for example, a class.
  • the inference result calculation unit 20a inputs the first data into the first inference model 21 and calculates the first inference result. Further, the inference result calculation unit 20a inputs the first data into the second inference model 22 and calculates the second inference result. That is, the inference result calculation unit 20a calculates the first inference result and the second inference result by inputting the same first data into the first inference model 21 and the second inference model 22.
  • the first error calculation unit 30 calculates the first error between the first inference result and the second inference result.
  • the first error is an error between the first inference result and the second inference result calculated when the same first data is input to different first inference model 21 and second inference model 22.
  • the training unit 50a trains the second inference model 22 by machine learning based on the first error.
  • the training unit 50a has a parameter calculation unit 51a and an update unit 52a.
  • the parameter calculation unit 51a calculates the training parameters so that the first error becomes small, and the update unit 52a updates the second inference model 22 using the calculated training parameters.
  • the first error becomes small, the first inference result and the second inference result obtained when the same type of first data are input to the different first inference model 21 and the second inference model 22 become close inference results. Means.
  • the first error is small, for example, when the same image is input to the first inference model 21 and the second inference model 22, the first inference result and the second inference result have similar recognition results, respectively.
  • FIG. 2 is a diagram showing an example of the feature space immediately before the identification layer in the first inference model 21 and the feature space immediately before the identification layer in the second inference model 22 in the comparative example.
  • the six circles shown in each feature space indicate the features of the data input to each inference model, the three white circles are the features of the same type (for example, class X) of data, and the three dots are.
  • the circles attached are the features of the same type (for example, class Y) of data.
  • Class X and class Y are different classes. For example, for each inference model, the inference result of the data whose feature is on the left side of the discrimination surface in the feature space indicates class X, and the inference result of the data whose feature is on the right side of the identification surface indicates class Y. ..
  • the first inference model 21 is, for example, a floating-point model, which has high expressive power (in other words, a large number of parameters). Therefore, in the feature space in the first inference model 21, the class X data and the class Y data are separated from each other, and the three class X data and the three class Y data are identified. is made of.
  • the second inference model 22 is, for example, a lightweight fixed-point model with low expressiveness (in other words, a small number of parameters). Considering the first error between the first inference result and the second inference result obtained when the same class X data and the same class Y data are input to the first inference model 21 and the second inference model 22. Even if the two inference model 22 is trained, the distance between the classes in the second inference model 22 does not change, and there is a limit to the change of the recognition class. For example, in the training considering the first error, the discrimination performance between the first inference model 21 and the second inference model 22 can be made the same. Specifically, in the example of FIG.
  • the second inference model 22 identifies three data as class X for six data and three data as class Y, similarly to the first inference model 21. I can identify it. However, it is difficult to bring the behavior of the first inference model 21 and the behavior of the second inference model 22 closer to each other in the training considering the first error. Specifically, in the example of FIG. 2, the data of the same class is identified as class X in the first inference model 21, whereas it is identified as class Y in the second inference model 22, and the same. Regarding the data of the class, the first inference model 21 identifies it as class Y, while the second inference model 22 identifies it as class X.
  • the distance between the classes is not separated, and it is difficult to bring the behavior of the second inference model 22 closer to the behavior of the first inference model 21.
  • the second inference model 22 can be trained by machine learning so that the behavior of the first inference model 21 and the behavior of the second inference model 22 come close to each other. This will be described below.
  • FIG. 3 is a block diagram showing an example of the information processing system 1 according to the embodiment.
  • the information processing system 1 includes an acquisition unit 10, an inference result calculation unit 20, a first inference model 21, a second inference model 22, a first error calculation unit 30, a second error calculation unit 40, a training unit 50, and learning data 100. Be prepared.
  • the information processing system 1 is a system for training the second inference model 22 by machine learning, and the learning data 100 is used at the time of machine learning.
  • the information processing system 1 is a computer including a processor, a memory, and the like.
  • the memory is a ROM (Read Only Memory), a RAM (Random Access Memory), or the like, and can store a program executed by the processor.
  • the acquisition unit 10, the inference result calculation unit 20, the first error calculation unit 30, the second error calculation unit 40, and the training unit 50 are realized by a processor or the like that executes a program stored in the memory.
  • the information processing system 1 may be a server. Further, the components constituting the information processing system 1 may be distributed and arranged on a plurality of servers.
  • the training data 100 includes many types of data. For example, when a model for image recognition is trained by machine learning, the training data 100 includes image data.
  • the learning data 100 includes the first data belonging to the first type and the second data belonging to the second type different from the first type.
  • the first type and the second type are, for example, classes.
  • the first inference model 21 and the second inference model 22 are, for example, neural network models, and perform inference on the input data.
  • the inference is classified here, for example, but may be object detection, segmentation, estimation of the distance from the camera to the subject, or the like. If the inference is classification, the behavior may be correct / incorrect or class, and if the inference is object detection, the behavior may be in place of the correct / incorrect or class, or in combination with the size or positional relationship of the detection frame. If the inference is segmentation, it may be the class, size or positional relationship of the region, and if the inference is distance estimation, it may be the length of the estimated distance.
  • the configuration of the first inference model 21 and the configuration of the second inference model 22 may be different, and the processing accuracy of the first inference model 21 and the processing accuracy of the second inference model 22 may be different.
  • the second inference model 22 may be an inference model obtained by reducing the weight of the first inference model 21.
  • the second inference model 22 has fewer branches or fewer nodes than the first inference model 21.
  • the second inference model 22 has a lower bit accuracy than the first inference model 21.
  • the first inference model 21 may be a floating point model
  • the second inference model 22 may be a fixed point model.
  • the configuration of the first inference model 21 and the configuration of the second inference model 22 may be different, and the processing accuracy of the first inference model 21 and the processing accuracy of the second inference model 22 may be different.
  • the acquisition unit 10 acquires the first data belonging to the first type and the second data belonging to the second type different from the first type from the learning data 100.
  • the inference result calculation unit 20 selects the first data from the data acquired by the acquisition unit 10, inputs the first data into the first inference model 21 and the second inference model 22, and inputs the first inference result and the second inference result. Is calculated. Further, the inference result calculation unit 20 selects the second data from the data acquired by the acquisition unit 10, inputs the second data into the second inference model 22, and calculates the third inference result.
  • the first error calculation unit 30 calculates the first error between the first inference result and the second inference result.
  • the second error calculation unit 40 calculates the second error between the second inference result and the third inference result.
  • the training unit 50 trains the second inference model 22 by machine learning based on the first error and the second error.
  • the training unit 50 has a parameter calculation unit 51 and an update unit 52 as functional components.
  • the parameter calculation unit 51 calculates the training parameters so that the first error becomes small and the second error becomes large.
  • the update unit 52 updates the second inference model 22 using the calculated training parameters.
  • FIG. 4 is a flowchart showing an example of the information processing method according to the embodiment.
  • the information processing method is a method executed by a computer (information processing system 1). Therefore, FIG. 4 is also a flowchart showing an example of the operation of the information processing system 1 according to the embodiment. That is, the following description is both a description of the operation of the information processing system 1 and a description of the information processing method.
  • the acquisition unit 10 acquires the first data and the second data (step S11). For example, assuming that the first data and the second data are images, the acquisition unit 10 acquires the first data and the second data in which objects of different classes are captured.
  • the inference result calculation unit 20 inputs the first data into the first inference model 21 to calculate the first inference result (step S12), and inputs the first data into the second inference model 22 to obtain the second inference result.
  • the inference result is calculated (step S13), the second data is input to the second inference model 22, and the third inference result is calculated (step S14). That is, the inference result calculation unit 20 calculates the first inference result and the second inference result by inputting the same first data into the first inference model 21 and the second inference model 22, and different types (for example,). By inputting the first data and the second data of different classes) into the same second inference model 22, the second inference result and the third inference result are calculated. It should be noted that steps S12, S13 and S14 may not be executed in this order, or may be executed in parallel.
  • the first error calculation unit 30 calculates the first error between the first inference result and the second inference result (step S15), and the second error calculation unit 40 calculates the second inference result and the third inference result.
  • the second error with and is calculated step S16).
  • the first error is an error between the first inference result and the second inference result calculated when the same first data is input to different first inference model 21 and second inference model 22.
  • the second error is an error between the second inference result and the third inference result calculated when different types of first data and second data are input to the same second inference model 22. It should be noted that steps S14 and S15 may not be executed in this order, or may be executed in parallel.
  • step S15 may be executed, then step S14 may be executed, and then step S16 may be executed.
  • step S16 may be executed, then step S12 may be executed, and then step S15 may be executed.
  • the training unit 50 trains the second inference model 22 by machine learning based on the first error and the second error (step S17). Specifically, in the training of the training unit 50, the parameter calculation unit 51 calculates the training parameters so that the first error becomes small and the second error becomes large, and the update unit 52 calculates the training parameters.
  • the second inference model 22 is updated using this.
  • the first error is small, it means that the first inference result and the second inference result obtained when the same first data is input to different first inference model 21 and second inference model 22 are close inference results. To do.
  • the first error becomes smaller as the distance between the first inference result and the second inference result becomes shorter.
  • the distance of the inference result can be obtained by, for example, cross entropy.
  • the parameter calculation unit 51 calculates the training parameter by weighting the first error and the second error with arbitrary coefficients and then adding them. For example, in the training of the second inference model 22, the weighted sum of the first error and the second error may be used, or a new constant ⁇ may be defined and Triplet Loss may be used.
  • FIG. 5 is a diagram showing an example of the feature space immediately before the identification layer in the first inference model 21 and the feature space immediately before the identification layer in the second inference model 22 in the embodiment.
  • the six circles in each feature space indicate the features of the data input to each inference model, and the three white circles are the features of the same type (for example, class X) of data, with three dots.
  • Tamaru is a feature amount of data of the same type (for example, class Y).
  • Class X and class Y are different classes. For example, for each inference model, the inference result of the data whose feature is on the left side of the discrimination surface in the feature space indicates class X, and the inference result of the data whose feature is on the right side of the identification surface indicates class Y. ..
  • the first inference model 21 is a model with high expressive power (in other words, a large number of parameters). Therefore, in the feature space in the first inference model 21, the class X data and the class Y data are separated from each other, and the three class X data and the three class Y data are identified. is made of.
  • the second inference model 22 is, for example, a model that is lightweight and has low expressive power (in other words, the number of parameters is small).
  • the comparative example is an example in which the second inference model 22 is trained in consideration of only the first error, and in the training, the inter-class distance in the second inference model 22 is not separated.
  • the training of the second inference model 22 is performed in consideration of not only the first error but also the second error. That is, by considering not only the first error between the different first inference models 21 and the second inference model 22 but also the second error in the same second inference model 22, the first inference model 21 is the same as the first inference model 21. 2 In the inference model 22, the distance between classes can be separated.
  • the discrimination performance between the first inference model 21 and the second inference model 22 is made to be the same, and the behavior of the first inference model 21 and the second inference model 22 are achieved. You can get closer to the behavior of.
  • the second inference model 22 identifies three data as class X for six data and three data as class Y, as in the first inference model 21. I can identify it. Further, all the data identified as class X in the first inference model 21 can be identified as class X in the second inference model 22, and the data identified as class Y in the first inference model 21. In the second inference model 22, all of them can be identified as class Y.
  • the distance between the classes can be separated, and the behavior of the second inference model 22 can be changed to the behavior of the first inference model 21. You can get closer to the behavior.
  • the second inference model 22 is machine-learned using the second error between the second inference result and the third inference result calculated by inputting different types of first data and second data into the inference model 22. Be trained. Therefore, the behavior of the first inference model 21 and the behavior of the second inference model 22 can be brought close to each other. In addition, the difference between the recognition performance of the first inference model 21 and the recognition performance of the second inference model 22 can be maintained or reduced, or the difference can be suppressed from opening.
  • the first error between the first inference result and the second inference result calculated by inputting the same first data into different first inference model 21 and second inference model 22 is reduced, and Training parameters calculated so that the second error between the second inference result and the third inference result calculated by inputting different types of first data and second data into the same second inference model 22 becomes large.
  • the matching rate between the behavior of the first inference model 21 and the behavior of the second inference model 22 can be improved.
  • the second inference model 22 is obtained by reducing the weight of the first inference model 21
  • the second inference model 22 is obtained by reducing the weight of the first inference model 21. It does not have to be a model.
  • the example in which the first data and the second data are images has been described, but other data may be used. Specifically, it may be sensing data other than an image. For example, voice data output from a microphone, point group data output from a radar such as LiDAR, pressure data output from a pressure sensor, temperature data humidity data output from a temperature sensor humidity sensor, and fragrance sensor output. Any sensing data that can acquire correct answer data such as fragrance data may be the target of processing.
  • the second inference model 22 after training according to the above embodiment may be incorporated in the device. This will be described with reference to FIG.
  • FIG. 6 is a block diagram showing an example of the information processing device 300 according to another embodiment. Note that FIG. 6 shows a sensor 400 in addition to the information processing device 300.
  • the information processing apparatus 300 senses the acquisition unit 310 for acquiring sensing data and the second inference model 22 trained by machine learning based on the first error and the second error. It includes a control unit 320 that inputs data and acquires an inference result, and an output unit 330 that outputs data based on the acquired inference result. In this way, it is based on the acquisition unit 310 that acquires the sensing data from the sensor 400, the control unit 320 that controls the processing using the second inference model 22 after training, and the inference result that is the output of the second inference model 22.
  • An information processing device 300 including an output unit 330 for outputting data may be provided.
  • the information processing device 300 may include the sensor 400. Further, the acquisition unit 310 may acquire the sensing data from the memory in which the sensing data is recorded.
  • the present disclosure can be realized as a program for causing a processor to execute a step included in an information processing method. Further, the present disclosure can be realized as a non-temporary computer-readable recording medium such as a CD-ROM on which the program is recorded.
  • each step is executed by executing the program using hardware resources such as a computer CPU, memory, and input / output circuits. .. That is, each step is executed when the CPU acquires data from the memory or the input / output circuit or the like and performs an operation, or outputs the operation result to the memory or the input / output circuit or the like.
  • hardware resources such as a computer CPU, memory, and input / output circuits. .. That is, each step is executed when the CPU acquires data from the memory or the input / output circuit or the like and performs an operation, or outputs the operation result to the memory or the input / output circuit or the like.
  • each component included in the information processing system 1 may be configured by dedicated hardware or may be realized by executing a software program suitable for each component.
  • Each component may be realized by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • LSI Part or all of the functions of the information processing system 1 according to the above embodiment are typically realized as an LSI which is an integrated circuit. These may be individually integrated into one chip, or may be integrated into one chip so as to include a part or all of them. Further, the integrated circuit is not limited to the LSI, and may be realized by a dedicated circuit or a general-purpose processor. An FPGA (Field Programmable Gate Array) that can be programmed after the LSI is manufactured, or a reconfigurable processor that can reconfigure the connection and settings of the circuit cells inside the LSI may be used.
  • FPGA Field Programmable Gate Array
  • the present disclosure can be applied to, for example, the development of an inference model used when executing Deep Learning on an edge terminal.

Landscapes

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

Abstract

情報処理方法は、第1種類に属する第1データと、第1種類と異なる第2種類に属する第2データと、を取得し(S11)、第1データを第1推論モデルに入力して第1推論結果を算出し(S12)、第1データを第2推論モデルに入力して第2推論結果を算出し(S13)、第2データを第2推論モデルに入力して第3推論結果を算出し(S14)、第1推論結果と第2推論結果との第1誤差を算出し(S15)、第2推論結果と第3推論結果との第2誤差を算出し(S16)、第1誤差と第2誤差とに基づいて第2推論モデルを機械学習により訓練する(S17)処理を含む。

Description

情報処理方法、情報処理システム及び情報処理装置
 本開示は、推論モデルを機械学習により訓練するための情報処理方法、情報処理システム及び情報処理装置に関する。
 近年、エッジ端末でDeep Learningを実行する際に、処理の軽量化のために、推論モデルを軽量な推論モデルに変換することがなされている。例えば、特許文献1には、推論モデルの変換前後で推論性能をなるべく維持したまま、推論モデルの変換を行う技術が開示されている。この文献では、推論性能が落ちないように推論モデルの変換(例えば第1推論モデルから第2推論モデルへの変換)が実施される。
米国特許公開2016/0328644号明細書
 しかしながら、上記特許文献1に開示された技術では、第1推論モデルと第2推論モデルとで推論性能(例えば認識率などの認識性能)が同じでも、ある推論対象について、第1推論モデルの振る舞い(例えば正解/不正解)と第2推論モデルの振る舞いとが異なる場合がある。つまり、第1推論モデルと第2推論モデルとで、統計的な推論結果は同じであっても、個別的な推論結果が異なる場合がある。この差異が問題を引き起こすおそれがある。
 そこで、本開示は、第1推論モデルの振る舞いと第2推論モデルの振る舞いとを近づけることができる情報処理方法等を提供する。
 本開示に係る情報処理方法は、コンピュータにより実行される方法であって、第1種類に属する第1データと、前記第1種類と異なる第2種類に属する第2データと、を取得し、前記第1データを第1推論モデルに入力して第1推論結果を算出し、前記第1データを第2推論モデルに入力して第2推論結果を算出し、前記第2データを前記第2推論モデルに入力して第3推論結果を算出し、前記第1推論結果と前記第2推論結果との第1誤差を算出し、前記第2推論結果と前記第3推論結果との第2誤差を算出し、前記第1誤差と前記第2誤差とに基づいて前記第2推論モデルを機械学習により訓練する処理を含む。
 なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
 本開示の一態様に係る情報処理方法等によれば、第1推論モデルの振る舞いと第2推論モデルの振る舞いとを近づけることができる。
図1は、比較例に係る情報処理システムの一例を示すブロック図である。 図2は、比較例における第1推論モデルでの識別層直前の特徴量空間と第2推論モデルでの識別層直前の特徴量空間との一例を示す図である。 図3は、実施の形態に係る情報処理システムの一例を示すブロック図である。 図4は、実施の形態に係る情報処理方法の一例を示すフローチャートである。 図5は、実施の形態における第1推論モデルでの識別層直前の特徴量空間と第2推論モデルでの識別層直前の特徴量空間との一例を示す図である。 図6は、その他の実施の形態に係る情報処理装置の一例を示すブロック図である。
 従来技術では、推論性能が落ちないように推論モデルの変換が実施されるが、第1推論モデルと第2推論モデルとで推論性能が同じでも、ある推論対象について、第1推論モデルでの振る舞いと第2推論モデルでの振る舞いとが異なる場合がある。ここで、振る舞いは、複数の入力のそれぞれに対する推論モデルの出力である。つまり、第1推論モデルと第2推論モデルとで、統計的な推論結果は同じであっても、個別的な推論結果が異なる場合がある。この差異が問題を引き起こすおそれがある。例えば、ある推論対象について、第1推論モデルでは推論結果が正解で、第2推論モデルでは推論結果が不正解となる場合があったり、第1推論モデルでは推論結果が不正解で、第2推論モデルでは推論結果が正解となる場合があったりする。
 このように、第1推論モデルと第2推論モデルとで振る舞いが異なると、例えば、第1推論モデルの推論性能が改善され、改善後の第1推論モデルから第2推論モデルが生成された場合であっても、第2推論モデルの推論性能が改善されない又は劣化することがある。また、例えば、推論モデルの推論結果を用いた後続の処理において、同じ入力に対して第1推論モデルと第2推論モデルとで異なる処理結果が出力されるおそれもある。特に、当該処理が安全に関わる処理(例えば車両における物体認識処理)である場合は、上記振る舞いの差異は危険をもたらすおそれがある。
 これに対して、本開示の一態様に係る情報処理方法は、コンピュータにより実行される方法であって、第1種類に属する第1データと、前記第1種類と異なる第2種類に属する第2データと、を取得し、前記第1データを第1推論モデルに入力して第1推論結果を算出し、前記第1データを第2推論モデルに入力して第2推論結果を算出し、前記第2データを前記第2推論モデルに入力して第3推論結果を算出し、前記第1推論結果と前記第2推論結果との第1誤差を算出し、前記第2推論結果と前記第3推論結果との第2誤差を算出し、前記第1誤差と前記第2誤差とに基づいて前記第2推論モデルを機械学習により訓練する処理を含む。
 これによれば、第1推論モデルと第2推論モデルとに同じ第1データを入力することで算出される第1推論結果と第2推論結果との第1誤差だけでなく、第2推論モデルに異なる種類の第1データと第2データとを入力することで算出される第2推論結果と第3推論結果との第2誤差も用いて第2推論モデルが機械学習により訓練される。そのため、第1推論モデルの振る舞いと第2推論モデルの振る舞いとを近づけることができる。また、合わせて、第1推論モデルの認識性能と第2推論モデルの認識性能との差を維持又は小さくしたり、差が開くことを抑制したりすることができる。
 また、前記第1種類及び前記第2種類はクラスであってもよい。
 このように、種類は、データが属するクラスであってもよい。
 また、前記第1推論モデルの構成と前記第2推論モデルの構成は異なっていてもよい。
 これによれば、それぞれ異なる構成(例えばネットワーク構成)である第1推論モデル及び第2推論モデルについて、それぞれの振る舞いを近づけることができる。
 また、前記第1推論モデルの処理精度と前記第2推論モデルの処理精度は異なっていてもよい。
 これによれば、それぞれ異なる処理精度(例えばビット精度)である第1推論モデル及び第2推論モデルについて、それぞれの振る舞いを近づけることができる。
 また、前記第2推論モデルは、前記第1推論モデルの軽量化により得られてもよい。
 これによれば、第1推論モデルの振る舞いと、軽量化された第2推論モデルの振る舞いとを近づけることができる。
 また、前記訓練では、前記第1誤差が小さくなり、かつ、前記第2誤差が大きくなるように、訓練パラメタを算出し、算出した前記訓練パラメタを用いて前記第2推論モデルを更新してもよい。
 これによれば、同じ第1データを異なる第1推論モデルと第2推論モデルとに入力することで算出される第1推論結果と第2推論結果とが一致するように(つまり第1誤差が小さくなるように)、かつ、異なる種類の第1データと第2データとを同じ第2推論モデルに入力することで算出される第2推論結果と第3推論結果とが一致しないように(つまり第2誤差が大きくなるように)算出される訓練パラメタを用いて第2推論モデルを更新することで、第1推論モデルの振る舞いと第2推論モデルの振る舞いとの一致率を向上させることができる。
 また、前記第1推論モデル及び前記第2推論モデルは、ニューラルネットワークモデルであってもよい。
 このように、それぞれニューラルネットワークモデルである第1推論モデル及び第2推論モデルについて、それぞれの振る舞いを近づけることができる。
 本開示の一態様に係る情報処理システムは、第1種類に属する第1データと、前記第1種類と異なる第2種類に属する第2データと、を取得する取得部と、前記第1データを第1推論モデルに入力して第1推論結果を算出し、前記第1データを第2推論モデルに入力して第2推論結果を算出し、前記第2データを前記第2推論モデルに入力して第3推論結果を算出する推論結果算出部と、前記第1推論結果と前記第2推論結果との第1誤差を算出する第1誤差算出部と、前記第2推論結果と前記第3推論結果との第2誤差を算出する第2誤差算出部と、前記第1誤差と前記第2誤差とに基づいて前記第2推論モデルを機械学習により訓練する訓練部と、を備える。
 これによれば、第1推論モデルの振る舞いと第2推論モデルの振る舞いとを近づけることができる情報処理システムを提供できる。
 本開示の一態様に係る情報処理装置は、センシングデータを取得する取得部と、前記センシングデータを第2推論モデルに入力して推論結果を取得する制御部と、取得された前記推論結果に基づくデータを出力する出力部と、を備え、前記第2推論モデルは、第1誤差と第2誤差とに基づいて機械学習により訓練され、前記第1誤差は、第1推論結果と第2推論結果との誤差であり、前記第2誤差は、前記第2推論結果と第3推論結果との誤差であり、前記第1推論結果は、第1データを第1推論モデルに入力して算出され、前記第2推論結果は、前記第1データを前記第2推論モデルに入力して算出され、前記第3推論結果は、第2データを前記第2推論モデルに入力して算出され、前記第1データは、第1種類に属するデータであり、前記第2データは、前記第1種類と異なる第2種類に属するデータである。
 これによれば、第1推論モデルの振る舞いに近づけられた第2推論モデルを装置に用いることができる。これにより、組込み環境における推論モデルを用いた推論処理の性能を向上させることができる。
 以下、実施の形態について、図面を参照しながら具体的に説明する。
 なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。
 (実施の形態)
 以下、実施の形態に係る情報処理システムについて説明するが、その前に、比較例に係る情報処理システムについて図1及び図2を用いて説明する。
 図1は、比較例に係る情報処理システム1aの一例を示すブロック図である。情報処理システム1aは、取得部10a、推論結果算出部20a、第1推論モデル21、第2推論モデル22、第1誤差算出部30、訓練部50a及び学習データ100を備える。
 情報処理システム1aは、第2推論モデル22を機械学習により訓練するためのシステムであり、機械学習の際に学習データ100を用いる。例えば、第2推論モデル22は、第1推論モデル21の軽量化により得られるモデルである。例えば、第1推論モデル21は浮動小数点モデルであり、第2推論モデル22は固定小数点モデルである。情報処理システム1aは、軽量化された第2推論モデル22であっても、第1推論モデル21と同程度の認識性能となるように第2推論モデル22を機械学習により訓練する。
 学習データ100には、数多くの種類のデータが含まれており、例えば、画像認識をさせる推論モデルを機械学習により訓練する場合、学習データ100には、画像データが含まれる。なお、画像は、撮像画像であってもよく、生成画像であってもよい。
 取得部10aは、第1種類に属する第1データを取得する。第1種類は、例えば、クラスである。
 推論結果算出部20aは、第1データを第1推論モデル21に入力して第1推論結果を算出する。また、推論結果算出部20aは、第1データを第2推論モデル22に入力して第2推論結果を算出する。つまり、推論結果算出部20aは、同じ第1データを第1推論モデル21と第2推論モデル22とに入力することで、第1推論結果と第2推論結果とを算出する。
 第1誤差算出部30は、第1推論結果と第2推論結果との第1誤差を算出する。第1誤差は、同じ第1データを異なる第1推論モデル21と第2推論モデル22とに入力したときに算出される第1推論結果と第2推論結果との誤差である。
 訓練部50aは、第1誤差に基づいて第2推論モデル22を機械学習により訓練する。訓練部50aは、パラメタ算出部51a及び更新部52aを有する。パラメタ算出部51aは、第1誤差が小さくなるように訓練パラメタを算出し、更新部52aは、算出した訓練パラメタを用いて第2推論モデル22を更新する。第1誤差が小さくなるとは、異なる第1推論モデル21及び第2推論モデル22に同じ種類の第1データを入力したときに得られる第1推論結果及び第2推論結果が近い推論結果となることを意味する。第1誤差が小さい場合、例えば、同じ画像を第1推論モデル21及び第2推論モデル22に入力したときに、第1推論結果及び第2推論結果がそれぞれ同じような認識結果となる。
 ここで、比較例における第1推論モデル21での特徴量空間と第2推論モデル22での特徴量空間について図2を用いて説明する。
 図2は、比較例における第1推論モデル21での識別層直前の特徴量空間と第2推論モデル22での識別層直前の特徴量空間との一例を示す図である。各特徴量空間に示される6つの丸は、各推論モデルに入力されたデータの特徴量を示し、3つの白丸はそれぞれ同じ種類(例えばクラスX)のデータの特徴量であり、3つのドットが付された丸はそれぞれ同じ種類(例えばクラスY)のデータの特徴量である。クラスXとクラスYとは異なるクラスである。例えば、各推論モデルについて、特徴量空間において特徴量が識別面より左側にあるデータの推論結果はクラスXを示し、特徴量が識別面より右側にあるデータの推論結果はクラスYを示すとする。
 第1推論モデル21は、例えば、浮動小数点モデルであり、表現力の高い(言い換えるとパラメタ数の多い)モデルとなっている。このため、第1推論モデル21での特徴量空間では、クラスXのデータとクラスYのデータについて、クラス間距離は離れており、クラスXの3つのデータ及びクラスYの3つのデータをそれぞれ識別できている。
 一方で、第2推論モデル22は、例えば、軽量化された固定小数点モデルであり、表現力の低い(言い換えるとパラメタ数の少ない)モデルとなっている。第1推論モデル21及び第2推論モデル22に同じクラスXのデータ及び同じクラスYのデータ等を入力したときに得られる第1推論結果と第2推論結果との第1誤差を考慮して第2推論モデル22を訓練しても、第2推論モデル22でのクラス間距離は離れず、認識クラスの変更に限界がある。例えば、第1誤差を考慮した訓練では、第1推論モデル21と第2推論モデル22との識別性能を同じにすることはできる。具体的には図2の例では、第2推論モデル22は、第1推論モデル21と同じように、6つのデータに対して3つのデータをクラスXと識別し、3つのデータをクラスYと識別できている。しかし、第1誤差を考慮した訓練では、第1推論モデル21の振る舞いと第2推論モデル22の振る舞いとを近づけることは難しい。具体的には図2の例では、同じクラスのデータについて、第1推論モデル21ではクラスXと識別しているのに対して第2推論モデル22ではクラスYと識別し、また、別の同じクラスのデータについて、第1推論モデル21ではクラスYと識別しているのに対して第2推論モデル22ではクラスXと識別している。
 このように、比較例での第1誤差に基づく第2推論モデル22の訓練では、クラス間距離が離れず、第2推論モデル22の振る舞いを第1推論モデル21の振る舞いに近づけることは難しい。
 これに対して、実施の形態に係る情報処理システムでは、第1推論モデル21の振る舞いと第2推論モデル22の振る舞いとが近づくように第2推論モデル22を機械学習により訓練することができる。これについて、以下説明する。
 図3は、実施の形態に係る情報処理システム1の一例を示すブロック図である。情報処理システム1は、取得部10、推論結果算出部20、第1推論モデル21、第2推論モデル22、第1誤差算出部30、第2誤差算出部40、訓練部50及び学習データ100を備える。
 情報処理システム1は、第2推論モデル22を機械学習により訓練するためのシステムであり、機械学習の際に学習データ100を用いる。情報処理システム1は、プロセッサ及びメモリ等を含むコンピュータである。メモリは、ROM(Read Only Memory)及びRAM(Random Access Memory)等であり、プロセッサにより実行されるプログラムを記憶することができる。取得部10、推論結果算出部20、第1誤差算出部30、第2誤差算出部40及び訓練部50は、メモリに格納されたプログラムを実行するプロセッサ等によって実現される。
 例えば、情報処理システム1は、サーバであってもよい。また、情報処理システム1を構成する構成要素は、複数のサーバに分散して配置されてもよい。
 学習データ100には、数多くの種類のデータが含まれており、例えば、画像認識をさせるモデルを機械学習により訓練する場合、学習データ100には、画像データが含まれる。学習データ100には、第1種類に属する第1データ及び第1種類と異なる第2種類に属する第2データが含まれる。第1種類及び第2種類は、例えばクラスである。
 第1推論モデル21及び第2推論モデル22は、例えば、ニューラルネットワークモデルであり、入力されたデータに対して推論を行う。推論は、ここでは例えば分類とするが、物体検出、セグメンテーション又はカメラから被写体までの距離の推定等であってもよい。なお、振る舞いは、推論が分類の場合、正解/不正解又はクラスであってよく、推論が物体検出の場合、正解/不正解又はクラスに代えて又はそれと共に検出枠の大きさ又は位置関係であってよく、推論がセグメンテーションの場合、領域のクラス、大きさ又は位置関係であってよく、推論が距離推定である場合、推定距離の長さであってよい。
 例えば、第1推論モデル21の構成と第2推論モデル22の構成は異なっていてもよく、また、第1推論モデル21の処理精度と第2推論モデル22の処理精度は異なっていてもよく、第2推論モデル22は、第1推論モデル21の軽量化により得られる推論モデルであってもよい。例えば、第1推論モデル21の構成と第2推論モデル22の構成が異なる場合、第2推論モデル22は、第1推論モデル21よりも枝数が少ない又はノード数が少ない。例えば、第1推論モデル21の処理精度と第2推論モデル22の処理精度が異なる場合、第2推論モデル22は、第1推論モデル21よりもビット精度が低い。具体的には、第1推論モデル21は浮動小数点モデルであり、第2推論モデル22は固定小数点モデルであってもよい。なお、第1推論モデル21の構成と第2推論モデル22の構成が異なり、かつ、第1推論モデル21の処理精度と第2推論モデル22の処理精度が異なっていてもよい。
 取得部10は、学習データ100から、第1種類に属する第1データと、第1種類と異なる第2種類に属する第2データと、を取得する。
 推論結果算出部20は、取得部10が取得したデータから第1データを選択し、第1データを第1推論モデル21及び第2推論モデル22に入力して第1推論結果及び第2推論結果を算出する。また、推論結果算出部20は、取得部10が取得したデータから第2データを選択し、第2データを第2推論モデル22に入力して第3推論結果を算出する。
 第1誤差算出部30は、第1推論結果と第2推論結果との第1誤差を算出する。
 第2誤差算出部40は、第2推論結果と第3推論結果との第2誤差を算出する。
 訓練部50は、第1誤差と第2誤差とに基づいて第2推論モデル22を機械学習により訓練する。例えば、訓練部50は、パラメタ算出部51及び更新部52を機能構成要素として有する。パラメタ算出部51は、第1誤差が小さくなり、かつ、第2誤差が大きくなるように、訓練パラメタを算出する。更新部52は、算出した訓練パラメタを用いて第2推論モデル22を更新する。
 情報処理システム1の動作について図4を用いて説明する。
 図4は、実施の形態に係る情報処理方法の一例を示すフローチャートである。情報処理方法は、コンピュータ(情報処理システム1)により実行される方法である。このため、図4は、実施の形態に係る情報処理システム1の動作の一例を示すフローチャートでもある。すなわち、以下の説明は、情報処理システム1の動作の説明でもあり、情報処理方法の説明でもある。
 まず、取得部10は、第1データと第2データとを取得する(ステップS11)。例えば、第1データ及び第2データを画像とすると、取得部10は、それぞれクラスの異なる物体が写る第1データと第2データとを取得する。
 次に、推論結果算出部20は、第1データを第1推論モデル21に入力して第1推論結果を算出し(ステップS12)、第1データを第2推論モデル22に入力して第2推論結果を算出し(ステップS13)、第2データを第2推論モデル22に入力して第3推論結果を算出する(ステップS14)。つまり、推論結果算出部20は、同じ第1データを第1推論モデル21と第2推論モデル22とに入力することで、第1推論結果と第2推論結果とを算出し、異なる種類(例えば異なるクラス)の第1データと第2データとを同じ第2推論モデル22に入力することで、第2推論結果と第3推論結果とを算出する。なお、ステップS12、ステップS13及びステップS14は、この順序で実行されなくてもよく、また、並行して実行されてもよい。
 次に、第1誤差算出部30は、第1推論結果と第2推論結果との第1誤差を算出し(ステップS15)、第2誤差算出部40は、第2推論結果と第3推論結果との第2誤差を算出する(ステップS16)。第1誤差は、同じ第1データを異なる第1推論モデル21と第2推論モデル22とに入力したときに算出される第1推論結果と第2推論結果との誤差である。第2誤差は、異なる種類の第1データと第2データとを同じ第2推論モデル22に入力したときに算出される第2推論結果と第3推論結果との誤差である。なお、ステップS14及びステップS15は、この順序で実行されなくてもよく、また、並行して実行されてもよい。また、ステップS12及びステップS13が実行された後に、ステップS15が実行され、その後にステップS14が実行され、そしてステップS16が実行されてもよい。或いは、ステップS13及びステップS14が実行された後に、ステップS16が実行され、その後にステップS12が実行され、そしてステップS15が実行されてもよい。
 そして、訓練部50は、第1誤差と第2誤差とに基づいて第2推論モデル22を機械学習により訓練する(ステップS17)。具体的には、訓練部50の訓練では、パラメタ算出部51は、第1誤差が小さくなり、かつ、第2誤差が大きくなるように、訓練パラメタを算出し、更新部52は、訓練パラメタを用いて第2推論モデル22を更新する。第1誤差が小さくなるとは、異なる第1推論モデル21及び第2推論モデル22に同じ第1データを入力したときに得られる第1推論結果及び第2推論結果が近い推論結果となることを意味する。第1誤差は、第1推論結果と第2推論結果との距離が近いほど小さくなる。推論結果の距離は、例えば、クロスエントロピーによって求めることができる。第2誤差が大きくなるとは、同じ第2推論モデル22に異なる種類の第1データと第2データとを入力したときに得られる第2推論結果及び第3推論結果が遠い推論結果となることを意味する。第2誤差は、第2推論結果と第3推論結果との距離が近いほど大きくなる。パラメタ算出部51は、第1誤差と第2誤差とをそれぞれ任意の係数で重みづけした後に加算することで、訓練パラメタを算出する。例えば、第2推論モデル22の訓練には、第1誤差と第2誤差の重み付け和が用いられてもよいし、或いは、新たな定数αを定義してTriplet Lossが用いられてもよい。
 ここで、実施の形態における第1推論モデル21での特徴量空間と第2推論モデル22での特徴量空間について図5を用いて説明する。
 図5は、実施の形態における第1推論モデル21での識別層直前の特徴量空間と第2推論モデル22での識別層直前の特徴量空間との一例を示す図である。各特徴量空間における6つの丸は、各推論モデルに入力されたデータの特徴量を示し、3つの白丸はそれぞれ同じ種類(例えばクラスX)のデータの特徴量であり、3つのドットが付された丸はそれぞれ同じ種類(例えばクラスY)のデータの特徴量である。クラスXとクラスYとは異なるクラスである。例えば、各推論モデルについて、特徴量空間において特徴量が識別面より左側にあるデータの推論結果はクラスXを示し、特徴量が識別面より右側にあるデータの推論結果はクラスYを示すとする。
 第1推論モデル21は、表現力の高い(言い換えるとパラメタ数の多い)モデルとなっている。このため、第1推論モデル21での特徴量空間では、クラスXのデータとクラスYのデータについて、クラス間距離は離れており、クラスXの3つのデータ及びクラスYの3つのデータをそれぞれ識別できている。
 一方で、第2推論モデル22は、例えば、軽量化されて表現力の低い(言い換えるとパラメタ数の少ない)モデルとなっている。比較例は、第1誤差のみを考慮して第2推論モデル22を訓練する例であり、当該訓練では第2推論モデル22でのクラス間距離は離れない。しかし、実施の形態では、第1誤差だけでなく、第2誤差も考慮して第2推論モデル22の訓練が行われる。つまり、異なる第1推論モデル21及び第2推論モデル22間の第1誤差だけではなく、同じ第2推論モデル22における第2誤差も考慮することで、第1推論モデル21と同じように、第2推論モデル22においてもクラス間距離を離すことができる。したがって、第1誤差及び第2誤差を考慮した訓練では、第1推論モデル21と第2推論モデル22との識別性能を同程度にし、かつ、第1推論モデル21の振る舞いと第2推論モデル22の振る舞いとを近づけることができる。具体的には図5の例では、第2推論モデル22は、第1推論モデル21と同じように、6つのデータに対して3つのデータをクラスXと識別し、3つのデータをクラスYと識別できている。さらに、第1推論モデル21においてクラスXと識別しているデータについて、第2推論モデル22においても全てクラスXと識別できており、第1推論モデル21においてクラスYと識別しているデータについて、第2推論モデル22においても全てクラスYと識別できている。
 このように、実施の形態での第1誤差及び第2誤差に基づく第2推論モデル22の訓練では、クラス間距離を離すことができ、第2推論モデル22の振る舞いを第1推論モデル21の振る舞いに近づけることができる。
 以上説明したように、第1推論モデル21と第2推論モデル22とに同じ第1データを入力することで算出される第1推論結果と第2推論結果との第1誤差だけでなく、第2推論モデル22に異なる種類の第1データと第2データとを入力することで算出される第2推論結果と第3推論結果との第2誤差も用いて第2推論モデル22が機械学習により訓練される。そのため、第1推論モデル21の振る舞いと第2推論モデル22の振る舞いとを近づけることができる。また、合わせて、第1推論モデル21の認識性能と第2推論モデル22の認識性能との差を維持又は小さくしたり、差が開くことを抑制したりすることができる。
 例えば、同じ第1データを異なる第1推論モデル21と第2推論モデル22とに入力することで算出される第1推論結果と第2推論結果との第1誤差が小さくなるように、かつ、異なる種類の第1データと第2データとを同じ第2推論モデル22に入力することで算出される第2推論結果と第3推論結果との第2誤差が大きくなるように算出される訓練パラメタを用いて第2推論モデル22を更新することで、第1推論モデル21の振る舞いと第2推論モデル22の振る舞いとの一致率を向上させることができる。
 (その他の実施の形態)
 以上、本開示の一つ又は複数の態様に係る情報処理方法及び情報処理システム1について、実施の形態に基づいて説明したが、本開示は、これらの実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を各実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の一つ又は複数の態様の範囲内に含まれてもよい。
 例えば、上記実施の形態では、第2推論モデル22が、第1推論モデル21の軽量化により得られる例について説明したが、第2推論モデル22は、第1推論モデル21の軽量化により得られるモデルでなくてもよい。
 例えば、上記実施の形態では、第1データ及び第2データが画像である例を説明したが、他のデータであってもよい。具体的には、画像以外のセンシングデータであってもよい。例えば、マイクロフォンから出力される音声データ、LiDAR等のレーダから出力される点群データ、圧力センサから出力される圧力データ、温度センサ湿度センサから出力される温度データ湿度データ、香りセンサから出力される香りデータなどの正解データが取得可能なセンシングデータであれば、処理の対象とされてよい。
 例えば、上記実施の形態に係る訓練後の第2推論モデル22は、装置に組み込まれてもよい。これについて、図6を用いて説明する。
 図6は、その他の実施の形態に係る情報処理装置300の一例を示すブロック図である。なお、図6には、情報処理装置300の他にセンサ400も示している。
 図6に示されるように、情報処理装置300は、センシングデータを取得する取得部310と、上記第1誤差と上記第2誤差とに基づいて機械学習により訓練された第2推論モデル22にセンシングデータを入力して推論結果を取得する制御部320と、取得された推論結果に基づくデータを出力する出力部330と、を備える。このように、センシングデータをセンサ400から取得する取得部310と、訓練後の第2推論モデル22を用いた処理を制御する制御部320と、第2推論モデル22の出力である推論結果に基づくデータを出力する出力部330と、を備える情報処理装置300が提供されてよい。なお、情報処理装置300にセンサ400が含まれてもよい。また、取得部310は、センシングデータが記録されたメモリからセンシングデータを取得してもよい。
 例えば、本開示は、情報処理方法に含まれるステップを、プロセッサに実行させるためのプログラムとして実現できる。さらに、本開示は、そのプログラムを記録したCD-ROM等である非一時的なコンピュータ読み取り可能な記録媒体として実現できる。
 例えば、本開示が、プログラム(ソフトウェア)で実現される場合には、コンピュータのCPU、メモリ及び入出力回路等のハードウェア資源を利用してプログラムが実行されることによって、各ステップが実行される。つまり、CPUがデータをメモリ又は入出力回路等から取得して演算したり、演算結果をメモリ又は入出力回路等に出力したりすることによって、各ステップが実行される。
 なお、上記実施の形態において、情報処理システム1に含まれる各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU又はプロセッサなどのプログラム実行部が、ハードディスク又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
 上記実施の形態に係る情報処理システム1の機能の一部又は全ては典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
 さらに、本開示の主旨を逸脱しない限り、本開示の各実施の形態に対して当業者が思いつく範囲内の変更を施した各種変形例も本開示に含まれる。
 本開示は、例えば、エッジ端末でDeep Learningを実行する際に用いられる推論モデルの開発に適用できる。
 1、1a 情報処理システム
 10、10a、310 取得部
 20、20a 推論結果算出部
 21 第1推論モデル
 22 第2推論モデル
 30 第1誤差算出部
 40 第2誤差算出部
 50、50a 訓練部
 51、51a パラメタ算出部
 52、52a 更新部
 100 学習データ
 300 情報処理装置
 320 制御部
 330 出力部

Claims (9)

  1.  コンピュータにより実行される方法であって、
     第1種類に属する第1データと、前記第1種類と異なる第2種類に属する第2データと、を取得し、
     前記第1データを第1推論モデルに入力して第1推論結果を算出し、
     前記第1データを第2推論モデルに入力して第2推論結果を算出し、
     前記第2データを前記第2推論モデルに入力して第3推論結果を算出し、
     前記第1推論結果と前記第2推論結果との第1誤差を算出し、
     前記第2推論結果と前記第3推論結果との第2誤差を算出し、
     前記第1誤差と前記第2誤差とに基づいて前記第2推論モデルを機械学習により訓練する
     情報処理方法。
  2.  前記第1種類及び前記第2種類はクラスである
     請求項1に記載の情報処理方法。
  3.  前記第1推論モデルの構成と前記第2推論モデルの構成は異なる
     請求項1又は2に記載の情報処理方法。
  4.  前記第1推論モデルの処理精度と前記第2推論モデルの処理精度は異なる
     請求項1~3のいずれか1項に記載の情報処理方法。
  5.  前記第2推論モデルは、前記第1推論モデルの軽量化により得られる
     請求項3又は4に記載の情報処理方法。
  6.  前記訓練では、
     前記第1誤差が小さくなり、かつ、前記第2誤差が大きくなるように、訓練パラメタを算出し、
     算出した前記訓練パラメタを用いて前記第2推論モデルを更新する
     請求項1~5のいずれか1項に記載の情報処理方法。
  7.  前記第1推論モデル及び前記第2推論モデルは、ニューラルネットワークモデルである
     請求項1~6のいずれか1項に記載の情報処理方法。
  8.  第1種類に属する第1データと、前記第1種類と異なる第2種類に属する第2データと、を取得する取得部と、
     前記第1データを第1推論モデルに入力して第1推論結果を算出し、前記第1データを第2推論モデルに入力して第2推論結果を算出し、前記第2データを前記第2推論モデルに入力して第3推論結果を算出する推論結果算出部と、
     前記第1推論結果と前記第2推論結果との第1誤差を算出する第1誤差算出部と、
     前記第2推論結果と前記第3推論結果との第2誤差を算出する第2誤差算出部と、
     前記第1誤差と前記第2誤差とに基づいて前記第2推論モデルを機械学習により訓練する訓練部と、を備える
     情報処理システム。
  9.  センシングデータを取得する取得部と、
     前記センシングデータを第2推論モデルに入力して推論結果を取得する制御部と、
     取得された前記推論結果に基づくデータを出力する出力部と、を備え、
     前記第2推論モデルは、第1誤差と第2誤差とに基づいて機械学習により訓練され、
     前記第1誤差は、第1推論結果と第2推論結果との誤差であり、
     前記第2誤差は、前記第2推論結果と第3推論結果との誤差であり、
     前記第1推論結果は、第1データを第1推論モデルに入力して算出され、
     前記第2推論結果は、前記第1データを前記第2推論モデルに入力して算出され、
     前記第3推論結果は、第2データを前記第2推論モデルに入力して算出され、
     前記第1データは、第1種類に属するデータであり、
     前記第2データは、前記第1種類と異なる第2種類に属するデータである
     情報処理装置。
PCT/JP2020/042078 2019-12-06 2020-11-11 情報処理方法、情報処理システム及び情報処理装置 WO2021111831A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP20895904.9A EP4071671A4 (en) 2019-12-06 2020-11-11 INFORMATION PROCESSING METHOD, INFORMATION PROCESSING SYSTEM AND INFORMATION PROCESSING DEVICE
JP2021562534A JPWO2021111831A1 (ja) 2019-12-06 2020-11-11
CN202080081589.6A CN114730393A (zh) 2019-12-06 2020-11-11 信息处理方法、信息处理系统及信息处理装置
US17/828,464 US20220292370A1 (en) 2019-12-06 2022-05-31 Information processing method, information processing system, and information processing device

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962944664P 2019-12-06 2019-12-06
US62/944,664 2019-12-06
JP2020099410 2020-06-08
JP2020-099410 2020-06-08

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/828,464 Continuation US20220292370A1 (en) 2019-12-06 2022-05-31 Information processing method, information processing system, and information processing device

Publications (1)

Publication Number Publication Date
WO2021111831A1 true WO2021111831A1 (ja) 2021-06-10

Family

ID=76221581

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/042078 WO2021111831A1 (ja) 2019-12-06 2020-11-11 情報処理方法、情報処理システム及び情報処理装置

Country Status (5)

Country Link
US (1) US20220292370A1 (ja)
EP (1) EP4071671A4 (ja)
JP (1) JPWO2021111831A1 (ja)
CN (1) CN114730393A (ja)
WO (1) WO2021111831A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160328644A1 (en) 2015-05-08 2016-11-10 Qualcomm Incorporated Adaptive selection of artificial neural networks
JP2017531255A (ja) * 2014-09-12 2017-10-19 マイクロソフト コーポレーションMicrosoft Corporation 出力分布による生徒dnnの学習
WO2019102962A1 (ja) * 2017-11-22 2019-05-31 日本電気株式会社 学習装置、学習方法、及び、記録媒体
US20190287515A1 (en) * 2018-03-16 2019-09-19 Microsoft Technology Licensing, Llc Adversarial Teacher-Student Learning for Unsupervised Domain Adaptation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017531255A (ja) * 2014-09-12 2017-10-19 マイクロソフト コーポレーションMicrosoft Corporation 出力分布による生徒dnnの学習
US20160328644A1 (en) 2015-05-08 2016-11-10 Qualcomm Incorporated Adaptive selection of artificial neural networks
WO2019102962A1 (ja) * 2017-11-22 2019-05-31 日本電気株式会社 学習装置、学習方法、及び、記録媒体
US20190287515A1 (en) * 2018-03-16 2019-09-19 Microsoft Technology Licensing, Llc Adversarial Teacher-Student Learning for Unsupervised Domain Adaptation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4071671A4

Also Published As

Publication number Publication date
US20220292370A1 (en) 2022-09-15
EP4071671A1 (en) 2022-10-12
CN114730393A (zh) 2022-07-08
EP4071671A4 (en) 2022-12-21
JPWO2021111831A1 (ja) 2021-06-10

Similar Documents

Publication Publication Date Title
CN109241903B (zh) 样本数据清洗方法、装置、计算机设备及存储介质
US20200279156A1 (en) Feature fusion for multi-modal machine learning analysis
KR102641116B1 (ko) 데이터 증강에 기초한 인식 모델 트레이닝 방법 및 장치, 이미지 인식 방법 및 장치
US20210012183A1 (en) Method and device for ascertaining a network configuration of a neural network
CN111091175A (zh) 神经网络模型训练方法、分类方法、装置和电子设备
WO2018207334A1 (ja) 画像認識装置、画像認識方法および画像認識プログラム
US11301723B2 (en) Data generation device, data generation method, and computer program product
CN110969200B (zh) 基于一致性负样本的图像目标检测模型训练方法及装置
US11514315B2 (en) Deep neural network training method and apparatus, and computer device
KR102370910B1 (ko) 딥러닝 기반 소수 샷 이미지 분류 장치 및 방법
JP7047498B2 (ja) 学習プログラム、学習方法および学習装置
JP7172612B2 (ja) データ拡張プログラム、データ拡張方法およびデータ拡張装置
CN111783997B (zh) 一种数据处理方法、装置及设备
CN112613617A (zh) 基于回归模型的不确定性估计方法和装置
WO2021064856A1 (ja) ロバスト学習装置、ロバスト学習方法、プログラム及び記憶装置
CN111950579A (zh) 分类模型的训练方法和训练装置
CN109101984B (zh) 一种基于卷积神经网络的图像识别方法及装置
CN111783936B (zh) 卷积神经网络构建方法、装置、设备及介质
WO2021111831A1 (ja) 情報処理方法、情報処理システム及び情報処理装置
CN110889316B (zh) 一种目标对象识别方法、装置及存储介质
JP2019028484A (ja) 属性識別装置、属性識別モデル学習装置、方法、及びプログラム
JP7507172B2 (ja) 情報処理方法、情報処理システム及び情報処理装置
JP7331947B2 (ja) 物体識別装置、物体識別方法、学習装置、学習方法、及び、プログラム
JP7024262B2 (ja) 学習方法、学習結果の利用方法、学習プログラムおよび学習装置
US20220012531A1 (en) Method for configuring an image evaluation device and also image evaluation method and image evaluation device

Legal Events

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

Ref document number: 20895904

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021562534

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020895904

Country of ref document: EP

Effective date: 20220706