WO2021085188A1 - バイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラム - Google Patents
バイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラム Download PDFInfo
- Publication number
- WO2021085188A1 WO2021085188A1 PCT/JP2020/039133 JP2020039133W WO2021085188A1 WO 2021085188 A1 WO2021085188 A1 WO 2021085188A1 JP 2020039133 W JP2020039133 W JP 2020039133W WO 2021085188 A1 WO2021085188 A1 WO 2021085188A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- accuracy
- data
- model
- information processing
- information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Definitions
- This disclosure relates to a bias adjusting device, an information processing device, an information processing method, and an information processing program.
- the accuracy of the recognition target by the recognizer generated by learning is measured.
- the prior art does not always make it possible to appropriately execute the processing related to the learning of the model by using the model by learning in which the data is adjusted.
- the prior art merely measures the accuracy of the object to be recognized by the recognizer, for example, generating information indicating the relationship between the accuracy of the model and the data, or adjusting the data to obtain a desired model. It is difficult to make it possible to learn. Therefore, it is desired to appropriately execute the processing related to the learning of the model by using the model by learning in which the data is adjusted.
- a bias adjusting device capable of appropriately executing processing related to model learning by using a model based on learning in which data is adjusted.
- one form of the bias adjusting device is a bias adjusting device related to an identification model by machine learning using learning data, and is the above-mentioned trained by the first learning data.
- a calculation unit that calculates the first identification accuracy of the identification model and the second identification accuracy of the identification model learned by the second learning data whose number of data is adjusted with respect to the first learning data. Based on the first identification accuracy and the second identification accuracy, the prediction unit predicts a change in the identification accuracy with respect to the number of learning data, and the prediction unit predicts a change in the predicted identification accuracy.
- a control unit for adjusting the number of data used for the learning or changing the identification model so that the predicted change in the identification accuracy becomes a predetermined target value is provided.
- Embodiment 1-1 Outline of information processing according to the embodiment of the present disclosure 1-1-1. Effects and assumptions of information processing 1-1-2. Accuracy example and multiple accuracy 1-2. Configuration of Information Processing Device According to Embodiment 1-2-1. Model example 1-3. Information processing procedure according to the embodiment 1-4. Display example 1-5. Target accuracy (target value) 1-5-1. Relationship between target accuracy (target value) and the number of data 1-5-2. Display example regarding target accuracy (target value) 1-6.
- FIG. 1 is a diagram showing an example of information processing for four categories.
- FIG. 2 is a diagram showing an example of an information processing procedure for one category.
- the information processing according to the embodiment of the present disclosure is realized by the information processing device 100 shown in FIG.
- the information processing device 100 shown in FIG. 3 is an example of a bias adjusting device.
- the information processing device 100 is an information processing device that executes information processing according to the embodiment.
- the information processing device 100 is a bias adjusting device that executes the bias adjusting process according to the embodiment.
- the details of the bias adjustment process by the information processing apparatus 100 will be described in detail in FIG.
- the information processing device 100 learns an identification model (hereinafter, also simply referred to as “model”) while adjusting the number of data (number of data) used for learning, and the identification accuracy (hereinafter, simply “accuracy”) of the learned model. Generates accuracy information about).
- the information processing device 100 adjusts the number of data for learning data according to the target for which the number of data is adjusted. For example, learning data is at least data on race, gender, address, income, or educational background.
- the model trained by the training data before adjusting the number of data is referred to as the "first model”, and the model is trained by the data in which the number of training data is adjusted (hereinafter, also referred to as “adjusted data”).
- the model may be referred to as a "second model”.
- the learning data before adjustment may be described as “first learning data”
- the learning data after adjustment may be described as “second learning data”.
- the identification accuracy of the model (identification model) learned by the first learning data is described as “first identification accuracy”
- the identification accuracy of the model (identification model) learned by the second learning data is described as “first identification accuracy”. May be described as "second identification accuracy”.
- first identification accuracy the model learned by the second learning data
- the information processing apparatus 100 learns the first model using the learning data (hereinafter, also referred to as “data set”), and adjusts by reducing the number of data from the data set according to the target.
- data set the learning data
- the case of learning the second model using the post-data will be described as an example.
- FIGS. 1 and 2 are examples, and the adjustment of the number of data is not limited to reducing the number of data, but any adjustment such as increasing the number of data if the desired accuracy information can be generated. You may.
- the information processing apparatus 100 targets races and classifies the races as “Race A”, “Race B”, “Race C”, and “Race D”.
- the processing when the four categories of "" are taken as an example will be described.
- FIGS. 1 and 2 are examples, and races may be classified into five or more categories.
- the target is not limited to race, and may be any target such as gender, age, and region. For example, if the target is gender, it is divided into categories such as "male” and "female". The target may be anything as long as it is classified into two or more categories.
- the information processing apparatus 100 learns a model used for image recognition using the data set DS1 stored in the data information storage unit 141 (see FIG. 4).
- the data set DS1 includes a large number of pairs of data to be input to the model and output of the model (hereinafter, also referred to as "correct answer information") expected when the data is input.
- the data set DS1 includes a plurality of data such as data DT1 to DT8 and correct answer information corresponding to each data.
- the data set DS1 may include data that does not fall under any of the four categories of "Race A", “Race B", “Race C", and "Race D".
- the information processing apparatus 100 designs the structure of a network (neural network or the like) corresponding to the model M1 stored in the model information storage unit 142 (see FIG. 5).
- the information processing device 100 designs the network structure (network structure) of the model M1 used for image recognition.
- the information processing apparatus 100 may generate the network structure of the model M1 used for image recognition based on the information on the network structure corresponding to each application stored in the storage unit 14 (see FIG. 3) in advance. Good.
- the information processing device 100 may acquire the network structure information of the model M1 used for image recognition from an external device.
- the data set DS1 includes a pair of a plurality of images and an output (correct answer information) expected as a recognition result of each image.
- the data set DS1 includes a pair of data DT1, which is an image captured by a man of race A, and correct information corresponding to the data DT1.
- the data set DS1 includes a pair of data DT2, which is an image of a woman of race B, and correct answer information corresponding to the data DT2.
- the correct answer information such as data DT1 and DT2 is not limited to the categories such as "race A" and "race B", but any correct answer information as long as it is a recognition result of an event or an object included in the image. (Correct answer label) may be used.
- the data DT1 is an image captured by a person of "race A”
- the correct answer information may be correct answer information (correct answer label) different from "race A” such as "graduation ceremony”.
- the information processing device 100 learns the designed neural network with the prepared data set.
- the information processing apparatus 100 learns the network of the model M1 by using the data set DS1.
- the information processing apparatus 100 uses the data set DS1 to learn parameters such as network weights of the model M1.
- the information processing device 100 learns the network parameters of the model M1 and generates a first model and a second model corresponding to the model M1.
- the first model and the second model are models having a similar network structure and different parameters such as weights.
- the first model and the second model corresponding to the model M1 are models having the network structure of the model M1 and having different parameters such as weights.
- the information processing apparatus 100 measures the performance (also referred to as "accuracy") of the generated first model and the second model using predetermined evaluation data. For example, the information processing apparatus 100 measures the accuracy (accuracy index) of the first model and the second model by using the evaluation data prepared separately from the learning data. For example, the information processing apparatus 100 evaluates the first model and the second model with separately fixed evaluation data different from the learning data.
- the information processing device 100 is based on the accuracy of the first model learned from the data set (also referred to as "first accuracy”) and the accuracy of the second model learned from the adjusted data (also referred to as "second accuracy”). Generate accuracy information that indicates the accuracy of the model.
- the accuracy referred to here may be various indexes, and the accuracy (Accuracy) will be described below as an example, but the details of the accuracy will be described later.
- the information processing device 100 measures the accuracy of the model for each category by using the evaluation data corresponding to each category. For example, the information processing apparatus 100 uses evaluation data corresponding to the category "Race A” (also referred to as “Race A evaluation data”) for measuring the accuracy corresponding to the category “Race A”.
- the race A evaluation data includes a large number of pairs of data corresponding to the category “Race A” and correct answer information of the data.
- the information processing apparatus 100 uses the evaluation data corresponding to the category "Race B” (also referred to as "Race B evaluation data”) for the measurement of the accuracy corresponding to the category "Race B”.
- the race B evaluation data includes a large number of pairs of data corresponding to the category “race B” and correct answer information of the data.
- the information processing apparatus 100 uses the evaluation data corresponding to the category "Race C” (also referred to as “Race C evaluation data”) for the measurement of the accuracy corresponding to the category “Race C”.
- the race C evaluation data includes a large number of pairs of data corresponding to the category “Race C” and correct answer information of the data.
- the information processing apparatus 100 uses the evaluation data corresponding to the category "Race D” (also referred to as “Race D evaluation data”) for the measurement of the accuracy corresponding to the category “Race D”.
- the race D evaluation data includes a large number of pairs of data corresponding to the category “Race D” and correct answer information of the data.
- the above is an example, and the evaluation data is not limited to the above, and may be any data as long as the desired accuracy evaluation (measurement) is possible, for example, using common evaluation data.
- the information processing device 100 generates accuracy information as shown in the graph GR11 by using the model and the evaluation information corresponding to each category.
- the measurement MR11 to MR13 and the prediction line LN1 which are circles shown by solid lines in the graph GR11, correspond to the information indicating the accuracy of the model corresponding to the category “Race A”.
- the measurement MR21 to MR23 and the prediction line LN2 which are circles indicated by the dotted lines in the graph GR11, correspond to the information indicating the accuracy of the model corresponding to the category “Race B”.
- the measurement MR31 to MR33 and the prediction line LN3, which are circles indicated by the alternate long and short dash line in the graph GR11, correspond to the information indicating the accuracy of the model corresponding to the category “Race C”.
- the measurement MR41 to MR43 and the prediction line LN4, which are circles indicated by the alternate long and short dash line in the graph GR11, correspond to the information indicating the accuracy of the model corresponding to the category “Race D”.
- the information processing device 100 may be able to identify the information in each category by color. For example, the information processing apparatus 100 displays information corresponding to four categories of categories "race A", “race B", “race C", and “race D” in blue, green, and yellow. Information shown in different colors such as red may be generated.
- the information processing apparatus 100 learns the first model of the model M1 used for image recognition for the data set DS1.
- the position of the horizontal axis "log (number of data)" corresponding to the measurement MR11 in the graph GR1 indicates the number of data (current number of data) corresponding to the category "race A” used for learning at that time.
- the data set DS1 includes the data of the category “race A” of the number of data corresponding to the position of the horizontal axis “log (number of data)” corresponding to the measurement MR11.
- the horizontal axis of the graph is not limited to the logarithm (log), and may be various scales (scales).
- the information processing apparatus 100 measures the accuracy corresponding to the category "Race A” for the learned first model (step S11).
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race A” for the first model by using the race A evaluation data.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR11 in the graph GR1.
- the information processing apparatus 100 measures the accuracy corresponding to the category “race A” as “VL1” for the first model. That is, in the case of the model (first model) learned using the entire data set DS1, the information processing apparatus 100 measures that the accuracy corresponding to the category “Race A” is “VL1”.
- the accuracy is indicated by abstract codes such as "VL1" and "VL2", but it is assumed that the accuracy is a concrete numerical value.
- the information processing device 100 adjusts the number of data (step S12).
- the information processing apparatus 100 reduces the number of data corresponding to the category “Race A” in the data set DS1. For example, the information processing apparatus 100 reduces the number of data corresponding to the category “Race A” included in the data set DS1 by half (50%).
- the information processing device 100 is not limited to half, and the number of data may be adjusted based on various criteria. For example, the information processing apparatus 100 may be reduced by 10%.
- the information processing apparatus 100 reduces the number of data corresponding to the category "Race A” to "5000".
- the information processing apparatus 100 randomly selects data corresponding to the category "Race A” and reduces the number of data corresponding to the category "Race A”. As a result, the information processing apparatus 100 generates the adjusted data set AS1 in which the number of data is adjusted.
- the information processing apparatus 100 learns the second model of the model M1 used for image recognition for the adjusted data set AS1.
- the information processing apparatus 100 learns the second model of the model M1 used for image recognition for the adjusted data set AS1 in which the data corresponding to the category "race A" is reduced from the data set DS1.
- the information processing apparatus 100 measures the accuracy corresponding to the category "Race A” for the learned second model (step S13).
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race A” using the race A evaluation data for the second model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR12 in the graph GR2.
- the information processing apparatus 100 measures the accuracy corresponding to the category “race A” as “VL2” for the second model. That is, in the case of the model (second model) learned using the adjusted data set AS1, the information processing apparatus 100 measures that the accuracy corresponding to the category “Race A” is “VL2”.
- the information processing device 100 adjusts the number of data (step S14). For example, the information processing apparatus 100 adjusts the number of data until a predetermined condition is satisfied. For example, the information processing apparatus 100 reduces the number of data until it becomes less than a predetermined threshold value. For example, when the number of data in the target category becomes less than a predetermined threshold value, the information processing device 100 ends the measurement process targeting that category.
- the information processing device 100 may end the measurement process based on various conditions, not limited to the above. For example, the information processing apparatus 100 may end the measurement process for the category when the measurement (plot) sufficient to draw the prediction line described later is completed.
- the information processing apparatus 100 reduces the number of data corresponding to the category “Race A” in the adjusted data set AS1. For example, the information processing apparatus 100 reduces the number of data corresponding to the category “Race A” included in the adjusted data set AS1 by half. When the number of data corresponding to the category “Race A” included in the adjusted data set AS1 is "5000", the information processing apparatus 100 reduces the number of data corresponding to the category "Race A” to "2500". .. As a result, the information processing apparatus 100 generates the adjusted data set AS2 in which the number of data is further adjusted from the adjusted data set AS1.
- the information processing apparatus 100 learns the second model of the model M1 used for image recognition for the adjusted data set AS2.
- the second model trained by the adjusted data set AS2 will also be referred to as a "third model” in order to distinguish it from the second model trained by the adjusted data set AS1.
- the information processing apparatus 100 learns a third model of the model M1 used for image recognition for the adjusted data set AS2 in which the data corresponding to the category "race A" is further reduced from the adjusted data set AS1.
- the information processing apparatus 100 measures the accuracy corresponding to the category "Race A” for the learned third model (step S15).
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race A” using the race A evaluation data for the third model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR13 in the graph GR3.
- the information processing apparatus 100 measures the accuracy corresponding to the category “race A” as “VL3” for the third model. That is, in the case of the model (third model) learned using the adjusted data set AS2, the information processing apparatus 100 measures that the accuracy corresponding to the category “Race A” is “VL3”.
- the accuracy corresponding to the category “Race A” is “VL3”.
- the information processing apparatus 100 determines that the predetermined condition is satisfied, adjusts the number of data, and ends the process of measuring the accuracy of the learned model. For example, the information processing apparatus 100 determines that the predetermined condition is satisfied, adjusts the number of data, and ends the process of measuring the accuracy of the learned model.
- the information processing apparatus 100 predicts a change in the accuracy of the model (step S16).
- the information processing apparatus 100 predicts a change in the accuracy of the model based on the information shown in the measurement MR11 to the measurement MR13.
- the information processing apparatus 100 derives a function that predicts the accuracy of the model corresponding to the category “Race A”.
- the prediction accuracy information FCI1 the information processing apparatus 100 derives the function FC1 corresponding to the prediction line LN1 of the accuracy of the model corresponding to the category “Race A”. In this way, the information processing apparatus 100 generates the prediction line LN1 indicating the prediction of the accuracy change of the model corresponding to the category “Race A” when the number of learning data is increased.
- the information processing apparatus 100 derives a function corresponding to a line (prediction line LN1) passing through points corresponding to measurement MR11 to measurement MR13.
- the information processing apparatus 100 may generate the function FC1 corresponding to the prediction line LN1 by appropriately using various techniques related to fitting.
- the information processing apparatus 100 may generate a function FC1 corresponding to the prediction line LN1 by linear prediction or the like.
- the information processing apparatus 100 may derive the function FC1 corresponding to the prediction line LN1 by appropriately using various techniques such as the least squares method.
- the information processing apparatus 100 may derive a function FC1 corresponding to the prediction line LN1 by using a technique related to machine learning.
- the function FC1 derived by the information processing apparatus 100 may be a linear function or a non-linear function.
- the information processing apparatus 100 predicts the improvement range of the index when the data is increased from the relationship between the number of obtained data and the (accuracy) index. Then, the information processing apparatus 100 generates a graph for each of the evaluation result (measurement result) and the prediction result, with the horizontal axis as the number of data and the vertical axis as the (accuracy) index. For example, the information processing apparatus 100 generates and displays the graph GR11 shown in FIG. The information processing apparatus 100 displays the prediction line LN1 of the accuracy when the data corresponding to the category “Race A” is increased.
- the information processing apparatus 100 generates the accuracy information corresponding to the category "Race A". Specifically, the information processing apparatus 100 generates accuracy information including the measured accuracy and the predicted accuracy for the category “Race A” as shown in the graph GR4.
- the information processing apparatus 100 also performs processing on other categories "Race B", “Race C”, and “Race D” in the same manner as the processing shown in FIG. 2 for the category "Race A”. As a result, accuracy information including the measured accuracy and the predicted accuracy for the four categories as shown in the graph GR11 is generated.
- the information processing apparatus 100 also performs processing for the category "Race B” in the same manner as the processing shown in FIG. 2 for the category "Race A”.
- the information processing apparatus 100 learns the first model of the model M1 used for image recognition for the data set DS1.
- the position of the horizontal axis "log (number of data)" corresponding to the measurement MR21 in the graph GR11 indicates the number of data (current number of data) corresponding to the category "race B” used for learning at that time. It is shown that the data set DS1 includes the data of the category “race B” of the number of data corresponding to the position of the horizontal axis “log (number of data)” corresponding to the measurement MR21.
- the information processing device 100 measures the accuracy corresponding to the category "Race B" using the race B evaluation data for the first model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR21 in the graph GR11.
- the information processing apparatus 100 learns the second model by reducing the number of data corresponding to the category "Race B” in the data set DS1.
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race B” for the second model by using the race B evaluation data.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR22 in the graph GR11.
- the information processing apparatus 100 learns the second model (third model) by further reducing the number of data corresponding to the category "race B” from the measurement time of the measurement MR22.
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race B” using the race B evaluation data for the third model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR23 in the graph GR11.
- the information processing apparatus 100 predicts a change in the accuracy of the model based on the information shown in the measurement MR21 to the measurement MR23.
- the information processing apparatus 100 derives a prediction line LN2 that predicts the accuracy of the model corresponding to the category “Race B”.
- the information processing apparatus 100 learns the first model of the model M1 used for image recognition for the data set DS1.
- the position of the horizontal axis "log (number of data)" corresponding to the measurement MR31 in the graph GR11 indicates the number of data (current number of data) corresponding to the category "race C” used for learning at that time. It is shown that the data set DS1 includes the data of the category “race C” of the number of data corresponding to the position of the horizontal axis “log (number of data)” corresponding to the measurement MR31.
- the information processing device 100 measures the accuracy corresponding to the category "Race C" for the first model using the race C evaluation data.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR31 in the graph GR11.
- the information processing apparatus 100 learns the second model by reducing the number of data corresponding to the category "Race C” in the data set DS1.
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race C” for the second model by using the race C evaluation data.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR32 in the graph GR11.
- the information processing apparatus 100 learns the second model (third model) by further reducing the number of data corresponding to the category "race C” from the measurement time of the measurement MR32.
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race C” using the race C evaluation data for the third model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR33 in the graph GR11.
- the information processing apparatus 100 predicts a change in the accuracy of the model based on the information shown in the measurement MR31 to the measurement MR33.
- the information processing apparatus 100 derives a prediction line LN3 that predicts the accuracy of the model corresponding to the category “Race C”.
- the information processing apparatus 100 learns the first model of the model M1 used for image recognition for the data set DS1.
- the information processing apparatus 100 may use a common first model for all four categories.
- the position of the horizontal axis "log (number of data)" corresponding to the measurement MR41 in the graph GR11 indicates the number of data (current number of data) corresponding to the category "race D” used for learning at that time.
- the data set DS1 includes the data of the category “race D” of the number of data corresponding to the position of the horizontal axis “log (number of data)” corresponding to the measurement MR41.
- the information processing device 100 measures the accuracy corresponding to the category "Race D" using the race D evaluation data for the first model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR41 in the graph GR11.
- the information processing apparatus 100 learns the second model by reducing the number of data corresponding to the category "Race D” in the data set DS1.
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race D” using the race D evaluation data for the second model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR42 in the graph GR11.
- the information processing apparatus 100 learns the second model (third model) by further reducing the number of data corresponding to the category "race D” from the measurement time of the measurement MR42.
- the information processing apparatus 100 measures the accuracy corresponding to the category “Race D” using the race D evaluation data for the third model.
- the information processing apparatus 100 obtains a measurement result as shown in the measurement MR43 in the graph GR11.
- the information processing apparatus 100 predicts a change in the accuracy of the model based on the information shown in the measurement MR41 to the measurement MR43.
- the information processing apparatus 100 derives a prediction line LN4 that predicts the accuracy of the model corresponding to the category “Race D”.
- the information processing apparatus 100 is a graph showing the accuracy of the model corresponding to each of the four categories of the categories "Race A”, “Race B”, “Race C”, and “Race D”. Generate GR11.
- the information processing device 100 displays the generated graph GR11.
- the information processing device 100 is not limited to the graph GR11, and may display accuracy information in various formats such as character information, and details of this point will be described later.
- the information processing apparatus 100 generates accuracy information including the measurement result of the accuracy of the model corresponding to each of the plurality of categories and the prediction result of the accuracy of the model. Specifically, the information processing apparatus 100 includes measurement results of model accuracy and model accuracy corresponding to each of the categories "Race A", “Race B”, “Race C”, and “Race D”. Generate accuracy information including the prediction result of. As a result, the information processing apparatus 100 can appropriately generate information regarding the accuracy of the model by adjusting the data. As described above, the information processing apparatus 100 can appropriately execute the processing related to the learning of the model by using the model by learning in which the data is adjusted. In the examples of FIGS. 1 and 2, the information processing apparatus 100 has described the process of adjusting the number of data for each category as an example, but the process may be performed by adjusting the total number of data.
- the information processing device 100 displays the generated accuracy information.
- the information processing device 100 displays the generated graph GR11.
- the information processing apparatus 100 can display information indicating how much data should be increased to eliminate the accuracy difference in each category. Therefore, it is difficult for the user who visually recognizes the information displayed by the information processing apparatus 100 to grasp how much data should be increased after that to eliminate the difference in accuracy in each category, and in essence, it is difficult to obtain accuracy in which category. Can be grasped.
- the information processing apparatus 100 displays the accuracy information of each of the categories "Race A”, “Race B”, “Race C”, and “Race D” for each category.
- the difficulty of improving the accuracy of the model can be shown.
- the information processing apparatus 100 can indicate the difficulty of improving the accuracy of the model for each category by the inclination of the prediction line of each category.
- model M1 shows that there is a bias in the category "Race C” and the difficulty of improving it is high.
- race A can improve the accuracy to the same extent as race B by increasing the data.
- it can be shown that it is essentially difficult to obtain accuracy in races C and D, and it can be shown that accuracy cannot be obtained even if there is no intention of discrimination.
- the information processing apparatus 100 derives a prediction line indicating that the performance (accuracy) improves as the number of data increases, and increases the number of data for training. Generate accuracy information that indicates a prediction of model accuracy changes.
- AI Artificial Intelligence
- Deep learning For example, there is an ethical issue in AI (Artificial Intelligence) / deep learning.
- problems with Fairness and Bias Such problems include misrecognizing a specific person as a so-called ape such as a gorilla, failing to pass the loan examination in a specific area, and lacking image recognition performance in a specific race. Can be mentioned.
- AI may make a discriminatory judgment, have a bias toward a specific area, or have a bias toward a specific area.
- the above problems may be a mixture of both cultural and technical problems.
- a matter of culture there is a possibility that it is learned to make a discriminatory judgment, it is possible that it was learned not to pass a loan examination in a specific area, and there is little learning data discriminatory only for a certain race.
- the data may be misclassified in nature, there may be a reason why the loan is difficult to pass in the area, or it may be difficult to physically recognize a specific race. Sex is assumed.
- the information processing apparatus 100 generates information that can be used to isolate whether the problem related to the accuracy of the model is a problem that can be managed by the technology. For example, the information processing apparatus 100 generates information that can provide a guideline as to how much improvement can be expected if technical improvement is possible. For example, the information processing apparatus 100 generates information that serves as a guideline, such as whether or not the bias is improved by increasing the amount of data, and in that case, how much the amount of data should be increased. Then, the information processing device 100 displays the generated information. In the example of FIG. 1, the information processing apparatus 100 provides the user with information that guides the above problem by displaying the graph GR11.
- the above-mentioned functions are provided as functions of tools (for example, tool TL1 in FIG. 12) used by developers of technologies using machine learning, such as deep learning.
- tools for example, tool TL1 in FIG. 12
- machine learning such as deep learning.
- the information processing device 100 generates information for visualizing bias and fairness in an easy-to-understand form.
- the information processing apparatus 100 performs learning while changing the number of data for each category (for example, gender, race, etc.) for which the bias is to be improved. Then, the information processing apparatus 100 generates information indicating how the indexes such as bias and fairness change when the number of each data changes. As a result, the information processing apparatus 100 realizes a function of visualizing bias and fairness in an easy-to-understand manner. For example, the information processing apparatus 100 has a horizontal axis for the number of learning data in each category and a vertical axis for an index such as a bias, and then a predicted value of how the index improves when the number of data in each category is increased. To present.
- the information processing apparatus 100 evaluates the bias of the number of data that repeats learning and evaluation while changing the number of data, and the influence on fairness, and predicts the improvement range of the index when the data is increased.
- the information processing device 100 displays the result obtained by the prediction.
- the information processing apparatus 100 loops for each category, and while reducing the data by half and further by half from the original number of data, it performs learning a specified number of times and calculates (measures) an (accuracy) index related to bias and fairness. Do. Further, the information processing apparatus 100 predicts the improvement range of the index when the data is increased after that, from the relationship between the number of obtained data and the index.
- the information processing apparatus 100 displays a graph of each of the evaluation result and the prediction result with the horizontal axis as the number of data and the vertical axis as an index.
- the information processing apparatus 100 can easily distinguish between the bias and fairness of the data and the essential difficulty level of the problem.
- the information processing apparatus 100 can easily distinguish between the essential cause of a problem such as being unable to be fair due to physical factors and the cause of bias or fairness of data.
- the accuracy is not limited to the accuracy and may be various indexes.
- the accuracy may be various indexes such as recall, precision, and F-number.
- the accuracy may be object detection accuracy, an error in the object detection position, an error in the object detection size, or the like.
- the information processing apparatus 100 may determine an index to be used as accuracy according to the use of the model to be learned.
- the information processing apparatus 100 may generate accuracy information indicating a plurality of accuracy of the model corresponding to the plurality of indexes. For example, the information processing apparatus 100 may generate accuracy information indicating a measurement result or a prediction result of a model corresponding to a plurality of indexes. For example, the information processing apparatus 100 may generate accuracy information indicating a measurement result or a prediction result of a model corresponding to two indexes of “reproducibility” and “adaptation rate”. The information processing device 100 may display one accuracy specified by the user among the plurality of accuracy.
- the information processing device 100 may display a plurality of precisions in a switchable manner. For example, the information processing apparatus 100 may display accuracy information corresponding to the "reproduction rate" when the user specifies the "reproduction rate” among the “reproduction rate” and the “adaptation rate”. Further, the information processing apparatus 100 may display accuracy information corresponding to the "compliance rate” when the user specifies the "compliance rate” among the "reproducibility” and the “compliance rate”. The above is an example, and the information processing apparatus 100 may display a plurality of accuracy in various modes. For example, the information processing apparatus 100 may display a plurality of accuracy at the same time.
- the information processing apparatus 100 can switch and display the graph according to the user's designation by similarly generating a graph for each (accuracy) index.
- FIG. 3 is a diagram showing a configuration example of the information processing device 100 according to the embodiment of the present disclosure.
- the information processing device 100 shown in FIG. 3 is an example of a bias adjusting device.
- the information processing device 100 is a computer that realizes a function as a bias adjusting device described later.
- the information processing device 100 includes a communication unit 11, an input unit 12, a display unit 13, a storage unit 14, and a control unit 15.
- the information processing device 100 includes an input unit 12 (for example, a keyboard, a mouse, etc.) that receives various operations from the administrator of the information processing device 100, and a display unit 13 (for example, a display unit 13) for displaying various information. , Liquid crystal display, etc.).
- the communication unit 11 is realized by, for example, a NIC (Network Interface Card), a communication circuit, or the like.
- the communication unit 11 is connected to the communication network N (Internet or the like) by wire or wirelessly, and transmits / receives information to / from another device or the like via the communication network N (network N).
- the input unit 12 accepts input by the user.
- the input unit 12 may accept the user's selection of the learning method.
- the input unit 12 may accept various operations from the user via a keyboard, mouse, or touch panel provided in the information processing device 100.
- the input unit 12 accepts the input of the target accuracy (target value) by the user.
- the input unit 12 accepts the user to specify the target accuracy.
- the input unit 12 accepts the user to specify a numerical value of the target accuracy.
- the input unit 12 accepts the designation of the target accuracy TA1 shown in FIG.
- the display unit 13 displays various information.
- the display unit 13 is a display device (display unit) such as a display, and displays various information.
- the display unit 13 displays the information measured by the calculation unit 153.
- the display unit 13 displays the information predicted by the prediction unit 154.
- the display unit 13 displays the information generated by the generation unit 155.
- the display unit 13 displays the predicted change in identification accuracy as a graph or text.
- the display unit 13 displays the accuracy information.
- the display unit 13 displays the accuracy information as characters.
- the display unit 13 displays the accuracy information as a numerical value.
- the display unit 13 displays the accuracy information as a diagram.
- the display unit 13 displays the accuracy information as a graph.
- the display unit 13 displays a graph in which the first axis is the accuracy and the second axis is the number of data.
- the display unit 13 displays information indicating the relationship between the accuracy of the model and the target accuracy.
- the display unit 13 displays information indicating the relationship between the number of data in the accuracy of the model and the number of data in the target accuracy.
- the display unit 13 displays a plurality of precisions in a switchable manner.
- the display unit 13 displays one of the plurality of precisions.
- the display unit 13 displays one precision specified by the user.
- the display unit 13 displays the graph GR11 shown in FIG.
- the information processing device 100 is not limited to the display unit 13, and may have a functional configuration for outputting information.
- the information processing device 100 may have a function of outputting information as voice.
- the information processing device 100 may have an audio output unit such as a speaker that outputs audio.
- the storage unit 14 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory (Flash Memory), or a storage device such as a hard disk or an optical disk.
- the storage unit 14 includes a data information storage unit 141, a model information storage unit 142, and an accuracy information storage unit 143.
- the accuracy information storage unit 143 stores various information related to the accuracy of the measured or predicted model.
- the accuracy information storage unit 143 stores various information related to the target accuracy such as a numerical value indicating the target accuracy TA1 shown in FIG.
- the data information storage unit 141 stores various information related to the data.
- FIG. 4 is a diagram showing an example of a data information storage unit according to the embodiment of the present disclosure.
- the data information storage unit 141 stores various information related to various data such as learning data used for learning and evaluation data used for accuracy evaluation (measurement).
- FIG. 4 shows an example of the data information storage unit 141 according to the embodiment.
- the data information storage unit 141 includes items such as "data set ID”, "data ID”, “data”, “target # 1 (category)", and "target # 2 (category)”. ..
- target # 1 (category)” and “target # 2 (category)” but also “target # 3 (category)", “target # 4 (category)” and the like may be included.
- the number of "object # 1" to "object # N” may be the number of objects for accuracy evaluation.
- the learning data stored in the data information storage unit 141 is at least data related to race, gender, address, income, or educational background.
- “Target # 3 (category)" of the data information storage unit 141 is related to the address
- target # 4 (category) is related to income
- target # 5 (category) is related to educational background. You may.
- Data set ID indicates identification information for identifying the data set.
- the "data ID” indicates identification information for identifying an object.
- data indicates data corresponding to the object identified by the data ID. That is, in the example of FIG. 4, the vector data (data) corresponding to the object is associated and registered with the data ID that identifies the object.
- Target # 1 (category) and “target # 2 (category)” indicate the category corresponding to each target of the corresponding data.
- Target # 1 (category) indicates the category of each data related to the target "race”.
- Target # 2 (category) indicates the category of each data related to the target "gender”.
- the data set (data set DS1) identified by the data set ID "DS1" includes a plurality of data identified by the data IDs "DID1", “DID2", “DID3” and the like. Show that.
- Each data (learning data) identified by the data IDs "DID1", “DID2”, “DID3” and the like includes at least information on race, gender, address, income, or educational background.
- the data DT1 identified by the data ID "DID1" indicates that the category related to the target "race” is “race A” and the category related to the target "gender” is "male".
- the data DT1 indicates that it is race A and is data about a human being who is male.
- the data DT1 may be an image captured by a man of race A.
- the data DT2 identified by the data ID "DID2" indicates that the category related to the target "race” is “race B” and the category related to the target "gender” is "female".
- the data DT2 indicates that it is race B and is data about a human being who is a woman.
- the data DT1 may be an image captured by a woman of race B.
- the data information storage unit 141 is not limited to the above, and may store various information depending on the purpose.
- the data information storage unit 141 stores correct answer information (correct answer label) corresponding to each data in association with each data.
- the target itself such as "target # 1 (category)" and “target # 2 (category)” may be used as correct answer information.
- the data information storage unit 141 identifiable whether each data is learning data or evaluation data. For example, the data information storage unit 141 stores the learning data and the evaluation data in a distinguishable manner. The data information storage unit 141 may store information that identifies whether each data is learning data or evaluation data.
- the information processing device 100 learns a model based on each data used as learning data and correct answer information.
- the information processing device 100 measures the accuracy of the model based on each data used as evaluation data and correct answer information.
- the information processing apparatus 100 measures the accuracy of the model by collecting the result of comparing the output result output by the model when the evaluation data is input and the correct answer information.
- the model information storage unit 142 stores information about the model.
- the model information storage unit 142 stores information (model data) indicating the structure of the model (network).
- FIG. 5 is a diagram showing an example of a model information storage unit according to the embodiment of the present disclosure.
- FIG. 5 shows an example of the model information storage unit 142 according to the embodiment.
- the model information storage unit 142 includes items such as "model ID", "use", and "model data”.
- Model ID indicates identification information for identifying the model.
- User indicates the use of the corresponding model.
- Model data indicates model data.
- FIG. 5 an example in which conceptual information such as “MDT1" is stored in “model data” is shown, but in reality, various information constituting the model such as information and functions related to the network included in the model are stored. included.
- model M1 identified by the model ID "M1" indicates that the use is "identification model (image recognition)".
- Model M1 is a discriminative model and is used for image recognition. Further, it is shown that the model data of the model M1 is the model data MDT1.
- the model information storage unit 142 is not limited to the above, and may store various information depending on the purpose.
- the model information storage unit 142 stores the information of the first model and the second model learned (generated) by the learning process.
- the model information storage unit 142 stores the parameter information of the first model and the second model corresponding to the model M1 learned (generated) by the learning process.
- control unit 15 for example, a program (for example, an information processing program according to the present disclosure) stored inside the information processing apparatus 100 by a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or the like is stored in a RAM (Random Access Memory). ) Etc. are executed as a work area. Further, the control unit 15 is a controller, and may be realized by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).
- ASIC Application Specific Integrated Circuit
- FPGA Field Programmable Gate Array
- control unit 15 includes an acquisition unit 151, a learning unit 152, a calculation unit 153, a prediction unit 154, a generation unit 155, and a transmission unit 156, and the information described below. Realize or execute the function or action of processing.
- the internal configuration of the control unit 15 is not limited to the configuration shown in FIG. 3, and may be another configuration as long as it is a configuration for performing information processing described later.
- the acquisition unit 151 acquires various information.
- the acquisition unit 151 acquires various information from an external information processing device.
- the acquisition unit 151 acquires various information from the storage unit 14.
- the acquisition unit 151 acquires the information received by the input unit 12.
- the acquisition unit 151 acquires various information from the storage unit 14.
- the acquisition unit 151 acquires various information from the data information storage unit 141, the model information storage unit 142, and the accuracy information storage unit 143.
- the acquisition unit 151 acquires learning data.
- the acquisition unit 151 acquires the data set DS1 from the data information storage unit 141.
- the acquisition unit 151 acquires the evaluation data.
- the acquisition unit 151 acquires evaluation data from the data information storage unit 141.
- the acquisition unit 151 acquires race A evaluation data, race B evaluation data, race C evaluation data, and race D evaluation data from the data information storage unit 141.
- the acquisition unit 151 may acquire the model.
- the acquisition unit 151 may acquire information indicating the network structure of the model.
- the acquisition unit 151 acquires a model from an external information processing device or a storage unit 14 that provides the model.
- the acquisition unit 151 acquires the model M1 from the model information storage unit 142.
- the acquisition unit 151 acquires information indicating the network structure of the model M1 from the model information storage unit 142.
- the acquisition unit 151 acquires various information learned by the learning unit 152.
- the acquisition unit 151 acquires various information measured by the calculation unit 153.
- the acquisition unit 151 acquires various information predicted by the prediction unit 154.
- the acquisition unit 151 acquires various information generated by the generation unit 155.
- the acquisition unit 151 acquires learning data used for learning a model by machine learning.
- the acquisition unit 151 acquires learning data including data corresponding to each of the plurality of categories.
- the acquisition unit 151 acquires the target accuracy indicating the target of the accuracy of the model.
- the acquisition unit 151 acquires the target accuracy received by the input unit 12.
- the acquisition unit 151 acquires the designated information that specifies the accuracy of one.
- the learning unit 152 performs the learning process.
- the learning unit 152 performs various learning.
- the learning unit 152 learns various types of information based on the information acquired by the acquisition unit 151.
- the learning unit 152 learns (generates) a model.
- the learning unit 152 learns various information such as a model.
- the learning unit 152 generates a model by learning.
- the learning unit 152 learns a model by using various techniques related to machine learning. For example, the learning unit 152 learns the parameters of the model (network).
- the learning unit 152 learns a model by using various techniques related to machine learning.
- the learning unit 152 performs various learning.
- the learning unit 152 learns various types of information based on the information stored in the storage unit 14.
- the learning unit 152 learns a model based on the information stored in the data information storage unit 141 and the model information storage unit 142.
- the learning unit 152 learns network parameters. For example, the learning unit 152 learns the network parameters of the model M1. The learning unit 152 learns the first model and the second model corresponding to the model M1 by learning the network parameters of the model M1.
- the learning unit 152 generates a first model and a second model by performing learning processing based on the learning data (teacher data) stored in the data information storage unit 141.
- the learning unit 152 generates a first model by performing a learning process using the learning data stored in the data information storage unit 141.
- the learning unit 152 generates a second model by performing a learning process using the adjusted data of the learning data stored in the data information storage unit 141.
- the learning unit 152 generates a model used for image recognition.
- the learning unit 152 learns the network parameters of the model M1 and generates a first model and a second model corresponding to the model M1. Further, the learning unit 152 may generate a first model and a second model having different network structures.
- the learning method by the learning unit 152 is not particularly limited, but for example, learning data in which label information (race, etc.) and an image group are linked is prepared, and the learning data is used as a calculation model based on a multi-layer neural network. You may learn by inputting in. Further, for example, a method based on DNN (Deep Neural Network) such as CNN (Convolutional Neural Network) and 3D-CNN may be used.
- DNN Deep Neural Network
- CNN Convolutional Neural Network
- 3D-CNN 3D-CNN
- the learning unit 152 targets time-series data such as moving images (moving images) such as videos, it is a recurrent neural network (RNN) or an LSTM (Long Short-Term Memory units) that is an extension of the RNN. You may use the method based on.
- RNN recurrent neural network
- LSTM Long Short-Term Memory units
- the learning unit 152 stores the first model and the second model generated by learning in the model information storage unit 142.
- the learning unit 152 generates a first model, a second model, and the like corresponding to the network of the model M1.
- the learning unit 152 stores the generated first model, second model, and the like in the model information storage unit 142 in association with the model M1.
- the learning unit 152 learns a model based on each data used as learning data and correct answer information.
- the learning unit 152 learns the first model from the learning data.
- the learning unit 152 adjusts the number of data used for learning.
- the learning unit 152 learns the second model from the adjusted data in which the number of data for learning data is adjusted according to the target for which the number of data is adjusted.
- the learning unit 152 learns the second model from the adjusted data in which the number of data is reduced from the learning data.
- the learning unit 152 reduces the number of data from the learning data based on a predetermined reference, and learns the second model from the adjusted adjusted data.
- the learning unit 152 learns the second model from the adjusted data in which the number of data for learning data is adjusted according to the category indicating the classification related to the target.
- the learning unit 152 learns the second model from the adjusted data in which the number of data for learning data is adjusted according to one category among the plurality of target categories.
- the learning unit 152 learns the second model from the adjusted data in which the number of data corresponding to one category is adjusted among the learning data.
- the learning unit 152 learns the second model from the adjusted data in which the number of data corresponding to one category is reduced among the learning data.
- the learning unit 152 learns the second model from each of the plurality of adjusted data in which the number of data for learning data is adjusted for each of the plurality of categories.
- the learning unit 152 learns the first model of the model M1 used for image recognition for the data set DS1.
- the learning unit 152 learns the second model of the model M1 used for image recognition for the adjusted data set AS1.
- the learning unit 152 learns the second model (third model) of the model M1 used for image recognition for the adjusted data set AS1 in which the data corresponding to the category “race A” is reduced from the data set DS1.
- the learning unit 152 learns the second model of the model M1 used for image recognition for the adjusted data set AS2.
- the learning unit 152 learns the third model of the model M1 used for image recognition for the adjusted data set AS2 in which the data corresponding to the category “race A” is further reduced from the adjusted data set AS1.
- the calculation unit 153 performs calculation processing.
- the calculation unit 153 performs a process of calculating various information.
- the calculation unit 153 calculates the first identification accuracy of the identification model learned by the first learning data.
- the calculation unit 153 calculates the second discrimination accuracy of the discriminative model learned by the second learning data whose number of data is adjusted with respect to the first learning data.
- the calculation unit 153 functions as a measurement unit that performs measurement processing.
- the calculation unit 153 performs various measurements.
- the calculation unit 153 measures various information based on the information acquired by the acquisition unit 151.
- the calculation unit 153 measures various information based on the information stored in the storage unit 14.
- the calculation unit 153 measures various information based on the information stored in the data information storage unit 141, the model information storage unit 142, and the accuracy information storage unit 143.
- the calculation unit 153 makes various determinations.
- the calculation unit 153 determines various information based on the information acquired by the acquisition unit 151.
- the calculation unit 153 determines various information based on the information stored in the storage unit 14.
- the calculation unit 153 measures the accuracy of the model using the evaluation data.
- the calculation unit 153 measures the accuracy of the first model and the second model.
- the calculation unit 153 stores information on the accuracy of the measured model in the accuracy information storage unit 143.
- the calculation unit 153 measures the accuracy of the model based on each data used as evaluation data and correct answer information.
- the calculation unit 153 measures the accuracy of the model by collecting the comparison result between the output result output by the model when the evaluation data is input and the correct answer information.
- the calculation unit 153 measures the first accuracy of the first model using the evaluation data.
- the calculation unit 153 measures the second accuracy of the second model using the evaluation data.
- the calculation unit 153 measures the first accuracy of the first model using the evaluation data corresponding to one category.
- the calculation unit 153 measures the second accuracy of the second model using the evaluation data corresponding to one category.
- the calculation unit 153 measures a plurality of first precisions of the first model using the evaluation data corresponding to each of the plurality of categories.
- the calculation unit 153 measures a plurality of second precisions corresponding to each of the plurality of categories.
- the calculation unit 153 measures the accuracy corresponding to the category “Race A” for the learned first model.
- the calculation unit 153 measures the accuracy corresponding to the category “Race A” using the race A evaluation data.
- the calculation unit 153 measures that the accuracy corresponding to the category “Race A” is “VL1” for the first model.
- the calculation unit 153 measures that the accuracy corresponding to the category “Race A” is “VL2” for the second model.
- the calculation unit 153 measures that the accuracy corresponding to the category “Race A” is “VL3” for the third model.
- Prediction unit 154 performs prediction processing.
- the prediction unit 154 predicts various types of information.
- the prediction unit 154 predicts various types of information based on the information acquired from the external information processing device.
- the prediction unit 154 predicts various types of information based on the information stored in the storage unit 134.
- the prediction unit 154 predicts various types of information based on the information stored in the data information storage unit 141, the model information storage unit 142, and the accuracy information storage unit 143.
- the prediction unit has a number of training data based on the first discrimination accuracy of the discrimination model trained by the first training data and the second discrimination accuracy of the discrimination model trained by the second training data. Predict changes in identification accuracy for.
- the prediction unit 154 predicts the accuracy of the first model and the second model.
- the prediction unit 154 stores information on the accuracy of the predicted model in the accuracy information storage unit 143.
- the prediction unit 154 predicts the accuracy of the model based on the measurement result by the calculation unit 153.
- the prediction unit 154 predicts the prediction line based on the measurement result by the calculation unit 153.
- the prediction unit 154 predicts a change in the accuracy of the model when the number of data is adjusted according to the target based on the first accuracy and the second accuracy.
- the prediction unit 154 predicts a change in the accuracy of the model when the number of training data is increased.
- the prediction unit 154 predicts the prediction line of the accuracy of the model when the number of training data is increased.
- the prediction unit 154 predicts the accuracy change of the model based on the information shown in the measurement MR11 to the measurement MR13.
- the prediction unit 154 derives a function that predicts the accuracy of the model corresponding to the category "Race A”.
- the prediction unit 154 derives the function FC1 corresponding to the prediction line LN1 of the accuracy of the model corresponding to the category “Race A”.
- the generation unit 155 functions as a control unit that performs various controls related to bias adjustment.
- the generation unit 155 functions as a bias adjustment control unit that performs a bias adjustment process.
- the generation unit 155 adjusts the number of data used for learning so that the predicted change in the identification accuracy becomes a predetermined target value (target accuracy) based on the change in the identification accuracy predicted by the prediction unit 154. Further, the generation unit 155 changes the discrimination model based on the change in the discrimination accuracy predicted by the prediction unit 154.
- the generation unit 155 changes the discriminative model when it is difficult to achieve the target accuracy by adjusting the number of data used for learning.
- the generation unit 155 changes the discriminative model when the increase in the number of data required to achieve the target accuracy is equal to or greater than a predetermined threshold value.
- the generation unit 155 changes the discriminative model by changing the network structure of the model.
- the generation unit 155 changes the discriminative model by changing the depth (number) of the layers of the model and the number of nodes (corresponding to each circle in FIG. 6).
- the generation unit 155 performs various generations.
- the generation unit 155 generates various information based on the information acquired by the acquisition unit 151.
- the generation unit 155 generates various information based on the information stored in the storage unit 14.
- the generation unit 155 generates various information based on the information stored in the data information storage unit 141, the model information storage unit 142, and the accuracy information storage unit 143.
- the generation unit 155 generates various information to be displayed on the display unit 13.
- the generation unit 155 generates various information such as character information to be displayed on the display unit 13 and image information such as a graph.
- the generation unit 155 generates information (images) related to the screen such as the graph GR11 shown in FIG. 1 by appropriately using various conventional techniques related to the images.
- the generation unit 155 generates an image such as the graph GR11 shown in FIG. 1 by appropriately using various conventional techniques related to GUI.
- the generation unit 155 may generate an image such as a graph GR11 in CSS, Javascript (registered trademark), HTML, or any language capable of describing information processing such as information display and operation reception described above.
- the generation unit 155 is learned by the first accuracy of the first model, which is a model learned by the training data, and the adjusted data in which the number of training data is adjusted according to the target for which the number of data is adjusted. Based on the second accuracy of the second model, which is the model, accuracy information indicating the accuracy of the model is generated. The generation unit 155 generates accuracy information based on the second model trained by the adjusted data in which the number of data is reduced from the training data. The generation unit 155 generates accuracy information indicating a change in the accuracy of the model by adjusting the number of data according to the target, based on the first accuracy and the second accuracy.
- the generation unit 155 generates accuracy information based on the first accuracy of the first model measured using the evaluation data and the second accuracy of the second model measured using the evaluation data.
- the generation unit 155 generates accuracy information indicating a prediction of a model accuracy change when the number of data is adjusted according to the target, based on the first accuracy and the second accuracy.
- the generation unit 155 generates accuracy information indicating the prediction of the accuracy change of the model when the number of training data is increased.
- the generation unit 155 generates accuracy information including a prediction line of the accuracy of the model when the number of training data is increased.
- the generation unit 155 generates accuracy information regarding the category based on the second accuracy of the second model learned by the adjusted data in which the number of data of the training data is adjusted according to the category indicating the category related to the target.
- the generation unit 155 is based on the second accuracy of the second model trained by the adjusted data in which the number of data for training data is adjusted according to one category among the plurality of target categories.
- the generation unit 155 generates accuracy information based on the second accuracy of the second model learned by the adjusted data in which the number of data corresponding to one category is adjusted among the training data.
- the generation unit 155 generates accuracy information based on the second accuracy of the second model learned by the adjusted data in which the number of data corresponding to one category is reduced among the training data.
- the generation unit 155 generates accuracy information based on the first accuracy of the first model for one category and the second accuracy of the second model for one category.
- the generation unit 155 has the first accuracy of the first model measured using the evaluation data corresponding to one category and the second accuracy of the second model measured using the evaluation data corresponding to one category. Generate accuracy information based on accuracy.
- the generation unit 155 has a plurality of categories based on a plurality of second precisions of the plurality of second models trained by each of the plurality of adjusted data in which the number of training data is adjusted for each of the plurality of categories. Generate accuracy information indicating the accuracy of the model for each.
- the generation unit 155 is based on the plurality of first precisions of the first model corresponding to each of the plurality of categories and the plurality of second precisions of the plurality of second models corresponding to each of the plurality of categories. To generate. The generation unit 155 is based on a plurality of first precisions of the first model measured using evaluation data corresponding to each of the plurality of categories and a plurality of second precisions corresponding to each of the plurality of categories. , Generate accuracy information.
- the generation unit 155 shows the relationship between the plurality of categories regarding the accuracy of the model based on the plurality of first precisions corresponding to each of the plurality of categories and the plurality of second precisions corresponding to each of the plurality of categories. Generate accuracy information.
- the generation unit 155 generates accuracy information indicating a bias in the accuracy of the model in a plurality of categories.
- the generation unit 155 generates accuracy information indicating the difficulty of improving the accuracy of each model in a plurality of categories.
- the generation unit 155 generates accuracy information indicating a plurality of accuracy of the model corresponding to the plurality of indexes.
- the generation unit 155 is shown in the graph GR11 by performing processing for each of the categories “Race A”, “Race B”, “Race C”, and “Race D”. Generate accuracy information including measured accuracy and predicted accuracy for four categories such as.
- the transmission unit 156 transmits various information.
- the transmission unit 156 provides various types of information.
- the transmission unit 156 provides various information to an external information processing device.
- the transmission unit 156 transmits various information to an external information processing device.
- the transmission unit 156 transmits the information stored in the storage unit 14.
- the transmission unit 156 transmits the information stored in the data information storage unit 141, the model information storage unit 142, and the accuracy information storage unit 143.
- the transmission unit 156 transmits the information generated by the generation unit 155.
- the information processing apparatus 100 may use various types of models (functions).
- the information processing apparatus 100 may use a regression model such as an SVM (Support Vector Machine) or a model (function) of any form such as a neural network.
- the information processing apparatus 100 may use various regression models such as a non-linear regression model and a linear regression model.
- FIG. 6 is a diagram showing an example of a model according to the embodiment of the present disclosure.
- the network NW1 shown in FIG. 6 shows a neural network including a plurality of (multilayer) intermediate layers between the input layer INL and the output layer OUTL.
- the information processing apparatus 100 may learn the parameters of the network NW1 shown in FIG.
- the network NW1 shown in FIG. 6 is a conceptual diagram showing a neural network (model) used for image recognition corresponding to the network of the model M1. For example, when an image is input from the input layer INL side, the network NW1 outputs the recognition result from the output layer OUTL. For example, the information processing apparatus 100 inputs information to the input layer INL in the network NW1 to output the recognition result corresponding to the input from the output layer OUTL.
- the network NW1 is shown as an example of the model (network), but the network NW1 may be in various formats depending on the application and the like.
- the information processing apparatus 100 learns the first model and the second model corresponding to the model M1 by learning the parameters (weights) of the model M1 having the structure of the network NW1 shown in FIG.
- FIGS. 7 and 8 are flowcharts showing an information processing procedure according to the embodiment of the present disclosure. Specifically, FIG. 7 is a flowchart showing an outline of the information processing procedure. Further, FIG. 8 is a flowchart showing details of the information processing procedure.
- the information processing apparatus 100 acquires learning data used for learning a model by machine learning (step S101). For example, the information processing apparatus 100 acquires the data set DS1.
- the information processing device 100 generates accuracy information indicating the accuracy of the model based on the first accuracy of the first model learned from the training data and the second accuracy of the second model learned from the adjusted data. (Step S102).
- the information processing apparatus 100 is a graph GR11 showing the accuracy of the model based on the first accuracy of the first model learned from the training data and the second accuracy of the second model learned from the adjusted data. To generate. Then, the information processing apparatus 100 may display accuracy information indicating the accuracy of the generated model.
- the information processing apparatus 100 initializes the categories Index and i to 0 (step S201). For example, the information processing apparatus 100 initializes the value of the category "i", which is a variable used for the iterative processing, to "0". In the example of FIG. 1, for example, the category "0" corresponds to "Race A”, the category "1" corresponds to "Race B”, and the category "2" corresponds to "Race C”. Category "3" corresponds to "Race D”.
- the information processing device 100 initializes the learning data set (step S202). For example, the information processing apparatus 100 sets the data set DS1 as the learning data set.
- the information processing device 100 learns the model and evaluates the accuracy (step S203). For example, immediately after the data set DS1 is set in the training data set, the information processing apparatus 100 learns a model (first model) using the entire data set DS1 and evaluates the accuracy of the model. For example, the information processing device 100 starts from all the data. Further, after the data number is adjusted, the information processing apparatus 100 learns a model (second model) from the data set DS1 using the adjusted data set in which the number of data is adjusted, and evaluates the accuracy of the model.
- the information processing device 100 determines whether or not learning has been performed with a sufficiently small number of data (step S204).
- the data (only) of the category i learning data set is thinned out (step S205). For example, when “i" is “0" and the category is “0”, the number of data corresponding to the category "Race A" in the learning data set is reduced. Further, when “i” is “1” and the category is “1”, the number of data corresponding to the category "Race B" in the learning data set is reduced.
- the information processing device 100 thins out the data of the corresponding category in step S205, returns to step S203, and repeats the process using the thinned out data (adjusted data).
- step S204 determines whether or not the evaluation is completed in all the categories (step S206).
- step S206 determines whether or not the evaluation is completed in all the categories (step S206).
- step S206 determines whether or not the evaluation is completed in all the categories (step S206).
- step S206 determines whether or not the evaluation is completed in all the categories (step S206).
- step S206 determines whether or not the evaluation is completed in all the categories (step S206).
- step S206 determines whether or not the evaluation is completed in all the categories (step S206).
- step S207 For example, when “i” is “0", 1 is added to "i" and "i" is updated to "1". In this case, by updating "i” from “0" to "1", after the processing targeting the category "Race A" is completed, the process shifts to the processing targeting the category "Race B". ..
- the information processing apparatus 100 shifts the processing target to the next category in step S207, then returns to step S202, and repeats the processing for the next category.
- the information processing apparatus 100 ends the process when the evaluation is completed in all the categories (step S206; Yes).
- the information processing apparatus 100 loops for each category by the processing procedure as shown in FIG. 8, and is related to learning a specified number of times and bias and fairness while reducing the data by half and further by half from the original number of data. (Accuracy) Calculate the index. For example, in the case of face detection from an image in which race is categorized, the information processing device 100 plots the detection accuracy while reducing the learning data of each race by half.
- FIG. 9 is a diagram showing an example of displaying accuracy information.
- the graph GR21 in FIG. 9 corresponds to the graph GR11 in FIG.
- the graph GR 21 of FIG. 9 shows a case where the information indicating the accuracy for each category of the first model generated by using the entire training data and the prediction line of each category are displayed in the graph GR 11 of FIG.
- the graph GR21 shows the measurement MR11 to MR41 and the prediction line LN1 of each category “Race A”, “Race B”, “Race C”, and “Race D” in the graph GR11 of FIG.
- An example of displaying ⁇ LN4 is shown.
- the information processing device 100 generates the graph GR21.
- the information processing apparatus 100 generates a graph GR 21 showing the relationship between a plurality of categories regarding the accuracy of the model.
- the information processing device 100 displays the graph GR 21 on the display unit 13.
- the user who confirmed the graph GR21 displayed on the display unit 13 is in the category "Race A” from the current accuracy of the category “Race A” and the prediction line showing the change in the accuracy according to the increase or decrease of the data. It is possible to grasp the difficulty of improving accuracy.
- the user who has confirmed the graph GR21 displayed on the display unit 13 can grasp the difficulty of improving the accuracy of the category “Race A” from the inclination of the prediction line of the category “Race A”.
- the graph GR21 shows the current accuracy and the accuracy according to the increase or decrease of data. The difficulty of improving the accuracy of each category can be grasped from the prediction line showing the change.
- the user can recognize that the category “Race C” is a category in which it is difficult to improve the accuracy.
- the current accuracy is lower than the current accuracy of the category "Race C”
- the slope of the prediction line is larger than the slope of the prediction line of the category "Race C”.
- the user can recognize that the category "Race D” is a category in which the difficulty of improving the accuracy is not higher than that of the category "Race C”.
- FIG. 9 is an example, and the information processing apparatus 100 is generated by adjusting the number of data for each category “Race A”, “Race B”, “Race C”, and “Race D”.
- the measured MR12 to MR42, MR13 to MR43, etc. of the second model may also be displayed.
- Target accuracy (target value)
- target accuracy (target value)
- FIG. 10 is a diagram showing the relationship between the target accuracy and the number of data. Specifically, FIG. 10 is a diagram showing a graph including target accuracy and accuracy of each category.
- the measurement MR11 to MR41, the prediction lines LN1 to LN4, and the target accuracy TA1 of each category “race A”, “race B”, “race C”, and “race D” are shown. And are included.
- the information processing device 100 generates the graph GR31.
- the information processing device 100 may display the graph GR 31 on the display unit 13.
- the information processing device 100 can intuitively grasp the relationship between the accuracy of each category "Race A”, “Race B”, “Race C”, and “Race D” and the target accuracy TA1 by the graph GR31.
- Information can be provided to the user.
- the category “Race B” has already reached the target accuracy TA1
- the remaining categories “Race A”, “Race C”, and “Race D” are targets. Indicates that the accuracy TA1 has not been reached.
- the graph GR31 shows the number of data required for each of the categories "Race A", “Race C”, and “Race D” to reach the target accuracy TA1.
- the position of the horizontal axis "log (number of data)" corresponding to the measurement MR11 in the graph GR31 corresponds to the category "Race A” included in the learning data at that time. Indicates the number of data to be performed (current number of data).
- the position of the horizontal axis "log (number of data)” corresponding to the intersection of the prediction line LN1 and the target accuracy TA1 in the graph GR31 is necessary to achieve the target accuracy TA1.
- the number of data (required number of data) corresponding to the category "Race A” is shown.
- the user who confirmed the graph GR31 displayed on the display unit 13 has the target accuracy for the category "Race A” based on the current number of data in the category "Race A” and the required number of data in the category “Race A”. It is possible to grasp the relationship between TA1 and the current accuracy. Further, the user who has confirmed the graph GR31 displayed on the display unit 13 can grasp how much the number of data needs to be increased in order to achieve the target accuracy TA1 for the category “Race A”. .. Also, regarding the categories "Race C" and “Race D", as in the category "Race A", the graph GR31 is based on the current number of data and the required number of data, and which one is used to achieve the target accuracy TA1. Degree indicates whether the number of data needs to be increased.
- the information processing apparatus 100 may perform the bias adjustment process based on the relationship between the accuracy of each category and the target accuracy TA1 as shown in FIG.
- the generation unit 155 of the control unit 15 of the information processing apparatus 100 uses the number of data for learning so that the predicted change in the identification accuracy becomes a predetermined target value based on the predicted change in the identification accuracy. May be adjusted or the discriminative model may be changed.
- the information processing apparatus 100 does not reach the target accuracy TA1 for the categories “Race A”, “Race C”, and “Race D”, so that the categories “Race A” and “Race A”
- the number of data corresponding to "Race C” and “Race D” may be increased.
- the information processing apparatus 100 determines the number of data (required number of data) required for the category "race A” to reach the target accuracy TA1 based on the measurement MR11 of the category "race A” and the prediction line LN1. It may be calculated.
- the information processing apparatus 100 may adjust the number of data in the category "Race A” based on the calculated information on the required number of data. In this case, the information processing apparatus 100 performs adjustment processing so as to increase the data of the category "Race A” by the number of required data. For example, when the data information storage unit 141 (see FIG. 4) contains data of the category “race A” that is not used for learning, the information processing apparatus 100 learns as many data as the required number of the data. It may be used for.
- the information processing device 100 may request data from an external device that provides a learning data providing service, and may acquire necessary data from the external device. For example, the information processing device 100 acquires information corresponding to the required number of data "race A” from the external device by transmitting information indicating the category "race A” and the required number of data to the external device. You may. The information processing device 100 calculates the required number of data for the categories "Race C” and “Race D” as well as the category “Race A”, and calculates the required number of data, and the data information storage unit 141 (see FIG. 4) and the outside. Data corresponding to "race C” and "race D" for the required number of data may be acquired from the device.
- the identification accuracy (accuracy) of the excess category may be brought closer to the target accuracy TA1 by reducing the number of data in the excess category.
- the information processing apparatus 100 is not limited to increasing the number of data, but by reducing the number of data and adjusting the number of data, the accuracy approaches a desired value.
- the information processing apparatus 100 can bring the identification accuracy (accuracy) of all categories closer to the target accuracy TA1 and suppress the variation of the system between the categories.
- the information processing apparatus 100 may change the model based on the predicted change in the identification accuracy.
- the information processing apparatus 100 changes the model when it is difficult to achieve the target accuracy by adjusting the number of data used for learning.
- the information processing apparatus 100 changes the model when the increase in the number of data required to achieve the target accuracy is equal to or greater than a predetermined threshold value.
- the information processing apparatus 100 has the number of data (necessary) required for the category “race C” to reach the target accuracy TA1 based on the measurement MR31 of the category “race C” and the prediction line LN3.
- the number of data NM) is calculated, and the required number of data NM and the threshold value (threshold TH) are compared.
- the information processing apparatus 100 changes the model when the required number of data NM is equal to or greater than the threshold TH as a result of comparing the required number of data NM with the threshold value TH.
- the information processing apparatus 100 may decide whether or not to change the model based on various conditions. For example, the information processing apparatus 100 may change the model when there is a category in which the target accuracy cannot be achieved. For example, the information processing apparatus 100 may change the model when there is a category in which the required number of data cannot be calculated. For example, the information processing apparatus 100 may change the model when there is a category in which the required number of data is infinite. For example, the information processing apparatus 100 may change the model when the slope of the prediction line is 0 and there is a category in which the target accuracy cannot be achieved. As described above, when it is difficult to eliminate the bias by adjusting the data, the information processing apparatus 100 can increase the possibility of eliminating the bias by changing the model itself.
- the information processing device 100 changes the model according to various aspects.
- the information processing apparatus 100 changes the model by changing the network structure of the model.
- the information processing apparatus 100 changes the model by changing the number of layers and the number of nodes of the model.
- the information processing apparatus 100 changes from the model M1 to the model M51 by changing the network structure (first network structure) of the model M1 to another network structure (second network structure).
- the information processing apparatus 100 is changed to the model M51, which has more layers and nodes than the model M1.
- the information processing apparatus 100 may select a model to be used from the model information storage unit 142 (see FIG. 5).
- the information processing apparatus 100 may select a model having the same purpose as the model M1 (for example, the model M51) among the models in the model information storage unit 142.
- the information processing device 100 is not limited to the above-mentioned change of the network structure, and the model may be changed by changing various so-called hyperparameters.
- the information processing apparatus 100 may change various hyperparameters such as a calculation algorithm (learning algorithm) such as an activation function and an optimization algorithm.
- the information processing device 100 may store information indicating the order of change in the storage unit 14 (see FIG. 3).
- the information processing apparatus 100 may store information indicating that the learning algorithm and the network structure are changed in this order. In this case, the information processing apparatus 100 may change the network structure of the model when the bias cannot be eliminated even if the learning algorithm is changed.
- FIG. 11 is a diagram showing an example of displaying the relationship between the target accuracy and the number of data.
- the information processing apparatus 100 generates accuracy information CH1 that shows the relationship between the accuracy corresponding to each category and the target accuracy as character information.
- the information processing device 100 displays the accuracy information CH1 on the display unit 13.
- the accuracy information CH1 indicates the number of data required for the accuracy corresponding to each category to reach the target accuracy as character information. For example, for the category "Race A”, it is shown that ten times as many data as the current number of data are required to achieve the target accuracy. That is, it shows that the accuracy corresponding to the category "Race A" requires 10 times as much data as the current situation in order to achieve the target accuracy.
- Information may also be displayed for categories that have achieved the target accuracy.
- categories that have achieved the target accuracy.
- information indicating that the target accuracy has already been achieved such as “target accuracy has been achieved” and current accuracy such as “current accuracy is 0.9” are shown.
- Information may be displayed.
- the information processing device 100 displays the number of data required to achieve the target accuracy based on the estimated prediction line.
- the information processing apparatus 100 can display the number of data required to achieve the target accuracy.
- the information processing apparatus 100 may draw by reducing the entire data instead of reducing a specific category. In this way, the information processing apparatus 100 displays the predicted change in identification accuracy as a graph or text.
- FIG. 12 is a diagram showing an example of a conceptual diagram of processing in an information processing system.
- the input information IN1 including the learning data set and the learning model is input to the tool TL1 that learns the model and measures the accuracy of the learned model.
- the tool TL1 is an AI bias and fairness analysis tool, and has a function used for analyzing model bias and fairness.
- the function of the tool TL1 may be realized by the acquisition unit 151, the learning unit 152, the calculation unit 153, the prediction unit 154, and the generation unit 155 of the information processing apparatus 100.
- the tool TL1 generates the analysis result OUT1 in response to the input of the input information IN1.
- the analysis result OUT1 generated by the tool TL1 in the example of FIG. 12 corresponds to the graph GR11 in FIG.
- the function of displaying the analysis result OUT1 by the tool TL1 may be realized by the display unit 13 of the information processing apparatus 100.
- the analysis result OUT1 shows an example of the information presented to the user.
- a user of an information processing device 100 such as a deep learning developer learns a deep learning-based model (such as an image recognition machine) with a data set on hand. Then, the developer executes the function realized by the present invention on the learned model.
- the information processing system 1 displays a prediction of how much more data should be added to improve the performance.
- a developer such as AI is assumed as a user of the tool TL1.
- Such user needs include obtaining a guideline for improving bias and fairness, and knowing the difficulty level of improving bias and fairness.
- the function of the tool TL1 realized by the information processing apparatus 100 it is possible to provide the user with appropriate information for the user needs as described above.
- FIG. 13 is a diagram showing a configuration example of an information processing system according to a modified example of the present disclosure.
- FIG. 14 is a diagram showing a configuration example of an information processing device according to a modified example of the present disclosure.
- the information processing system 1 includes a terminal device 10 and an information processing device 100A.
- the terminal device 10 and the information processing device 100A are communicably connected via a communication network N by wire or wirelessly.
- the information processing system 1 shown in FIG. 13 may include a plurality of terminal devices 10 and a plurality of information processing devices 100A.
- the information processing device 100A communicates with the terminal device 10 via the communication network N, and is a model based on the provision of information to the terminal device 10 and information such as parameters specified by the user via the terminal device 10. You may also study.
- the terminal device 10 is an information processing device used by the user.
- the terminal device 10 is realized by, for example, a notebook PC (Personal Computer), a desktop PC, a smartphone, a tablet terminal, a mobile phone, a PDA (Personal Digital Assistant), or the like.
- the terminal device 10 may be any terminal device as long as it can display the information provided by the information processing device 100A.
- the terminal device 10 is a client terminal.
- the terminal device 10 accepts operations by the user.
- the terminal device 10 displays the information provided by the information processing device 100A on the screen.
- the terminal device 10 transmits information such as information indicating an operation by the user to the information processing device 100A.
- the terminal device 10 transmits instruction information instructing the user to execute the learning process to the information processing device 100A.
- the terminal device 10 displays the information received from the information processing device 100A.
- the terminal device 10 displays the accuracy information received from the information processing device 100A.
- the terminal device 10 displays accuracy information indicating the measurement result and the prediction result of the accuracy of the model.
- the terminal device 10 displays a graph received from the information processing device 100A.
- the information processing device 100A realizes the same information processing as the information processing device 100 except that the information processing device 100A is different from the information processing device 100 in that it provides information to the terminal device 10 and acquires information from the terminal device 10. .
- the information processing device 100A is a server that provides a service to the terminal device 10 which is a client terminal. For example, the information processing device 100A performs a generation process for generating accuracy information based on the instruction information acquired from the terminal device 10, and transmits the generated accuracy information to the terminal device 10.
- the information processing device 100A includes a communication unit 11, a storage unit 14, and a control unit 15A.
- the communication unit 11 is connected to the communication network N (Internet or the like) by wire or wirelessly, and transmits / receives information to / from the terminal device 10 via the communication network N.
- the information processing device 100A does not have to have a function of displaying information like the information processing device 100.
- the information processing device 100A may have an input unit (for example, a keyboard, a mouse, etc.) and a display unit (for example, a liquid crystal display, etc.) used by the administrator of the information processing device 100A.
- the control unit 15A is realized by, for example, a CPU, an MPU, or the like executing a program stored in the information processing device 100A (for example, an information processing program according to the present disclosure) using a RAM or the like as a work area. Further, the control unit 15A may be realized by an integrated circuit such as an ASIC or FPGA.
- control unit 15A includes an acquisition unit 151A, a learning unit 152, a calculation unit 153, a prediction unit 154, a generation unit 155, and a transmission unit 156A, and the information described below. Realize or execute the function or action of processing.
- the internal configuration of the control unit 15A is not limited to the configuration shown in FIG. 14, and may be any other configuration as long as it is a configuration for performing information processing described later.
- the acquisition unit 151A acquires various information in the same manner as the acquisition unit 151.
- the acquisition unit 151A acquires various information from the terminal device 10.
- the acquisition unit 151A acquires the user's operation information from the terminal device 10.
- the acquisition unit 151A acquires various information from the storage unit 14.
- the transmission unit 156A provides various information in the same manner as the transmission unit 156.
- the transmission unit 156A provides various information to the terminal device 10.
- the transmission unit 156A transmits various information to the terminal device 10.
- the transmission unit 156A provides the terminal device 10 with the information generated by the generation unit 155.
- the transmission unit 156A transmits information to be displayed on the terminal device 10 to the terminal device 10.
- a device that learns a model (learning device), a device that measures accuracy using a model (measurement device), a device that predicts the accuracy of a model (prediction device), and a device that generates accuracy information (generation device).
- a device that measures accuracy using a model (measurement device), a device that predicts the accuracy of a model (prediction device), and a device that generates accuracy information (generation device) may be integrated.
- the information processing system may include an information processing device that performs measurement processing, prediction processing, and generation processing, and a learning device that performs learning processing. The above is an example, and the information processing system may be realized by various configurations.
- each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or part of them may be functionally or physically distributed / physically in arbitrary units according to various loads and usage conditions. Can be integrated and configured.
- the bias adjusting device (information processing devices 100, 100A in the embodiment) according to the present disclosure is a bias adjusting device related to a discriminative model by machine learning using learning data, and is a calculation unit (calculation in the embodiment).
- a unit 153), a prediction unit (prediction unit 154 in the embodiment), and a control unit (generation unit 155 in the embodiment) are provided.
- the calculation unit has the first identification accuracy of the identification model learned by the first learning data and the identification learned by the second learning data whose number of data is adjusted with respect to the first learning data. Calculate the second identification accuracy of the model.
- the prediction unit predicts a change in the discrimination accuracy with respect to the number of learning data based on the first discrimination accuracy and the second discrimination accuracy. Based on the predicted change in discrimination accuracy, the control unit adjusts the number of data used for learning so that the predicted change in discrimination accuracy becomes a predetermined target value, or changes the discrimination model.
- the bias adjusting device changes the discrimination accuracy with respect to the number of training data based on the first discrimination accuracy and the second discrimination accuracy of the discrimination model learned by adjusting the training data.
- the bias adjusting device can appropriately execute the processing related to the learning of the model by using the model by learning in which the data is adjusted.
- the bias adjusting device has a display unit (display unit 13 in the embodiment).
- the display unit displays the predicted change in identification accuracy as a graph or text.
- the bias adjusting device can provide appropriate information by displaying the predicted change in identification accuracy in various modes. Therefore, the bias adjusting device can appropriately execute the processing related to the learning of the model by using the model by learning in which the data is adjusted.
- the learning data is at least data related to race, gender, address, income, or educational background. This allows the bias regulator to adequately predict biases related to race, gender, address, income, or educational background.
- the information processing apparatus includes an acquisition unit (acquisition unit 151 in the embodiment) and a generation unit (generation unit 155 in the embodiment). ..
- the acquisition unit acquires learning data used for learning a model by machine learning.
- the generation unit is a model that is trained by the first accuracy of the first model, which is a model trained by the training data, and the adjusted data in which the number of training data is adjusted according to the target for which the number of data is adjusted. Based on the second accuracy of the second model, which is, accuracy information indicating the accuracy of the model is generated.
- the information processing apparatus uses the first accuracy of the first model and the second accuracy of the second model to generate accuracy information indicating the accuracy of the model, thereby generating data.
- Information on the accuracy of the model can be properly generated by adjusting. Therefore, the information processing apparatus can appropriately execute the processing related to the learning of the model by using the model by learning in which the data is adjusted.
- the generation unit generates accuracy information based on the second model trained by the adjusted data in which the number of data is reduced from the training data.
- the information processing device can appropriately generate information on the accuracy of the model by adjusting the data by generating accuracy information indicating what the accuracy will be when the number of data is reduced from the training data. it can.
- the generation unit generates accuracy information indicating the accuracy change of the model by adjusting the number of data according to the target based on the first accuracy and the second accuracy.
- the information processing apparatus can appropriately generate information on the accuracy of the model by adjusting the data by generating the accuracy information indicating the change in the accuracy of the model by adjusting the number of data according to the target.
- the generation unit generates accuracy information based on the first accuracy of the first model measured using the evaluation data and the second accuracy of the second model measured using the evaluation data. ..
- the information processing apparatus can appropriately generate information on the accuracy of the model by adjusting the data by generating accuracy information using the accuracy measured using the evaluation data.
- the generation unit generates accuracy information indicating the prediction of the accuracy change of the model when the number of data is adjusted according to the target based on the first accuracy and the second accuracy.
- the information processing apparatus appropriately generates information on the accuracy of the model by adjusting the data by generating accuracy information indicating the prediction of the accuracy change of the model when the number of data is adjusted according to the target. Can be done.
- the generation unit generates accuracy information indicating the prediction of the accuracy change of the model when the number of training data is increased.
- the information processing device appropriately generates information on the accuracy of the model by adjusting the data by generating accuracy information indicating the prediction of the accuracy change of the model when the number of data for training data is increased. Can be done.
- the generation unit generates accuracy information including a prediction line of the accuracy of the model when the number of training data is increased.
- the information processing device can appropriately generate information on the accuracy of the model by adjusting the data by generating accuracy information including a prediction line of the accuracy of the model when the number of data for training is increased. Can be done.
- the generation unit generates accuracy information regarding the category based on the second accuracy of the second model learned by the adjusted data in which the number of data for training data is adjusted according to the category indicating the classification related to the target. ..
- the information processing apparatus can appropriately generate information on the accuracy of the model by adjusting the data by generating the accuracy information on the category.
- the generation unit is based on the second accuracy of the second model trained by the adjusted data in which the number of training data is adjusted according to one category among the plurality of target categories. Generate model accuracy information that indicates the accuracy of the model for a category.
- the information processing apparatus can appropriately generate information on the accuracy of the model by adjusting the data by generating the accuracy information of the model indicating the accuracy of the model for one of the plurality of target categories. it can.
- the generation unit generates accuracy information based on the second accuracy of the second model learned by the adjusted data in which the number of data corresponding to one category is adjusted among the training data.
- the information processing device adjusts the number of data corresponding to one category of the training data to measure the accuracy and generates accuracy information, so that the information on the accuracy of the model is appropriated by adjusting the data. Can be generated in.
- the acquisition unit acquires learning data including data corresponding to each of a plurality of categories.
- the generation unit generates accuracy information based on the second accuracy of the second model learned by the adjusted data in which the number of data corresponding to one category is reduced among the training data.
- the information processing device reduces the number of data corresponding to one category of the training data, measures the accuracy, and generates accuracy information, so that the information on the accuracy of the model can be appropriately adjusted by adjusting the data. Can be generated.
- the generation unit generates accuracy information based on the first accuracy of the first model for one category and the second accuracy of the second model for one category.
- the information processing apparatus uses the first accuracy of the first model for one category and the second accuracy of the second model for one category of the training data to obtain the accuracy information of one category. By generating, information on the accuracy of the model can be appropriately generated by adjusting the data.
- the generation unit has the first accuracy of the first model measured using the evaluation data corresponding to one category and the second accuracy of the second model measured using the evaluation data corresponding to one category. 2 Accuracy information is generated based on the accuracy.
- the information processing device can appropriately generate information on the accuracy of the model by adjusting the data by generating accuracy information using the accuracy measured using the evaluation data corresponding to one category. it can.
- the generation unit has a plurality of categories based on a plurality of second precisions of a plurality of second models trained by each of the plurality of adjusted data in which the number of training data is adjusted for each of the plurality of categories. Generate accuracy information indicating the accuracy of the model for each of.
- the information processing device can generate accuracy information indicating the accuracy of the model for each of a plurality of categories, so that comparisons can be made between the categories. Therefore, information on the accuracy of the model can be appropriately obtained by adjusting the data. Can be generated.
- the generation unit is based on the plurality of first precisions of the first model corresponding to each of the plurality of categories and the plurality of second precisions of the plurality of second models corresponding to each of the plurality of categories. Generate information.
- the information processing device can generate accuracy information of each category by using the first accuracy and the second accuracy of each of the plurality of categories, so that the comparison between the categories becomes possible.
- the adjustment can properly generate information about the accuracy of the model.
- the generation unit is based on a plurality of first precisions of the first model measured using evaluation data corresponding to each of the plurality of categories and a plurality of second precisions corresponding to each of the plurality of categories. And generate accuracy information.
- the information processing apparatus appropriately generates information on the accuracy of the model by adjusting the data by generating accuracy information using the accuracy measured using the evaluation data corresponding to each of the plurality of categories. be able to.
- the generation unit determines the relationship between the plurality of categories regarding the accuracy of the model based on the plurality of first precisions corresponding to each of the plurality of categories and the plurality of second precisions corresponding to each of the plurality of categories. Generate the accuracy information shown.
- the information processing device can grasp the state of bias and fairness between categories by generating accuracy information indicating the relationship between a plurality of categories regarding the accuracy of the model. By adjusting the data, information on the accuracy of the model can be appropriately generated.
- the information processing device has a display unit (display unit 13 in the embodiment).
- the display unit displays accuracy information.
- the information processing apparatus can provide appropriate information regarding the accuracy of the model.
- FIG. 15 is a hardware configuration diagram showing an example of a computer 1000 that realizes the functions of information processing devices such as the information processing devices 100 and 100A.
- the computer 1000 includes a CPU 1100, a RAM 1200, a ROM (Read Only Memory) 1300, an HDD (Hard Disk Drive) 1400, a communication interface 1500, and an input / output interface 1600. Each part of the computer 1000 is connected by a bus 1050.
- the CPU 1100 operates based on the program stored in the ROM 1300 or the HDD 1400, and controls each part. For example, the CPU 1100 expands the program stored in the ROM 1300 or the HDD 1400 into the RAM 1200 and executes processing corresponding to various programs.
- the ROM 1300 stores a boot program such as a BIOS (Basic Input Output System) executed by the CPU 1100 when the computer 1000 is started, a program that depends on the hardware of the computer 1000, and the like.
- BIOS Basic Input Output System
- the HDD 1400 is a computer-readable recording medium that non-temporarily records a program executed by the CPU 1100 and data used by the program.
- the HDD 1400 is a recording medium for recording an information processing program according to the present disclosure, which is an example of program data 1450.
- the communication interface 1500 is an interface for the computer 1000 to connect to an external network 1550 (for example, the Internet).
- the CPU 1100 receives data from another device or transmits data generated by the CPU 1100 to another device via the communication interface 1500.
- the input / output interface 1600 is an interface for connecting the input / output device 1650 and the computer 1000.
- the CPU 1100 receives data from an input device such as a keyboard or mouse via the input / output interface 1600. Further, the CPU 1100 transmits data to an output device such as a display, a speaker, or a printer via the input / output interface 1600. Further, the input / output interface 1600 may function as a media interface for reading a program or the like recorded on a predetermined recording medium (media).
- the media is, for example, an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.
- an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk)
- a magneto-optical recording medium such as an MO (Magneto-Optical disk)
- a tape medium such as a magnetic tape
- magnetic recording medium such as a magnetic tape
- semiconductor memory for example, an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.
- the CPU 1100 of the computer 1000 realizes the functions of the control unit 15 and the like by executing the information processing program loaded on the RAM 1200.
- the information processing program according to the present disclosure and the data in the storage unit 14 are stored in the HDD 1400.
- the CPU 1100 reads the program data 1450 from the HDD 1400 and executes the program, but as another example, these programs may be acquired from another device via the external network 1550.
- the present technology can also have the following configurations.
- (1) In a bias adjustment device for a discriminative model by machine learning using training data, The first identification accuracy of the identification model learned by the first learning data and the identification model learned by the second learning data whose number of data is adjusted with respect to the first learning data. And the calculation unit that calculates the second identification accuracy of A prediction unit that predicts a change in the identification accuracy with respect to the number of learning data based on the first identification accuracy and the second identification accuracy.
- a control unit that adjusts the number of data used for the learning or changes the discrimination model so that the predicted change in the discrimination accuracy becomes a predetermined target value based on the change in the predicted discrimination accuracy.
- Bias adjustment device equipped with With a control unit that adjusts the number of data used for the learning or changes the discrimination model so that the predicted change in the discrimination accuracy becomes a predetermined target value based on the change in the predicted discrimination accuracy.
- a display unit that displays the predicted change in identification accuracy as a graph or text.
- (4) An acquisition unit that acquires learning data used for learning a model by machine learning, The model trained by the first accuracy of the first model, which is the model trained by the training data, and the adjusted data in which the number of data of the training data is adjusted according to the target for which the number of data is adjusted.
- a generation unit that generates accuracy information indicating the accuracy of the model based on the second accuracy of the second model, which is Information processing device equipped with.
- the generator The information processing apparatus according to (4), wherein the accuracy information is generated based on the second model learned by the adjusted data in which the number of data is reduced from the training data.
- the generator The information according to (4) or (5) above, which generates the accuracy information indicating the accuracy change of the model by adjusting the number of data according to the object based on the first accuracy and the second accuracy. Processing equipment.
- the generator The accuracy information is generated based on the first accuracy of the first model measured using the evaluation data and the second accuracy of the second model measured using the evaluation data.
- the information processing apparatus according to any one of (4) to (6) above.
- the generator Based on the first accuracy and the second accuracy, the accuracy information indicating the prediction of the accuracy change of the model when the number of data is adjusted according to the target is generated (4) to (7).
- the information processing apparatus according to any one of the above items.
- the generator The information processing apparatus according to any one of (4) to (8), which generates the accuracy information indicating the prediction of the accuracy change of the model when the number of data for learning data is increased.
- the generator The information processing apparatus according to any one of (4) to (9), which generates the accuracy information including a prediction line of the accuracy of the model when the number of data for learning data is increased.
- the generator The accuracy information regarding the category is generated based on the second accuracy of the second model trained by the adjusted data in which the number of data of the training data is adjusted according to the category indicating the classification related to the target.
- the information processing apparatus according to any one of (4) to (10) above.
- the generator Based on the second accuracy of the second model trained by the adjusted data in which the number of data of the training data is adjusted according to one category among the plurality of target categories, the one The information processing apparatus according to (11), which generates the accuracy information of the model indicating the accuracy of the model with respect to the category.
- the generator Among the training data the accuracy information is generated based on the second accuracy of the second model trained by the adjusted data in which the number of data corresponding to the one category is adjusted. ).
- the acquisition unit The learning data including the data corresponding to each of the plurality of categories is acquired, and the learning data is acquired.
- the generator Among the training data, the accuracy information is generated based on the second accuracy of the second model trained by the adjusted data in which the number of data corresponding to the one category is reduced. ) Or (13).
- the generator The accuracy information is generated based on the first accuracy of the first model for the one category and the second accuracy of the second model for the one category.
- the information processing device according to any one of the items.
- the generator The first accuracy of the first model measured using the evaluation data corresponding to the one category and the first accuracy of the second model measured using the evaluation data corresponding to the one category. 2.
- the information processing apparatus according to (15), which generates the accuracy information based on the accuracy.
- the generator For each of the plurality of categories, based on the plurality of second precisions of the plurality of second models trained by each of the plurality of adjusted data in which the number of data of the training data is adjusted for each of the plurality of categories.
- the information processing apparatus according to any one of (12) to (16), which generates the accuracy information indicating the accuracy of the model.
- the generator The accuracy is based on the plurality of first precisions of the first model corresponding to each of the plurality of categories and the plurality of second precisions of the plurality of second models corresponding to each of the plurality of categories.
- the information processing apparatus according to (17) above, which generates information.
- the generator Based on the plurality of first accuracy of the first model measured using the evaluation data corresponding to each of the plurality of categories and the plurality of second accuracy corresponding to each of the plurality of categories. , The information processing apparatus according to (18) above, which generates the accuracy information. (20) The generator Based on the plurality of first precisions corresponding to each of the plurality of categories and the plurality of second precisions corresponding to each of the plurality of categories, the relationship between the plurality of categories regarding the accuracy of the model is determined. The information processing apparatus according to (18) or (19), which generates the accuracy information shown. (21) The generator The information processing apparatus according to (20), which generates the accuracy information indicating the bias of the accuracy of the model in the plurality of categories.
- the generator The information processing apparatus according to (20) or (21), which generates the accuracy information indicating the difficulty of improving the accuracy of the model in each of the plurality of categories.
- (23) Learning unit that learns the model The information processing apparatus according to any one of (4) to (22) above.
- (25) The display unit The information processing device according to (24), which displays the accuracy information as characters.
- the display unit The information processing apparatus according to (24) or (25), which displays the accuracy information as a numerical value.
- the display unit The information processing apparatus according to any one of (24) to (26), which displays the accuracy information as a diagram.
- the display unit The information processing apparatus according to any one of (24) to (27), which displays the accuracy information as a graph.
- the display unit The information processing apparatus according to (28), which displays the graph in which the first axis is the accuracy and the second axis is the number of data.
- the acquisition unit Obtain the target accuracy that indicates the accuracy target of the model,
- the display unit The information processing apparatus according to any one of (24) to (29), which displays information indicating the relationship between the accuracy of the model and the target accuracy.
- the acquisition unit The information processing apparatus according to (30) or (31), which acquires the target accuracy received by the input unit.
- the generator Generate the accuracy information indicating the plurality of accuracy of the model corresponding to the plurality of indexes, and generate the accuracy information.
- the display unit The information processing apparatus according to any one of (24) to (32), which displays the plurality of precisions in a switchable manner.
- the display unit The information processing apparatus according to (33), which displays one of the plurality of precisions.
- the acquisition unit The information processing apparatus according to (34) above, which acquires designated information that specifies the accuracy of the one.
- the display unit The information processing apparatus according to (34) or (35), which displays the accuracy of the one specified by the user.
- (37) Acquire learning data used for learning a model by machine learning, The model trained by the first accuracy of the first model, which is the model trained by the training data, and the adjusted data in which the number of data of the training data is adjusted according to the target for which the number of data is adjusted. Based on the second accuracy of the second model, which is, the accuracy information indicating the accuracy of the model is generated.
- An information processing method that executes processing.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本開示に係るバイアス調整装置は、学習用データを用いた機械学習による識別モデルに関するバイアス調整装置であり、第1の学習用データで学習された識別モデルの第1の識別精度と、第1の学習用データに対してデータ数を調整された第2の学習用データで学習された識別モデルの第2の識別精度を算出する演算部と、第1の識別精度と第2の識別精度に基づいて、学習用データの数に対する識別精度の変化を予測する予測部と、予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように学習に用いるデータ数を調整する、又は、識別モデルを変更する制御部と、を備える。
Description
本開示は、バイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラムに関する。
様々な技術分野において、機械学習を利用した情報処理が活用されており、ニューラルネットワーク等のモデルを学習する技術が提供されてきている。例えば、データから認識対象を認識する認識器(モデル)を学習する技術が提供されている(例えば、特許文献1参照)。
従来技術によれば、学習により生成した認識器による認識対象の精度を測定する。
しかしながら、従来技術は、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができるとは限らない。例えば、従来技術は、認識器による認識対象の精度を測定しているに過ぎず、例えばモデルの精度とデータとの関係等を示すような情報を生成すること、またはデータの調整により所望のモデルの学習を可能にすること等は難しい。そのため、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることが望まれている。
そこで、本開示では、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができるバイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラムを提案する。
上記の課題を解決するために、本開示に係る一形態のバイアス調整装置は、学習用データを用いた機械学習による識別モデルに関するバイアス調整装置であり、第1の学習用データで学習された前記識別モデルの第1の識別精度と、前記第1の学習用データに対してデータ数を調整された第2の学習用データで学習された前記識別モデルの第2の識別精度を算出する演算部と、前記第1の識別精度と前記第2の識別精度に基づいて、前記学習用データの数に対する識別精度の変化を予測する予測部と、前記予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように前記学習に用いるデータ数を調整する、又は、前記識別モデルを変更する制御部と、を備える。
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、この実施形態により本願にかかるバイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
以下に示す項目順序に従って本開示を説明する。
1.実施形態
1-1.本開示の実施形態に係る情報処理の概要
1-1-1.情報処理の効果及び想定等
1-1-2.精度例及び複数の精度
1-2.実施形態に係る情報処理装置の構成
1-2-1.モデル例
1-3.実施形態に係る情報処理の手順
1-4.表示例
1-5.目標精度(目標値)
1-5-1.目標精度(目標値)とデータ数の関係
1-5-2.目標精度(目標値)に関する表示例
1-6.情報処理システムの処理の概念図
2.その他の実施形態
2-1.変形例
2-2.その他の構成例
2-3.その他
3.本開示に係る効果
4.ハードウェア構成
1.実施形態
1-1.本開示の実施形態に係る情報処理の概要
1-1-1.情報処理の効果及び想定等
1-1-2.精度例及び複数の精度
1-2.実施形態に係る情報処理装置の構成
1-2-1.モデル例
1-3.実施形態に係る情報処理の手順
1-4.表示例
1-5.目標精度(目標値)
1-5-1.目標精度(目標値)とデータ数の関係
1-5-2.目標精度(目標値)に関する表示例
1-6.情報処理システムの処理の概念図
2.その他の実施形態
2-1.変形例
2-2.その他の構成例
2-3.その他
3.本開示に係る効果
4.ハードウェア構成
[1.実施形態]
[1-1.本開示の実施形態に係る情報処理の概要]
図1及び図2は、本開示の実施形態に係る情報処理の一例を示す図である。具体的には、図1は、4つのカテゴリを対象とした情報処理の一例を示す図である。図2は、1つのカテゴリを対象とした情報処理の手順の一例を示す図である。本開示の実施形態に係る情報処理は、図3に示す情報処理装置100によって実現される。図3に示す情報処理装置100は、バイアス調整装置の一例である。
[1-1.本開示の実施形態に係る情報処理の概要]
図1及び図2は、本開示の実施形態に係る情報処理の一例を示す図である。具体的には、図1は、4つのカテゴリを対象とした情報処理の一例を示す図である。図2は、1つのカテゴリを対象とした情報処理の手順の一例を示す図である。本開示の実施形態に係る情報処理は、図3に示す情報処理装置100によって実現される。図3に示す情報処理装置100は、バイアス調整装置の一例である。
情報処理装置100は、実施形態に係る情報処理を実行する情報処理装置である。例えば、情報処理装置100は、実施形態に係るバイアス調整処理を実行するバイアス調整装置である。なお、情報処理装置100によるバイアス調整処理の詳細は、図10において詳述する。情報処理装置100は、学習に用いるデータの数(データ数)を調整しながら、識別モデル(以下、単に「モデル」ともいう)を学習し、学習したモデルの識別精度(以下、単に「精度」ともいう)に関する精度情報を生成する。情報処理装置100は、データ数を調整する対象に応じて学習用データのデータ数を調整する。例えば、学習用データは、少なくとも、人種、性別、住所、収入、又は、学歴に関するデータである。以下では、データ数を調整する前の学習用データにより学習されたモデルを「第1モデル」と称し、学習用データのデータ数が調整されたデータ(以下「調整後データ」ともいう)により学習されたモデルを「第2モデル」と称する場合がある。以下では、調整前の学習用データを「第1の学習用データ」と記載し、調整後の学習用データ(調整後データ)を「第2の学習用データ」と記載する場合がある。また、第1の学習用データで学習されたモデル(識別モデル)の識別精度を「第1の識別精度」と記載し、第2の学習用データで学習されたモデル(識別モデル)の識別精度を「第2の識別精度」と記載する場合がある。図1及び図2の例では、情報処理装置100は、学習用データ(以下「データセット」ともいう)を用いて第1モデルを学習し、データセットから対象に応じてデータ数を減らした調整後データを用いて第2モデルを学習する場合を一例として説明する。なお、図1及び図2は一例であり、データ数の調整は、データ数を減らすことに限らず、所望の精度情報を生成可能であれば、データ数を増やすこと等どのような調整であってもよい。
また、図1及び図2の例では、情報処理装置100は、人種を対象として、人種を区分する「人種A」、「人種B」、「人種C」、「人種D」の4つのカテゴリを一例とした場合の処理について説明する。なお、図1及び図2は一例であり、人種は5つ以上のカテゴリに区分されてもよい。また、対象は人種に限らず、性別や年齢や地域等、どのような対象であってもよい。例えば、対象が性別である場合、「男性」や「女性」といったカテゴリに区分される。対象は、2つ以上のカテゴリに区分されるものであれば、どのようなものであってもよい。
図1の例では、情報処理装置100は、データ情報記憶部141(図4参照)に記憶されたデータセットDS1を用いて、画像認識に用いるモデルを学習する。データセットDS1には、モデルの入力となるデータと、そのデータが入力された場合に期待するモデルの出力(以下「正解情報」ともいう)のペアが多数含まれる。例えば、データセットDS1には、データDT1~DT8等の複数のデータと各データに対応する正解情報とが含まれる。なお、データセットDS1には、「人種A」、「人種B」、「人種C」、「人種D」の4つのカテゴリのいずれにも該当しないデータが含まれてもよい。
図1の例では、情報処理装置100は、モデル情報記憶部142(図5参照)に記憶されたモデルM1に対応するネットワーク(ニューラルネットワーク等)の構造を設計する。情報処理装置100は、画像認識に用いるモデルM1のネットワークの構造(ネットワーク構造)を設計する。例えば、情報処理装置100は、予め記憶部14(図3参照)に記憶された各用途に対応するネットワークの構造に関する情報を基に、画像認識に用いるモデルM1のネットワークの構造を生成してもよい。例えば、情報処理装置100は、画像認識に用いるモデルM1のネットワークの構造情報を、外部装置から取得してもよい。
データセットDS1には、複数の画像と、各画像の認識結果として期待される出力(正解情報)とのペアが含まれる。例えば、データセットDS1には、人種Aの男性が撮像された画像であるデータDT1と、データDT1に対応する正解情報とのペアが含まれる。また、例えば、データセットDS1には、人種Bの女性が撮像された画像であるデータDT2と、データDT2に対応する正解情報とのペアが含まれる。なお、データDT1、DT2等の正解情報は、「人種A」、「人種B」といったカテゴリ自体に限らず、画像に含まれる事象や物体等の認識結果であれば、どのような正解情報(正解ラベル)であってもよい。例えば、データDT1は「人種A」の人が撮像された画像であり、正解情報は「卒業式」といった「人種A」とは異なる正解情報(正解ラベル)であってもよい。
情報処理装置100は、用意したデータセットで、設計したニューラルネットワークを学習する。情報処理装置100は、データセットDS1を用いて、モデルM1のネットワークを学習する。例えば、情報処理装置100は、データセットDS1を用いて、モデルM1のネットワークの重み等のパラメータを学習する。情報処理装置100は、モデルM1のネットワークのパラメータを学習し、モデルM1に対応する第1モデルや第2モデルを生成する。例えば、第1モデルや第2モデルは、同様のネットワーク構造を有し、重み等のパラメータが異なるモデルである。例えば、モデルM1に対応する第1モデルや第2モデルは、モデルM1のネットワーク構造を有し、重み等のパラメータが異なるモデルである。
また、情報処理装置100は、生成した第1モデルや第2モデルの性能(「精度」ともいう)を所定の評価用データを用いて測定する。例えば、情報処理装置100は、学習用データとは別途用意された評価用データを用いて、第1モデルや第2モデルの精度(精度指標)を測定する。例えば、情報処理装置100は、学習用データと異なる別途固定の評価用データで第1モデルや第2モデルを評価する。情報処理装置100は、データセットにより学習した第1モデルの精度(「第1精度」ともいう)や調整後データにより学習した第2モデルの精度(「第2精度」ともいう)に基づいて、モデルの精度を示す精度情報を生成する。ここでいう精度は、種々の指標であってもよく、以下では正確度(Accuracy)を一例として説明するが、精度についての詳細は後述する。
情報処理装置100は、各カテゴリに対応する評価用データを用いて、各カテゴリに対するモデルの精度を測定する。例えば、情報処理装置100は、カテゴリ「人種A」に対応する精度の測定には、カテゴリ「人種A」に対応する評価用データ(「人種A評価用データ」ともいう)を用いる。人種A評価用データには、カテゴリ「人種A」に対応するデータと、そのデータの正解情報とのペアが多数含まれる。また、情報処理装置100は、カテゴリ「人種B」に対応する精度の測定には、カテゴリ「人種B」に対応する評価用データ(「人種B評価用データ」ともいう)を用いる。人種B評価用データには、カテゴリ「人種B」に対応するデータと、そのデータの正解情報とのペアが多数含まれる。
また、情報処理装置100は、カテゴリ「人種C」に対応する精度の測定には、カテゴリ「人種C」に対応する評価用データ(「人種C評価用データ」ともいう)を用いる。人種C評価用データには、カテゴリ「人種C」に対応するデータと、そのデータの正解情報とのペアが多数含まれる。また、情報処理装置100は、カテゴリ「人種D」に対応する精度の測定には、カテゴリ「人種D」に対応する評価用データ(「人種D評価用データ」ともいう)を用いる。人種D評価用データには、カテゴリ「人種D」に対応するデータと、そのデータの正解情報とのペアが多数含まれる。なお、上記は一例であり、評価用データは、上記に限らず所望の精度評価(測定)が可能であれば、例えば共通の評価用データを用いる等、どのようなデータであってもよい。
情報処理装置100は、各カテゴリに対応するモデルや評価用情報を用いて、グラフGR11に示すような精度情報を生成する。グラフGR11中の実線で示す円である測定MR11~MR13や予測線LN1がカテゴリ「人種A」に対応するモデルの精度を示す情報に対応する。また、グラフGR11中の点線で示す円である測定MR21~MR23や予測線LN2がカテゴリ「人種B」に対応するモデルの精度を示す情報に対応する。また、グラフGR11中の一点鎖線で示す円である測定MR31~MR33や予測線LN3がカテゴリ「人種C」に対応するモデルの精度を示す情報に対応する。また、グラフGR11中の二点鎖線で示す円である測定MR41~MR43や予測線LN4がカテゴリ「人種D」に対応するモデルの精度を示す情報に対応する。なお、情報処理装置100は、各カテゴリの情報を色により識別可能にしてもよい。例えば、情報処理装置100は、カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の4つのカテゴリに対応する情報のそれぞれを、青、緑、黄色、赤といった異なる色で示す情報を生成してもよい。
ここから、図2に示すカテゴリ「人種A」を対象とする処理を基に、各カテゴリを対象とする処理を具体的に説明する。まず、情報処理装置100は、データセットDS1を対象として画像認識に用いるモデルM1の第1モデルを学習する。グラフGR1中の測定MR11に対応する横軸「log(データ数)」の位置がその時点での学習に用いているカテゴリ「人種A」に対応するデータ数(現状データ数)を示す。データセットDS1には、測定MR11に対応する横軸「log(データ数)」の位置に対応するデータ数のカテゴリ「人種A」のデータが含まれることを示す。なお、グラフの横軸は、対数(log)に限らず、種々のスケール(目盛)であってもよい。
そして、情報処理装置100は、学習した第1モデルについて、カテゴリ「人種A」に対応する精度を測定する(ステップS11)。情報処理装置100は、第1モデルについて、人種A評価用データを用いて、カテゴリ「人種A」に対応する精度を測定する。情報処理装置100は、グラフGR1中の測定MR11に示すような測定結果を得る。情報処理装置100は、測定精度情報INF1やグラフGR1に示すように、第1モデルについて、カテゴリ「人種A」に対応する精度を「VL1」であると測定する。すなわち、情報処理装置100は、データセットDS1全体を用いて学習したモデル(第1モデル)の場合、カテゴリ「人種A」に対応する精度を「VL1」であると測定する。なお、以下では、精度を「VL1」、「VL2」等の抽象的な符号で示すが、精度が具体的な数値であるものとする。
そして、情報処理装置100は、データ数を調整する(ステップS12)。情報処理装置100は、データセットDS1のうち、カテゴリ「人種A」に対応するデータ数を減らす。例えば、情報処理装置100は、データセットDS1に含まれるカテゴリ「人種A」に対応するデータ数を半分(50%)に減らす。なお、情報処理装置100は、半分に限らず、種々の基準を基にデータ数を調整してもよい。例えば、情報処理装置100は、10%ずつ減らしてもよい。情報処理装置100は、データセットDS1に含まれるカテゴリ「人種A」に対応するデータ数が「10000」である場合、カテゴリ「人種A」に対応するデータ数を「5000」に減らす。例えば、情報処理装置100は、ランダムにカテゴリ「人種A」に対応するデータを選択し、カテゴリ「人種A」に対応するデータ数を減らす。これにより、情報処理装置100は、データ数が調整された調整後データセットAS1を生成する。
そして、情報処理装置100は、調整後データセットAS1を対象として画像認識に用いるモデルM1の第2モデルを学習する。情報処理装置100は、データセットDS1からカテゴリ「人種A」に対応するデータが減らされた調整後データセットAS1を対象として画像認識に用いるモデルM1の第2モデルを学習する。
そして、情報処理装置100は、学習した第2モデルについて、カテゴリ「人種A」に対応する精度を測定する(ステップS13)。情報処理装置100は、第2モデルについて、人種A評価用データを用いて、カテゴリ「人種A」に対応する精度を測定する。情報処理装置100は、グラフGR2中の測定MR12に示すような測定結果を得る。情報処理装置100は、測定精度情報INF2やグラフGR2に示すように、第2モデルについて、カテゴリ「人種A」に対応する精度を「VL2」であると測定する。すなわち、情報処理装置100は、調整後データセットAS1を用いて学習したモデル(第2モデル)の場合、カテゴリ「人種A」に対応する精度を「VL2」であると測定する。
そして、情報処理装置100は、データ数を調整する(ステップS14)。例えば、情報処理装置100は、所定の条件を満たすまでデータ数を調整する。例えば、情報処理装置100は、所定の閾値未満になるまでデータ数を減らす。例えば、情報処理装置100は、対象とするカテゴリのデータ数が所定の閾値未満になった場合、そのカテゴリを対象とする測定処理を終了する。なお、情報処理装置100は、上記に限らず種々の条件に基づいて、測定処理を終了してもよい。例えば、情報処理装置100は、後述する予測線を描くに足りる測定(プロット)ができた場合に、そのカテゴリを対象とする測定処理を終了してもよい。
図2の例では、情報処理装置100は、調整後データセットAS1のうち、カテゴリ「人種A」に対応するデータ数を減らす。例えば、情報処理装置100は、調整後データセットAS1に含まれるカテゴリ「人種A」に対応するデータ数を半分に減らす。情報処理装置100は、調整後データセットAS1に含まれるカテゴリ「人種A」に対応するデータ数が「5000」である場合、カテゴリ「人種A」に対応するデータ数を「2500」に減らす。これにより、情報処理装置100は、調整後データセットAS1からデータ数がさらに調整された調整後データセットAS2を生成する。
そして、情報処理装置100は、調整後データセットAS2を対象として画像認識に用いるモデルM1の第2モデルを学習する。なお、以下では、調整後データセットAS1により学習された第2モデルと区別して説明するために、調整後データセットAS2により学習された第2モデルを「第3モデル」ともいう。情報処理装置100は、調整後データセットAS1からカテゴリ「人種A」に対応するデータがさらに減らされた調整後データセットAS2を対象として画像認識に用いるモデルM1の第3モデルを学習する。
そして、情報処理装置100は、学習した第3モデルについて、カテゴリ「人種A」に対応する精度を測定する(ステップS15)。情報処理装置100は、第3モデルについて、人種A評価用データを用いて、カテゴリ「人種A」に対応する精度を測定する。情報処理装置100は、グラフGR3中の測定MR13に示すような測定結果を得る。情報処理装置100は、測定精度情報INF3やグラフGR3に示すように、第3モデルについて、カテゴリ「人種A」に対応する精度を「VL3」であると測定する。すなわち、情報処理装置100は、調整後データセットAS2を用いて学習したモデル(第3モデル)の場合、カテゴリ「人種A」に対応する精度を「VL3」であると測定する。図2の例では、情報処理装置100は、所定の条件を満たしたと判定し、データ数を調整し、学習したモデルの精度を測定する処理を終了する。例えば、情報処理装置100は、所定の条件を満たしたと判定し、データ数を調整し、学習したモデルの精度を測定する処理を終了する。
そして、情報処理装置100は、モデルの精度変化を予測する(ステップS16)。情報処理装置100は、測定MR11~測定MR13に示す情報を基にモデルの精度変化を予測する。情報処理装置100は、カテゴリ「人種A」に対応するモデルの精度の予測する関数を導出する。情報処理装置100は、予測精度情報FCI1に示すように、カテゴリ「人種A」に対応するモデルの精度の予測線LN1に対応する関数FC1を導出する。このように、情報処理装置100は、学習用データのデータ数を増やした場合のカテゴリ「人種A」に対応するモデルの精度変化の予測を示す予測線LN1を生成する。
例えば、情報処理装置100は、グラフGR4に示すように、測定MR11~測定MR13に対応する点を通る線(予測線LN1)に対応する関数を導出する。情報処理装置100は、フィッティングに関する種々の技術を適宜用いて、予測線LN1に対応する関数FC1を生成してもよい。情報処理装置100は、線形予想等により、予測線LN1に対応する関数FC1を生成してもよい。例えば、情報処理装置100は、最小二乗法等の種々の技術を適宜用いて、予測線LN1に対応する関数FC1を導出してもよい。また、情報処理装置100は、機械学習に関する技術を用いて、予測線LN1に対応する関数FC1を導出してもよい。なお、情報処理装置100が導出する関数FC1は、線形関数であってもよいし、非線形関数であってもよい。
このように、情報処理装置100は、得られたデータ数と(精度)指標の関係から、データを増やした場合の指標の改善幅を予測する。そして、情報処理装置100は、評価結果(測定結果)、予測結果のそれぞれについて、横軸をデータ数、縦軸を(精度)指標とし、グラフを生成する。例えば、情報処理装置100は、図1に示すグラフGR11を生成し、表示する。情報処理装置100は、カテゴリ「人種A」に対応するデータを増やした場合の精度の予測線LN1を表示する。
上述した処理により、情報処理装置100は、カテゴリ「人種A」に対応する精度情報を生成する。具体的には、情報処理装置100は、カテゴリ「人種A」について、グラフGR4に示すように、測定した精度や予測した精度を含む精度情報を生成する。
図1に戻って、説明を続ける。情報処理装置100は、カテゴリ「人種A」を対象とした図2に示す処理と同様に、他のカテゴリ「人種B」、「人種C」、「人種D」についても処理を行うことにより、グラフGR11に示すような、4つのカテゴリについて測定した精度や予測した精度を含む精度情報を生成する。
例えば、情報処理装置100は、カテゴリ「人種B」についても、カテゴリ「人種A」を対象とした図2に示す処理と同様に処理を行う。情報処理装置100は、データセットDS1を対象として画像認識に用いるモデルM1の第1モデルを学習する。グラフGR11中の測定MR21に対応する横軸「log(データ数)」の位置がその時点での学習に用いているカテゴリ「人種B」に対応するデータ数(現状データ数)を示す。データセットDS1には、測定MR21に対応する横軸「log(データ数)」の位置に対応するデータ数のカテゴリ「人種B」のデータが含まれることを示す。
情報処理装置100は、第1モデルについて、人種B評価用データを用いて、カテゴリ「人種B」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR21に示すような測定結果を得る。
そして、情報処理装置100は、データセットDS1のうち、カテゴリ「人種B」に対応するデータ数を減らして、第2モデルを学習する。情報処理装置100は、第2モデルについて、人種B評価用データを用いて、カテゴリ「人種B」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR22に示すような測定結果を得る。そして、情報処理装置100は、測定MR22の測定時点からカテゴリ「人種B」に対応するデータ数をさらに減らして、第2モデル(第3モデル)を学習する。情報処理装置100は、第3モデルについて、人種B評価用データを用いて、カテゴリ「人種B」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR23に示すような測定結果を得る。
そして、情報処理装置100は、測定MR21~測定MR23に示す情報を基にモデルの精度変化を予測する。情報処理装置100は、カテゴリ「人種B」に対応するモデルの精度の予測する予測線LN2を導出する。
また、情報処理装置100は、データセットDS1を対象として画像認識に用いるモデルM1の第1モデルを学習する。グラフGR11中の測定MR31に対応する横軸「log(データ数)」の位置がその時点での学習に用いているカテゴリ「人種C」に対応するデータ数(現状データ数)を示す。データセットDS1には、測定MR31に対応する横軸「log(データ数)」の位置に対応するデータ数のカテゴリ「人種C」のデータが含まれることを示す。
情報処理装置100は、第1モデルについて、人種C評価用データを用いて、カテゴリ「人種C」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR31に示すような測定結果を得る。
そして、情報処理装置100は、データセットDS1のうち、カテゴリ「人種C」に対応するデータ数を減らして、第2モデルを学習する。情報処理装置100は、第2モデルについて、人種C評価用データを用いて、カテゴリ「人種C」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR32に示すような測定結果を得る。そして、情報処理装置100は、測定MR32の測定時点からカテゴリ「人種C」に対応するデータ数をさらに減らして、第2モデル(第3モデル)を学習する。情報処理装置100は、第3モデルについて、人種C評価用データを用いて、カテゴリ「人種C」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR33に示すような測定結果を得る。
そして、情報処理装置100は、測定MR31~測定MR33に示す情報を基にモデルの精度変化を予測する。情報処理装置100は、カテゴリ「人種C」に対応するモデルの精度の予測する予測線LN3を導出する。
また、情報処理装置100は、データセットDS1を対象として画像認識に用いるモデルM1の第1モデルを学習する。なお、情報処理装置100は、4つのカテゴリ全てについて、共通の第1モデルを用いてもよい。グラフGR11中の測定MR41に対応する横軸「log(データ数)」の位置がその時点での学習に用いているカテゴリ「人種D」に対応するデータ数(現状データ数)を示す。データセットDS1には、測定MR41に対応する横軸「log(データ数)」の位置に対応するデータ数のカテゴリ「人種D」のデータが含まれることを示す。
情報処理装置100は、第1モデルについて、人種D評価用データを用いて、カテゴリ「人種D」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR41に示すような測定結果を得る。
そして、情報処理装置100は、データセットDS1のうち、カテゴリ「人種D」に対応するデータ数を減らして、第2モデルを学習する。情報処理装置100は、第2モデルについて、人種D評価用データを用いて、カテゴリ「人種D」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR42に示すような測定結果を得る。そして、情報処理装置100は、測定MR42の測定時点からカテゴリ「人種D」に対応するデータ数をさらに減らして、第2モデル(第3モデル)を学習する。情報処理装置100は、第3モデルについて、人種D評価用データを用いて、カテゴリ「人種D」に対応する精度を測定する。情報処理装置100は、グラフGR11中の測定MR43に示すような測定結果を得る。
そして、情報処理装置100は、測定MR41~測定MR43に示す情報を基にモデルの精度変化を予測する。情報処理装置100は、カテゴリ「人種D」に対応するモデルの精度の予測する予測線LN4を導出する。
上述した処理により、情報処理装置100は、カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の4つのカテゴリの各々に対応するモデルの精度を示すグラフGR11を生成する。
そして、情報処理装置100は、生成したグラフGR11を表示する。なお、情報処理装置100は、グラフGR11に限らず、文字情報などの種々の形式により精度情報を表示してもよいが、この点についての詳細は後述する。
[1-1-1.情報処理の効果及び想定等]
上述したように、情報処理装置100は、複数のカテゴリの各々に対応するモデルの精度の測定結果やモデルの精度の予測結果を含む精度情報を生成する。具体的には、情報処理装置100は、カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の各々に対応するモデルの精度の測定結果やモデルの精度の予測結果を含む精度情報を生成する。これにより、情報処理装置100は、データの調整によりモデルの精度に関する情報を適切に生成することができる。このように、情報処理装置100は、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができる。なお、図1及び図2の例では、情報処理装置100は、カテゴリごとにデータ数を調整する処理を一例として説明したが、データ全体の数を調整して処理を行ってもよい。
上述したように、情報処理装置100は、複数のカテゴリの各々に対応するモデルの精度の測定結果やモデルの精度の予測結果を含む精度情報を生成する。具体的には、情報処理装置100は、カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の各々に対応するモデルの精度の測定結果やモデルの精度の予測結果を含む精度情報を生成する。これにより、情報処理装置100は、データの調整によりモデルの精度に関する情報を適切に生成することができる。このように、情報処理装置100は、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができる。なお、図1及び図2の例では、情報処理装置100は、カテゴリごとにデータ数を調整する処理を一例として説明したが、データ全体の数を調整して処理を行ってもよい。
そして、情報処理装置100は、生成した精度情報を表示する。情報処理装置100は、生成したグラフGR11を表示する。これにより、情報処理装置100は、どの程度データを増やせば各カテゴリにおける精度的差を解消できるかを示す情報を表示することができる。そのため、情報処理装置100が表示する情報を視認したユーザは、この後どの程度データを増やせば各カテゴリにおける精度的差を解消できるかを把握し、本質的にどのカテゴリで精度を出すのが難しいかを把握することができる。
図1の例では、情報処理装置100は、カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の各々の精度情報を表示することにより、各カテゴリについてモデルの精度改善の難度を示すことができる。情報処理装置100は、各カテゴリの予測線の傾きにより、各カテゴリについてモデルの精度改善の難度を示すことができる。
例えば、グラフGR11に示すように、カテゴリ「人種C」の予測線の傾きが小さいため、ユーザは、カテゴリ「人種C」が精度改善の難度が高いカテゴリであることを認識することができる。例えば、モデルM1は、カテゴリ「人種C」についてバイアス(偏り)が生じ、その改善の難度が高いことを示す。
上述のように、予測線の傾きが緩やかな問題は、データが増えても精度が低い。そのため、そのような問題はデータのノイズが大きい、あるいは本質的に難しい問題であると捉えることができる。図1の例では、例えば、人種Aはデータを増やすことで人種Bと同程度まで精度を改善可能であることを示す。また、人種C、Dで精度を出すのは本質的に難しいことを示し、差別意図がなくても精度が出せないことを示すことができる。
ここで、下記文献等に開示されるように、ディープラーニング(Deep Learning)の持つ特性として、データの数の対数に比例して性能が(天井知らずで)向上すると想定される。
・Exploring the Limits of Weakly Supervised Pretraining, Dhruv Mahajan, Ross Girshick, Vignesh Ramanathan, Kaiming He, Manohar Paluri, Yixuan Li, Ashwin Bharambe, Laurens van der Maaten <https://arxiv.org/abs/1805.00932>
・Exploring the Limits of Weakly Supervised Pretraining, Dhruv Mahajan, Ross Girshick, Vignesh Ramanathan, Kaiming He, Manohar Paluri, Yixuan Li, Ashwin Bharambe, Laurens van der Maaten <https://arxiv.org/abs/1805.00932>
情報処理装置100は、図1及び図2に示すように、データ数の増加に伴い、性能(精度)が向上することを示す予測線を導出し、学習用データのデータ数を増やした場合のモデルの精度変化の予測を示す精度情報を生成する。
例えば、AI(Artificial Intelligence)/ディープラーニングにおける倫理に関する問題がある。例えば、Fairness(公平性)、Bias(偏り)についての問題がある。このような問題としては、特定の人をゴリラなど、いわゆる類人猿に誤認識することや、特定の地域ではローンの審査が通らないことや、特定の人種で画像認識性能が出ないこと等が挙げられる。このような問題の背景には、AIが差別的判定を行っていたり、特定の地域に対するバイアスがあったり、特定の地域に対するバイアスがあったりする可能性が想定される。
ここで、上記のような問題には、文化の問題と技術的問題の両面が混ざっている場合がある。例えば、文化の問題として、差別的判定が行われるように学習されている可能性や特定の地域のローン審査が通らないように学習された可能性やある人種だけ差別的に学習データが少ないなど、原因のある可能性が想定される。また、例えば、技術的問題として、本質的に誤分類しやすいデータである可能性や本質的にその地域にローンが通り辛い理由がある可能性や物理的に特定の人種の認識が難しい可能性が想定される。
そこで、情報処理装置100は、モデルの精度の関連する問題が、技術で何とかなる問題かどうかを切り分けるために用いることができる情報を生成する。例えば、情報処理装置100は、技術的に改善できる場合はどの程度の改善が見込めるかについての指針が得られるような情報を生成する。例えば、情報処理装置100は、特にデータを増やすことでバイアスが改善するのかどうか、その場合どの程度データを増やせばよいのかなどの指針となる情報を生成する。そして、情報処理装置100は、生成した情報を表示する。図1の例では、情報処理装置100は、グラフGR11を表示することで、ユーザに上記の問題に関する指針となる情報を提供する。
上述したような機能は、例えばディープラーニングなど、機械学習を用いた技術の開発者が利用するツール(例えば図12中のツールTL1等)の機能として提供される。ユーザは上述したような機能を利用することで、技術の開発段階で、どの程度バイアスが存在するのか、技術的に解決可能な課題であるのか、あるいは解決のためにどの程度の労力が必要であるのかを知ることができる。
ここで、ディープラーニングの技術を用いる開発者は、学習したモデルのバイアスやフェアネスを簡単に分析することやバイアスやフェアネス改善の指針を得ることを望むことが多い。また、ディープラーニングはブラックボックスである側面があり、そのままではバイアスやフェアネスを分かりやすい形で可視化できないという問題がある。そこで、情報処理装置100は、バイアスやフェアネスを分かりやすい形で可視化するための情報を生成する。
上述のように、情報処理装置100は、バイアスを改善したい対象のカテゴリ毎(例えば男女、人種など)にデータ数を変更しながら学習を行う。そして、情報処理装置100は、それぞれのデータ数がどのように変化した場合に、バイアス、フェアネスなどの指標がどのように変化するかを示す情報を生成する。これにより、情報処理装置100は、バイアスやフェアネスを分かりやすい形で可視化する機能を実現する。例えば、情報処理装置100は、各カテゴリの学習用データ数を横軸、バイアスなどの指標を縦軸に取り、この後各カテゴリのデータ数を増やすとどのように指標が改善するかの予測値を提示する。
例えば、情報処理装置100は、データ数を変えながら学習、評価を繰り返すデータ数のバイアス、フェアネスに及ぼす影響を評価し、データを増やした場合の指標の改善幅を予測する。また、情報処理装置100は、予測により得られた結果を表示する。例えば、情報処理装置100は、カテゴリ毎にループし、元のデータ数から半分、さらに半分とデータを減らしながら、指定回数学習と、バイアスやフェアネスに関連する(精度)指標の算出(測定)を行う。また、情報処理装置100は、得られたデータ数と指標の関係から、このあとデータを増やした場合の指標の改善幅を予測する。また、情報処理装置100は、評価結果、予測結果のそれぞれについて、横軸をデータ数、縦軸を指標とし、グラフ表示する。これにより、情報処理装置100は、データの持つバイアスや、フェアネスと、問題の持つ本質的な難易度などを分かりやすく切り分けることができる。例えば、情報処理装置100は、物理的要因があってフェアにできない等の問題の持つ本質的な原因と、データの持つバイアスや、フェアネス等の原因とを分かりやすく切り分けることができる。
[1-1-2.精度例及び複数の精度]
上述したように、精度は、正確度に限らず、種々の指標であってもよい。例えば、精度は、再現率(Recall)、適合率(Precision)、F値(F-measure)等の種々の指標であってもよい。また、物体検知等に用いられるモデルが対象となる場合、精度は、物体検出精度、物体検出位置の誤差、物体検出サイズの誤差などであってもよい。例えば、情報処理装置100は、学習するモデルの用途に応じて、精度として用いる指標を決定してもよい。
上述したように、精度は、正確度に限らず、種々の指標であってもよい。例えば、精度は、再現率(Recall)、適合率(Precision)、F値(F-measure)等の種々の指標であってもよい。また、物体検知等に用いられるモデルが対象となる場合、精度は、物体検出精度、物体検出位置の誤差、物体検出サイズの誤差などであってもよい。例えば、情報処理装置100は、学習するモデルの用途に応じて、精度として用いる指標を決定してもよい。
また、情報処理装置100は、複数の指標に対応するモデルの複数の精度を示す精度情報を生成してもよい。例えば、情報処理装置100は、複数の指標に対応するモデルの測定結果や予測結果を示す精度情報を生成してもよい。例えば、情報処理装置100は、「再現率」と「適合率」との2つの指標に対応するモデルの測定結果や予測結果を示す精度情報を生成してもよい。情報処理装置100は、複数の精度のうち、ユーザが指定した一の精度を表示してもよい。
また、情報処理装置100は、複数の精度を切り替え可能に表示してもよい。例えば、情報処理装置100は、「再現率」と「適合率」のうち、ユーザが「再現率」を指定した場合、「再現率」に対応する精度情報を表示してもよい。また、情報処理装置100は、「再現率」と「適合率」のうち、ユーザが「適合率」を指定した場合、「適合率」に対応する精度情報を表示してもよい。なお、上記は一例であり、情報処理装置100は、複数の精度を種々の態様により表示してもよい。例えば、情報処理装置100は、複数の精度を同時に表示してもよい。
精度指標はアプリケーション(用途)によって複数あり得る。そのため、情報処理装置100は、上述のように、それぞれの(精度)指標に対して同様にグラフを生成することにより、ユーザの指定に応じて切り替えて表示することができる。
[1-2.実施形態に係る情報処理装置の構成]
次に、実施形態に係る情報処理を実行する情報処理装置の一例である情報処理装置100の構成について説明する。図3は、本開示の実施形態に係る情報処理装置100の構成例を示す図である。例えば、図3に示す情報処理装置100は、バイアス調整装置の一例である。情報処理装置100は、後述するバイアス調整装置としての機能を実現するコンピュータである。
次に、実施形態に係る情報処理を実行する情報処理装置の一例である情報処理装置100の構成について説明する。図3は、本開示の実施形態に係る情報処理装置100の構成例を示す図である。例えば、図3に示す情報処理装置100は、バイアス調整装置の一例である。情報処理装置100は、後述するバイアス調整装置としての機能を実現するコンピュータである。
図3に示すように、情報処理装置100は、通信部11と、入力部12と、表示部13と、記憶部14と、制御部15とを有する。図3の例では、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部12(例えば、キーボードやマウス等)や、各種情報を表示するための表示部13(例えば、液晶ディスプレイ等)を有する。
通信部11は、例えば、NIC(Network Interface Card)や通信回路等によって実現される。通信部11は、通信網N(インターネット等)と有線又は無線で接続され、通信網N(ネットワークN)を介して、他の装置等との間で情報の送受信を行う。
入力部12は、ユーザから各種操作が入力される。入力部12は、ユーザによる入力を受け付ける。入力部12は、ユーザによる学習方法の選択を受け付けてもよい。入力部12は、情報処理装置100に設けられたキーボードやマウスやタッチパネルを介してユーザからの各種操作を受け付けてもよい。入力部12は、ユーザによる目標精度(目標値)の入力を受け付ける。入力部12は、ユーザによる目標精度の指定を受け付ける。入力部12は、ユーザによる目標精度の数値の指定を受け付ける。入力部12は、図10に示す目標精度TA1の指定を受け付ける。
表示部13は、各種情報を表示する。表示部13は、ディスプレイ等の表示装置(表示部)であり、各種情報を表示する。表示部13は、演算部153により測定された情報を表示する。表示部13は、予測部154により予測された情報を表示する。表示部13は、生成部155により生成された情報を表示する。
表示部13は、予測された識別精度の変化をグラフ、又は、テキストで表示する。表示部13は、精度情報を表示する。表示部13は、精度情報を文字として表示する。表示部13は、精度情報を数値として表示する。表示部13は、精度情報を図として表示する。表示部13は、精度情報をグラフとして表示する。表示部13は、第1軸を精度とし、第2軸をデータ数とするグラフを表示する。表示部13は、モデルの精度と目標精度との関係を示す情報を表示する。表示部13は、モデルの精度におけるデータ数と、目標精度におけるデータ数との関係を示す情報を表示する。
表示部13は、複数の精度を切り替え可能に表示する。表示部13は、複数の精度のうち、一の精度を表示する。表示部13は、ユーザにより指定された一の精度を表示する。表示部13は、図1に示すグラフGR11を表示する。
また、情報処理装置100は、表示部13に限らず、情報を出力する機能構成を有してもよい。なお、情報処理装置100は、情報を音声として出力する機能を有してもよい。例えば、情報処理装置100は、音声を出力するスピーカー等の音声出力部を有してもよい。
記憶部14は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14は、データ情報記憶部141と、モデル情報記憶部142と、精度情報記憶部143とを有する。図示を省略するが、精度情報記憶部143には、測定や予測したモデルの精度に関する各種情報が格納される。例えば、精度情報記憶部143には、図10に示す目標精度TA1を示す数値等の目標精度に関する各種情報が記憶される。
データ情報記憶部141は、データに関する各種情報を記憶する。図4は、本開示の実施形態に係るデータ情報記憶部の一例を示す図である。例えば、データ情報記憶部141は、学習に用いる学習用データや精度評価(測定)に用いる評価用データ等の種々のデータに関する各種情報を記憶する。図4に、実施形態に係るデータ情報記憶部141の一例を示す。図4の例では、データ情報記憶部141は、「データセットID」、「データID」、「データ」、「対象#1(カテゴリ)」、「対象#2(カテゴリ)」といった項目が含まれる。なお、「対象#1(カテゴリ)」、「対象#2(カテゴリ)」に限らず、「対象#3(カテゴリ)」、「対象#4(カテゴリ)」等が含まれてもよい。「対象#1」~「対象#N」の数は、精度評価の対象の数であってもよい。図4の例では、人種及び性別のみを図示するが、データ情報記憶部141に記憶される学習用データは、少なくとも、人種、性別、住所、収入、又は、学歴に関するデータである。データ情報記憶部141の「対象#3(カテゴリ)」は住所に関するものであり、「対象#4(カテゴリ)」は収入に関するものであり、「対象#5(カテゴリ)」は学歴に関するものであってもよい。
「データセットID」は、データセットを識別するための識別情報を示す。「データID」は、オブジェクトを識別するための識別情報を示す。また、「データ」は、データIDにより識別されるオブジェクトに対応するデータを示す。すなわち、図4の例では、オブジェクトを識別するデータIDに対して、オブジェクトに対応するベクトルデータ(データ)が対応付けられて登録されている。
「対象#1(カテゴリ)」や「対象#2(カテゴリ)」は、対応するデータの各対象に対応するカテゴリを示す。「対象#1(カテゴリ)」は、対象「人種」に関する各データのカテゴリを示す。「対象#2(カテゴリ)」は、対象「性別」に関する各データのカテゴリを示す。
図4の例では、データセットID「DS1」により識別されるデータセット(データセットDS1)には、データID「DID1」、「DID2」、「DID3」等により識別される複数のデータが含まれることを示す。データID「DID1」、「DID2」、「DID3」等により識別される各データ(学習用データ)は、少なくとも、人種、性別、住所、収入、又は、学歴に関する情報が含まれる。
データID「DID1」により識別されるデータDT1は、対象「人種」に関するカテゴリが「人種A」であり、対象「性別」に関するカテゴリが「男性」であることを示す。この場合、データDT1は、人種Aであり、男性である人間に関するデータであることを示す。例えば、データDT1は、人種Aの男性が撮像された画像であってもよい。
また、データID「DID2」により識別されるデータDT2は、対象「人種」に関するカテゴリが「人種B」であり、対象「性別」に関するカテゴリが「女性」であることを示す。この場合、データDT2は、人種Bであり、女性である人間に関するデータであることを示す。例えば、データDT1は、人種Bの女性が撮像された画像であってもよい。
なお、データ情報記憶部141は、上記に限らず、目的に応じて種々の情報を記憶してもよい。データ情報記憶部141は、各データに対応する正解情報(正解ラベル)を各データに対応付けて記憶する。なお、「対象#1(カテゴリ)」、「対象#2(カテゴリ)」といった対象自体が正解情報として用いられてもよい。
また、データ情報記憶部141は、各データが学習用データであるかや、評価用データであるかを特定可能に記憶する。例えば、データ情報記憶部141は、学習用データと評価用データとを区別可能に記憶する。データ情報記憶部141は、各データが学習用データや評価用データであるかを識別する情報を記憶してもよい。情報処理装置100は、学習用データとして用いられる各データと正解情報とに基づいて、モデルを学習する。情報処理装置100は、評価用データとして用いられる各データと正解情報とに基づいて、モデルの精度を測定する。情報処理装置100は、評価用データを入力した場合にモデルが出力する出力結果と、正解情報とを比較した結果を収集することにより、モデルの精度を測定する。
実施形態に係るモデル情報記憶部142は、モデルに関する情報を記憶する。例えば、モデル情報記憶部142は、モデル(ネットワーク)の構造を示す情報(モデルデータ)を記憶する。図5は、本開示の実施形態に係るモデル情報記憶部の一例を示す図である。図5に、実施形態に係るモデル情報記憶部142の一例を示す。図5に示した例では、モデル情報記憶部142は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。
「モデルID」は、モデルを識別するための識別情報を示す。「用途」は、対応するモデルの用途を示す。「モデルデータ」は、モデルのデータを示す。図5では「モデルデータ」に「MDT1」といった概念的な情報が格納される例を示したが、実際には、モデルに含まれるネットワークに関する情報や関数等、そのモデルを構成する種々の情報が含まれる。
図5に示す例では、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「識別モデル(画像認識)」であることを示す。モデルM1は、識別モデルであり、画像認識に用いられることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
なお、モデル情報記憶部142は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、モデル情報記憶部142は、学習処理により学習(生成)された第1モデルや第2モデルの情報を記憶する。モデル情報記憶部142は、学習処理により学習(生成)されたモデルM1に対応する第1モデルや第2モデルのパラメータ情報を記憶する。
図3に戻り、説明を続ける。制御部15は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部に記憶されたプログラム(例えば、本開示に係る情報処理プログラム)がRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、制御部15は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
図3に示すように、制御部15は、取得部151と、学習部152と、演算部153と、予測部154と、生成部155と、送信部156とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部15の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
取得部151は、各種情報を取得する。取得部151は、外部の情報処理装置から各種情報を取得する。取得部151は、記憶部14から各種情報を取得する。取得部151は、入力部12により受け付けられた情報を取得する。
取得部151は、記憶部14から各種情報を取得する。取得部151は、データ情報記憶部141やモデル情報記憶部142や精度情報記憶部143から各種情報を取得する。
取得部151は、学習用データを取得する。取得部151は、データ情報記憶部141からデータセットDS1を取得する。取得部151は、評価用データを取得する。取得部151は、データ情報記憶部141から評価用データを取得する。取得部151は、データ情報記憶部141から人種A評価用データ、人種B評価用データ、人種C評価用データ、人種D評価用データを取得する。
取得部151は、モデルを取得してもよい。取得部151は、モデルのネットワーク構造を示す情報を取得してもよい。取得部151は、モデルを提供する外部の情報処理装置や記憶部14からモデルを取得する。例えば、取得部151は、モデルM1をモデル情報記憶部142から取得する。例えば、取得部151は、モデルM1のネットワーク構造を示す情報をモデル情報記憶部142から取得する。
取得部151は、学習部152が学習した各種情報を取得する。取得部151は、演算部153が測定した各種情報を取得する。取得部151は、予測部154が予測した各種情報を取得する。取得部151は、生成部155が生成した各種情報を取得する。
取得部151は、機械学習によるモデルの学習に用いる学習用データを取得する。取得部151は、複数のカテゴリの各々に対応するデータを含む学習用データを取得する。取得部151は、モデルの精度の目標を示す目標精度を取得する。取得部151は、入力部12により受け付けられた目標精度を取得する。取得部151は、一の精度を指定する指定情報を取得する。
学習部152は、学習処理を行う。学習部152は、各種学習を行う。学習部152は、取得部151により取得された情報に基づいて、各種情報を学習する。学習部152は、モデルを学習(生成)する。学習部152は、モデル等の各種情報を学習する。学習部152は、学習によりモデルを生成する。学習部152は、種々の機械学習に関する技術を用いて、モデルを学習する。例えば、学習部152は、モデル(ネットワーク)のパラメータを学習する。学習部152は、種々の機械学習に関する技術を用いて、モデルを学習する。
学習部152は、各種学習を行う。学習部152は、記憶部14に記憶された情報に基づいて、各種情報を学習する。学習部152は、データ情報記憶部141やモデル情報記憶部142に記憶された情報に基づいて、モデルを学習する。
学習部152は、ネットワークのパラメータを学習する。例えば、学習部152は、モデルM1のネットワークのパラメータを学習する。学習部152は、モデルM1のネットワークのパラメータを学習することにより、モデルM1に対応する第1モデルや第2モデルを学習する。
学習部152は、データ情報記憶部141に記憶された学習用データ(教師データ)に基づいて、学習処理を行うことにより、第1モデルや第2モデルを生成する。学習部152は、データ情報記憶部141に記憶された学習用データを用いて、学習処理を行うことにより、第1モデルを生成する。学習部152は、データ情報記憶部141に記憶された学習用データを調整したデータを用いて、学習処理を行うことにより、第2モデルを生成する。例えば、学習部152は、画像認識に用いられるモデルを生成する。学習部152は、モデルM1のネットワークのパラメータを学習し、モデルM1に対応する第1モデルや第2モデルを生成する。また、学習部152は、ネットワーク構造の異なる第1モデルと第2モデルとを生成してもよい。
学習部152による学習の手法は特に限定されないが、例えば、ラベル情報(人種等)と画像群とを紐づけた学習用データを用意し、その学習用データを多層ニューラルネットワークに基づいた計算モデルに入力して学習してもよい。また、例えばCNN(Convolutional Neural Network)、3D-CNN等のDNN(Deep Neural Network)に基づく手法が用いられてもよい。学習部152は、映像等の動画像(動画)のような時系列データを対象とする場合、再帰型ニューラルネットワーク(Recurrent Neural Network:RNN)やRNNを拡張したLSTM(Long Short-Term Memory units)に基づく手法を用いてもよい。
学習部152は、学習により生成した第1モデルや第2モデルをモデル情報記憶部142に格納する。学習部152は、モデルM1のネットワークに対応する第1モデルや第2モデル等を生成する。この場合、学習部152は、生成した第1モデルや第2モデル等をモデルM1に対応付けてモデル情報記憶部142に格納する。学習部152は、学習用データとして用いられる各データと正解情報とに基づいて、モデルを学習する。
学習部152は、学習用データにより第1モデルを学習する。学習部152は、学習に用いるデータのデータ数を調整する。学習部152は、データ数を調整する対象に応じて学習用データのデータ数が調整された調整後データにより第2モデルを学習する。学習部152は、学習用データからデータ数が減らされた調整後データにより第2モデルを学習する。学習部152は、学習用データから所定の基準に基づいてデータ数が減らし、調整した調整後データにより第2モデルを学習する。
学習部152は、対象に関する区分を示すカテゴリに応じて学習用データのデータ数が調整された調整後データにより第2モデルを学習する。学習部152は、対象の複数のカテゴリのうち、一のカテゴリに応じて学習用データのデータ数が調整された調整後データにより第2モデルを学習する。
学習部152は、学習用データのうち、一のカテゴリに対応するデータ数が調整された調整後データにより第2モデルを学習する。学習部152は、学習用データのうち、一のカテゴリに対応するデータ数が減らされた調整後データにより第2モデルを学習する。学習部152は、複数のカテゴリごとに学習用データのデータ数が調整された複数の調整後データの各々により第2モデルを学習する。
図1及び図2の例では、学習部152は、データセットDS1を対象として画像認識に用いるモデルM1の第1モデルを学習する。学習部152は、調整後データセットAS1を対象として画像認識に用いるモデルM1の第2モデルを学習する。学習部152は、データセットDS1からカテゴリ「人種A」に対応するデータが減らされた調整後データセットAS1を対象として画像認識に用いるモデルM1の第2モデル(第3モデル)を学習する。学習部152は、調整後データセットAS2を対象として画像認識に用いるモデルM1の第2モデルを学習する。学習部152は、調整後データセットAS1からカテゴリ「人種A」に対応するデータがさらに減らされた調整後データセットAS2を対象として画像認識に用いるモデルM1の第3モデルを学習する。
演算部153は、演算処理を行う。演算部153は、各種情報を算出する処理を行う。演算部153は、第1の学習用データで学習された識別モデルの第1の識別精度を算出する。演算部153は、第1の学習用データに対してデータ数を調整された第2の学習用データで学習された識別モデルの第2の識別精度を算出する。演算部153は、測定処理を行う測定部として機能する。演算部153は、各種測定を行う。演算部153は、取得部151により取得された情報に基づいて、各種情報を測定する。演算部153は、記憶部14に記憶された情報に基づいて、各種情報を測定する。演算部153は、データ情報記憶部141やモデル情報記憶部142や精度情報記憶部143に記憶された情報に基づいて、各種情報を測定する。演算部153は、各種判定を行う。演算部153は、取得部151により取得された情報に基づいて、各種情報を判定する。演算部153は、記憶部14に記憶された情報に基づいて、各種情報を判定する。
演算部153は、評価用データを用いてモデルの精度を測定する。演算部153は、第1モデルや第2モデルの精度を測定する。演算部153は、測定したモデルの精度に関する情報を精度情報記憶部143に格納する。演算部153は、評価用データとして用いられる各データと正解情報とに基づいて、モデルの精度を測定する。演算部153は、評価用データを入力した場合にモデルが出力する出力結果と、正解情報との比較結果を収集することにより、モデルの精度を測定する。
演算部153は、評価用データを用いて第1モデルの第1精度を測定する。演算部153は、評価用データを用いて第2モデルの第2精度を測定する。演算部153は、一のカテゴリに対応する評価用データを用いて第1モデルの第1精度を測定する。演算部153は、一のカテゴリに対応する評価用データを用いて第2モデルの第2精度を測定する。演算部153は、複数のカテゴリの各々に対応する評価用データを用いて第1モデルの複数の第1精度を測定する。演算部153は、複数のカテゴリの各々に対応する複数の第2精度を測定する。
図1及び図2の例では、演算部153は、学習した第1モデルについて、カテゴリ「人種A」に対応する精度を測定する。演算部153は、人種A評価用データを用いて、カテゴリ「人種A」に対応する精度を測定する。演算部153は、第1モデルについて、カテゴリ「人種A」に対応する精度を「VL1」であると測定する。演算部153は、第2モデルについて、カテゴリ「人種A」に対応する精度を「VL2」であると測定する。演算部153は、第3モデルについて、カテゴリ「人種A」に対応する精度を「VL3」であると測定する。
予測部154は、予測処理を行う。予測部154は、各種情報を予測する。予測部154は、外部の情報処理装置から取得された情報に基づいて、各種情報を予測する。予測部154は、記憶部134に記憶された情報に基づいて、各種情報を予測する。予測部154は、データ情報記憶部141やモデル情報記憶部142や精度情報記憶部143に記憶された情報に基づいて、各種情報を予測する。予測部は、第1の学習用データで学習された識別モデルの第1の識別精度と、第2の学習用データで学習された識別モデルの第2の識別精度に基づいて、学習用データ数に対する識別精度の変化を予測する。
予測部154は、第1モデルや第2モデルの精度を予測する。予測部154は、予測したモデルの精度に関する情報を精度情報記憶部143に格納する。予測部154は、演算部153による測定結果に基づいて、モデルの精度を予測する。予測部154は、演算部153による測定結果に基づいて、予測線を予測する。
予測部154は、第1精度と、第2精度とに基づいて、対象に応じてデータ数を調整した場合のモデルの精度変化を予測する。予測部154は、学習用データのデータ数を増やした場合のモデルの精度変化を予測する。予測部154は、学習用データのデータ数を増やした場合のモデルの精度の予測線を予測する。
図1及び図2の例では、予測部154は、測定MR11~測定MR13に示す情報を基にモデルの精度変化を予測する。予測部154は、カテゴリ「人種A」に対応するモデルの精度を予測する関数を導出する。予測部154は、カテゴリ「人種A」に対応するモデルの精度の予測線LN1に対応する関数FC1を導出する。
生成部155は、バイアス調整に関連する各種制御を行う制御部として機能する。生成部155は、バイアス調整の処理を行うバイアス調整制御部として機能する。生成部155は、予測部154により予測された識別精度の変化に基づいて、予測された識別精度の変化が所定の目標値(目標精度)となるように学習に用いるデータ数を調整する。また、生成部155は、予測部154により予測された識別精度の変化に基づいて、識別モデルを変更する。生成部155は、学習に用いるデータ数の調整により目標精度の達成が難しい場合、識別モデルを変更する。生成部155は、目標精度の達成するために必要なデータ数の増加が所定の閾値以上である場合識別モデルを変更する。例えば、生成部155は、モデルのネットワーク構造を変更することにより、識別モデルを変更する。例えば、生成部155は、モデルの層の深さ(数)やノード(図6中の各円に対応)の数を変更することにより、識別モデルを変更する。生成部155は、各種生成を行う。生成部155は、取得部151により取得された情報に基づいて、各種情報を生成する。生成部155は、記憶部14に記憶された情報に基づいて、各種情報を生成する。生成部155は、データ情報記憶部141やモデル情報記憶部142や精度情報記憶部143に記憶された情報に基づいて、各種情報を生成する。
生成部155は、表示部13に表示する各種情報を生成する。生成部155は、表示部13に表示する文字情報やグラフといった画像情報などの各種情報を生成する。
なお、生成部155は、図1に示すグラフGR11等の画面に関する情報(画像)を画像に関連する種々の従来技術を適宜用いて生成する。生成部155は、図1に示すグラフGR11等の画像をGUIに関する種々の従来技術を適宜用いて生成する。例えば、生成部155は、CSS、JavaScript(登録商標)、HTML、あるいは、上述した情報表示や操作受付等の情報処理を記述可能な任意の言語によりグラフGR11等の画像を生成してもよい。
生成部155は、学習用データにより学習されるモデルである第1モデルの第1精度と、データ数を調整する対象に応じて学習用データのデータ数が調整された調整後データにより学習されるモデルである第2モデルの第2精度とに基づいて、モデルの精度を示す精度情報を生成する。生成部155は、学習用データからデータ数が減らされた調整後データにより学習される第2モデルに基づいて、精度情報を生成する。生成部155は、第1精度と、第2精度とに基づいて、対象に応じたデータ数の調整によるモデルの精度変化を示す精度情報を生成する。
生成部155は、評価用データを用いて測定される第1モデルの第1精度と、評価用データを用いて測定される第2モデルの第2精度とに基づいて、精度情報を生成する。生成部155は、第1精度と、第2精度とに基づいて、対象に応じてデータ数を調整した場合のモデルの精度変化の予測を示す精度情報を生成する。生成部155は、学習用データのデータ数を増やした場合のモデルの精度変化の予測を示す精度情報を生成する。生成部155は、学習用データのデータ数を増やした場合のモデルの精度の予測線を含む精度情報を生成する。
生成部155は、対象に関する区分を示すカテゴリに応じて学習用データのデータ数が調整された調整後データにより学習される第2モデルの第2精度に基づいて、カテゴリに関する精度情報を生成する。生成部155は、対象の複数のカテゴリのうち、一のカテゴリに応じて学習用データのデータ数が調整された調整後データにより学習される第2モデルの第2精度に基づいて、一のカテゴリに対するモデルの精度を示すモデルの精度情報を生成する。生成部155は、学習用データのうち、一のカテゴリに対応するデータ数が調整された調整後データにより学習される第2モデルの第2精度に基づいて、精度情報を生成する。
生成部155は、学習用データのうち、一のカテゴリに対応するデータ数が減らされた調整後データにより学習される第2モデルの第2精度に基づいて、精度情報を生成する。生成部155は、一のカテゴリに対する第1モデルの第1精度と、一のカテゴリに対する第2モデルの第2精度とに基づいて、精度情報を生成する。
生成部155は、一のカテゴリに対応する評価用データを用いて測定される第1モデルの第1精度と、一のカテゴリに対応する評価用データを用いて測定される第2モデルの第2精度とに基づいて、精度情報を生成する。生成部155は、複数のカテゴリごとに学習用データのデータ数が調整された複数の調整後データの各々により学習される複数の第2モデルの複数の第2精度に基づいて、複数のカテゴリの各々に対するモデルの精度を示す精度情報を生成する。
生成部155は、複数のカテゴリの各々に対応する第1モデルの複数の第1精度と、複数のカテゴリの各々に対応する複数の第2モデルの複数の第2精度とに基づいて、精度情報を生成する。生成部155は、複数のカテゴリの各々に対応する評価用データを用いて測定される第1モデルの複数の第1精度と、複数のカテゴリの各々に対応する複数の第2精度とに基づいて、精度情報を生成する。
生成部155は、複数のカテゴリの各々に対応する複数の第1精度と、複数のカテゴリの各々に対応する複数の第2精度とに基づいて、モデルの精度に関する複数のカテゴリ間の関係を示す精度情報を生成する。生成部155は、複数のカテゴリにおけるモデルの精度の偏りを示す精度情報を生成する。生成部155は、複数のカテゴリの各々のモデルの精度改善の難度を示す精度情報を生成する。生成部155は、複数の指標に対応するモデルの複数の精度を示す精度情報を生成する。
図1の例では、生成部155は、カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の各々を対象に処理を行うことにより、グラフGR11に示すような、4つのカテゴリについて測定した精度や予測した精度を含む精度情報を生成する。
送信部156は、各種情報を送信する。送信部156は、各種情報の提供を行う。送信部156は、外部の情報処理装置へ各種情報を提供する。送信部156は、外部の情報処理装置へ各種情報を送信する。送信部156は、記憶部14に記憶された情報を送信する。送信部156は、データ情報記憶部141やモデル情報記憶部142や精度情報記憶部143に記憶された情報を送信する。送信部156は、生成部155により生成された情報を送信する。
[1-2-1.モデル例]
上述したように、情報処理装置100は、種々の形式のモデル(関数)を用いてもよい。例えば、情報処理装置100は、SVM(Support Vector Machine)等の回帰モデルやニューラルネットワーク(neural network)等、任意の形式のモデル(関数)を用いてもよい。情報処理装置100は、非線形の回帰モデルや線形の回帰モデル等、種々の回帰モデルを用いてもよい。
上述したように、情報処理装置100は、種々の形式のモデル(関数)を用いてもよい。例えば、情報処理装置100は、SVM(Support Vector Machine)等の回帰モデルやニューラルネットワーク(neural network)等、任意の形式のモデル(関数)を用いてもよい。情報処理装置100は、非線形の回帰モデルや線形の回帰モデル等、種々の回帰モデルを用いてもよい。
この点について、図6を用いて、モデルのネットワーク構造の一例を説明する。図6は、本開示の実施形態に係るモデルの一例を示す図である。図6に示すネットワークNW1は、入力層INLと出力層OUTLとの間に複数(多層)の中間層を含むニューラルネットワークを示す。例えば、情報処理装置100は、図6に示すネットワークNW1のパラメータを学習してもよい。
図6に示すネットワークNW1は、モデルM1のネットワークに対応し、画像認識に用いられるニューラルネットワーク(モデル)を示す概念的な図である。例えば、ネットワークNW1は、入力層INL側から例えば画像が入力された場合に、出力層OUTLからその認識結果を出力する。例えば、情報処理装置100は、ネットワークNW1中の入力層INLに情報を入力することにより、出力層OUTLから入力に対応する認識結果を出力させる。
なお、図6では、モデル(ネットワーク)の一例としてネットワークNW1を示すが、ネットワークNW1は、用途等に応じて種々の形式であってもよい。例えば、情報処理装置100は、図6に示すネットワークNW1の構造を有するモデルM1のパラメータ(重み)を学習することにより、モデルM1に対応する第1モデルや第2モデルを学習する。
[1-3.実施形態に係る情報処理の手順]
次に、図7及び図8を用いて、実施形態に係る情報処理の手順について説明する。図7及び図8は、本開示の実施形態に係る情報処理の手順を示すフローチャートである。具体的には、図7は、情報処理の手順の概要を示すフローチャートである。また、図8は、情報処理の手順の詳細を示すフローチャートである。
次に、図7及び図8を用いて、実施形態に係る情報処理の手順について説明する。図7及び図8は、本開示の実施形態に係る情報処理の手順を示すフローチャートである。具体的には、図7は、情報処理の手順の概要を示すフローチャートである。また、図8は、情報処理の手順の詳細を示すフローチャートである。
まず、図7を用いて、本開示の実施形態に係る情報処理の流れの概要について説明する。図7に示すように、情報処理装置100は、機械学習によるモデルの学習に用いる学習用データを取得する(ステップS101)。例えば、情報処理装置100は、データセットDS1を取得する。
情報処理装置100は、学習用データにより学習される第1モデルの第1精度と、調整後データにより学習される第2モデルの第2精度とに基づいて、モデルの精度を示す精度情報を生成する(ステップS102)。例えば、情報処理装置100は、学習用データにより学習される第1モデルの第1精度と、調整後データにより学習される第2モデルの第2精度とに基づいて、モデルの精度を示すグラフGR11を生成する。そして、情報処理装置100は、生成したモデルの精度を示す精度情報を表示してもよい。
次に、図8用いて、本開示の実施形態に係る情報処理の流れの詳細について説明する。図8に示すように、情報処理装置100は、カテゴリIndex、iを0で初期化する(ステップS201)。例えば、情報処理装置100は、繰り返し処理に用いる変数であるカテゴリ「i」の値を「0」に初期化する。図1の例では、例えば、カテゴリ「0」が「人種A」に対応し、カテゴリ「1」が「人種B」に対応し、カテゴリ「2」が「人種C」に対応し、カテゴリ「3」が「人種D」に対応する。
そして、情報処理装置100は、学習データセットを初期化する(ステップS202)。例えば、情報処理装置100は、データセットDS1を学習データセットに設定する。
そして、情報処理装置100は、モデルの学習と精度評価を行う(ステップS203)。例えば、情報処理装置100は、データセットDS1を学習データセットに設定した直後においては、データセットDS1全体を用いてモデル(第1モデル)を学習し、そのモデルの精度評価を行う。例えば、情報処理装置100は、全データからスタートする。また、情報処理装置100は、データ数調整後においては、データセットDS1からデータ数が調整された調整後データセットを用いてモデル(第2モデル)を学習し、そのモデルの精度評価を行う。
情報処理装置100は、十分に少ない数のデータでの学習を行ったかどうかを判定する(ステップS204)。情報処理装置100は、十分に少ない数のデータでの学習を行っていない場合(ステップS204;No)、カテゴリiの学習用データセットのデータ(のみ)を間引く(ステップS205)。例えば、「i」が「0」であり、カテゴリ「0」である場合、学習用データセットのうち、カテゴリ「人種A」に対応するデータ数を減らす。また、「i」が「1」であり、カテゴリ「1」である場合、学習用データセットのうち、カテゴリ「人種B」に対応するデータ数を減らす。
情報処理装置100は、ステップS205において対応するカテゴリのデータを間引いた後、ステップS203に戻り、間引いた後のデータ(調整後データ)を用いて処理を繰り返す。
情報処理装置100は、十分に少ない数のデータでの学習を行った場合(ステップS204;Yes)、全てのカテゴリで評価を完了したかどうかを判定する(ステップS206)。情報処理装置100は、全てのカテゴリで評価を完了していない場合(ステップS206;No)、次のカテゴリへ(i++)処理を移行する(ステップS207)。例えば、「i」が「0」である場合、「i」に1を加算し「i」を「1」に更新する。この場合、「i」を「0」から「1」へ更新することにより、カテゴリ「人種A」を対象とする処理が完了した後、カテゴリ「人種B」を対象とする処理に移行する。
情報処理装置100は、ステップS207において処理の対象を次のカテゴリへ移行した後、ステップS202に戻り、次のカテゴリを対象として処理を繰り返す。
情報処理装置100は、全てのカテゴリで評価を完了した場合(ステップS206;Yes)、処理を終了する。
例えば、情報処理装置100は、図8に示すような処理手順により、カテゴリ毎にループし、元のデータ数から半分、さらに半分とデータを減らしながら、指定回数学習と、バイアスやフェアネスに関連する(精度)指標の算出を行う。例えば、情報処理装置100は、人種をカテゴリとした画像からの顔検出の場合、各人種の学習データを半分に減らしながら検出精度をプロットする。
[1-4.表示例]
図9を用いて、精度情報の表示について説明する。図9は、精度情報の表示の一例を示す図である。
図9を用いて、精度情報の表示について説明する。図9は、精度情報の表示の一例を示す図である。
図9のグラフGR21は、図1のグラフGR11に対応する。図9のグラフGR21は、図1のグラフGR11のうち、学習用データ全体を用いて生成した第1モデルの各カテゴリに対する精度を示す情報と、各カテゴリの予測線を表示する場合を示す。具体的には、グラフGR21は、図1のグラフGR11中の各カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の測定MR11~MR41や予測線LN1~LN4を表示する例を示す。
情報処理装置100は、グラフGR21を生成する。情報処理装置100は、モデルの精度に関する複数のカテゴリ間の関係を示すグラフGR21を生成する。情報処理装置100は、グラフGR21を表示部13に表示する。
表示部13に表示されたグラフGR21を確認したユーザは、カテゴリ「人種A」の現状の精度と、データの増減に応じた精度の変化を示す予測線とから、カテゴリ「人種A」の精度改善の難度を把握することができる。例えば、表示部13に表示されたグラフGR21を確認したユーザは、カテゴリ「人種A」の予測線の傾きから、カテゴリ「人種A」の精度改善の難度を把握することができる。また、カテゴリ「人種B」、「人種C」、「人種D」についても、カテゴリ「人種A」と同様に、グラフGR21は、現状の精度と、データの増減に応じた精度の変化を示す予測線とから、各カテゴリの精度改善の難度を把握することができる。
例えば、カテゴリ「人種C」の予測線の傾きが小さいため、ユーザは、カテゴリ「人種C」が精度改善の難度が高いカテゴリであることを認識することができる。例えば、カテゴリ「人種D」については、現状の精度がカテゴリ「人種C」の現状の精度より低いが、予測線の傾きがカテゴリ「人種C」の予測線の傾きよりも大きいため、ユーザは、カテゴリ「人種D」が精度改善の難度が、カテゴリ「人種C」よりも高くないカテゴリであることを認識することができる。
なお、図9は一例であり、情報処理装置100は、各カテゴリ「人種A」、「人種B」、「人種C」、「人種D」について、データ数を調整したデータで生成された第2モデルの測定MR12~MR42、MR13~MR43等も表示してもよい。
[1-5.目標精度(目標値)]
ここから、図10及び図11を用いて、目標精度(目標値)について説明する。
ここから、図10及び図11を用いて、目標精度(目標値)について説明する。
[1-5-1.目標精度(目標値)とデータ数の関係]
まず、図10を用いて、目標精度を含むグラフ表示について説明する。図10は、目標精度とデータ数との関係を示す図である。具体的には、図10は、目標精度と各カテゴリの精度を含むグラフを示す図である。
まず、図10を用いて、目標精度を含むグラフ表示について説明する。図10は、目標精度とデータ数との関係を示す図である。具体的には、図10は、目標精度と各カテゴリの精度を含むグラフを示す図である。
図10に示すグラフGR31には、各カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の測定MR11~MR41や予測線LN1~LN4と、目標精度TA1とが含まれる。情報処理装置100は、グラフGR31を生成する。情報処理装置100は、グラフGR31を表示部13に表示してもよい。
情報処理装置100は、グラフGR31により、各カテゴリ「人種A」、「人種B」、「人種C」、「人種D」の精度と目標精度TA1との関係を直感的に把握可能にユーザに情報提供することができる。図10の例では、グラフGR31は、カテゴリ「人種B」は、既に目標精度TA1に達しており、残りのカテゴリ「人種A」、「人種C」、「人種D」は、目標精度TA1に達していないことを示す。
また、グラフGR31は、カテゴリ「人種A」、「人種C」、「人種D」の各々が目標精度TA1に達するために必要なデータ数を示す。例えば、カテゴリ「人種A」については、グラフGR31中の測定MR11に対応する横軸「log(データ数)」の位置がその時点での学習用データに含まれるカテゴリ「人種A」に対応するデータ数(現状データ数)を示す。また、カテゴリ「人種A」については、グラフGR31中の予測線LN1と目標精度TA1との交点に対応する横軸「log(データ数)」の位置が、目標精度TA1を達成するために必要なカテゴリ「人種A」に対応するデータ数(必要データ数)を示す。
表示部13に表示されたグラフGR31を確認したユーザは、カテゴリ「人種A」の現状データ数と、カテゴリ「人種A」の必要データ数とから、カテゴリ「人種A」についての目標精度TA1と現状の精度との関係を把握することができる。また、表示部13に表示されたグラフGR31を確認したユーザは、カテゴリ「人種A」について、目標精度TA1を達成するためにどの程度データ数を増加させる必要があるかを把握することができる。また、カテゴリ「人種C」、「人種D」についても、カテゴリ「人種A」と同様に、グラフGR31は、現状データ数と必要データ数とから、目標精度TA1を達成するためにどの程度データ数を増加させる必要があるかを示す。
情報処理装置100は、図10に示すような各カテゴリの精度と目標精度TA1との関係に基づいて、バイアス調整処理を行ってもよい。例えば、情報処理装置100の制御部15の生成部155等は、予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように学習に用いるデータ数を調整したり、識別モデルを変更したりしてもよい。
図10の例では、情報処理装置100は、カテゴリ「人種A」、「人種C」、「人種D」については、目標精度TA1に達していないため、カテゴリ「人種A」、「人種C」、「人種D」に対応するデータ数を増加させてもよい。例えば、情報処理装置100は、カテゴリ「人種A」の測定MR11と予測線LN1とに基づいて、カテゴリ「人種A」が目標精度TA1に達するまでに必要なデータ数(必要データ数)を算出してもよい。
そして、情報処理装置100は、算出した必要データ数の情報を基に、カテゴリ「人種A」のデータ数を調整してもよい。この場合、情報処理装置100は、必要データ数分のカテゴリ「人種A」のデータを増加するように調整処理を行う。例えば、情報処理装置100は、データ情報記憶部141(図4参照)中に、学習に未使用のカテゴリ「人種A」のデータが有る場合、そのデータのうち必要データ数分のデータを学習に用いてもよい。
また、情報処理装置100は、学習用データの提供サービスを行う外部装置にデータを要求し、外部装置から必要なデータを取得してもよい。例えば、情報処理装置100は、カテゴリ「人種A」を示す情報と必要データ数とを外部装置に送信することにより、外部装置から必要データ数分の「人種A」に対応するデータを取得してもよい。情報処理装置100は、カテゴリ「人種C」、「人種D」についても、カテゴリ「人種A」と同様に、必要データ数を算出し、データ情報記憶部141(図4参照)や外部装置から必要データ数分の「人種C」、「人種D」に対応するデータを取得してもよい。
また、情報処理装置100は、目標精度を超えるカテゴリ(超過カテゴリ)がある場合、その超過カテゴリのデータ数を減らすことにより、超過カテゴリの識別精度(精度)を目標精度TA1に近づけてもよい。このように、情報処理装置100は、データ数を増やすことのみに限らず、データ数を減らすことにより、データ数を調整することにより、所望の精度に近づける。これにより、情報処理装置100は、全てのカテゴリの識別精度(精度)を目標精度TA1に近づけ、カテゴリ間での制度のばらつきを抑制することができる。
また、情報処理装置100は、予測された識別精度の変化に基づいて、モデルを変更してもよい。情報処理装置100は、学習に用いるデータ数の調整により目標精度の達成が難しい場合、モデルを変更する。情報処理装置100は、目標精度の達成するために必要なデータ数の増加が所定の閾値以上である場合モデルを変更する。図10の例では、情報処理装置100は、カテゴリ「人種C」の測定MR31と予測線LN3とに基づいて、カテゴリ「人種C」が目標精度TA1に達するまでに必要なデータ数(必要データ数NM)を算出し、必要データ数NMと閾値(閾値TH)とを比較する。情報処理装置100は、必要データ数NMと閾値THと比較した結果、必要データ数NMが閾値TH以上である場合、モデルを変更する。
なお、情報処理装置100は、種々の条件を基にモデルを変更するかどうかを決定してもよい。例えば、情報処理装置100は、目標精度の達成が不可能なカテゴリがある場合、モデルを変更してもよい。例えば、情報処理装置100は、必要データ数が算出不可能なカテゴリがある場合、モデルを変更してもよい。例えば、情報処理装置100は、必要データ数が無限大となるカテゴリがある場合、モデルを変更してもよい。例えば、情報処理装置100は、予測線の傾きが0であり、目標精度の達成が不可能なカテゴリがある場合、モデルを変更してもよい。このように、情報処理装置100は、データの調整ではバイアスの解消が難しい場合に、モデル自体を変更することにより、バイアスを解消する可能性を高めることができる。
情報処理装置100は、種々の態様によりモデルを変更する。例えば、情報処理装置100は、モデルのネットワーク構造を変更することにより、モデルを変更する。例えば、情報処理装置100は、モデルの層数やノード数を変更することにより、モデルを変更する。図10の例では、情報処理装置100は、モデルM1のネットワーク構造(第1ネットワーク構造)を他のネットワーク構造(第2ネットワーク構造)に変更することにより、モデルM1からモデルM51に変更する。例えば、情報処理装置100は、モデルM1よりも層数やノード数が多いモデルM51に変更する。例えば、情報処理装置100は、モデル情報記憶部142(図5参照)から用いるモデルを選択してもよい。例えば、情報処理装置100は、モデルM1を他のモデルに変更する場合、モデル情報記憶部142中のモデルのうち、モデルM1と同じ用途のモデル(例えばモデルM51等)を選択してもよい。なお、情報処理装置100は、上記のようなネットワーク構造の変更に限らず、種々のいわゆるハイパーパラメータを変更することにより、モデルを変更してもよい。例えば、情報処理装置100は、活性化関数や最適化アルゴリズムなどの計算アルゴリズム(学習アルゴリズム)などの種々のハイパーパラメータを変更してもよい。情報処理装置100は、記憶部14(図3参照)に変更する順番を示す情報を記憶してもよい。例えば、情報処理装置100は、モデルを変更する場合、学習アルゴリズム、ネットワークの構造の順に変更することを示す情報を記憶してもよい。この場合、情報処理装置100は、学習アルゴリズムを変更してもバイアスが解消できない場合に、モデルのネットワーク構造を変更してもよい。
[1-5-2.目標精度(目標値)に関する表示例]
次に図11を用いて目標精度に関する表示例について説明する。図11は、目標精度とデータ数との関係の表示の一例を示す図である。
次に図11を用いて目標精度に関する表示例について説明する。図11は、目標精度とデータ数との関係の表示の一例を示す図である。
図11の例では、情報処理装置100は、各カテゴリに対応する精度と目標精度との関係を文字情報として示す精度情報CH1を生成する。情報処理装置100は、精度情報CH1を表示部13に表示する。精度情報CH1は、各カテゴリに対応する精度が目標精度に達するまでに必要なデータ数を文字情報として示す。例えば、カテゴリ「人種A」については、目標精度を達成するためには、現状のデータ数の十倍のデータが必要であることを示す。すなわち、カテゴリ「人種A」に対応する精度が、目標精度を達成するためには、カテゴリ「人種A」に対応するデータが、現状の10倍必要であることを示す。
また、カテゴリ「人種C」については、目標精度を達成するためには、現状のデータ数の一万倍のデータが必要であることを示す。また、カテゴリ「人種D」については、目標精度を達成するためには、現状のデータ数の百倍のデータが必要であることを示す。また、図11の例では、既に目標精度を達成しているカテゴリ「人種B」については、情報を非表示にする場合を示す。このように、既に目標精度を達成しているカテゴリについては情報を非表示にすることにより、精度目標を達成していることを示してもよい。
なお、目標精度を達成したカテゴリについても情報を表示してもよい。図11の例では、カテゴリ「人種B」については、「目標精度達成済」といった既に目標精度を達成したことを示す情報や、「現状の精度は0.9です」といった現状の精度を示す情報を表示してもよい。
例えば、情報処理装置100は、ユーザが目標精度を入力すると、推定した予測線を元に目標精度を達成するために必要なデータ数を表示する。これにより、情報処理装置100は、目標精度の達成に必要なデータ数を表示することができる。また、情報処理装置100は、特定のカテゴリを減らしていくのではなく、データ全体を減らして描画してもよい。このように、情報処理装置100は、予測された識別精度の変化をグラフ、又は、テキストで表示する。
[1-6.情報処理システムの処理の概念図]
次に、図12を用いて、情報処理システムの処理について概念的に説明する。図12は、情報処理システムの処理の概念図の一例を示す図である。
次に、図12を用いて、情報処理システムの処理について概念的に説明する。図12は、情報処理システムの処理の概念図の一例を示す図である。
図12の例では、学習用データセットや学習モデルを含む入力情報IN1が、モデルを学習し、学習したモデルの精度を測定するツールTL1に入力される。例えば、ツールTL1は、AIのバイアス、フェアネス分析ツールであり、モデルのバイアス(偏り)、フェアネス(公平性)の分析に用いられる機能を有する。例えば、ツールTL1の機能は、情報処理装置100の取得部151、学習部152、演算部153、予測部154及び生成部155により実現されてもよい。
入力情報IN1の入力に応じて、ツールTL1は、分析結果OUT1を生成する。図12の例でツールTL1により生成される分析結果OUT1は、図1中のグラフGR11に対応する。例えば、ツールTL1による分析結果OUT1を表示する機能は、情報処理装置100の表示部13により実現されてもよい。分析結果OUT1は、ユーザに提示する情報の一例を示す。
例えば、ディープラーニング開発者等の情報処理装置100のユーザは、手持ちのデータセットでディープラーニングベースのモデル(画像認識機など)を学習する。そして、学習したモデルに対して、開発者が本発明の実現する機能を実行する。情報処理システム1は、あとどのくらいデータを増やすと性能が向上するかの予測を表示する。
例えば、AI等の開発者がツールTL1のユーザとして想定される。このような、ユーザニーズとして、バイアスやフェアネスを改善するための指針を得ることや、バイアスやフェアネスを改善する難易度を知ること等が挙げられる。情報処理装置100により実現されるツールTL1の機能により、上述するようなユーザニーズに対する適切な情報をユーザに提供することができる。
[2.その他の実施形態]
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態(変形例)にて実施されてよい。データの提供方法を決定する情報処理装置は、上述した例に限らず、種々の態様であってもよい。この点について以下説明する。なお、以下では、実施形態に係る情報処理装置100と同様の点については、適宜説明を省略する。
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態(変形例)にて実施されてよい。データの提供方法を決定する情報処理装置は、上述した例に限らず、種々の態様であってもよい。この点について以下説明する。なお、以下では、実施形態に係る情報処理装置100と同様の点については、適宜説明を省略する。
[2-1.変形例]
例えば、上述した例では、情報処理を行う情報処理装置が情報処理装置100である例を示したが、情報処理装置と、情報を表示する端末装置とは別体であってもよい。この点について、図13及び図14を用いて説明する。図13は、本開示の変形例に係る情報処理システムの構成例を示す図である。図14は、本開示の変形例に係る情報処理装置の構成例を示す図である。
例えば、上述した例では、情報処理を行う情報処理装置が情報処理装置100である例を示したが、情報処理装置と、情報を表示する端末装置とは別体であってもよい。この点について、図13及び図14を用いて説明する。図13は、本開示の変形例に係る情報処理システムの構成例を示す図である。図14は、本開示の変形例に係る情報処理装置の構成例を示す図である。
図13に示すように、情報処理システム1には、端末装置10と、情報処理装置100Aとが含まれる。端末装置10及び情報処理装置100Aは通信網Nを介して、有線又は無線により通信可能に接続される。なお、図13に示した情報処理システム1には、複数台の端末装置10や、複数台の情報処理装置100Aが含まれてもよい。この場合、情報処理装置100Aは、通信網Nを介して端末装置10と通信し、端末装置10への情報の提供やユーザが端末装置10を介して指定したパラメータ等の情報を基に、モデルの学習を行なったりしてもよい。
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、例えば、ノート型PC(Personal Computer)や、デスクトップPCや、スマートフォンや、タブレット型端末や、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。なお、端末装置10は、情報処理装置100Aが提供する情報を表示可能であればどのような端末装置であってもよい。端末装置10は、クライアント端末である。
また、端末装置10は、ユーザによる操作を受け付ける。図13に示す例において、端末装置10は、情報処理装置100Aが提供する情報を画面に表示する。また、端末装置10は、ユーザによる操作を示す情報等の情報を情報処理装置100Aへ送信する。例えば、端末装置10は、ユーザによる学習処理の実行を指示する指示情報を情報処理装置100Aへ送信する。端末装置10は、情報処理装置100Aから受信した情報を表示する。端末装置10は、情報処理装置100Aから受信した精度情報を表示する。端末装置10は、モデルの精度の測定結果や予測結果を示す精度情報を表示する。端末装置10は、情報処理装置100Aから受信したグラフを表示する。
情報処理装置100Aは、端末装置10に情報を提供したり、端末装置10から情報を取得したりする点で情報処理装置100と相違する以外は、情報処理装置100と同様の情報処理を実現する。情報処理装置100Aは、クライアント端末である端末装置10にサービスを提供するサーバである。例えば、情報処理装置100Aは、端末装置10から取得した指示情報を基に、精度情報を生成する生成処理を行い、生成した精度情報を端末装置10へ送信する。
図14に示すように、情報処理装置100Aは、通信部11と、記憶部14と、制御部15Aとを有する。通信部11は、通信網N(インターネット等)と有線又は無線で接続され、通信網Nを介して、端末装置10との間で情報の送受信を行う。この場合、情報処理装置100Aは、情報処理装置100のような情報を表示する機能を有しなくてもよい。なお、情報処理装置100Aは、情報処理装置100Aの管理者等が利用する入力部(例えば、キーボードやマウス等)や表示部(例えば、液晶ディスプレイ等)を有してもよい。
制御部15Aは、例えば、CPUやMPU等によって、情報処理装置100A内部に記憶されたプログラム(例えば、本開示に係る情報処理プログラム)がRAM等を作業領域として実行されることにより実現される。また、制御部15Aは、例えば、ASICやFPGA等の集積回路により実現されてもよい。
図14に示すように、制御部15Aは、取得部151Aと、学習部152と、演算部153と、予測部154と、生成部155と、送信部156Aとを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部15Aの内部構成は、図14に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
取得部151Aは、取得部151と同様に各種情報を取得する。取得部151Aは、端末装置10から各種情報を取得する。取得部151Aは、端末装置10からユーザの操作情報を取得する。取得部151Aは、記憶部14から各種情報を取得する。
送信部156Aは、送信部156と同様に各種情報の提供を行う。送信部156Aは、端末装置10に各種情報を提供する。送信部156Aは、端末装置10へ各種情報を送信する。送信部156Aは、生成部155により生成された情報を端末装置10に提供する。送信部156Aは、端末装置10に表示させる情報を端末装置10に送信する。
[2-2.その他の構成例]
また、上述した各実施形態や変形例に係る処理は、上記実施形態や変形例以外にも種々の異なる形態(変形例)にて実施されてよい。例えば、モデルを学習する装置(学習装置)と、モデルを用いて精度を測定する装置(測定装置)と、モデルの精度を予測する装置(予測装置)と、精度情報を生成する装置(生成装置)とは別体であってもよいし、一体であってもよい。例えば、モデルを用いて精度を測定する装置(測定装置)と、モデルの精度を予測する装置(予測装置)と、精度情報を生成する装置(生成装置)とは一体であってもよい。この場合、情報処理システムは、測定処理、予測処理、及び生成処理を行う情報処理装置と、学習処理を行う学習装置とを含んでもよい。なお、上記は一例であり、情報処理システムは種々の構成により実現されてもよい。
また、上述した各実施形態や変形例に係る処理は、上記実施形態や変形例以外にも種々の異なる形態(変形例)にて実施されてよい。例えば、モデルを学習する装置(学習装置)と、モデルを用いて精度を測定する装置(測定装置)と、モデルの精度を予測する装置(予測装置)と、精度情報を生成する装置(生成装置)とは別体であってもよいし、一体であってもよい。例えば、モデルを用いて精度を測定する装置(測定装置)と、モデルの精度を予測する装置(予測装置)と、精度情報を生成する装置(生成装置)とは一体であってもよい。この場合、情報処理システムは、測定処理、予測処理、及び生成処理を行う情報処理装置と、学習処理を行う学習装置とを含んでもよい。なお、上記は一例であり、情報処理システムは種々の構成により実現されてもよい。
[2-3.その他]
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
[3.本開示に係る効果]
上述のように、本開示に係るバイアス調整装置(実施形態では情報処理装置100、100A)は、学習用データを用いた機械学習による識別モデルに関するバイアス調整装置であり、演算部(実施形態では演算部153)と、予測部(実施形態では予測部154)と、制御部(実施形態では生成部155)とを備える。演算部は、第1の学習用データで学習された識別モデルの第1の識別精度と、第1の学習用データに対してデータ数を調整された第2の学習用データで学習された識別モデルの第2の識別精度を算出する。予測部は、第1の識別精度と第2の識別精度に基づいて、学習用データの数に対する識別精度の変化を予測する。制御部は、予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように学習に用いるデータ数を調整する、又は、識別モデルを変更する。
上述のように、本開示に係るバイアス調整装置(実施形態では情報処理装置100、100A)は、学習用データを用いた機械学習による識別モデルに関するバイアス調整装置であり、演算部(実施形態では演算部153)と、予測部(実施形態では予測部154)と、制御部(実施形態では生成部155)とを備える。演算部は、第1の学習用データで学習された識別モデルの第1の識別精度と、第1の学習用データに対してデータ数を調整された第2の学習用データで学習された識別モデルの第2の識別精度を算出する。予測部は、第1の識別精度と第2の識別精度に基づいて、学習用データの数に対する識別精度の変化を予測する。制御部は、予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように学習に用いるデータ数を調整する、又は、識別モデルを変更する。
これにより、本開示に係るバイアス調整装置は、学習用データを調整して学習した識別モデルの第1の識別精度と第2の識別精度に基づいて、学習用データの数に対する識別精度の変化を予測し、予測された識別精度の変化に基づいて、学習に用いるデータ数を調整する、又は、識別モデルを変更することで、バイアスの影響が抑制されたモデルを生成することが可能となる。したがって、バイアス調整装置は、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができる。
また、バイアス調整装置は、表示部(実施形態では表示部13)を有する。表示部は、予測された識別精度の変化をグラフ、又は、テキストで表示する。これにより、バイアス調整装置は、予測された識別精度の変化を種々の態様により表示することで、適切な情報提供を行うことができる。したがって、バイアス調整装置は、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができる。
また、学習用データは、少なくとも、人種、性別、住所、収入、又は、学歴に関するデータである。これにより、バイアス調整装置は、人種、性別、住所、収入、又は、学歴に関連するバイアスを適切に予測することができる。
上述のように、本開示に係る情報処理装置(実施形態では情報処理装置100、100A)は、取得部(実施形態では取得部151)と、生成部(実施形態では生成部155)とを備える。取得部は、機械学習によるモデルの学習に用いる学習用データを取得する。生成部は、学習用データにより学習されるモデルである第1モデルの第1精度と、データ数を調整する対象に応じて学習用データのデータ数が調整された調整後データにより学習されるモデルである第2モデルの第2精度とに基づいて、モデルの精度を示す精度情報を生成する。
これにより、本開示に係る情報処理装置は、第1モデルの第1精度と、第2モデルの第2精度との2つの精度を用いてモデルの精度を示す精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。したがって、情報処理装置は、データが調整された学習によるモデルを用いることでモデルの学習に関連する処理を適切に実行可能にすることができる。
また、生成部は、学習用データからデータ数が減らされた調整後データにより学習される第2モデルに基づいて、精度情報を生成する。これにより、情報処理装置は、学習用データからデータ数が減らした場合に精度がどのなるかを示す精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、第1精度と、第2精度とに基づいて、対象に応じたデータ数の調整によるモデルの精度変化を示す精度情報を生成する。これにより、情報処理装置は、対象に応じたデータ数の調整によるモデルの精度変化を示す精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、評価用データを用いて測定される第1モデルの第1精度と、評価用データを用いて測定される第2モデルの第2精度とに基づいて、精度情報を生成する。これにより、情報処理装置は、評価用データを用いて測定した精度を用いて精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、第1精度と、第2精度とに基づいて、対象に応じてデータ数を調整した場合のモデルの精度変化の予測を示す精度情報を生成する。これにより、情報処理装置は、対象に応じてデータ数を調整した場合のモデルの精度変化の予測を示す精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、学習用データのデータ数を増やした場合のモデルの精度変化の予測を示す精度情報を生成する。これにより、情報処理装置は、学習用データのデータ数を増やした場合のモデルの精度変化の予測を示す精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、学習用データのデータ数を増やした場合のモデルの精度の予測線を含む精度情報を生成する。これにより、情報処理装置は、学習用データのデータ数を増やした場合のモデルの精度の予測線を含む精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、対象に関する区分を示すカテゴリに応じて学習用データのデータ数が調整された調整後データにより学習される第2モデルの第2精度に基づいて、カテゴリに関する精度情報を生成する。これにより、情報処理装置は、カテゴリに関する精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、対象の複数のカテゴリのうち、一のカテゴリに応じて学習用データのデータ数が調整された調整後データにより学習される第2モデルの第2精度に基づいて、一のカテゴリに対するモデルの精度を示すモデルの精度情報を生成する。これにより、情報処理装置は、対象の複数のカテゴリのうち一のカテゴリに対するモデルの精度を示すモデルの精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、学習用データのうち、一のカテゴリに対応するデータ数が調整された調整後データにより学習される第2モデルの第2精度に基づいて、精度情報を生成する。これにより、情報処理装置は、学習用データのうち、一のカテゴリに対応するデータ数が調整して精度を測定し、精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、取得部は、複数のカテゴリの各々に対応するデータを含む学習用データを取得する。生成部は、学習用データのうち、一のカテゴリに対応するデータ数が減らされた調整後データにより学習される第2モデルの第2精度に基づいて、精度情報を生成する。これにより、情報処理装置は、学習用データのうち、一のカテゴリに対応するデータ数が減らして精度を測定し、精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、一のカテゴリに対する第1モデルの第1精度と、一のカテゴリに対する第2モデルの第2精度とに基づいて、精度情報を生成する。これにより、情報処理装置は、学習用データのうち、一のカテゴリに対する第1モデルの第1精度と、一のカテゴリに対する第2モデルの第2精度とを用いて、一のカテゴリの精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、一のカテゴリに対応する評価用データを用いて測定される第1モデルの第1精度と、一のカテゴリに対応する評価用データを用いて測定される第2モデルの第2精度とに基づいて、精度情報を生成する。これにより、情報処理装置は、一のカテゴリに対応する評価用データを用いて測定した精度を用いて精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、複数のカテゴリごとに学習用データのデータ数が調整された複数の調整後データの各々により学習される複数の第2モデルの複数の第2精度に基づいて、複数のカテゴリの各々に対するモデルの精度を示す精度情報を生成する。これにより、情報処理装置は、複数のカテゴリの各々に対するモデルの精度を示す精度情報を生成することで、カテゴリ間での比較が可能となるため、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、複数のカテゴリの各々に対応する第1モデルの複数の第1精度と、複数のカテゴリの各々に対応する複数の第2モデルの複数の第2精度とに基づいて、精度情報を生成する。これにより、情報処理装置は、複数のカテゴリの各々の第1精度と第2精度とを用いて、各カテゴリの精度情報を生成することで、カテゴリ間での比較が可能となるため、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、複数のカテゴリの各々に対応する評価用データを用いて測定される第1モデルの複数の第1精度と、複数のカテゴリの各々に対応する複数の第2精度とに基づいて、精度情報を生成する。これにより、情報処理装置は、複数のカテゴリの各々に対応する評価用データを用いて測定した精度を用いて精度情報を生成することで、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、生成部は、複数のカテゴリの各々に対応する複数の第1精度と、複数のカテゴリの各々に対応する複数の第2精度とに基づいて、モデルの精度に関する複数のカテゴリ間の関係を示す精度情報を生成する。これにより、情報処理装置は、モデルの精度に関する複数のカテゴリ間の関係を示す精度情報を生成することで、カテゴリ間でのバイアスやフェアネスがどのような状態であるかを把握可能となるため、データの調整によりモデルの精度に関する情報を適切に生成することができる。
また、情報処理装置は、表示部(実施形態では表示部13)を有する。表示部は、精度情報を表示する。これにより、情報処理装置は、モデルの精度に関する適切な情報提供を行うことができる。
[4.ハードウェア構成]
上述してきた各実施形態に係る情報処理装置100、100A等の情報機器は、例えば図15に示すような構成のコンピュータ1000によって実現される。図15は、情報処理装置100、100A等の情報処理装置の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。以下、実施形態に係る情報処理装置100を例に挙げて説明する。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
上述してきた各実施形態に係る情報処理装置100、100A等の情報機器は、例えば図15に示すような構成のコンピュータ1000によって実現される。図15は、情報処理装置100、100A等の情報処理装置の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。以下、実施形態に係る情報処理装置100を例に挙げて説明する。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされた情報処理プログラムを実行することにより、制御部15等の機能を実現する。また、HDD1400には、本開示に係る情報処理プログラムや、記憶部14内のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
なお、本技術は以下のような構成も取ることができる。
(1)
学習用データを用いた機械学習による識別モデルに関するバイアス調整装置において、
第1の学習用データで学習された前記識別モデルの第1の識別精度と、前記第1の学習用データに対してデータ数を調整された第2の学習用データで学習された前記識別モデルの第2の識別精度を算出する演算部と、
前記第1の識別精度と前記第2の識別精度に基づいて、前記学習用データの数に対する識別精度の変化を予測する予測部と、
前記予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように前記学習に用いるデータ数を調整する、又は、前記識別モデルを変更する制御部と、
を備えるバイアス調整装置。
(2)
前記予測された識別精度の変化をグラフ、又は、テキストで表示する表示部、
を備える前記(1)に記載のバイアス調整装置。
(3)
前記学習用データは、少なくとも、人種、性別、住所、収入、又は、学歴に関するデータである前記(1)または(2)に記載のバイアス調整装置。
(4)
機械学習によるモデルの学習に用いる学習用データを取得する取得部と、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する生成部と、
を備える情報処理装置。
(5)
前記生成部は、
前記学習用データからデータ数が減らされた前記調整後データにより学習される前記第2モデルに基づいて、前記精度情報を生成する
前記(4)に記載の情報処理装置。
(6)
前記生成部は、
前記第1精度と、前記第2精度とに基づいて、前記対象に応じたデータ数の調整による前記モデルの精度変化を示す前記精度情報を生成する
前記(4)または(5)に記載の情報処理装置。
(7)
前記生成部は、
評価用データを用いて測定される前記第1モデルの前記第1精度と、前記評価用データを用いて測定される前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
前記(4)~(6)のいずれか1項に記載の情報処理装置。
(8)
前記生成部は、
前記第1精度と、前記第2精度とに基づいて、前記対象に応じてデータ数を調整した場合の前記モデルの精度変化の予測を示す前記精度情報を生成する
前記(4)~(7)のいずれか1項に記載の情報処理装置。
(9)
前記生成部は、
前記学習用データのデータ数を増やした場合の前記モデルの精度変化の予測を示す前記精度情報を生成する
前記(4)~(8)のいずれか1項に記載の情報処理装置。
(10)
前記生成部は、
前記学習用データのデータ数を増やした場合の前記モデルの精度の予測線を含む前記精度情報を生成する
前記(4)~(9)のいずれか1項に記載の情報処理装置。
(11)
前記生成部は、
前記対象に関する区分を示すカテゴリに応じて前記学習用データのデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記カテゴリに関する前記精度情報を生成する
前記(4)~(10)のいずれか1項に記載の情報処理装置。
(12)
前記生成部は、
前記対象の複数のカテゴリのうち、一のカテゴリに応じて前記学習用データのデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記一のカテゴリに対する前記モデルの精度を示す前記モデルの前記精度情報を生成する
前記(11)に記載の情報処理装置。
(13)
前記生成部は、
前記学習用データのうち、前記一のカテゴリに対応するデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記精度情報を生成する
前記(12)に記載の情報処理装置。
(14)
前記取得部は、
前記複数のカテゴリの各々に対応するデータを含む前記学習用データを取得し、
前記生成部は、
前記学習用データのうち、前記一のカテゴリに対応するデータ数が減らされた前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記精度情報を生成する
前記(12)または(13)に記載の情報処理装置。
(15)
前記生成部は、
前記一のカテゴリに対する前記第1モデルの前記第1精度と、前記一のカテゴリに対する前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
前記(12)~(14)のいずれか1項に記載の情報処理装置。
(16)
前記生成部は、
前記一のカテゴリに対応する評価用データを用いて測定される前記第1モデルの前記第1精度と、前記一のカテゴリに対応する評価用データを用いて測定される前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
前記(15)に記載の情報処理装置。
(17)
前記生成部は、
前記複数のカテゴリごとに前記学習用データのデータ数が調整された複数の調整後データの各々により学習される複数の第2モデルの複数の第2精度に基づいて、前記複数のカテゴリの各々に対する前記モデルの精度を示す前記精度情報を生成する
前記(12)~(16)のいずれか1項に記載の情報処理装置。
(18)
前記生成部は、
前記複数のカテゴリの各々に対応する前記第1モデルの複数の第1精度と、前記複数のカテゴリの各々に対応する前記複数の第2モデルの前記複数の第2精度とに基づいて、前記精度情報を生成する
前記(17)に記載の情報処理装置。
(19)
前記生成部は、
前記複数のカテゴリの各々に対応する評価用データを用いて測定される前記第1モデルの前記複数の第1精度と、前記複数のカテゴリの各々に対応する前記複数の第2精度とに基づいて、前記精度情報を生成する
前記(18)に記載の情報処理装置。
(20)
前記生成部は、
前記複数のカテゴリの各々に対応する前記複数の第1精度と、前記複数のカテゴリの各々に対応する前記複数の第2精度とに基づいて、前記モデルの精度に関する前記複数のカテゴリ間の関係を示す前記精度情報を生成する
前記(18)または(19)に記載の情報処理装置。
(21)
前記生成部は、
前記複数のカテゴリにおける前記モデルの精度の偏りを示す前記精度情報を生成する
前記(20)に記載の情報処理装置。
(22)
前記生成部は、
前記複数のカテゴリの各々の前記モデルの精度改善の難度を示す前記精度情報を生成する
前記(20)または(21)に記載の情報処理装置。
(23)
前記モデルを学習する学習部、
を備える
前記(4)~(22)のいずれか1項に記載の情報処理装置。
(24)
前記精度情報を表示する表示部、
を備える
前記(4)~(23)のいずれか1項に記載の情報処理装置。
(25)
前記表示部は、
前記精度情報を文字として表示する
前記(24)に記載の情報処理装置。
(26)
前記表示部は、
前記精度情報を数値として表示する
前記(24)または(25)に記載の情報処理装置。
(27)
前記表示部は、
前記精度情報を図として表示する
前記(24)~(26)のいずれか1項に記載の情報処理装置。
(28)
前記表示部は、
前記精度情報をグラフとして表示する
前記(24)~(27)のいずれか1項に記載の情報処理装置。
(29)
前記表示部は、
第1軸を精度とし、第2軸をデータ数とする前記グラフを表示する
前記(28)に記載の情報処理装置。
(30)
前記取得部は、
前記モデルの精度の目標を示す目標精度を取得し、
前記表示部は、
前記モデルの精度と前記目標精度との関係を示す情報を表示する
前記(24)~(29)のいずれか1項に記載の情報処理装置。
(31)
前記表示部は、
前記モデルの精度におけるデータ数と、前記目標精度におけるデータ数との関係を示す情報を表示する
前記(30)に記載の情報処理装置。
(32)
ユーザによる前記目標精度の入力を受け付ける入力部、
を備え、
前記取得部は、
前記入力部により受け付けられた前記目標精度を取得する
前記(30)または(31)に記載の情報処理装置。
(33)
前記生成部は、
複数の指標に対応する前記モデルの複数の精度を示す前記精度情報を生成し、
前記表示部は、
前記複数の精度を切り替え可能に表示する
前記(24)~(32)のいずれか1項に記載の情報処理装置。
(34)
前記表示部は、
前記複数の精度のうち、一の精度を表示する
前記(33)に記載の情報処理装置。
(35)
前記取得部は、
前記一の精度を指定する指定情報を取得する
前記(34)に記載の情報処理装置。
(36)
前記表示部は、
ユーザにより指定された前記一の精度を表示する
前記(34)または(35)に記載の情報処理装置。
(37)
機械学習によるモデルの学習に用いる学習用データを取得し、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する、
処理を実行する情報処理方法。
(38)
機械学習によるモデルの学習に用いる学習用データを取得し、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する、
処理を実行させる情報処理プログラム。
(1)
学習用データを用いた機械学習による識別モデルに関するバイアス調整装置において、
第1の学習用データで学習された前記識別モデルの第1の識別精度と、前記第1の学習用データに対してデータ数を調整された第2の学習用データで学習された前記識別モデルの第2の識別精度を算出する演算部と、
前記第1の識別精度と前記第2の識別精度に基づいて、前記学習用データの数に対する識別精度の変化を予測する予測部と、
前記予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように前記学習に用いるデータ数を調整する、又は、前記識別モデルを変更する制御部と、
を備えるバイアス調整装置。
(2)
前記予測された識別精度の変化をグラフ、又は、テキストで表示する表示部、
を備える前記(1)に記載のバイアス調整装置。
(3)
前記学習用データは、少なくとも、人種、性別、住所、収入、又は、学歴に関するデータである前記(1)または(2)に記載のバイアス調整装置。
(4)
機械学習によるモデルの学習に用いる学習用データを取得する取得部と、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する生成部と、
を備える情報処理装置。
(5)
前記生成部は、
前記学習用データからデータ数が減らされた前記調整後データにより学習される前記第2モデルに基づいて、前記精度情報を生成する
前記(4)に記載の情報処理装置。
(6)
前記生成部は、
前記第1精度と、前記第2精度とに基づいて、前記対象に応じたデータ数の調整による前記モデルの精度変化を示す前記精度情報を生成する
前記(4)または(5)に記載の情報処理装置。
(7)
前記生成部は、
評価用データを用いて測定される前記第1モデルの前記第1精度と、前記評価用データを用いて測定される前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
前記(4)~(6)のいずれか1項に記載の情報処理装置。
(8)
前記生成部は、
前記第1精度と、前記第2精度とに基づいて、前記対象に応じてデータ数を調整した場合の前記モデルの精度変化の予測を示す前記精度情報を生成する
前記(4)~(7)のいずれか1項に記載の情報処理装置。
(9)
前記生成部は、
前記学習用データのデータ数を増やした場合の前記モデルの精度変化の予測を示す前記精度情報を生成する
前記(4)~(8)のいずれか1項に記載の情報処理装置。
(10)
前記生成部は、
前記学習用データのデータ数を増やした場合の前記モデルの精度の予測線を含む前記精度情報を生成する
前記(4)~(9)のいずれか1項に記載の情報処理装置。
(11)
前記生成部は、
前記対象に関する区分を示すカテゴリに応じて前記学習用データのデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記カテゴリに関する前記精度情報を生成する
前記(4)~(10)のいずれか1項に記載の情報処理装置。
(12)
前記生成部は、
前記対象の複数のカテゴリのうち、一のカテゴリに応じて前記学習用データのデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記一のカテゴリに対する前記モデルの精度を示す前記モデルの前記精度情報を生成する
前記(11)に記載の情報処理装置。
(13)
前記生成部は、
前記学習用データのうち、前記一のカテゴリに対応するデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記精度情報を生成する
前記(12)に記載の情報処理装置。
(14)
前記取得部は、
前記複数のカテゴリの各々に対応するデータを含む前記学習用データを取得し、
前記生成部は、
前記学習用データのうち、前記一のカテゴリに対応するデータ数が減らされた前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記精度情報を生成する
前記(12)または(13)に記載の情報処理装置。
(15)
前記生成部は、
前記一のカテゴリに対する前記第1モデルの前記第1精度と、前記一のカテゴリに対する前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
前記(12)~(14)のいずれか1項に記載の情報処理装置。
(16)
前記生成部は、
前記一のカテゴリに対応する評価用データを用いて測定される前記第1モデルの前記第1精度と、前記一のカテゴリに対応する評価用データを用いて測定される前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
前記(15)に記載の情報処理装置。
(17)
前記生成部は、
前記複数のカテゴリごとに前記学習用データのデータ数が調整された複数の調整後データの各々により学習される複数の第2モデルの複数の第2精度に基づいて、前記複数のカテゴリの各々に対する前記モデルの精度を示す前記精度情報を生成する
前記(12)~(16)のいずれか1項に記載の情報処理装置。
(18)
前記生成部は、
前記複数のカテゴリの各々に対応する前記第1モデルの複数の第1精度と、前記複数のカテゴリの各々に対応する前記複数の第2モデルの前記複数の第2精度とに基づいて、前記精度情報を生成する
前記(17)に記載の情報処理装置。
(19)
前記生成部は、
前記複数のカテゴリの各々に対応する評価用データを用いて測定される前記第1モデルの前記複数の第1精度と、前記複数のカテゴリの各々に対応する前記複数の第2精度とに基づいて、前記精度情報を生成する
前記(18)に記載の情報処理装置。
(20)
前記生成部は、
前記複数のカテゴリの各々に対応する前記複数の第1精度と、前記複数のカテゴリの各々に対応する前記複数の第2精度とに基づいて、前記モデルの精度に関する前記複数のカテゴリ間の関係を示す前記精度情報を生成する
前記(18)または(19)に記載の情報処理装置。
(21)
前記生成部は、
前記複数のカテゴリにおける前記モデルの精度の偏りを示す前記精度情報を生成する
前記(20)に記載の情報処理装置。
(22)
前記生成部は、
前記複数のカテゴリの各々の前記モデルの精度改善の難度を示す前記精度情報を生成する
前記(20)または(21)に記載の情報処理装置。
(23)
前記モデルを学習する学習部、
を備える
前記(4)~(22)のいずれか1項に記載の情報処理装置。
(24)
前記精度情報を表示する表示部、
を備える
前記(4)~(23)のいずれか1項に記載の情報処理装置。
(25)
前記表示部は、
前記精度情報を文字として表示する
前記(24)に記載の情報処理装置。
(26)
前記表示部は、
前記精度情報を数値として表示する
前記(24)または(25)に記載の情報処理装置。
(27)
前記表示部は、
前記精度情報を図として表示する
前記(24)~(26)のいずれか1項に記載の情報処理装置。
(28)
前記表示部は、
前記精度情報をグラフとして表示する
前記(24)~(27)のいずれか1項に記載の情報処理装置。
(29)
前記表示部は、
第1軸を精度とし、第2軸をデータ数とする前記グラフを表示する
前記(28)に記載の情報処理装置。
(30)
前記取得部は、
前記モデルの精度の目標を示す目標精度を取得し、
前記表示部は、
前記モデルの精度と前記目標精度との関係を示す情報を表示する
前記(24)~(29)のいずれか1項に記載の情報処理装置。
(31)
前記表示部は、
前記モデルの精度におけるデータ数と、前記目標精度におけるデータ数との関係を示す情報を表示する
前記(30)に記載の情報処理装置。
(32)
ユーザによる前記目標精度の入力を受け付ける入力部、
を備え、
前記取得部は、
前記入力部により受け付けられた前記目標精度を取得する
前記(30)または(31)に記載の情報処理装置。
(33)
前記生成部は、
複数の指標に対応する前記モデルの複数の精度を示す前記精度情報を生成し、
前記表示部は、
前記複数の精度を切り替え可能に表示する
前記(24)~(32)のいずれか1項に記載の情報処理装置。
(34)
前記表示部は、
前記複数の精度のうち、一の精度を表示する
前記(33)に記載の情報処理装置。
(35)
前記取得部は、
前記一の精度を指定する指定情報を取得する
前記(34)に記載の情報処理装置。
(36)
前記表示部は、
ユーザにより指定された前記一の精度を表示する
前記(34)または(35)に記載の情報処理装置。
(37)
機械学習によるモデルの学習に用いる学習用データを取得し、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する、
処理を実行する情報処理方法。
(38)
機械学習によるモデルの学習に用いる学習用データを取得し、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する、
処理を実行させる情報処理プログラム。
100、100A 情報処理装置(バイアス調整装置)
11 通信部
12 入力部
13 表示部(ディスプレイ)
14 記憶部
141 データ情報記憶部
142 モデル情報記憶部
143 精度情報記憶部
15、15A 制御部
151、151A 取得部
152 学習部
153 演算部(測定部)
154 予測部
155 生成部(制御部)
156、156A 送信部
11 通信部
12 入力部
13 表示部(ディスプレイ)
14 記憶部
141 データ情報記憶部
142 モデル情報記憶部
143 精度情報記憶部
15、15A 制御部
151、151A 取得部
152 学習部
153 演算部(測定部)
154 予測部
155 生成部(制御部)
156、156A 送信部
Claims (20)
- 学習用データを用いた機械学習による識別モデルに関するバイアス調整装置において、
第1の学習用データで学習された前記識別モデルの第1の識別精度と、前記第1の学習用データに対してデータ数を調整された第2の学習用データで学習された前記識別モデルの第2の識別精度を算出する演算部と、
前記第1の識別精度と前記第2の識別精度に基づいて、前記学習用データの数に対する識別精度の変化を予測する予測部と、
前記予測された識別精度の変化に基づいて、当該予測された識別精度の変化が所定の目標値となるように前記学習に用いるデータ数を調整する、又は、前記識別モデルを変更する制御部と、
を備えるバイアス調整装置。 - 前記予測された識別精度の変化をグラフ、又は、テキストで表示する表示部、
を備える請求項1に記載のバイアス調整装置。 - 前記学習用データは、少なくとも、人種、性別、住所、収入、又は、学歴に関するデータである請求項1に記載のバイアス調整装置。
- 機械学習によるモデルの学習に用いる学習用データを取得する取得部と、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する生成部と、
を備える情報処理装置。 - 前記生成部は、
前記学習用データからデータ数が減らされた前記調整後データにより学習される前記第2モデルに基づいて、前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
前記第1精度と、前記第2精度とに基づいて、前記対象に応じたデータ数の調整による前記モデルの精度変化を示す前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
評価用データを用いて測定される前記第1モデルの前記第1精度と、前記評価用データを用いて測定される前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
前記第1精度と、前記第2精度とに基づいて、前記対象に応じてデータ数を調整した場合の前記モデルの精度変化の予測を示す前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
前記学習用データのデータ数を増やした場合の前記モデルの精度変化の予測を示す前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
前記学習用データのデータ数を増やした場合の前記モデルの精度の予測線を含む前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
前記対象に関する区分を示すカテゴリに応じて前記学習用データのデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記カテゴリに関する前記精度情報を生成する
請求項4に記載の情報処理装置。 - 前記生成部は、
前記対象の複数のカテゴリのうち、一のカテゴリに応じて前記学習用データのデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記一のカテゴリに対する前記モデルの精度を示す前記モデルの前記精度情報を生成する
請求項11に記載の情報処理装置。 - 前記生成部は、
前記学習用データのうち、前記一のカテゴリに対応するデータ数が調整された前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記精度情報を生成する
請求項12に記載の情報処理装置。 - 前記取得部は、
前記複数のカテゴリの各々に対応するデータを含む前記学習用データを取得し、
前記生成部は、
前記学習用データのうち、前記一のカテゴリに対応するデータ数が減らされた前記調整後データにより学習される前記第2モデルの前記第2精度に基づいて、前記精度情報を生成する
請求項12に記載の情報処理装置。 - 前記生成部は、
前記一のカテゴリに対する前記第1モデルの前記第1精度と、前記一のカテゴリに対する前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
請求項12に記載の情報処理装置。 - 前記生成部は、
前記一のカテゴリに対応する評価用データを用いて測定される前記第1モデルの前記第1精度と、前記一のカテゴリに対応する評価用データを用いて測定される前記第2モデルの前記第2精度とに基づいて、前記精度情報を生成する
請求項15に記載の情報処理装置。 - 前記生成部は、
前記複数のカテゴリごとに前記学習用データのデータ数が調整された複数の調整後データの各々により学習される複数の第2モデルの複数の第2精度に基づいて、前記複数のカテゴリの各々に対する前記モデルの精度を示す前記精度情報を生成する
請求項12に記載の情報処理装置。 - 前記精度情報を表示する表示部、
を備える
請求項4に記載の情報処理装置。 - 機械学習によるモデルの学習に用いる学習用データを取得し、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する、
処理を実行する情報処理方法。 - 機械学習によるモデルの学習に用いる学習用データを取得し、
前記学習用データにより学習される前記モデルである第1モデルの第1精度と、データ数を調整する対象に応じて前記学習用データのデータ数が調整された調整後データにより学習される前記モデルである第2モデルの第2精度とに基づいて、前記モデルの精度を示す精度情報を生成する、
処理を実行させる情報処理プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/771,051 US20220358313A1 (en) | 2019-10-29 | 2020-10-16 | Bias adjustment device, information processing device, information processing method, and information processing program |
EP20880972.3A EP4053758A4 (en) | 2019-10-29 | 2020-10-16 | POLARIZATION ADJUSTMENT DEVICE, INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND INFORMATION PROCESSING PROGRAM |
CN202080074840.6A CN114730388A (zh) | 2019-10-29 | 2020-10-16 | 偏差调整装置、信息处理装置、信息处理方法以及信息处理程序 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-196106 | 2019-10-29 | ||
JP2019196106 | 2019-10-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021085188A1 true WO2021085188A1 (ja) | 2021-05-06 |
Family
ID=75715934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/039133 WO2021085188A1 (ja) | 2019-10-29 | 2020-10-16 | バイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220358313A1 (ja) |
EP (1) | EP4053758A4 (ja) |
CN (1) | CN114730388A (ja) |
WO (1) | WO2021085188A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022254626A1 (ja) * | 2021-06-02 | 2022-12-08 | 富士通株式会社 | 機械学習プログラム,機械学習方法および機械学習装置 |
EP4220500A1 (en) | 2022-01-26 | 2023-08-02 | Fujitsu Limited | Data modification program, data modification method, and information processing apparatus |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004086896A (ja) * | 2002-08-06 | 2004-03-18 | Fuji Electric Holdings Co Ltd | 適応的予測モデル構築方法及び適応的予測モデル構築システム |
JP2017111733A (ja) * | 2015-12-18 | 2017-06-22 | ヤフー株式会社 | 学習装置、学習方法および学習プログラム |
JP2017130196A (ja) | 2016-01-14 | 2017-07-27 | キヤノン株式会社 | 認識学習装置、認識学習方法及びプログラム |
JP2017162209A (ja) * | 2016-03-09 | 2017-09-14 | 富士通株式会社 | 分散処理実行管理プログラム、分散処理実行管理方法および分散処理実行管理装置 |
JP2018190140A (ja) * | 2017-05-01 | 2018-11-29 | オムロン株式会社 | 学習装置、学習方法、及び学習プログラム |
JP2019527874A (ja) * | 2016-06-21 | 2019-10-03 | ピンポイント プレディクティヴ,インコーポレイテッド | ユーザー匿名性を維持しつつ機械学習を使って行動データから心理測定プロファイルを予測すること |
-
2020
- 2020-10-16 EP EP20880972.3A patent/EP4053758A4/en active Pending
- 2020-10-16 CN CN202080074840.6A patent/CN114730388A/zh active Pending
- 2020-10-16 WO PCT/JP2020/039133 patent/WO2021085188A1/ja unknown
- 2020-10-16 US US17/771,051 patent/US20220358313A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004086896A (ja) * | 2002-08-06 | 2004-03-18 | Fuji Electric Holdings Co Ltd | 適応的予測モデル構築方法及び適応的予測モデル構築システム |
JP2017111733A (ja) * | 2015-12-18 | 2017-06-22 | ヤフー株式会社 | 学習装置、学習方法および学習プログラム |
JP2017130196A (ja) | 2016-01-14 | 2017-07-27 | キヤノン株式会社 | 認識学習装置、認識学習方法及びプログラム |
JP2017162209A (ja) * | 2016-03-09 | 2017-09-14 | 富士通株式会社 | 分散処理実行管理プログラム、分散処理実行管理方法および分散処理実行管理装置 |
JP2019527874A (ja) * | 2016-06-21 | 2019-10-03 | ピンポイント プレディクティヴ,インコーポレイテッド | ユーザー匿名性を維持しつつ機械学習を使って行動データから心理測定プロファイルを予測すること |
JP2018190140A (ja) * | 2017-05-01 | 2018-11-29 | オムロン株式会社 | 学習装置、学習方法、及び学習プログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022254626A1 (ja) * | 2021-06-02 | 2022-12-08 | 富士通株式会社 | 機械学習プログラム,機械学習方法および機械学習装置 |
EP4220500A1 (en) | 2022-01-26 | 2023-08-02 | Fujitsu Limited | Data modification program, data modification method, and information processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
EP4053758A4 (en) | 2023-01-18 |
US20220358313A1 (en) | 2022-11-10 |
CN114730388A (zh) | 2022-07-08 |
EP4053758A1 (en) | 2022-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11023806B2 (en) | Learning apparatus, identifying apparatus, learning and identifying system, and recording medium | |
Peng et al. | Where do emotions come from? predicting the emotion stimuli map | |
JP5440394B2 (ja) | 評価予測装置、評価予測方法、及びプログラム | |
US20190026630A1 (en) | Information processing apparatus and information processing method | |
US20180365557A1 (en) | Information processing method and information processing apparatus | |
WO2021085188A1 (ja) | バイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラム | |
JP5889019B2 (ja) | ラベル付加装置、ラベル付加方法及びプログラム | |
US11615100B2 (en) | Information processing apparatus, information processing method, and computer program | |
JP2013161298A (ja) | 分類器作成装置、分類器作成方法、及びコンピュータプログラム | |
US11580362B2 (en) | Learning apparatus, generation apparatus, classification apparatus, learning method, and non-transitory computer readable storage medium | |
CN113330462A (zh) | 使用软最近邻损失的神经网络训练 | |
KR20190136337A (ko) | 소셜미디어 컨텐츠 기반 감정 분석 방법, 시스템 및 컴퓨터-판독가능 매체 | |
WO2021200392A1 (ja) | データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置 | |
Siddalingappa et al. | Anomaly detection on medical images using autoencoder and convolutional neural network | |
JP2022097381A (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
KR102668873B1 (ko) | 인공지능 기반 약물성값 차이 예측 모델을 이용하여 추천 화합물을 제공하는 방법 및 서버 | |
WO2022149480A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP7420278B2 (ja) | 情報処理装置、情報処理方法、及び、記録媒体 | |
US20240203595A1 (en) | Characteristics of patient influencing disease progession | |
US20240013058A1 (en) | Information processing method, information processing apparatus, and non-transitory computer-readable storage medium | |
US11995537B1 (en) | Training network with batches of input instances | |
JP7304475B1 (ja) | 情報処理方法、情報処理装置および情報処理プログラム | |
US20220237777A1 (en) | Method for measuring lesion of medical image | |
US20240013057A1 (en) | Information processing method, information processing apparatus, and non-transitory computer-readable storage medium | |
KR20240080039A (ko) | 예상 성인 키의 연산 방법 및 이를 수행하기 위한 장치 |
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: 20880972 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2020880972 Country of ref document: EP Effective date: 20220530 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |