WO2023167146A1 - 学習データ生成方法、学習データ生成装置及び記録媒体 - Google Patents

学習データ生成方法、学習データ生成装置及び記録媒体 Download PDF

Info

Publication number
WO2023167146A1
WO2023167146A1 PCT/JP2023/007102 JP2023007102W WO2023167146A1 WO 2023167146 A1 WO2023167146 A1 WO 2023167146A1 JP 2023007102 W JP2023007102 W JP 2023007102W WO 2023167146 A1 WO2023167146 A1 WO 2023167146A1
Authority
WO
WIPO (PCT)
Prior art keywords
class
classes
data
distance
learning
Prior art date
Application number
PCT/JP2023/007102
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 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Publication of WO2023167146A1 publication Critical patent/WO2023167146A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the present disclosure relates to a learning data generation method, a learning data generation device, and a recording medium.
  • Non-Patent Document 1 discloses a technique for generating synthetic image data, which is learning data, by mixing two image data and labels.
  • Non-Patent Document 1 synthetic image data is generated by mixing random image data, so it is not always possible to generate image data of a small number of classes. Therefore, it is difficult to effectively train a recognition model that improves the performance of classes with low accuracy.
  • the present disclosure provides a learning data generation method, a learning data generation device, and a recording medium for generating learning data that enables effective learning of a recognition model.
  • a learning data generation method receives image data as input and generates learning data for learning a recognition model that outputs one of a plurality of classes as a class of an object included in the image data. wherein, based on the recognition accuracy of the recognition model, a first class is selected from the plurality of classes, and the first class and two or more other classes among the plurality of classes are selected. Calculate the inter-class distance that is the distance between, select the second class for generating the learning data from the two or more other classes based on the inter-class distance, and select the first
  • the training data is generated by mixing the image data and labels of each of the classes and the second class.
  • a learning data generation device receives image data as an input and generates learning data for learning a recognition model that outputs one of a plurality of classes as a class of an object included in the image data.
  • a learning data generation device comprising: a first selection unit that selects a first class from the plurality of classes based on the recognition accuracy of the recognition model; the first class and two of the plurality of classes
  • a calculation unit that calculates interclass distances that are distances from each of the above other classes, and based on the interclass distances, selects a second class for generating the learning data from among the two or more other classes.
  • a generation unit that generates the learning data by mixing image data and labels of the selected first class and second class.
  • a recording medium is a non-temporary computer-readable recording medium in which a program for causing a computer to execute the learning data generation method described above is recorded.
  • FIG. 1 is a block diagram showing the functional configuration of the learning data generation device according to the embodiment.
  • FIG. 2 is a block diagram showing the functional configuration of a low frequency class selection unit according to the embodiment.
  • FIG. 3 is a flow chart showing the operation of the learning data generation device according to the embodiment.
  • FIG. 4 is a flow chart showing in detail the operation of step S10 shown in FIG.
  • FIG. 5A is a diagram illustrating a first example of a low frequency class selection method according to the embodiment.
  • FIG. 5B is a diagram illustrating a second example of a low frequency class selection method according to the embodiment.
  • FIG. 6 is a flow chart showing in detail the operation of step S20 shown in FIG.
  • FIG. 7 is a flow chart showing in detail the operation of step S30 shown in FIG.
  • FIG. 8A is a diagram showing a first example of a method of selecting classes mixed with low-frequency classes according to the embodiment.
  • FIG. 8B is a diagram showing a second example of a method of
  • the learning data is a set of data (data set) of image data and a label indicating the class of the object included in the image data.
  • the inventors of the present application have made intensive studies on a learning data generation method and the like that can generate learning data that can improve the recognition performance of low-frequency classes while suppressing an increase in collection costs. Invented a data generation method.
  • a learning data generation method receives image data, and generates learning data for learning a recognition model that outputs one of a plurality of classes as a class of an object included in the image data.
  • a method for generating learning data wherein a first class is selected from the plurality of classes based on the recognition accuracy of the recognition model, and the first class and two or more other classes among the plurality of classes are selected. calculating an inter-class distance that is the distance between each class, selecting a second class for generating the learning data from among the two or more other classes based on the inter-class distance, and selecting the selected first class
  • the training data is generated by mixing the image data and labels of each of the first class and the second class.
  • the recognition performance of the recognition model can be improved. For example, when the recognition accuracy of the first class is low, it is possible to generate learning data that can effectively improve the recognition accuracy of classes with low recognition accuracy. Therefore, according to the learning data generation method, it is possible to generate learning data that allows the recognition model to learn effectively.
  • a learning data generation method is the learning data generation method according to the first aspect, for example, among the plurality of classes, the class whose recognition accuracy is equal to or less than a first threshold and At least one of classes whose recognition accuracy is equal to or higher than a second threshold higher than the first threshold may be extracted as a candidate class, and the first class may be selected from among the candidate classes.
  • the learning data generation method according to the third aspect of the present disclosure is the learning data generation method according to the second aspect, and for example, the first class may be randomly selected from the candidate classes. .
  • a learning data generation method is the learning data generation method according to any one of the first to third aspects, for example, the inter-class distance is output by the recognition model. may be calculated based on the likelihood of each of the plurality of classes.
  • the likelihood of each of the multiple classes that are the recognition results of the recognition model can be used to select the second class.
  • the learning data generated by mixing the second class and the first class selected in this way can be learning data that can more accurately learn the boundary between the likelihoods of the first class and the second class. .
  • a learning data generation method is the learning data generation method according to the fourth aspect, for example, the evaluation data used for calculating the recognition accuracy corresponds to the first class obtaining the likelihood for each of the one or more first evaluation data, determining whether the variance of the likelihood of each of the one or more first evaluation data is greater than a third threshold, and determining the variance may be used to determine the likelihood of the first class used to calculate the inter-class distance.
  • the learning data can effectively train the recognition model compared to the case where the likelihoods are acquired regardless of the variance determination results. can be generated.
  • a learning data generation method is the learning data generation method according to the fifth aspect, for example, when the variance is greater than the third threshold, the one or more first evaluation data
  • the inter-class distance is calculated using the likelihood of the evaluation data whose recognition result is correct among the above, and when the variance is equal to or less than the third threshold, the recognition result among the one or more first evaluation data is
  • the inter-class distance may be calculated using the likelihood of evaluation data that is incorrect.
  • the likelihood of the correct evaluation data is used, so the influence of outliers can be suppressed.
  • the variation of the likelihood of the first class is small, the likelihood of the evaluation data with the incorrect answer is used, so that data similar to other classes can be made less likely to be mistaken.
  • a learning data generation method is a learning data generation method according to any one of the fourth aspect to the sixth aspect, for example, the inter-class distance is Mahalanobis distance, Euclidean distance, It may be Manhattan distance or cosine similarity.
  • any one of the Mahalanobis distance, Euclidean distance, Manhattan distance, and cosine similarity can be used as the distance between classes.
  • a learning data generation method is the learning data generation method according to any one of the first to seventh aspects, for example, the recognition result of the recognition model for the first class A correct answer rate may be calculated, and the second class may be selected from the two or more other classes based on the calculated correct answer rate and the inter-class distance.
  • the second class is selected based on the correct answer rate of the first class, so it is possible, for example, to select the second class that can improve the correct answer rate of the first class.
  • a learning data generation method is the learning data generation method according to the eighth aspect, for example, when the correct answer rate of the first class is greater than a fourth threshold, the two or more Among the other classes, the class with the short interclass distance is selected as the second class, and if the correct answer rate of the first class is the fourth threshold or less, the two or more other classes between the classes A class with a long distance may be selected as the second class.
  • a learning data generation method is the learning data generation method according to the first to ninth aspects, and further includes, for example, image data and labels used for calculating the recognition accuracy
  • One or more first evaluation data corresponding to the first class and one or more second evaluation data corresponding to the second class are obtained from the evaluation data including the obtained one or more
  • the learning by obtaining a mixing ratio for mixing the first evaluation data and the second evaluation data, and mixing the one or more first evaluation data and the second evaluation data based on the obtained mixing ratio. data may be generated.
  • a learning data generation device for learning a recognition model that receives image data as an input and outputs one of a plurality of classes as a class of an object included in the image data.
  • a learning data generation device for generating data comprising: a first selection unit that selects a first class from the plurality of classes based on the recognition accuracy of the recognition model; a calculating unit for calculating an interclass distance, which is a distance from each of the two or more other classes, and a second for generating the learning data from the two or more other classes based on the interclass distance
  • a second selection unit that selects a class, and a generation unit that generates the learning data by mixing image data and labels of the selected first class and second class.
  • a recording medium according to a twelfth aspect of the present disclosure is a non-temporary computer-readable program for causing a computer to execute the learning data generation method according to any one of the first to tenth aspects.
  • each figure is a schematic diagram and is not necessarily strictly illustrated. Therefore, for example, scales and the like do not necessarily match in each drawing. Moreover, in each figure, the same code
  • ordinal numbers such as “first” and “second” do not mean the number or order of components, unless otherwise specified, to avoid confusion between components of the same kind and to distinguish between them. It is used for the purpose of
  • FIG. 1 is a block diagram showing the functional configuration of a learning data generation device 1 according to this embodiment.
  • the learning data generation device 1 is an information processing device that generates learning data for learning (for example, re-learning) a recognition model. Specifically, the learning data generation device 1 generates learning data for improving the recognition performance of a class whose recognition performance of a recognition model is low due to a small number of data in the learning data, etc., from existing learning data. processing equipment.
  • the learning data generation device 1 includes a low frequency class selection unit 10, an interclass distance calculation unit 20, a mixed class selection unit 30, a data acquisition unit 40, a storage unit 50, a mixture rate A calculation unit 60 , a data mixing unit 70 , a label mixing unit 80 , and a learning data output unit 90 are provided. Processing by each of the functional blocks of the learning data generation device 1 is usually realized by reading and executing software (program) recorded in a recording medium such as a ROM by a program execution unit such as a processor.
  • software program
  • the low-frequency class selection unit 10 selects a low-frequency class from a plurality of classes based on the recognition accuracy (eg, recognition rate) of the recognition model.
  • the low-frequency class selection unit 10 performs inference using, for example, a pre-learned recognition model, and selects a low-frequency class based on the recognition accuracy of each of a plurality of classes.
  • a low-frequency class is a class that has not been learned well among a plurality of classes, and is a class that cannot be recognized with high accuracy.
  • an object in a low frequency class may be erroneously recognized as another class, or an object in another class may be erroneously recognized as a low frequency class.
  • the low frequency class selection unit 10 is an example of the first selection unit, and the low frequency class is an example of the first class.
  • the learning data used in the pre-learning is, for example, learning data in which the number of samples differs for each class.
  • the learning data generation device 1 generates learning data for re-learning a recognition model learned in machine learning using learning data with different numbers of samples for each class, for example.
  • FIG. 2 is a block diagram showing the functional configuration of the low-frequency class selection section 10 according to this embodiment.
  • the low frequency class selection unit 10 includes a learning parameter reading unit 11, a learning model parameter database 12, an evaluation data reading unit 13, an evaluation database 14, an inference unit 15, a class accuracy It has an analysis unit 16 and a class selection unit 17 .
  • the details of the processing of each component will be described later with reference to FIG. 4 and the like.
  • the learning parameter reading unit 11 reads (reads) the parameters of the recognition model from the learning model parameter database 12 .
  • a recognition model is a model used for image recognition, and is a mathematical model also called a learning model.
  • the recognition model is configured to be able to identify to which of a plurality of classes an object included in image data belongs.
  • the identification model may be a recognition model having parameters (initial values) given in advance, or may be a new model obtained by updating the parameters given in advance by performing machine learning using learning data prepared in advance. It may be a recognition model having parameters (learned recognition model).
  • the recognition model is a model that receives image data as an input and outputs which of a plurality of classes the object included in the image data belongs to.
  • the recognition model can be output in the form of a matrix (vector form) of 1 row and M columns (where M is the number of the plurality of classes) whose elements are likelihoods for each of a plurality of classes of the object.
  • a 1-row M-column matrix (vector) output from the recognition model is called a class probability or likelihood vector.
  • the likelihood for each of a plurality of classes included as elements of the class probability is a value that indicates the probability that the object belongs to that class.
  • the recognition model recognizes that the class with the highest likelihood among the likelihoods for each of the plurality of classes output for the input image data is the class of the object included in the image data.
  • the recognition model is, for example, a neural network model, but is not limited to this.
  • the recognition model may be an image segmentation model that classifies a class for each pixel.
  • the recognition model is an object recognition model that recognizes objects from image data.
  • it may be a character recognition model that recognizes characters from image data.
  • the classes are, for example, vehicles, people, roads, sidewalks, buildings, traffic lights, etc.
  • the classes are, for example, characters themselves.
  • the learning data and evaluation data described below each include image data including at least one object corresponding to the class and a label (correct label) of the object.
  • the learning model parameter database 12 is a storage device that stores parameters of one or more recognition models.
  • the parameters are, for example, various parameters of a neural network that is a recognition model.
  • the learning model parameter database 12 is realized by, for example, a semiconductor memory, but is not limited to this.
  • the evaluation data reading unit 13 reads evaluation data (evaluation data) for making an inference for selecting a low frequency class from the evaluation database 14 for the recognition model read by the learning parameter reading unit 11. load.
  • evaluation data evaluation data
  • image data will be described as an example of evaluation data.
  • the evaluation database 14 is a storage device that stores a plurality of evaluation data.
  • a plurality of evaluation data includes a plurality of classes classified by the recognition model.
  • the evaluation database 14 is implemented by, for example, a semiconductor memory, but is not limited to this.
  • the inference unit 15 performs inference processing on the evaluation data read by the evaluation data read unit 13 using the parameters of the recognition model read by the learning parameter read unit 11 .
  • the inference unit 15 acquires, as a result of inference processing, the class of the object included in the evaluation data obtained by inputting the evaluation data into the identification model. Further, the inference unit 15 inputs the evaluation data to the discriminant model, and the likelihood that the object included in the appraisal data output from the discriminative model is determined to be each of a plurality of classes.
  • a result output in the form of a matrix whose elements are may be acquired as the result of inference processing.
  • the class accuracy analysis unit 16 determines whether or not the output of the recognition model is correct, and from the determination result of the same class, the recognition rate ( (also referred to as the percentage of correct answers) is calculated.
  • the class selection unit 17 selects a low-frequency class from among a plurality of classes based on the recognition rate of each class calculated by the class accuracy analysis unit 16.
  • the inter-class distance calculation unit 20 calculates inter-class distances between a low-frequency class and two or more other classes among a plurality of classes.
  • the inter-class distance will be described as an example of a distance calculated from the likelihoods of a plurality of classes output from the identification model when the evaluation data is input to the identification model, but it is not limited to this.
  • the discriminative model is a neural network
  • the distance between classes may be calculated from the output (feature amount) from the intermediate layer of the neural network.
  • the inter-class distance is, more specifically, the likelihood output by the recognition model for image data in the low-frequency class and the likelihood output by the recognition model for image data in two or more other classes. It is a distance (for example, relative distance) calculated based on the likelihood and the covariance matrix. Details of the covariance matrix and calculation of the distance between classes will be described later.
  • the mixed class selection unit 30 selects one class mixed with the low frequency class based on the inter-class distances between the low frequency class and each of two or more other classes.
  • the mixed class selection unit 30 is an example of a second selection unit. The selection of classes mixed with low-frequency classes will be described later. Note that the class selected by the mixed class selection unit 30 is an example of the second class. Also, hereinafter, the class selected by the mixed class selection unit 30 is also referred to as a mixed class.
  • the data acquisition unit 40 reads the image data and labels of the low-frequency class and mixed target class from the storage unit 50.
  • the storage unit 50 is a storage device that stores data (image data and labels) for generating learning data for improving the recognition performance of the low-frequency class.
  • the storage unit 50 may be implemented by the evaluation database 14 .
  • the storage unit 50 may store evaluation data.
  • the storage unit 50 is realized by, for example, a semiconductor memory, but is not limited to this.
  • the mixture rate calculation unit 60 calculates the first image data of the low frequency class and the correct label of the first image data (first correct label), and the second image data of the mixture target class and the correct label of the second image data ( The mixing ratio (weight) when mixing with the second correct label) is calculated.
  • the mixing ratio when mixing the first image data and the second image data and the mixing ratio when mixing the first correct label and the second correct label are the same mixing ratio.
  • the mixture ratio calculator 60 may randomly calculate the mixture ratio.
  • the mixing ratio is a value between 0 and 1.
  • the sum of the first mixing ratio and the second mixing ratio is one.
  • first correct label and the second correct label may be labels representing one correct class, or may be labels representing multiple likelihoods for multiple classes.
  • the first correct label has a likelihood of 100% (i.e. 1) for the correct class of objects contained in the first image data and 0% (i.e. 0 ).
  • the second correct label has a likelihood of 100% (i.e., 1) for the correct class of objects contained in the second image data, and 0% (i.e., 0) for each other class. ).
  • the data mixing unit 70 mixes the first image data and the second image data at the mixing ratio calculated by the mixing ratio calculation unit 60 to generate additional image data (composite image data) for learning. It can also be said that the data mixing unit 70 combines the first image data and the second image data to generate one combined image data (pseudo data).
  • the data mixing unit 70 generates composite image data, for example, by performing weighted addition of the pixel values of the same pixels of the first image data and the second image data.
  • composite image data includes two or more objects of different classes.
  • the label mixing section 80 mixes the first correct label and the second correct label at the mixing rate calculated by the mixing rate calculating section 60 (the same mixing rate as that of the image data mixed by the data mixing section 70).
  • An additional correct label (synthetic correct label) corresponding to the synthesized image data generated by the unit 70 is generated. It can also be said that the label mixing unit 80 generates a synthesized correct label by synthesizing the first correct label and the second correct label.
  • the label mixing unit 80 generates a synthetic correct label by performing weighted addition of the likelihoods of the same class of the first correct label and the second correct label.
  • the synthetic correct label includes the likelihood for each of a plurality of classes including the object class included in the synthetic image data.
  • the first image data shows a dog
  • the first correct label has a likelihood of 100% (i.e. 1) for the dog
  • the second image data shows a cat
  • the second correct label The label has a likelihood of 100% (that is, 1) for cats, and we will consider mixing them with a mixing ratio of 0.5.
  • cats and dogs are examples of classes.
  • the combined image data is image data generated by weighted addition of the first image data and the second image data with the mixture ratio determined by the mixture ratio calculator 60, and includes, for example, both dogs and cats. image data (for example, image data in which at least part of a dog and a cat are superimposed).
  • a synthetic correct label is a label obtained by weighting and adding the first correct label and the second correct label with the same mixing rate as the mixing rate used for synthesizing the first image data and the second image data. If the synthetic correct label is indicated by (likelihood of dog, likelihood of cat), the synthetic correct label is (0.5, 0.5) in the above example.
  • the learning data output unit 90 uses the learning data containing the synthetic image data mixed by the data mixing unit 70 and the synthetic correct label corresponding to the synthetic image data mixed by the label mixing unit 80 to learn a recognition model. Output to an information processing device such as a learning device.
  • the learning data output unit 90 includes a communication circuit (communication module).
  • FIG. 3 is a flow chart showing the operation (learning data generating method) of the learning data generation device 1 according to the present embodiment.
  • FIG. 4 is a flowchart showing in detail the operation (learning data generation method) of step S10 shown in FIG.
  • the low frequency class selection unit 10 selects a low frequency class (first class) from a plurality of classes based on the recognition accuracy of the recognition model (S10). Specifically, the low-frequency class selection unit 10 selects a low-frequency class based on the recognition accuracy of the recognition result, which is the output of the recognition model obtained by inputting the evaluation data to the recognition model.
  • step S10 includes the processing of steps S11 to S19.
  • the learning parameter reading unit 11 reads the parameters of the recognition model for inference from the learning model parameter database 12 (S11).
  • the learning parameter reading unit 11 outputs the parameters of the read recognition model to the inference unit 15 .
  • the evaluation data reading unit 13 reads the N-th (N is a natural number equal to or greater than 1) evaluation data from the evaluation database 14 (S12).
  • the evaluation data reading unit 13 outputs the read evaluation data to the inference unit 15 .
  • the inference unit 15 executes inference processing and saves the inference result in a storage unit (not shown) (S13).
  • the inference unit 15 inputs image data for evaluation to the recognition model, and obtains, as an inference result, the class of the object included in the image data for evaluation that is the output of the recognition model.
  • the evaluation data reading unit 13 determines whether or not all the evaluation data have been processed (S14).
  • the evaluation data reading unit 13 may make a determination in step S14 based on whether or not all data of the evaluation data have been read from the evaluation database 14 .
  • determination may be made depending on whether or not a predetermined number of data has been processed. That is, it is not limited to processing all data of the evaluation data.
  • the processing here means performing the processing of step S13 using the evaluation data.
  • the class accuracy analysis unit 16 calculates the recognition rate (an example of recognition accuracy) for each class (S16). The class accuracy analysis unit 16 judges whether the inference result matches the correct label for each evaluation data, and calculates the recognition rate (percentage of correct answers) for each class of the object.
  • the class of objects to be recognized is a first object class (referred to as first class), a second object class (referred to as second class), a third object class (referred to as the third class).
  • the recognition model when image data, which is evaluation data, is input to the recognition model, the recognition model generates a value indicating the probability that the object included in this image data is judged to be of the first class likelihood), a value indicating the likelihood that the object is determined to be of the second class of objects (referred to as the second class likelihood), and an object is determined to be of the third class
  • a value indicating likelihood (referred to as third class likelihood) is calculated and output in the form of a matrix of 1 row and 3 columns. That is, the 1-by-3 matrix output from the recognition model as an inference result includes the first class likelihood, the second class likelihood, and the third class likelihood as elements.
  • the inference unit 15 determines whether an object of the highest likelihood class among the first class likelihood, the second class likelihood, and the third class likelihood included in the inference result is included in the input image data. class of objects that
  • the correct label corresponding to the evaluation data is, for example, a likelihood of 1 for the class corresponding to the object actually included in the image data, which is the evaluation data, and It is a matrix of 1 row and 3 columns in which the likelihood of the class of (object not included in the image data) is 0.
  • the class accuracy analysis unit 16 determines whether the class of the object recognized based on the inference result matches the class corresponding to the correct label corresponding to this image data with a likelihood of 1. It is determined whether or not the class corresponding to the object recognized based on the inference result matches the correct label.
  • the class accuracy analysis unit 16 may calculate the "vehicle” class.
  • the inference result of the recognition model for the evaluation data corresponding to the correct label for which the likelihood of the class of is 1 and the likelihood of the remaining two object classes is 0 is extracted, and based on the inference result, the recognized object If the class is a vehicle, the answer is correct, and if the class of the object recognized based on the inference result is other than the vehicle, the answer is incorrect.
  • the class accuracy analysis unit 16 has 10 pieces of evaluation data in which the object included in the evaluation data input by the recognition model is recognized as being of a class corresponding to "vehicle", of which 9 are correct, If the remaining one is incorrect, the recognition rate for the class "vehicle" is calculated as 90%.
  • the class accuracy analysis unit 16 executes a class ascending sorting process for rearranging the classes in ascending order of recognition rate (S17).
  • FIG. 5A is a diagram showing a first example of a low frequency class selection method according to the present embodiment.
  • the class accuracy analysis unit 16 rearranges classes in order of recognition rate, starting with low accuracy classes with low recognition rates and ending with high accuracy classes with high recognition rates.
  • FIG. 5A shows a case where class A has the highest recognition rate, and class D and class F have lower recognition rates in that order.
  • class accuracy analysis unit 16 may execute class descending sorting processing in which the classes are sorted in descending order of recognition rate.
  • the class accuracy analysis unit 16 selects one or more classes whose accuracy difference from the recognition rate of the top class is within the threshold th1 as the candidate class set C1, and recognizes the last class.
  • One or more classes whose accuracy difference from the rate is within the threshold th2 are selected as the candidate class set C2 (S18).
  • the low-frequency class has excessively low accuracy compared to other classes (for example, see class p in FIG. 8A described later) and excessively high accuracy compared to other classes (for example, see FIG. 8B described later). See class p), so in step S18, both candidate class sets C1 and C2 are generated as low-frequency class candidates.
  • the class accuracy analysis unit 16 first identifies classes whose accuracy difference from the recognition rate of class A, which has the highest accuracy, is within a threshold th1. The class accuracy analysis unit 16 determines whether or not the difference in accuracy between the recognition rate of class A and the recognition rate of the class is within a threshold value th1 in the order of class D, class F, and so on. For example, when the accuracy difference between the recognition rate of class A and the recognition rate of class F is greater than the threshold th1, only class A and class D are selected for the candidate class set C1. The class accuracy analysis unit 16 similarly uses the threshold th2 to select classes included in the candidate class set C2 for the last class (low-accuracy class).
  • FIG. 5B is a diagram showing a second example of the low frequency class selection method according to the present embodiment.
  • FIG. 5A shows an example in which L classes (L is a natural number of 1 or more) including class A, class D, and class F are selected as candidate class set C1
  • FIG. 5B shows candidate class set C2.
  • M M is a natural number equal to or greater than 1 classes are selected.
  • L and M may be the same number, or may be different numbers.
  • the candidate class sets C1 and C2 are generated using thresholds, but classes included in the candidate class sets C1 and C2 may be selected by extracting a predetermined number of classes.
  • the class accuracy analysis unit 16 may select a predetermined number of classes with the highest recognition rate as the candidate class set C1, and select a predetermined number of classes with the lowest recognition rate as the candidate class set C2.
  • the class selection unit 17 randomly selects and outputs one low-frequency class from the candidate class sets C1 and C2 (S19).
  • the class selection unit 17 randomly selects one class from the candidate class sets C1 and C2, and outputs the selected class to the inter-class distance calculation unit 20 as a low-frequency class.
  • the method of random selection is not particularly limited.
  • the inter-class distance calculation unit 20 calculates the inter-class distances between the low-frequency class selected by the class selection unit 17 and two or more other classes (S20).
  • the inter-class distance calculation unit 20 may calculate the inter-class distance between each of all other classes excluding the low-frequency class among the plurality of classes and the low-frequency class. An inter-class distance between each of the predetermined number of other classes and the low-frequency class may be calculated.
  • FIG. 6 is a flowchart showing in detail the operation (learning data generation method) of step S20 shown in FIG.
  • the interclass distance calculation unit 20 calculates the class probability variance of the low frequency class based on the likelihood of each of the plurality of classes included in the output of the recognition model for each of the evaluation data of the low frequency class. (S21).
  • the class probability variance indicates the variation in likelihood of each of multiple classes. For example, if there are three classes of objects to be recognized by the recognition model, the recognition model outputs 1 row and 3 columns containing the likelihood of each of the three classes as elements. Assuming that there are three classes of objects to be recognized by the recognition model, the output of the recognition model includes three class likelihoods, one of which is This is the likelihood of the low-frequency class, and the remaining two classes are classes different from the likelihood of the low-frequency class, and are called other classes. One of these two other classes is called the first other class, and the other is called the second other class.
  • image data which is evaluation data
  • this image data is image data (evaluation data) included in the low-frequency class or an image of the low-frequency class. It will be called data (evaluation data).
  • the matrix of 1 row and 3 columns output by the recognition model will be referred to as the class probability of the image data included in the low frequency class.
  • the class probability of image data included in the low-frequency class is sometimes called the first class probability.
  • the class of the object recognized from the image data that is the evaluation data is the first other class (or the second other class)
  • this image data is assigned to the first other class (or the second other class).
  • the included image data (evaluation data) or image data (evaluation data) of the first other class (or second other class) will be referred to.
  • the matrix of 1 row and 3 columns output by the recognition model is set to the first other class (or second other class).
  • the class probability of image data included in the first other class (or second other class) is also called second class probability (or third class probability).
  • the interclass distance calculation unit 20 calculates the class probability variance based on the first class probability of each of the plurality of evaluation data of the low frequency class.
  • a class probability variance is a variance of first class probabilities calculated from a plurality of first class probabilities. Since dispersion is well known in statistics and the like, detailed description thereof will be omitted here.
  • the interclass distance calculation unit 20 determines whether the class probability variance calculated in step S21 is greater than a threshold (S22).
  • a threshold value Yes in S22
  • a set of image data (correct data) for which the inference result is correct among the image data included in the low-frequency class. is read (S23). It can also be said that the inter-class distance calculation unit 20 extracts correct data from image data included in the low-frequency class when Yes in step S22.
  • the inter-class distance calculation unit 20 determines that the class probability variance is equal to or less than the threshold value (No in S22), the image data included in the low-frequency class for which the inference result is incorrect (incorrect answer data ) is read (S24). It can also be said that the inter-class distance calculation unit 20 extracts incorrect answer data from the image data included in the low-frequency class when the determination in step S22 is No.
  • the interclass distance calculation unit 20 (i) image data (correct data) included in the low-frequency class read in step S23 or (ii) read in step S24
  • the image data (incorrect answer data) included in the low-frequency class obtained is used as the evaluation data of the low-frequency class, and the inference result (class probability of the low-frequency class) for each of the evaluation data of this low-frequency class, and two or more For each other class, a covariance matrix is calculated based on the inference result (class probability of each other class) for each evaluation data in each other class (S25).
  • the inter-class distance calculation unit 20 recognizes each of the low-frequency class image data (a plurality of image data read in step S23 or step S24).
  • the variance of the multiple first class probabilities that are the output of the model, the variance of the multiple second class probabilities that are the output of the recognition model for each of the multiple image data of the first other class, and the multiple images of the second other class The variance of multiple third class probabilities, the covariance of the first and second class probabilities, the covariance of the first and third class probabilities, and the second class, which are the output of the recognition model for each data
  • a 3 ⁇ 3 covariance matrix is calculated based on the probabilities and the covariances of the third class probabilities. Since covariance is well known in statistics and the like, detailed description thereof will be omitted here.
  • the interclass distance calculation unit 20 normalizes the class probability of each class (three classes in the above example) with the covariance matrix calculated in step S25, and based on the normalized class probability, A Mahalanobis distance is calculated (S26).
  • the interclass distance calculator 20 calculates the distance between the centers of two classes based on the normalized class probability as the Mahalanobis distance. In the above example, the interclass distance calculation unit 20 calculates the Mahalanobis distance between the low frequency class and the first other class and the Mahalanobis distance between the low frequency class and the second other class.
  • the Mahalanobis distance (first Mahalanobis distance) between the low-frequency class and the first other class is calculated by the following (Equation 1)
  • the Mahalanobis distance (second Mahalanobis distance) between the low-frequency class and the second other class distance) is calculated by the following (Equation 2).
  • Second Mahalanobis distance ⁇ (average value of third class probability - average value of first class probability) * inverse matrix of covariance matrix * (average value of third class probability - average value of first class probability) t ⁇ 1/2 (Formula 2)
  • the first class probability, the second class probability, and the third class probability are a matrix of 1 row and 3 columns as described above.
  • (average value of two-class probability ⁇ average value of first class probability) and (average value of third class probability ⁇ average value of first class probability) are each a matrix of 1 row and 3 columns.
  • (mean value of second class probability - mean value of first class probability) t is the transposed matrix of (mean value of second class probability - mean value of first class probability) (3 rows and 1 column matrix) and (mean value of third class probability - mean value of first class probability) t is the transposed matrix of (mean value of third class probability - mean value of first class probability) (3 rows and 1 column matrix ).
  • the first class probability is the first class probability for each of the plurality of image data (correct data or incorrect data) of the low frequency class read based on the determination in step S22.
  • the mean value of class probabilities is the mean value of first class probabilities for a plurality of correct data or a plurality of incorrect data.
  • Mahalanobis distance is an example of interclass distance.
  • the interclass distance calculation unit 20 stores the calculated Mahalanobis distance (distance information) in a storage unit (not shown) (S27).
  • the inter-class distance calculation unit 20 calculates the Mahalanobis distance as the distance scale, but it is not limited to this, and may also calculate the Euclidean distance, Manhattan distance, cosine similarity, and the like. For example, when the bias of data is less than or equal to a predetermined value, there is no need to consider the distribution of data, so the Euclidean distance or the like may be calculated using class probabilities directly.
  • the calculation of the inter-class distance when there are three classes of objects to be recognized by the recognition model has been described, but the present invention is not limited to this.
  • N an integer of 4 or more
  • the likelihood of the low-frequency class and the remaining (N-1 ) other class likelihoods as elements. That is, the N elements included in the class probability, which is a matrix of 1 row and N columns, output from the recognition model are the likelihoods of the N classes of the object.
  • the covariance matrix is expressed using a matrix of N rows and N columns.
  • the mixed class selection unit 30 selects one other class (second class) which is a class to be mixed with the low frequency class (S30).
  • FIG. 7 is a flowchart showing in detail the operation (learning data generation method) of step S30 shown in FIG.
  • the mixed class selection unit 30 determines whether the correct answer rate (recognition rate) of the low frequency class is high (S31). Specifically, the mixed class selection unit 30 determines whether or not the percentage of correct answers for the low-frequency class is greater than a threshold.
  • the mixed class selection unit 30 determines that the correct answer rate of the low frequency class is high (Yes in S31), that is, when the correct answer rate of the low frequency class is greater than the threshold, A class with a close Mahalanobis distance is selected as a class to be mixed with a low frequency class (S32), and when it is determined that the correct answer rate of the low frequency class is small (No in S31), that is, the correct answer rate of the low frequency class is If it is equal to or less than the threshold, a class whose Mahalanobis distance is far from the low-frequency class is selected as a class to be mixed with the low-frequency class (S33).
  • the class with the short Mahalanobis distance may be the class with the shortest Mahalanobis distance, or may be a class randomly selected from classes with Mahalanobis distances equal to or less than a predetermined value.
  • the class with a long Mahalanobis distance may be a class with a relatively long Mahalanobis distance compared to the class selected when the determination in step S31 is Yes, or a class with the longest Mahalanobis distance.
  • the variance of the class probability is small (for example, it is less than the threshold value).
  • the variance of the probabilities is large (eg, greater than the threshold).
  • FIGS. 8A and 8B are diagrams showing examples of methods for selecting a class (second class) mixed with a low-frequency class according to the present embodiment.
  • FIGS. 8A and 8B there are three classes p, q, and k, and the respective class probabilities are schematically shown with triangles ( ⁇ ), squares ( ⁇ ), and circles ( ⁇ ).
  • the class probability of each of the plurality of classes output by the recognition model is indicated as a point on the X-dimensional coordinate, where X is the number of the plurality of classes (X is an integer equal to or greater than 3).
  • triangles ( ⁇ ), squares ( ⁇ ) and circles ( ⁇ ) are schematically shown as points on three-dimensional coordinates.
  • the interclass distance described above is a distance based on a straight line distance between two points on such X-dimensional coordinates, and for example, the Euclidean distance is the straight line distance itself.
  • the low-frequency class be class p (first class).
  • the first identification surface and the second identification surface are boundaries for identifying each class.
  • the first discriminated plane and the second discriminated plane are boundaries set as a result of learning.
  • the class probability p1 is located on the class q side of the first discriminant plane, and the class probability p2 is It is positioned on the class k side of the second discriminant surface.
  • an object corresponding to class probability p1 should be recognized as class p, but the recognition model mistakenly recognizes it as class q, and an object corresponding to class probability p2 is recognized as class p.
  • the recognition model mistakenly recognizes it as class k.
  • class probabilities of class q that is, the class probabilities corresponding to circles ( ⁇ ) are all located on the class q side of the first discriminant surface
  • the recognition model recognizes that all objects corresponding to the class probabilities of class q are
  • the class probabilities of class k recognized as class q that is, the class probabilities corresponding to squares ( ⁇ ) are all located on the class k side of the second discriminant plane, and correspond to the class probabilities of class k according to the recognition model. All objects are recognized as class k.
  • the recognition accuracy of an object to be recognized as class p (low frequency class) is excessively low compared to other classes, and the recognition model recognizes class p. In some cases, it is easy to mistakenly recognize the target object as being of another class.
  • the mixed class selection unit 30 selects a class whose Mahalanobis distance is far from the low frequency class as a class (second class) to be mixed with the low frequency class.
  • the variance of the class probability of class p is small
  • the class probabilities q1 and q2 are located on the class p side of the first discriminant plane
  • the class probabilities k1 and k2 are on the class p side of the second discriminant plane. located in
  • the objects corresponding to class probabilities q1 and q2 should be recognized as class q, but are erroneously recognized as class p in the recognition model
  • the objects corresponding to class probabilities k1 and k2 are: The object should be recognized as class k, but the recognition model mistakenly recognizes it as class p.
  • All the class probabilities of class p are located between the first discriminant plane and the second discriminant plane, and all objects corresponding to the class probabilities of class p are recognized as class p.
  • the recognition accuracy of objects to be recognized as class p (low frequency class) is excessively high compared to other classes.
  • the recognition model tends to erroneously recognize objects that should be recognized as other classes as low-frequency classes.
  • the mixed class selection unit 30 selects a class having a short Mahalanobis distance to the low frequency class as a class (second class) to be mixed with the low frequency class.
  • the mixed class selection unit 30 outputs the selected class to the data acquisition unit 40 (S34). Specifically, the mixed class selection unit 30 outputs the low frequency class and the second class (the class mixed with the low frequency class) selected by the mixed class selection unit 30 to the data acquisition unit 40 .
  • the data acquisition unit 40 extracts data from each of the low frequency class (first class) and one other class (second class) (S40).
  • the data acquisition unit 40 reads the evaluation data of each of the low-frequency class and one other class from the storage unit 50, for example.
  • the number of data in each of the low frequency class and one other class is the same, but may be different.
  • the mixing ratio calculator 60 determines a mixing ratio for mixing the data of the low frequency class and one other class (S50). For example, the mixing ratio calculator 60 may determine a mixing ratio that is set in advance, or may determine the mixing ratio by randomly calculating the mixing ratio. Further, when there are a plurality of pieces of evaluation data of one other class, the mixture ratio calculation unit 60 may determine a common mixture ratio for each of the plurality of pieces of evaluation data of one other class, or may decide different mixture ratios. You may Note that the mixing ratio is set in advance, and the mixing ratio calculator 60 may acquire the mixing ratio by reading out the mixing ratio.
  • the data mixing unit 70 and the label mixing unit 80 generate learning data by mixing data (image data) and labels (S60).
  • the data mixing section 70 performs weighted addition on the image data of each of the low-frequency class and one other class with the mixing rate determined by the mixing rate calculating section 60 to generate synthesized image data.
  • the label mixing unit 80 generates a synthetic correct label by performing weighted addition of two labels (correct label) with the same mixing rate as the mixing rate used to synthesize the two image data.
  • the data mixing unit 70 mixes each of the image data of one other class and the image data of the low frequency class
  • the label mixing unit 80 mixes each of the labels of one other class and the labels of the low frequency class. to generate additional training data.
  • the generated learning data is output by the learning data output unit 90 to an information processing device such as a learning device that learns a recognition model.
  • An information processing device such as a learning device re-learns the recognition model using the learning data generated above, thereby updating the parameters of the recognition model to new parameters, thereby updating the recognition model.
  • a learning device re-learns the recognition model using the learning data generated above, thereby updating the parameters of the recognition model to new parameters, thereby updating the recognition model.
  • the variance of the low-frequency class is greater than or equal to the threshold, it is possible to supplement the data that was lacking during the prior learning. It is possible to reset the identification plane to a more accurate position.
  • class q (second class) is selected as a class with a long Mahalanobis distance, so re-learning using synthetic image data that is a mixture of image data of classes p and q makes the first discrimination plane more accurate. position can be reset.
  • the generated learning data is output to an information processing device such as a learning device, but it is not limited to this.
  • the learning data generating device has a functional block for learning a recognition model
  • the above functional block of the learning data generating device may relearn the recognition model using the generated learning data.
  • class k (second class) is selected as a class with a short Mahalanobis distance. It can be reset to a position with high separation performance.
  • steps S11 to S15 shown in FIG. 4 are performed by the learning data generation device, but the processing of steps S11 to S15 is not limited to this, and the processing of steps S11 to S15 is performed by an external device.
  • the learning data generation device may acquire the inference result and the evaluation data used at that time from the external device.
  • the present invention is not limited to this.
  • the composite image data may be image data obtained by mixing two or more pieces of image data with respect to the image data of the low frequency class. The same applies to synthetic correct labels.
  • the mixed class selection unit selects a class whose Mahalanobis distance is far from the low frequency class as a class to be mixed with the low frequency class. is not limited to this, and a class whose Mahalanobis distance is close to the low frequency class may be selected as a class to be mixed with the low frequency class.
  • the mixed class selection unit selects a class whose Mahalanobis distance is close to the low frequency class as a class to be mixed with the low frequency class. is not limited to this, and a class having a long Mahalanobis distance from the low frequency class may be selected as a class to be mixed with the low frequency class.
  • various thresholds in the above embodiment are set in advance and stored in a storage unit (not shown) of the learning data generation device.
  • each component may be configured with dedicated hardware or implemented by executing a software program suitable for each component.
  • Each component may be realized by reading and executing a software program recorded in a recording medium such as a hard disk or a semiconductor memory by a program execution unit such as a CPU or processor.
  • each step in the flowchart is executed is for illustrative purposes in order to specifically describe the present disclosure, and orders other than the above may be used. Also, some of the steps may be executed concurrently (in parallel) with other steps, or some of the steps may not be executed.
  • the division of functional blocks in the block diagram is an example, and a plurality of functional blocks can be realized as one functional block, one functional block can be divided into a plurality of functional blocks, and some functions can be moved to other functional blocks.
  • single hardware or software may process the functions of a plurality of functional blocks having similar functions in parallel or in a time-sharing manner.
  • the learning data generation device may be realized as a single device or may be realized by a plurality of devices.
  • each component of the learning data generation device may be distributed to the plurality of devices in any way.
  • the communication method between the plurality of devices is not particularly limited, and may be wireless communication or wired communication. Also, wireless and wired communications may be combined between devices.
  • each component described in the above embodiments may be realized as software, or typically as an LSI, which is an integrated circuit. These may be made into one chip individually, or may be made into one chip so as to include part or all of them. Although LSI is used here, it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration. Further, the method of circuit integration is not limited to LSI, and may be implemented by a dedicated circuit (general-purpose circuit that executes a dedicated program) or a general-purpose processor.
  • An FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connections or settings of the circuit cells inside the LSI may be used. Furthermore, if an integrated circuit technology that replaces the LSI appears due to advances in semiconductor technology or another technology derived from it, the component may naturally be integrated using that technology.
  • a system LSI is an ultra-multifunctional LSI manufactured by integrating multiple processing units on a single chip. Specifically, it includes a microprocessor, ROM (Read Only Memory), RAM (Random Access Memory), etc.
  • a computer system comprising A computer program is stored in the ROM. The system LSI achieves its functions by the microprocessor operating according to the computer program.
  • one aspect of the present disclosure may be a computer program that causes a computer to execute each characteristic step included in the learning data generation method shown in any one of FIGS. 3, 4, 6, and 7. .
  • the program may be a program to be executed by a computer.
  • one aspect of the present disclosure may be a computer-readable non-transitory recording medium on which such a program is recorded.
  • such a program may be recorded on a recording medium and distributed or distributed. For example, by installing the distributed program in a device having another processor and causing the processor to execute the program, it is possible to cause the device to perform the above processes.
  • the present disclosure is useful for devices that generate learning data used for learning in recognition models.
  • learning data generation device 10 low frequency class selection unit (first selection unit) 11 learning parameter reading unit 12 learning model parameter database 13 evaluation data reading unit 14 evaluation database 15 inference unit 16 class accuracy analysis unit 17 class selection unit 20 inter-class distance calculation unit 30 mixed class selection unit (second selection unit) 40 data acquisition unit 50 storage unit 60 mixing ratio calculation unit 70 data mixing unit 80 label mixing unit 90 learning data output unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)

Abstract

画像データを入力とし、画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成方法であって、認識モデルの認識精度に基づいて、複数のクラスから第一クラスを選定し(S10)、第一クラスと、複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出し(S20)、クラス間距離に基づいて、2以上の他クラスの中から学習データを生成するための第二クラスを選定し(S30)、選定された第一クラス及び第二クラスのそれぞれの画像データ及びラベルを混合することで学習データを生成する(S60)。

Description

学習データ生成方法、学習データ生成装置及び記録媒体
 本開示は、学習データ生成方法、学習データ生成装置及び記録媒体に関する。
 機械学習を用いて学習した認識モデルを用いて画像データ(画像)に含まれる対象物を認識する認識技術が知られている。機械学習手法のうち教師あり機械学習では、このような認識モデルは、画像データ及び当該画像データに含まれる対象物のラベル(正解ラベル)を含む学習データを用いて学習される。認識モデルは、学習データが多いと認識精度が高くなる傾向があるので、データ拡張(データオウグメンテーション、Data Augmentation)と呼ばれる学習データを生成、水増しする技術が検討されている。非特許文献1には、2つの画像データ及びラベルを混合することで、学習データである合成画像データを生成する技術が開示されている。
mixup: Beyond Empirical Risk Minimization:ICLR2018
 しかしながら、非特許文献1では、ランダムな画像データを混合することで合成画像データを生成するので、数が少ないクラスの画像データを生成できるとは限らない。そのため、精度が低いクラスの性能を改善した認識モデルを効果的に学習させることが困難である。
 そこで、本開示は、認識モデルを効果的に学習させることができる学習データを生成する学習データ生成方法、学習データ生成装置及び記録媒体を提供する。
 本開示の一態様に係る学習データ生成方法は、画像データを入力とし、前記画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成方法であって、前記認識モデルの認識精度に基づいて、前記複数のクラスから第一クラスを選定し、前記第一クラスと、前記複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出し、前記クラス間距離に基づいて、前記2以上の他クラスの中から前記学習データを生成するための第二クラスを選定し、選定された前記第一クラス及び前記第二クラスのそれぞれの画像データ及びラベルを混合することで前記学習データを生成する。
 本開示の一態様に係る学習データ生成装置は、画像データを入力とし、前記画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成装置であって、前記認識モデルの認識精度に基づいて、前記複数のクラスから第一クラスを選定する第一選定部と、前記第一クラスと、前記複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出する算出部と、前記クラス間距離に基づいて、前記2以上の他クラスの中から前記学習データを生成するための第二クラスを選定する第二選定部と、選定された前記第一クラス及び前記第二クラスのそれぞれの画像データ及びラベルを混合することで前記学習データを生成する生成部とを備える。
 本開示の一態様に係る記録媒体は、上記の学習データ生成方法をコンピュータに実行させるためのプログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体である。
 本開示の一態様によれば、認識モデルを効果的に学習させることができる学習データを生成する学習データ生成方法等を実現することができる。
図1は、実施の形態に係る学習データ生成装置の機能構成を示すブロック図である。 図2は、実施の形態に係る低頻度クラス選定部の機能構成を示すブロック図である。 図3は、実施の形態に係る学習データ生成装置の動作を示すフローチャートである。 図4は、図3に示すステップS10の動作を詳細に示すフローチャートである。 図5Aは、実施の形態に係る低頻度クラスの選定方法の第一例を示す図である。 図5Bは、実施の形態に係る低頻度クラスの選定方法の第二例を示す図である。 図6は、図3に示すステップS20の動作を詳細に示すフローチャートである。 図7は、図3に示すステップS30の動作を詳細に示すフローチャートである。 図8Aは、実施の形態に係る低頻度クラスと混合されるクラスの選定方法の第一例を示す図である。 図8Bは、実施の形態に係る低頻度クラスと混合されるクラスの選定方法の第二例を示す図である。
 (本開示に至った経緯)
 認識モデルの学習時に学習データの収集が行われるが、全クラスのデータを均等に集めることは困難であり、そのような学習データを用いて学習された認識モデルは、クラスごとに認識率が異なることがある。例えば、学習データに含まれるデータ数が少ないクラスである低頻度クラスに対する認識性能が低下することがある。低頻度クラスのデータを追加で収集することも考えられるが、収集コストが大きくなる課題がある。なお、学習データは、画像データと当該画像データに含まれる対象物のクラスを示すラベルとの組のデータ(データセット)である。
 そこで、本願発明者らは、収集コストの増加を抑制しつつ、低頻度クラスの認識性能を向上可能な学習データを生成することができる学習データ生成方法等について鋭意検討を行い、以下に示す学習データ生成方法等を創案した。
 本開示の第1態様に係る学習データ生成方法は、画像データを入力とし、前記画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成方法であって、前記認識モデルの認識精度に基づいて、前記複数のクラスから第一クラスを選定し、前記第一クラスと、前記複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出し、前記クラス間距離に基づいて、前記2以上の他クラスの中から前記学習データを生成するための第二クラスを選定し、選定された前記第一クラス及び前記第二クラスのそれぞれの画像データ及びラベルを混合することで前記学習データを生成する。
 これにより、第一クラス及び第二クラスの画像データに含まれる対象物それぞれの特徴を有する画像データを含む学習データを生成することができるので、そのような画像データを用いて学習されることで認識モデルの認識性能を向上させることができる。例えば、第一クラスの認識精度が低い場合、認識精度が低いクラスの認識精度を効果的に向上させることができる学習データを生成することができる。よって、学習データ生成方法によれば、認識モデルを効果的に学習させることができる学習データを生成することができる。
 また、本開示の第2態様に係る学習データ生成方法は、第1態様に係る学習データ生成方法であって、例えば、前記複数のクラスのうち、前記認識精度が第一閾値以下であるクラス及び前記認識精度が前記第一閾値より高い第二閾値以上であるクラスの少なくとも一方を候補クラスとして抽出し、前記第一クラスは、前記候補クラスの中から選定されてもよい。
 これにより、認識精度が第一閾値以下又は第二閾値以上であるクラスの認識精度を効果的に向上させることができる学習データを生成することができる。
 また、本開示の第3態様に係る学習データ生成方法は、第2態様に係る学習データ生成方法であって、例えば、前記第一クラスは、前記候補クラスの中からランダムに選定されてもよい。
 これにより、ランダムに選定された第一クラスの認識精度を効果的に向上させることができる学習データを生成することができる。
 また、本開示の第4態様に係る学習データ生成方法は、第1態様~第3態様のいずれかに係る学習データ生成方法であって、例えば、前記クラス間距離は、前記認識モデルにより出力される前記複数のクラスそれぞれの尤度に基づいて算出されてもよい。
 これにより、第二クラスの選定に、認識モデルの認識結果である複数のクラスそれぞれの尤度を用いることができる。このように選定された第二クラスと第一クラスとの混合により生成される学習データは、第一クラスと第二クラスとの尤度の境界をより正確に学習させることができる学習データとなり得る。
 また、本開示の第5態様に係る学習データ生成方法は、第4態様に係る学習データ生成方法であって、例えば、前記認識精度の算出に用いられた評価データのうち前記第一クラスに対応する1以上の第一評価データそれぞれに対する前記尤度を取得し、前記1以上の第一評価データそれぞれの前記尤度の分散が第三閾値より大きいか否かを判定し、前記分散の判定結果に基づいて、前記クラス間距離の算出に用いる前記第一クラスの前記尤度を決定してもよい。
 これにより、分散の判定結果に応じて異なる尤度が取得されるので、分散の判定結果によらず尤度が取得される場合に比べて、認識モデルを効果的に学習させることができる学習データを生成することができる。
 また、本開示の第6態様に係る学習データ生成方法は、第5態様に係る学習データ生成方法であって、例えば、前記分散が前記第三閾値より大きい場合、前記1以上の第一評価データのうち認識結果が正解である評価データの前記尤度を用いて前記クラス間距離を算出し、前記分散が前記第三閾値以下である場合、前記1以上の第一評価データのうち認識結果が不正解である評価データの前記尤度を用いて前記クラス間距離を算出してもよい。
 これにより、第一クラスの尤度のばらつきが大きい場合、正解である評価データの尤度を用いるので、外れ値の影響を抑制することができる。また、第一クラスの尤度のばらつきが小さい場合、不正解である評価データの尤度を用いるので、他クラスに類似したデータを間違いにくくすることができる。
 また、本開示の第7態様に係る学習データ生成方法は、第4態様~第6態様のいずれかに係る学習データ生成方法であって、例えば、前記クラス間距離は、マハラノビス距離、ユークリッド距離、マンハッタン距離又はコサイン類似度であってもよい。
 これにより、マハラノビス距離、ユークリッド距離、マンハッタン距離及びコサイン類似度のいずれかをクラス間距離として用いることができる。
 また、本開示の第8態様に係る学習データ生成方法は、第1態様~第7態様のいずれかに係る学習データ生成方法であって、例えば、前記第一クラスに対する前記認識モデルの認識結果の正答率を算出し、算出された前記正答率と前記クラス間距離とに基づいて、前記2以上の他クラスから前記第二クラスを選定してもよい。
 これにより、第二クラスが第一クラスの正答率に基づいて選定されるので、例えば、第一クラスの正答率を向上可能な第二クラスを選定することが可能である。
 また、本開示の第9態様に係る学習データ生成方法は、第8態様に係る学習データ生成方法であって、例えば、前記第一クラスの前記正答率が第四閾値より大きい場合、前記2以上の他クラスのうち前記クラス間距離が近いクラスを前記第二クラスとして選定し、前記第一クラスの前記正答率が前記第四閾値以下である場合、前記2以上の他クラスのうち前記クラス間距離が遠いクラスを前記第二クラスとして選定してもよい。
 これにより、正答率に応じて異なるクラスが第二クラスとして選定されるので、正答率によらずに第二クラスが選定される場合に比べて、認識モデルを効果的に学習させることができる。
 また、本開示の第10態様に係る学習データ生成方法は、第1態様~第9態様に係る学習データ生成方法であって、例えば、さらに、前記認識精度の算出に用いられた画像データ及びラベルを含む評価データの中から、前記第一クラスに対応する1以上の第一評価データ、及び、前記第二クラスに対応する1以上の第二評価データを取得し、取得された前記1以上の第一評価データ及び前記第二評価データを混合する混合率を取得し、取得された前記混合率に基づいて、前記1以上の第一評価データ及び前記第二評価データを混合することで前記学習データを生成してもよい。
 これにより、取得された混合率に応じた学習データを生成することができる。
 また、本開示の第11態様に係る学習データ生成装置は、画像データを入力とし、前記画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成装置であって、前記認識モデルの認識精度に基づいて、前記複数のクラスから第一クラスを選定する第一選定部と、前記第一クラスと、前記複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出する算出部と、前記クラス間距離に基づいて、前記2以上の他クラスの中から前記学習データを生成するための第二クラスを選定する第二選定部と、選定された前記第一クラス及び前記第二クラスのそれぞれの画像データ及びラベルを混合することで前記学習データを生成する生成部とを備える。また、本開示の第12態様に係る記録媒体は、第1態様~第10態様のいずれかに係る学習データ生成方法をコンピュータに実行させるためのプログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体である。
 これにより、上記の学習データ生成方法と同様の効果を奏する。
 なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD-ROMなどの非一時的記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されてもよい。プログラムは、記録媒体に予め記憶されていてもよいし、インターネットなどを含む広域通信網を介して記録媒体に供給されてもよい。
 以下、実施の形態について、図面を参照しながら具体的に説明する。
 なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
 また、各図は、模式図であり、必ずしも厳密に図示されたものではない。したがって、例えば、各図において縮尺などは必ずしも一致しない。また、各図において、実質的に同一の構成については同一の符号を付しており、重複する説明は省略又は簡略化する。
 また、本明細書において、数値、及び、数値範囲は、厳格な意味のみを表す表現ではなく、実質的に同等な範囲、例えば数%程度(あるいは、10%程度)の差異をも含むことを意味する表現である。
 また、本明細書において、「第一」、「第二」などの序数詞は、特に断りの無い限り、構成要素の数又は順序を意味するものではなく、同種の構成要素の混同を避け、区別する目的で用いられている。
 (実施の形態)
 以下、本実施の形態に係る学習データ生成方法等について、図1~図8Bを参照しながら説明する。
 [1.学習データ生成装置の構成]
 まず、本実施の形態に係る学習データ生成装置の構成について、図1及び図2を参照しながら説明する。図1は、本実施の形態に係る学習データ生成装置1の機能構成を示すブロック図である。学習データ生成装置1は、認識モデルを学習する(例えば、再学習する)ための学習データを生成する情報処理装置である。具体的には、学習データ生成装置1は、学習データにおけるデータ数が少ない等により、認識モデルの認識性能が低いクラスの認識性能を向上させるための学習データを、既存の学習データから生成する情報処理装置である。
 図1に示すように、学習データ生成装置1は、低頻度クラス選定部10と、クラス間距離算出部20と、混合クラス選定部30と、データ取得部40と、記憶部50と、混合率算出部60と、データ混合部70と、ラベル混合部80と、学習データ出力部90とを備える。学習データ生成装置1の機能ブロックの各々による処理は、通常、プロセッサ等のプログラム実行部が、ROM等の記録媒体に記録されたソフトウェア(プログラム)を読み出して実行することで実現される。
 低頻度クラス選定部10は、複数のクラスから認識モデルの認識精度(例えば、認識率)に基づいて低頻度クラスを選定する。低頻度クラス選定部10は、例えば、事前に学習された認識モデルを用いて推論を行い、複数のクラスそれぞれの認識精度に基づいて低頻度クラスを選定する。低頻度クラスは、複数のクラスのうちうまく学習ができていないクラスであり、精度よく認識できないクラスである。認識モデルでは、低頻度クラスの対象物が他のクラスに誤認識されたり、他のクラスの対象物が低頻度クラスに誤認識されたりすることがある。
 低頻度クラス選定部10は、第一選定部の一例であり、低頻度クラスは、第一クラスの一例である。また、また、事前学習の際に用いられた学習データは、例えば、クラスごとのサンプル数が異なる学習データである。学習データ生成装置1は、例えば、クラスごとのサンプル数が異なる学習データを用いた機械学習において学習された認識モデルを再学習するときの学習データを生成する。
 ここで、低頻度クラス選定部10の構成について、図2を参照しながら説明する。図2は、本実施の形態に係る低頻度クラス選定部10の機能構成を示すブロック図である。
 図2に示すように、低頻度クラス選定部10は、学習パラメータ読込み部11と、学習モデルパラメータデータベース12と、評価用データ読込み部13と、評価用データベース14と、推論部15と、クラス精度分析部16と、クラス選定部17とを有する。なお、各構成要素の処理の詳細は、図4等を用いて後述する。
 学習パラメータ読込み部11は、認識モデルのパラメータを学習モデルパラメータデータベース12から読み込む(読み出す)。
 認識モデルは、画像認識に用いられるモデルであり、学習モデルとも呼ばれる数理モデルである。認識モデルは、画像データに含まれる対象物が複数のクラスのうちのいずれのクラスに含まれるのかを識別できるように構成されている。識別モデルは、予め与えられたパラメータ(初期値)を有する認識モデルであってもよいし、予め用意した学習データを用いて機械学習することで、上述の予め与えられたパラメータを更新した新たなパラメータを有する認識モデル(学習済みの認識モデル)であってもよい。また、認識モデルは、画像データを入力とし、画像データに含まれる対象物が複数のクラスの何れに含まれるのかを出力するモデルである。また、認識モデルは、対象物における複数のクラスのそれぞれに対する尤度を要素とする1行M列(Mは複数のクラスの数)の行列の形式(ベクトルの形式)で出力可能である。認識モデルから出力される1行M列の行列(ベクトル)を、クラス確率または尤度ベクトルという。クラス確率の要素として含まれる複数のクラスのそれぞれに対する尤度は、対象物が当該クラスであることの確からしさを示す値である。認識モデルは、入力された画像データに対し出力される複数のクラスのそれぞれに対する尤度のうち最も大きい尤度のクラスが、上述の画像データに含まれる対象物のクラスであると認識する。認識モデルは、例えば、ニューラルネットワークモデルであるが、これに限定されない。
 また、認識モデルは、画素ごとにクラスを分類する画像セグメンテーション(Image Segmentation)モデルであってもよい。
 また、以下では、認識モデルは、画像データから対象物を認識する物体認識モデルである例について説明するが、例えば、画像データから文字を認識する文字認識モデルなどであってもよい。車両に搭載される物体認識モデルである場合、クラスは、例えば、車両、人、道路、歩道、建物、信号機などであり、文字認識モデルである場合、クラスは、例えば、文字そのものである。以下で示す学習データ及び評価データは、それぞれ、クラスに対応する対象物の少なくとも1つを含む画像データ及び当該対象物のラベル(正解ラベル)を含む。
 学習モデルパラメータデータベース12は、1以上の認識モデルのパラメータを記憶する記憶装置である。当該パラメータは、例えば、認識モデルであるニューラルネットワークの各種パラメータである。学習モデルパラメータデータベース12は、例えば、半導体メモリにより実現されるが、これに限定されない。
 評価用データ読込み部13は、学習パラメータ読込み部11が読み出した認識モデルに対して、低頻度クラスを選定するための推論を行わせるための評価用のデータ(評価データ)を評価用データベース14から読み込む。本実施の形態では、評価用データとして画像データを例に説明をする。
 評価用データベース14は、複数の評価データを記憶する記憶装置である。複数の評価データは、認識モデルが分類する複数のクラスを含む。評価用データベース14は、例えば、半導体メモリにより実現されるが、これに限定されない。
 推論部15は、学習パラメータ読込み部11が読み込んだ認識モデルのパラメータを用いて評価用データ読込み部13が読み込んだ評価用データの推論処理を実行する。推論部15は、評価用データを識別モデルに入力することで得られる当該評価用データに含まれる対象物のクラスを推論処理の結果として取得する。また、推論部15は、評価用データを識別モデルに入力することで、識別モデルから出力される当該評価用データに含まれる対象物が複数のクラスそれぞれであると判断する確からしさを示す尤度を要素とする行列の形式で出力した結果を推論処理の結果として取得してもよい。
 クラス精度分析部16は、推論部15の推論結果と正解ラベルとに基づいて、認識モデルの出力が正解であったか否かを判定し、同一クラスの判定結果から認識モデルにおける当該クラスの認識率(正答率とも記載する)を算出する。
 クラス選定部17は、クラス精度分析部16が算出した各クラスの認識率に基づいて、複数のクラスの中から低頻度クラスを選定する。
 図1を再び参照して、クラス間距離算出部20は、複数のクラスのうち、低頻度クラスと、2以上の他クラスとのクラス間距離を算出する。クラス間距離は、例えば、評価用データを識別モデルに入力したとき、識別モデルから出力される複数のクラスの尤度から算出される距離を例に説明をするが、これに限定されない。例えば、識別モデルがニューラルネットワークである場合、ニューラルネットワークの中間層からの出力(特徴量)から算出される距離をクラス間距離としてもよい。本実施の形態では、クラス間距離は、より具体的には低頻度クラスの画像データに対して認識モデルが出力した尤度と、2以上の他クラスの画像データに対して認識モデルが出力した尤度と共分散行列とに基づいて算出される距離(例えば、相対距離)である。共分散行列の詳細、およびクラス間距離の算出については後述する。
 混合クラス選定部30は、低頻度クラスと、2以上の他クラスそれぞれとのクラス間距離に基づいて、低頻度クラスと混合するクラスを1つ選定する。混合クラス選定部30は、第二選定部の一例である。低頻度クラスと混合するクラスの選定については後述する。なお、混合クラス選定部30により選定されたクラスは、第二クラスの一例である。また、以降において、混合クラス選定部30により選定されたクラスを、混合対象クラスとも記載する。
 データ取得部40は、低頻度クラス及び混合対象クラスの画像データ及びラベルを記憶部50から読み出す。
 記憶部50は、低頻度クラスの認識性能を向上させるための学習データを生成するためのデータ(画像データ及びラベル)を記憶する記憶装置である。記憶部50は、評価用データベース14により実現されてもよい。記憶部50は、評価用データを記憶していてもよい。記憶部50は、例えば、半導体メモリにより実現されるが、これに限定されない。
 混合率算出部60は、低頻度クラスの第一画像データ及び当該第一画像データの正解ラベル(第一正解ラベル)と、混合対象クラスの第二画像データ及び当該第二画像データの正解ラベル(第二正解ラベル)とを混合するときの混合率(重み)を算出する。第一画像データ及び第二画像データを混合するときの混合率と、第一正解ラベル及び第二正解ラベルを混合するときの混合率とは、同一の混合率である。混合率算出部60は、混合率をランダムに算出してもよい。混合率は、0~1までの値である。混合率算出部60は、低頻度クラスの第一混合率を混合対象クラスの第二混合率より低い値としてもよいし、第一混合率及び第二混合率を同じ値(=0.5)としてもよいし、第一混合率を第二混合率より高い値としてもよい。第一混合率と第二混合率との合計は、1となる。
 なお、第一正解ラベル及び第二正解ラベルは1つの正解クラスを表すラベルであってもよいし、複数のクラスに対する複数の尤度を表すラベルであってもよい。例えば、第一正解ラベルは、第一画像データに含まれる対象物の正しいクラスに対して100%(つまり、1)の尤度を有し、他の各クラスに対して0%(つまり、0)の尤度を有していてもよい。また、第二正解ラベルは、第二画像データに含まれる対象物の正しいクラスに対して100%(つまり、1)の尤度を有し、他の各クラスに対して0%(つまり、0)の尤度を有していてもよい。
 データ混合部70は、第一画像データと第二画像データとを混合率算出部60が算出した混合率で混合することで、学習のための追加の画像データ(合成画像データ)を生成する。データ混合部70は、第一画像データと第二画像データとを合成して1つの合成画像データ(疑似データ)を生成するとも言える。データ混合部70は、例えば、第一画像データ及び第二画像データの同一画素の画素値のそれぞれを重みづけ加算することで、合成画像データを生成する。例えば、合成画像データは、クラスが異なる2以上の対象物を含む。
 ラベル混合部80は、第一正解ラベルと第二正解ラベルとを混合率算出部60が算出した混合率(データ混合部70で混合する画像データと同じ混合率)で混合することで、データ混合部70が生成した合成画像データに対応する追加の正解ラベル(合成正解ラベル)を生成する。ラベル混合部80は、第一正解ラベルと第二正解ラベルとを合成することで、合成正解ラベルを生成するとも言える。ラベル混合部80は、第一正解ラベル及び第二正解ラベルの同一クラスの尤度を重みづけ加算することで、合成正解ラベルを生成する。例えば、合成正解ラベルは、合成画像データに含まれる対象物のクラスを含む複数のクラスそれぞれに対する尤度を含む。
 ここで、合成画像データ及び合成正解ラベルの一例について説明する。第一画像データには犬が映っており、第一正解ラベルは犬に対して100%(つまり、1)の尤度を有し、第二画像データには猫が映っており、第二正解ラベルは猫に対して100%(つまり、1)の尤度を有しており、これらを混合率0.5で混合する場合について説明する。なお、猫、犬は、クラスの一例である。
 合成画像データは、第一画像データ及び第二画像データを混合率算出部60により決定された混合率で重みづけ加算することで生成された画像データであり、例えば、犬及び猫の両方が含まれる画像データ(例えば、犬及び猫の少なくとも一部が重畳した画像データ)である。
 合成正解ラベルは、第一画像データ及び第二画像データの合成に用いられる混合率と同じ混合率で第一正解ラベル及び第二正解ラベルを重み付け加算したラベルである。合成正解ラベルが(犬の尤度、猫の尤度)で示される場合、上記の例では、合成正解ラベルは、(0.5、0.5)となる。
 学習データ出力部90は、データ混合部70で混合された合成画像データと、ラベル混合部80で混合された当該合成画像データに対応する合成正解ラベルとを含む学習データを、認識モデルを学習する学習装置等の情報処理装置に出力する。学習データ出力部90は、通信回路(通信モジュール)を含んで構成される。
 このように生成された学習データを用いて認識モデルが学習(例えば、再学習)されることで、データ再収集などのコストを抑止しつつ、低頻度クラスの精度を効果的に向上させることができる。
 [2.学習データ生成装置の動作]
 続いて、上記のように構成される学習データ生成装置1の動作について、図3~図8Bを参照しながら説明する。図3は、本実施の形態に係る学習データ生成装置1の動作(学習データ生成方法)を示すフローチャートである。図4は、図3に示すステップS10の動作(学習データ生成方法)を詳細に示すフローチャートである。
 図3に示すように、低頻度クラス選定部10は、複数のクラスから認識モデルの認識精度に基づいて低頻度クラス(第一クラス)を選定する(S10)。具体的には、低頻度クラス選定部10は、認識モデルに評価データを入力して得られる認識モデルの出力である認識結果の認識精度に基づいて低頻度クラスを選定する。
 図4に示すように、ステップS10は、ステップS11~ステップS19の処理を含む。
 まず、学習パラメータ読込み部11は、学習モデルパラメータデータベース12から推論を行う認識モデルのパラメータを読み込む(S11)。学習パラメータ読込み部11は、読み込んだ認識モデルのパラメータを推論部15に出力する。
 次に、評価用データ読込み部13は、評価用データベース14からN番目(Nは1以上の自然数)の評価データを読み込む(S12)。評価用データ読込み部13は、読み込んだ評価データを推論部15に出力する。
 次に、推論部15は、推論処理を実行し、推論結果を記憶部(図示しない)に保存する(S13)。推論部15は、認識モデルに評価用の画像データを入力し、認識モデルの出力である評価用の画像データに含まれる対象物のクラスを推論結果として取得する。
 次に、評価用データ読込み部13は、評価データの全データを処理したか否かを判定する(S14)。評価用データ読込み部13は、評価データの全データを評価用データベース14から読み込んだか否かによりステップS14の判定を行ってもよい。なお、ステップS14は、所定数のデータが処理されたか否かにより判定が行われてもよい。つまり、評価データの全データを処理することに限定されない。ここでの処理とは、評価データを用いてステップS13の処理を行うことを意味する。
 評価用データ読込み部13は、評価データの全データを処理していないと判定した場合(S14でNo)、N=N+1とし(S15)、次の評価データに対してステップS12以降の処理が実行され、評価データの全データを処理したと判定した場合(S14でYes)、ステップS16に進む。
 次に、クラス精度分析部16は、クラスごとの認識率(認識精度の一例)を算出する(S16)。クラス精度分析部16は、評価データごとに、推論結果と、正解ラベルとが一致しているか否かにより正否を判定し、対象物のクラスごとに認識率(正答率)を算出する。
 説明を簡単にするため、認識モデルにより認識(または分類)されるべき対象物のクラスが3つである場合を例に説明する。この場合、認識されるべき対象物のクラスは、第一の対象物のクラス(第一クラスと称す)、第二の対象物のクラス(第二クラスと称す)、第三の対象物のクラス(第三クラスと称す)の3つを有する。この場合、評価データである画像データが認識モデルに入力されると、認識モデルは、この画像データに含まれる対象物が第一クラスであると判断される確からしさを示す値(第一クラスの尤度と称す)、対象物が第二の対象物のクラスであると判断される確からしさを示す値(第二クラスの尤度と称す)、対象物が第三クラスであると判断される確からしさを示す値(第三クラスの尤度と称す)をそれぞれ算出し、1行3列の行列の形式で出力する。つまり、認識モデルから推論結果として出力される1行3列の行列は、第一クラスの尤度、第二クラスの尤度、第三クラスの尤度を要素として含む。
 推論部15は、推論結果に含まれる第一クラスの尤度、第二クラスの尤度および第三クラスの尤度のうちの最も大きい尤度のクラスの対象物が入力された画像データに含まれる対象物のクラスであると認識する。
 一方、対象物のクラスが3つである場合、評価データに対応する正解ラベルとは、例えば、評価データである画像データに実際に含まれる対象物に対応するクラスの尤度が1、それ以外(画像データに含まれない対象物)のクラスの尤度が0である1行3列の行列である。クラス精度分析部16は、評価データである画像データごとに、推論結果に基づき認識した対象物のクラスと、この画像データに対応する正解ラベルにおいて、尤度が1に対応するクラスとが一致しているか否かを判定することにより、推論結果に基づき認識される対象物に対応するクラスと正解ラベルとが一致しているか否かを判定する。
 例えば、3つの対象物のクラスのうちの1つの対象物が「車両」のクラスであり、この「車両」のクラスに対する認識率を算出する場合、例えば、クラス精度分析部16は、「車両」のクラスの尤度が1であり、残り2つの対象物のクラスの尤度が0である正解ラベルに対応する評価データに対する認識モデルの推論結果を抽出し、推論結果に基づき認識した対象物のクラスが車両であるものを正解とし、推論結果に基づき認識した対象物のクラスが車両以外であるものを不正解とする。クラス精度分析部16は、例えば、認識モデルにより入力した評価データに含まれる対象物が「車両」に対応するクラスであると認識された評価データが10枚あり、そのうち9枚が正解であり、残り1枚が不正解である場合、クラス「車両」に対する認識率を90%と算出する。
 次に、クラス精度分析部16は、認識率が低い順にクラスを並び替えるクラス昇順ソート処理を実行する(S17)。
 図5Aは、本実施の形態に係る低頻度クラスの選定方法の第一例を示す図である。
 図5Aに示すように、クラス精度分析部16は、認識率が低い低精度のクラスから順に認識率が高い高精度のクラスまでを認識率の順に並び替える。図5Aでは、クラスAの最も認識率が高く、クラスD、クラスFの順に認識率が低いなる場合を図示している。
 なお、クラス精度分析部16は、認識率が高い順にクラスを並び替えるクラス降順ソート処理を実行してもよい。
 図4を再び参照して、次に、クラス精度分析部16は、先頭クラスの認識率からの精度差が閾値th1以内の1以上のクラスを候補クラス集合C1として選定し、最後尾クラスの認識率からの精度差が閾値th2以内の1以上のクラスを候補クラス集合C2として選定する(S18)。
 低頻度クラスは、他クラスに比べ過度に低精度である場合(例えば、後述する図8Aのクラスpを参照)と、他クラスに比べ過度に高精度である場合(例えば、後述する図8Bのクラスpを参照)とがあるので、ステップS18では、低頻度クラスの候補として、候補クラス集合C1及びC2の両方を生成する。
 図5Aを例に説明すると、クラス精度分析部16は、まず最も高精度であるクラスAの認識率を基準に、当該認識率との精度差が閾値th1以内のクラスを特定する。クラス精度分析部16は、クラスD、クラスF、・・・と順に、クラスAの認識率と当該クラスの認識率との精度差が閾値th1以内であるか否かを判定する。例えば、クラスAの認識率とクラスFの認識率との精度差が閾値th1より大きい場合、候補クラス集合C1には、クラスA及びクラスDのみが選定される。クラス精度分析部16は、最後尾クラス(低精度のクラス)についても同様に閾値th2を用いて候補クラス集合C2に含まれるクラスを選定する。
 図5Bは、本実施の形態に係る低頻度クラスの選定方法の第二例を示す図である。
 図5Aは、候補クラス集合C1として、クラスA、クラスD及びクラスFを含むL個(Lは1以上の自然数)のクラスが選択された例を示しており、図5Bは、候補クラス集合C2として、M個(Mは1以上の自然数)のクラスが選択された例を示している。
 なお、L個及びM個は、同数であってもよいし、互いに異なる個数であってもよい。また、上記では、閾値を用いて候補クラス集合C1及びC2を生成したが、予め定められた個数のクラスを抽出することで候補クラス集合C1及びC2に含まれるクラスが選定されてもよい。クラス精度分析部16は、例えば、認識率の上位所定個数のクラスを候補クラス集合C1として選定し、認識率の下位所定個数のクラスを候補クラス集合C2として選定してもよい。
 図4を再び参照して、クラス選定部17は、候補クラス集合C1及びC2からランダムに低頻度クラスを1つ選定し、出力する(S19)。クラス選定部17は、候補クラス集合C1及びC2からランダムにクラスを1つ選定し、選定されたクラスを低頻度クラスとしてクラス間距離算出部20に出力する。ランダムに選定する方法は、特に限定されない。
 図3を再び参照して、次に、クラス間距離算出部20は、クラス選定部17により選定された低頻度クラスと2以上の他クラスとのクラス間距離を算出する(S20)。クラス間距離算出部20は、複数のクラスのうち低頻度クラスを除く全ての他クラスのそれぞれと、低頻度クラスとのクラス間距離を算出してもよいし、複数のクラスのうち2以上の所定個数の他クラスのそれぞれと、低頻度クラスとのクラス間距離を算出してもよい。
 クラス間距離の算出について、図6を参照しながら説明する。図6は、図3に示すステップS20の動作(学習データ生成方法)を詳細に示すフローチャートである。
 図6に示すように、クラス間距離算出部20は、低頻度クラスの評価データそれぞれに対する認識モデルの出力に含まれる複数のクラスそれぞれの尤度に基づいて、低頻度クラスのクラス確率分散を算出する(S21)。クラス確率分散は、複数のクラスそれぞれの尤度のばらつきを示す。例えば、認識モデルにより認識されるべき対象物のクラスが3つである場合、認識モデルは3つのクラスそれぞれの尤度を要素として含む1行3列を出力する。認識モデルにより認識されるべき対象物のクラスが3つであるとした場合、認識モデルの出力に含まれるのは3つのクラスの尤度であり、3つのクラスの尤度のうちの1つは低頻度クラスの尤度であり、残りの2つのクラスは、低頻度クラスの尤度とは異なるクラスであり、これらを他クラスと称することにする。この2つの他クラスのうちの一方を第一他クラス、他方を第二他クラスと称することにする。
 例えば、認識モデルにより、評価データである画像データから認識された対象物のクラスが低頻度クラスである場合、この画像データを低頻度クラスに含まれる画像データ(評価データ)または低頻度クラスの画像データ(評価データ)と称することにする。
 また、低頻度クラスに含まれる画像データに対し、認識モデルにより出力される1行3列の行列を低頻度クラスに含まれる画像データのクラス確率と称することにする。低頻度クラスに含まれる画像データのクラス確率を、第一クラス確率ということもある。
 同様に、評価データである画像データから認識された対象物のクラスが、第一他クラス(または第二他クラス)である場合、この画像データを第一他クラス(または第二他クラス)に含まれる画像データ(評価データ)または第一他クラス(または第二他クラス)の画像データ(評価データ)と称することにする。
 また、第一他クラス(または第二他クラス)に含まれる画像データ(評価データ)に対し、認識モデルにより出力される1行3列の行列を第一他クラス(または第二他クラス)に含まれる画像データのクラス確率と称することにする。第一他クラス(または第二他クラス)に含まれる画像データのクラス確率を、第二クラス確率(または第三クラス確率)ということもある。
 クラス間距離算出部20は、低頻度クラスの複数の評価データそれぞれの第一クラス確率に基づいてクラス確率分散を算出する。クラス確率分散とは、複数の第一クラス確率から算出される第一クラス確率の分散である。分散については統計学などで周知であるため、ここではその詳細な説明を省略する。
 次に、クラス間距離算出部20は、ステップS21で算出したクラス確率分散が閾値より大きいか否かを判定する(S22)。クラス間距離算出部20は、クラス確率分散が閾値より大きいと判定した場合(S22でYes)、低頻度クラスに含まれる画像データのうち推論結果が正解であった画像データ(正解データ)の集合を読み込む(S23)。クラス間距離算出部20は、ステップS22でYesの場合、低頻度クラスに含まれる画像データの中から、正解データを抽出するとも言える。
 また、クラス間距離算出部20は、クラス確率分散が閾値以下と判定した場合(S22でNo)、低頻度クラスに含まれる画像データのうち推論結果が不正解であった画像データ(不正解データ)の集合を読み込む(S24)。クラス間距離算出部20は、ステップS22でNoの場合、低頻度クラスに含まれる画像データの中から、不正解データを抽出するとも言える。
 次に、クラス間距離算出部20は、ステップS22の判定の結果に基づき、(i)ステップS23により読み込まれた低頻度クラスに含まれる画像データ(正解データ)または、(ii)ステップS24により読み込まれた低頻度クラスに含まれる画像データ(不正解データ)を低頻度クラスの評価データとし、この低頻度クラスの評価データのそれぞれに対する推論結果(低頻度クラスのクラス確率)と、2つ以上の他クラスそれぞれについて、各他クラスにおける評価データのそれぞれに対する推論結果(各他クラスのクラス確率)とに基づいて、共分散行列を算出する(S25)。
 認識モデルにより認識されるべき対象物のクラスが3つである場合、クラス間距離算出部20は、低頻度クラスの画像データ(ステップS23またはステップS24により読み込まれた複数の画像データ)それぞれに対する認識モデルの出力である複数の第一クラス確率の分散と、第一他クラスの複数の画像データそれぞれに対する認識モデルの出力である複数の第二クラス確率の分散と、第二他クラスの複数の画像データそれぞれに対する認識モデルの出力である複数の第三クラス確率の分散と、第一クラス確率及び第二クラス確率の共分散と、第一クラス確率及び第三クラス確率の共分散と、第二クラス確率及び第三クラス確率の共分散とに基づいて、3×3の共分散行列を算出する。なお共分散については、統計学などで周知であるため、ここではその詳細な説明を省略する。
 次に、クラス間距離算出部20は、ステップS25で算出した共分散行列で各クラス(上記の例では、3つのクラス)それぞれのクラス確率を正規化し、正規化されたクラス確率に基づいて、マハラノビス距離を算出する(S26)。クラス間距離算出部20は、正規化されたクラス確率に基づく2つのクラスそれぞれの中心間の距離をマハラノビス距離として算出する。上記の例では、クラス間距離算出部20は、低頻度クラスと第一他クラスとの間のマハラノビス距離と、低頻度クラスと第二他クラスとの間のマハラノビス距離とを算出する。
 低頻度クラスと第一他クラスとの間のマハラノビス距離(第一マハラノビス距離)は、以下の(式1)により算出され、低頻度クラスと第二他クラスとの間のマハラノビス距離(第二マハラノビス距離)は、以下の(式2)により算出される。
 第一マハラノビス距離={(第二クラス確率の平均値-第一クラス確率の平均値)*共分散行列の逆行列*(第二クラス確率の平均値-第一クラス確率の平均値)1/2 (式1)
 第二マハラノビス距離={(第三クラス確率の平均値-第一クラス確率の平均値)*共分散行列の逆行列*(第三クラス確率の平均値-第一クラス確率の平均値)1/2 (式2)
 認識モデルにより認識されるべき対象物のクラスが3つである場合、第一クラス確率、第二クラス確率、第三クラス確率は、上述したように1行3列の行列であるため、(第二クラス確率の平均値-第一クラス確率の平均値)、(第三クラス確率の平均値-第一クラス確率の平均値)は、それぞれ、1行3列の行列である。
 また、(第二クラス確率の平均値-第一クラス確率の平均値)は、(第二クラス確率の平均値-第一クラス確率の平均値)の転置行列(3行1列の行列)であり、(第三クラス確率の平均値-第一クラス確率の平均値)は、(第三クラス確率の平均値-第一クラス確率の平均値)の転置行列(3行1列の行列)である。
 また、上述したように第一クラス確率は、ステップS22の判定に基づき読み込まれた低頻度クラスの複数の画像データ(正解データまたは不正解データ)のそれぞれに対する第一クラス確率であるので、第一クラス確率の平均値は、複数の正解データまたは複数の不正解データに対する第一クラス確率の平均値である。
 マハラノビス距離では分布が正規化されるので、クラス確率の外れ値などの偏りが距離に与える影響を抑制することができる。マハラノビス距離は、クラス間距離の一例である。
 次に、クラス間距離算出部20は、算出したマハラノビス距離(距離情報)を記憶部(図示しない)に保存する(S27)。
 なお、上記では、クラス間距離算出部20は、距離尺度としてマハラノビス距離を算出したがこれに限定されず、ユークリッド距離、マンハッタン距離、コサイン類似度などを算出してもよい。例えば、データの偏りが所定以下である場合、データの分散を考慮する必要がないので、クラス確率を直接用いたユークリッド距離などが算出されてもよい。
 また、上述の例では、認識モデルにより認識されるべき対象物のクラスが3つである場合におけるクラス間距離の算出について説明をしたが、これに限定されない。例えば、認識モデルにより認識されるべき対象物のクラスがN(N:4以上の整数)である場合、認識モデルから出力されるクラス確率として低頻度クラスの尤度および、残りの(N-1)個の他クラスの尤度を要素として含む1行N列の行列を用いて表現すればよい。つまり、認識モデルから出力される1行N列の行列であるクラス確率に含まれるN個の要素は、対象物におけるN個のクラスのそれぞれの尤度である。また、この場合、共分散行列はN行N列の行列を用いて表現される。N個のクラスのそれぞれの尤度、共分散行列を上述の(式1)、(式2)に適用することで、認識モデルにより認識されるべき対象物のクラスがN(N:4以上の整数)である場合におけるクラス間距離を算出することができる。
 図3を再び参照して、混合クラス選定部30は、低頻度クラスと混合する対象となるクラスである1つの他クラス(第二クラス)を選定する(S30)。
 第二クラスの選定について、図7を参照しながら説明する。図7は、図3に示すステップS30の動作(学習データ生成方法)を詳細に示すフローチャートである。
 図7に示すように、混合クラス選定部30は、低頻度クラスの正答率(認識率)が大きいか否かを判定する(S31)。具体的には、混合クラス選定部30は、低頻度クラスの正答率が閾値より大きいか否かを判定する。
 次に、混合クラス選定部30は、低頻度クラスの正答率が大きいと判定した場合(S31でYes)、つまり低頻度クラスの正答率が閾値より大きい場合、複数のクラスのうち低頻度クラスとマハラノビス距離が近いクラスを、低頻度クラスと混合する対象となるクラスに選定し(S32)、低頻度クラスの正答率が小さいと判定した場合(S31でNo)、つまり低頻度クラスの正答率が閾値以下である場合、複数のクラスのうち低頻度クラスとマハラノビス距離が遠いクラスを、低頻度クラスと混合する対象となるクラスに選定する(S33)。マハラノビス距離が近いクラスとは、マハラノビス距離が最も近いクラスであってもよいし、マハラノビス距離が所定値以下のクラスからランダムに選定されたクラスであってもよい。また、マハラノビス距離が遠いクラスとは、ステップS31でYesと判定された場合に選定されるクラスに比べて相対的にマハラノビス距離が遠いクラスであってもよいし、マハラノビス距離が最も遠いクラスであってもよい。
 なお、低頻度クラスの正答率が大きい場合とは、例えば、クラス確率の分散が小さい(例えば、閾値以下である)場合が想定され、低頻度クラスの正答率が小さい場合とは、例えば、クラス確率の分散が大きい(例えば、閾値より大きい)場合が想定される。
 低頻度クラスと混合されるクラスの選定について、図8A及び図8Bを参照しながら説明する。図8A及び図8Bは、本実施の形態に係る低頻度クラスと混合されるクラス(第二クラス)の選定方法の各例を示す図である。
 図8A及び図8Bでは、3つのクラスp、q及びkがあり、それぞれのクラス確率を三角(△)、四角(□)及び丸(〇)で模式的に示した図である。認識モデルが出力する複数のクラスそれぞれのクラス確率は、複数のクラスの数をX(X:3以上の整数)とすると、X次元座標上の点として示される。図8A及び図8Bの例では、クラスが3つであるので、三角(△)、四角(□)及び丸(〇)は、3次元座標上の点として模式的に示されている。なお、上記で説明したクラス間距離は、このようなX次元座標上の2点間の直線距離に基づく距離であり、例えば、ユークリッド距離は、当該直線距離そのものである。
 また、低頻度クラスをクラスp(第一クラス)とする。また、第一識別面及び第二識別面は、それぞれのクラスを識別するための境界である。第一識別面及び第二識別面は、学習の結果設定される境界である。
 図8Aでは、クラスpのクラス確率の分散つまり、三角(△)に対応するクラス確率の分散が大きいため、クラス確率p1が第一識別面よりクラスq側に位置しており、クラス確率p2が第二識別面よりクラスk側に位置している。つまり、クラス確率p1に対応する対象物は、クラスpと認識されるべき対象物であるが、認識モデルでは誤ってクラスqと認識され、クラス確率p2に対応する対象物は、クラスpと認識されるべき対象物であるが、認識モデルでは誤ってクラスkと認識されてしまう。また、クラスqのクラス確率つまり、丸(〇)に対応するクラス確率は、全て第一識別面よりクラスq側に位置しており、認識モデルによりクラスqのクラス確率に対応する対象物は全てクラスqと認識され、クラスkのクラス確率、つまり四角(□)に対応するクラス確率は、全て第二識別面よりクラスk側に位置しており、認識モデルによりクラスkのクラス確率に対応する対象物は全てクラスkと認識される。このように、クラスpのクラス確率の分散が大きい場合、クラスp(低頻度クラス)と認識すべき対象物の認識精度は他クラスに比べ過度に低精度であり、認識モデルはクラスpと認識すべき対象物を他クラスであると誤認識しやすくなる場合がある。
 これは、事前に学習された際に用いられた学習データにおいて、低頻度クラスと、低頻度クラスとマハラノビス距離が遠いクラスとの間の画像データが少なく第一識別面及び第二識別面(図8Aの例では、特に第一識別面)が正確に学習されていないことが原因であると想定される。この場合、混合クラス選定部30は、低頻度クラスとマハラノビス距離が遠いクラスを、低頻度クラスと混合する対象となるクラス(第二クラス)に選定する。
 また、図8Bでは、クラスpのクラス確率の分散が小さく、クラス確率q1及びq2が第一識別面よりクラスp側に位置しており、クラス確率k1及びk2が第二識別面よりクラスp側に位置している。つまり、クラス確率q1、q2に対応する対象物は、クラスqと認識されるべき対象物であるが、認識モデルでは誤ってクラスpと認識され、クラス確率k1及びk2に対応する対象物は、クラスkと認識されるべき対象物であるが、認識モデルでは誤ってクラスpと認識されてしまう。また、クラスpのクラス確率は、全て第一識別面及び第二識別面の間に位置しており、クラスpのクラス確率に対応する対象物は全てクラスpと認識される。このように、クラスpと認識すべき対象物のクラス確率の分散が小さい場合、クラスp(低頻度クラス)と認識すべき対象物の認識精度は他クラスに比べ過度に高精度であるが、認識モデルは他クラスと認識すべき対象物を低頻度クラスであると誤認識しやすくなる場合がある。
 これは、事前に学習された際に用いられた学習データにおいて、低頻度クラスの画像データが類似している画像データであるなどにより、認識モデルにより第一識別面及び第二識別面が正確に学習されていないことが原因であると想定される。この場合、混合クラス選定部30は、低頻度クラスとマハラノビス距離が近いクラスを、低頻度クラスと混合する対象となるクラス(第二クラス)に選定する。
 図7を再び参照して、混合クラス選定部30は、選定されたクラスをデータ取得部40に出力する(S34)。具体的には、混合クラス選定部30は、低頻度クラスと、混合クラス選定部30により選定された第二クラス(低頻度クラスと混合されるクラス)とをデータ取得部40に出力する。
 図3を再び参照して、データ取得部40は、低頻度クラス(第一クラス)及び1つの他クラス(第二クラス)それぞれからデータを抽出する(S40)。データ取得部40は、例えば、低頻度クラス及び1つの他クラスそれぞれの評価データを記憶部50から読み込む。低頻度クラス及び1つの他クラスそれぞれのデータ数は同数であるが、異なる数であってもよい。
 次に、混合率算出部60は、低頻度クラス及び1つの他クラスのデータを混合する混合率を決定する(S50)。混合率算出部60は、例えば、予め設定された混合率に決定してもよいし、ランダムに混合率を算出することで混合率を決定してもよい。また、混合率算出部60は、1つの他クラスの評価データが複数ある場合、1つの他クラスの複数の評価データそれぞれで共通の混合率を決定してもよいし、互いに異なる混合率を決定してもよい。なお、混合率は予め設定されており、混合率算出部60は、当該混合率を読み出すことで混合率を取得してもよい。
 次に、データ混合部70及びラベル混合部80は、データ(画像データ)及びラベルを混合することで学習データを生成する(S60)。データ混合部70は、低頻度クラス及び1つの他クラスそれぞれの画像データを、混合率算出部60により決定された混合率で重み付け加算を行うことにより、合成画像データを生成する。また、ラベル混合部80は、2つのラベル(正解ラベル)を、2つの画像データの合成に用いられる混合率と同じ混合率で重み付け加算を行うことにより、合成正解ラベルを生成する。
 データ混合部70は、1つの他クラスの画像データのそれぞれと、低頻度クラスの画像データとを混合し、ラベル混合部80は、1つの他クラスのラベルのそれぞれと、低頻度クラスのラベルとを混合することで、追加の学習データを生成する。
 生成された学習データは、学習データ出力部90により、認識モデルを学習する学習装置等の情報処理装置に出力される。
 学習装置等の情報処理装置は、上記で生成された学習データを用いて認識モデルを再学習することで、認識モデルのパラメータが新たなパラメータに更新され、これにより認識モデルが更新される。これにより、例えば、低頻度クラスの分散が閾値以上である場合、事前の学習時に不足していたデータを補充することができるので、低頻度クラスと、低頻度クラスとマハラノビス距離が遠いクラスとの識別面を、より正確な位置に再設定することが可能となる。図8Aの場合、マハラノビス距離が遠いクラスとしてクラスq(第二クラス)が選定されるので、クラスp及びqの画像データを混合した合成画像データを用いた再学習により第一識別面をより正確な位置に再設定することができる。
 上述の例では、生成された学習データを学習装置等の情報処理装置に出力することを記載したが、これに限定されない。例えば、学習データ生成装置が認識モデルを学習する機能ブロックを有するのであれば、学習データ生成装置の上述の機能ブロックが生成された学習データを用いて認識モデルを再学習してもよい。
 また、例えば、低頻度クラスの分散が閾値未満である場合、再学習により、分離性能が高い識別面を再設定することが可能となる。図8Bの場合、マハラノビス距離が近いクラスとしてクラスk(第二クラス)が選定されるので、クラスp及びkの画像データを混合した合成画像データを用いた再学習により、第二識別面をより分離性能が高い位置に再設定することができる。
 (その他の実施の形態)
 以上、一つ又は複数の態様に係る学習データ生成方法等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示に含まれてもよい。
 例えば、上記実施の形態では、図4に示すステップS11~S15の処理を学習データ生成装置が実行する例について説明したがこれに限定されず、ステップS11~S15の処理は外部の装置により実行され、学習データ生成装置は当該外部の装置から推論結果及びそのときに用いた評価データを取得してもよい。
 また、上記実施の形態では、低頻度クラスと混合する対象のクラスが1つである例について説明したがこれに限定されず、例えば、クラス間距離に基づいて2つ以上のクラスが低頻度クラスと混合する対象のクラスとして選定されてもよい。つまり、合成画像データは低頻度クラスの画像データに対して、2つ以上の画像データを混合した画像データであってもよい。合成正解ラベルについても同様である。
 また、上記実施の形態では、図8Aに示す分布の場合、混合クラス選定部は、低頻度クラスとマハラノビス距離が遠いクラスを、低頻度クラスと混合する対象となるクラスに選定する例について説明したがこれに限定されず、低頻度クラスとマハラノビス距離が近いクラスを、低頻度クラスと混合する対象となるクラスに選定してもよい。また、上記実施の形態では、図8Bに示す分布の場合、混合クラス選定部は、低頻度クラスとマハラノビス距離が近いクラスを、低頻度クラスと混合する対象となるクラスに選定する例について説明したがこれに限定されず、低頻度クラスとマハラノビス距離が遠いクラスを、低頻度クラスと混合する対象となるクラスに選定してもよい。
 また、上記実施の形態では、候補クラス集合C1及びC2の両方が生成される例について説明したがこれに限定されず、候補クラス集合C1及びC2の少なくとも一方が生成されればよい。
 また、上記実施の形態の各種閾値は、予め設定され、学習データ生成装置の記憶部(図示しない)に記憶されている。
 また、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU又はプロセッサなどのプログラム実行部が、ハードディスク又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
 また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が他のステップと同時(並列)に実行されてもよいし、上記ステップの一部は実行されなくてもよい。
 また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
 また、上記実施の形態に係る学習データ生成装置は、単一の装置として実現されてもよいし、複数の装置により実現されてもよい。学習データ生成装置が複数の装置によって実現される場合、当該学習データ生成装置が有する各構成要素は、複数の装置にどのように振り分けられてもよい。学習データ生成装置が複数の装置で実現される場合、当該複数の装置間の通信方法は、特に限定されず、無線通信であってもよいし、有線通信であってもよい。また、装置間では、無線通信及び有線通信が組み合わされてもよい。
 また、上記実施の形態で説明した各構成要素は、ソフトウェアとして実現されても良いし、典型的には、集積回路であるLSIとして実現されてもよい。これらは、個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路(専用のプログラムを実行する汎用回路)又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)又は、LSI内部の回路セルの接続若しくは設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて構成要素の集積化を行ってもよい。
 システムLSIは、複数の処理部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM(Read Only Memory)、RAM(Random Access Memory)などを含んで構成されるコンピュータシステムである。ROMには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。
 また、本開示の一態様は、図3、図4、図6及び図7のいずれかに示される学習データ生成方法に含まれる特徴的な各ステップをコンピュータに実行させるコンピュータプログラムであってもよい。
 また、例えば、プログラムは、コンピュータに実行させるためのプログラムであってもよい。また、本開示の一態様は、そのようなプログラムが記録された、コンピュータ読み取り可能な非一時的な記録媒体であってもよい。例えば、そのようなプログラムを記録媒体に記録して頒布又は流通させてもよい。例えば、頒布されたプログラムを、他のプロセッサを有する装置にインストールして、そのプログラムをそのプロセッサに実行させることで、その装置に、上記各処理を行わせることが可能となる。
 本開示は、認識モデルでの学習に用いられる学習データを生成する装置等に有用である。
 1  学習データ生成装置
 10  低頻度クラス選定部(第一選定部)
 11  学習パラメータ読込み部
 12  学習モデルパラメータデータベース
 13  評価用データ読込み部
 14  評価用データベース
 15  推論部
 16  クラス精度分析部
 17  クラス選定部
 20  クラス間距離算出部
 30  混合クラス選定部(第二選定部)
 40  データ取得部
 50  記憶部
 60  混合率算出部
 70  データ混合部
 80  ラベル混合部
 90  学習データ出力部

Claims (12)

  1.  画像データを入力とし、前記画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成方法であって、
     前記認識モデルの認識精度に基づいて、前記複数のクラスから第一クラスを選定し、
     前記第一クラスと、前記複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出し、
     前記クラス間距離に基づいて、前記2以上の他クラスの中から前記学習データを生成するための第二クラスを選定し、
     選定された前記第一クラス及び前記第二クラスのそれぞれの画像データ及びラベルを混合することで前記学習データを生成する
     学習データ生成方法。
  2.  前記複数のクラスのうち、前記認識精度が第一閾値以下であるクラス及び前記認識精度が前記第一閾値より高い第二閾値以上であるクラスの少なくとも一方を候補クラスとして抽出し、
     前記第一クラスは、前記候補クラスの中から選定される
     請求項1に記載の学習データ生成方法。
  3.  前記第一クラスは、前記候補クラスの中からランダムに選定される
     請求項2に記載の学習データ生成方法。
  4.  前記クラス間距離は、前記認識モデルにより出力される前記複数のクラスそれぞれの尤度に基づいて算出される
     請求項1~3のいずれか1項に記載の学習データ生成方法。
  5.  前記認識精度の算出に用いられた評価データのうち前記第一クラスに対応する1以上の第一評価データそれぞれに対する前記尤度を取得し、
     前記1以上の第一評価データそれぞれの前記尤度の分散が第三閾値より大きいか否かを判定し、
     前記分散の判定結果に基づいて、前記クラス間距離の算出に用いる前記第一クラスの前記尤度を決定する
     請求項4に記載の学習データ生成方法。
  6.  前記分散が前記第三閾値より大きい場合、前記1以上の第一評価データのうち認識結果が正解である評価データの前記尤度を用いて前記クラス間距離を算出し、
     前記分散が前記第三閾値以下である場合、前記1以上の第一評価データのうち認識結果が不正解である評価データの前記尤度を用いて前記クラス間距離を算出する
     請求項5に記載の学習データ生成方法。
  7.  前記クラス間距離は、マハラノビス距離、ユークリッド距離、マンハッタン距離又はコサイン類似度である
     請求項4に記載の学習データ生成方法。
  8.  前記第一クラスに対する前記認識モデルの認識結果の正答率を算出し、
     算出された前記正答率と前記クラス間距離とに基づいて、前記2以上の他クラスから前記第二クラスを選定する
     請求項1~3のいずれか1項に記載の学習データ生成方法。
  9.  前記第一クラスの前記正答率が第四閾値より大きい場合、前記2以上の他クラスのうち前記クラス間距離が近いクラスを前記第二クラスとして選定し、
     前記第一クラスの前記正答率が前記第四閾値以下である場合、前記2以上の他クラスのうち前記クラス間距離が遠いクラスを前記第二クラスとして選定する
     請求項8に記載の学習データ生成方法。
  10.  さらに、
     前記認識精度の算出に用いられた画像データ及びラベルを含む評価データの中から、前記第一クラスに対応する1以上の第一評価データ、及び、前記第二クラスに対応する1以上の第二評価データを取得し、
     取得された前記1以上の第一評価データ及び前記第二評価データを混合する混合率を取得し、
     取得された前記混合率に基づいて、前記1以上の第一評価データ及び前記第二評価データを混合することで前記学習データを生成する
     請求項1~3のいずれか1項に記載の学習データ生成方法。
  11.  画像データを入力とし、前記画像データに含まれる対象物のクラスとして複数のクラスのいずれかを出力する認識モデルを学習するための学習データを生成する学習データ生成装置であって、
     前記認識モデルの認識精度に基づいて、前記複数のクラスから第一クラスを選定する第一選定部と、
     前記第一クラスと、前記複数のクラスのうちの2以上の他クラスそれぞれとの距離であるクラス間距離を算出する算出部と、
     前記クラス間距離に基づいて、前記2以上の他クラスの中から前記学習データを生成するための第二クラスを選定する第二選定部と、
     選定された前記第一クラス及び前記第二クラスのそれぞれの画像データ及びラベルを混合することで前記学習データを生成する生成部とを備える
     学習データ生成装置。
  12.  請求項1~3のいずれかに記載の学習データ生成方法をコンピュータに実行させるためのプログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体。
PCT/JP2023/007102 2022-03-02 2023-02-27 学習データ生成方法、学習データ生成装置及び記録媒体 WO2023167146A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263315655P 2022-03-02 2022-03-02
US63/315,655 2022-03-02

Publications (1)

Publication Number Publication Date
WO2023167146A1 true WO2023167146A1 (ja) 2023-09-07

Family

ID=87883722

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/007102 WO2023167146A1 (ja) 2022-03-02 2023-02-27 学習データ生成方法、学習データ生成装置及び記録媒体

Country Status (1)

Country Link
WO (1) WO2023167146A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012002720A (ja) * 2010-06-18 2012-01-05 Oki Electric Ind Co Ltd 情報処理装置、認識システム、認識方法、及びプログラム
US20220043703A1 (en) * 2020-07-28 2022-02-10 Electronics And Telecommunications Research Institute Method and apparatus for intelligent operation management of infrastructure

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012002720A (ja) * 2010-06-18 2012-01-05 Oki Electric Ind Co Ltd 情報処理装置、認識システム、認識方法、及びプログラム
US20220043703A1 (en) * 2020-07-28 2022-02-10 Electronics And Telecommunications Research Institute Method and apparatus for intelligent operation management of infrastructure

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KONO YOHEI, KAZUHIK KAWAMOTO: "Conditional GAN-Based Image Interpolation between Classes and Its Application to Data Augumentation", JOURNAL OF THE SOCIETY OF ELECTRONIC INFORMATION AND COMMUNICATIONS TECHNOLOGY D, vol. .J102–D, no. 7, 1 January 2019 (2019-01-01), pages 491 - 493, XP093087573, DOI: 10.14923/transinfj.2019JDL8001 *

Similar Documents

Publication Publication Date Title
CN110837836B (zh) 基于最大化置信度的半监督语义分割方法
Sedlmair et al. Data‐driven evaluation of visual quality measures
CN103942562B (zh) 基于多分类器组合的高光谱图像分类方法
US20180336683A1 (en) Multi-Label Semantic Boundary Detection System
US10963685B2 (en) Generating variations of a known shred
CN103489005B (zh) 一种基于多分类器融合的高分辨率遥感影像分类方法
Feng et al. Multiple kernel learning based on discriminative kernel clustering for hyperspectral band selection
US20050286772A1 (en) Multiple classifier system with voting arbitration
CN109241741B (zh) 一种基于图像纹理指纹的恶意代码分类方法
Cui et al. Locality preserving genetic algorithms for spatial-spectral hyperspectral image classification
US20170076152A1 (en) Determining a text string based on visual features of a shred
CN108596154A (zh) 基于高维特征选择与多级融合的遥感图像分类方法
CN103366367A (zh) 基于像素数聚类的模糊c-均值灰度图像分割方法
CN105261004A (zh) 基于均值漂移和邻域信息的模糊c均值图像分割方法
JP2008217589A (ja) 学習装置及びパターン認識装置
CN110717554A (zh) 图像识别方法、电子设备及存储介质
CN114332544B (zh) 一种基于图像块评分的细粒度图像分类方法和装置
Simon et al. Fine-grained classification of identity document types with only one example
WO2015146113A1 (ja) 識別辞書学習システム、識別辞書学習方法および記録媒体
CN111639697B (zh) 基于非重复采样与原型网络的高光谱图像分类方法
Silva et al. Superpixel-based online wagging one-class ensemble for feature selection in foreground/background separation
CN116612307A (zh) 一种基于迁移学习的茄科病害等级识别方法
Ghadhban et al. Segments interpolation extractor for finding the best fit line in Arabic offline handwriting recognition words
CN113298184B (zh) 用于小样本图像识别的样本抽取、扩充方法及存储介质
JP6958719B2 (ja) 画像解析装置、画像解析方法および画像解析プログラム

Legal Events

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

Ref document number: 23763404

Country of ref document: EP

Kind code of ref document: A1