WO2023181243A1 - モデル分析装置、モデル分析方法、及び、記録媒体 - Google Patents

モデル分析装置、モデル分析方法、及び、記録媒体 Download PDF

Info

Publication number
WO2023181243A1
WO2023181243A1 PCT/JP2022/013899 JP2022013899W WO2023181243A1 WO 2023181243 A1 WO2023181243 A1 WO 2023181243A1 JP 2022013899 W JP2022013899 W JP 2022013899W WO 2023181243 A1 WO2023181243 A1 WO 2023181243A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
performance
attribute
category
parameter
Prior art date
Application number
PCT/JP2022/013899
Other languages
English (en)
French (fr)
Inventor
竜太 松野
智哉 坂井
啓太 佐久間
義男 亀田
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to PCT/JP2022/013899 priority Critical patent/WO2023181243A1/ja
Publication of WO2023181243A1 publication Critical patent/WO2023181243A1/ja

Links

Images

Classifications

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

Definitions

  • This disclosure relates to analysis of machine learning models.
  • Patent Document 1 discloses a method for visualizing the relationship between the number of training data used for learning a model and the classification accuracy of the model obtained by learning, for each category of training data used for learning a discrimination model. It is listed.
  • One purpose of the present disclosure is to evaluate the performance of a model for each category attribute of a dataset used for prediction, and to modify the model so as to reduce the difference in model performance.
  • the model analysis device includes: a model acquisition means for acquiring a model; a dataset acquisition means for acquiring the dataset; performance calculation means for calculating the performance of the model for each attribute corresponding to each category of the data set; an output means for outputting performance information indicating the performance of the model for each calculated attribute; parameter changing means for receiving a change in a parameter of the model corresponding to the attribute; training means for retraining the model using the changed parameters; Equipped with The performance calculation means calculates the performance of the model after retraining, when the model is retrained.
  • the model analysis method includes: get the model, Get the dataset and Calculating the performance of the model for each attribute corresponding to each category of the dataset, Outputs performance information showing the performance of the model for each calculated attribute, receiving a change in a parameter of the model corresponding to the attribute; The model is retrained using the changed parameters, and the performance of the retrained model is calculated.
  • the recording medium includes: get the model, Get the dataset and Calculating the performance of the model for each attribute corresponding to each category of the dataset, Outputs performance information showing the performance of the model for each calculated attribute, receiving a change in a parameter of the model corresponding to the attribute;
  • a program is recorded that causes a computer to execute a process of retraining the model using the changed parameters and calculating the performance of the model after the retraining.
  • the performance of a model can be evaluated for each category attribute of a dataset used for prediction, and the model can be modified to reduce the difference in model performance.
  • FIG. 1 is a block diagram showing the overall configuration of a model generation system according to a first embodiment.
  • FIG. 2 is a block diagram showing the hardware configuration of a model generation device.
  • 1 is a block diagram showing a functional configuration of a model generation device according to a first embodiment;
  • FIG. An example of displaying performance information by attribute is shown below. Another display example of attribute-specific performance information is shown. It is a flowchart of model analysis processing.
  • FIG. 1 is a block diagram showing a schematic configuration of a model generation system using a server and a terminal device.
  • FIG. 2 is a block diagram showing the functional configuration of a model analysis device according to a second embodiment. It is a flowchart of processing by a model analysis device of a 2nd embodiment.
  • FIG. 1 is a block diagram showing the overall configuration of a model generation system according to a first embodiment.
  • the model generation system 1 includes a model generation device 100, a display device 2, and an input device 3.
  • the model generation device 100 is an application of the model analysis device of the present disclosure, and is configured by, for example, a computer such as a personal computer (PC).
  • the display device 2 is, for example, a liquid crystal display device, and displays the evaluation information generated by the model generation device 100.
  • the input device 3 is, for example, a mouse, a keyboard, etc., and is used by the user to give instructions and input necessary when modifying a model or viewing evaluation information.
  • the model generation device 100 generates a machine learning model (hereinafter also simply referred to as a "model") using training data prepared in advance.
  • the model generation device 100 also analyzes and evaluates the generated model. Specifically, the model generation device 100 performs prediction using a model using evaluation data and the like, and analyzes the prediction performance of the model based on the prediction result.
  • the model generation device 100 calculates a value indicating the performance of the model (hereinafter also referred to as "performance value”) for each attribute of the category of evaluation data. Then, the model generation device 100 presents information indicating the performance of the model for each category attribute to the user as evaluation information. The user can check the evaluation information and operate the input device 3 to input modification information for modifying the model.
  • machine learning model is information that represents the relationship between explanatory variables and objective variables.
  • a machine learning model is, for example, a component for estimating a result to be estimated by calculating a target variable based on an explanatory variable.
  • a machine learning model is generated by executing a learning algorithm using learning data for which the value of the target variable has already been obtained and arbitrary parameters as input.
  • a machine learning model may be represented, for example, by a function c that maps an input x to a correct answer y.
  • the machine learning model may be one that estimates a numerical value to be estimated, or may be one that estimates a label to be estimated.
  • the machine learning model may output variables that describe the probability distribution of the target variable.
  • a machine learning model is sometimes described as a “learning model,” “analytical model,” “AI (Artificial Intelligence) model,” or “prediction formula.”
  • explanatory variables are variables used as input in a machine learning model. Explanatory variables are sometimes described as “features” or “features.”
  • the learning algorithm for generating the machine learning model is not particularly limited, and any existing learning algorithm may be used.
  • the learning algorithm may be a random forest, a support vector machine, a piecewise linear model using Naive Bayes, FAB inference (Factorized Asymmetric Bayesian Inference), or a neural network.
  • FAB inference Vectorized Asymmetric Bayesian Inference
  • a piecewise linear model method using FAB inference is disclosed in, for example, US Patent Publication No. US2014/0222741A1.
  • FIG. 2 is a block diagram showing the hardware configuration of the model generation device 100.
  • the model generation device 100 includes an interface (I/F) 111, a processor 112, a memory 113, a recording medium 114, and a database (DB) 115.
  • I/F interface
  • processor 112 processor 112
  • memory 113 memory
  • recording medium 114 recording medium
  • DB database
  • the I/F 111 inputs and outputs data to and from external devices. Specifically, training data, evaluation data, and instructions and inputs input by the user using the input device 3 are input to the model generation device 100 through the I/F 111. Furthermore, evaluation information of the model generated by the model generation device 100 is output to the display device 2 through the I/F 111.
  • the processor 112 is a computer such as a CPU (Central Processing Unit), and controls the entire model generation device 100 by executing a program prepared in advance.
  • the processor 112 may be a GPU (Graphics Processing Unit), a TPU (Tensor Processing Unit), a quantum processor, or an FPGA (Field-Programmable Gate Array).
  • the processor 112 executes model analysis processing, which will be described later.
  • the memory 113 is composed of ROM (Read Only Memory), RAM (Random Access Memory), and the like. Memory 113 is also used as a working memory while processor 112 executes various processes.
  • the recording medium 114 is a non-volatile, non-temporary recording medium such as a disk-shaped recording medium or a semiconductor memory, and is configured to be detachable from the model generation device 100.
  • the recording medium 114 records various programs executed by the processor 112. When the model generation device 100 executes various processes, a program recorded on the recording medium 114 is loaded into the memory 113 and executed by the processor 112.
  • the DB 115 stores information regarding the model generated by the model generation device 100 (hereinafter referred to as "existing model”) and the model after modification by retraining (hereinafter referred to as "modified model”). Further, the DB 115 stores training data input through the I/F 111, evaluation data, correction information input by the user, and the like, as necessary.
  • FIG. 3 is a block diagram showing the functional configuration of the model generation device 100 of the first embodiment.
  • the model generation device 100 functionally includes a training data DB 121, a model training section 122, a model DB 123, an evaluation data DB 124, and an analysis section 125.
  • the training data DB 121 stores training data used for model generation.
  • Training data D1 is input to model training section 122.
  • the training data D1 is composed of a plurality of combinations of input data and correct answers (correct values or correct labels) for the input data.
  • the model training unit 122 trains a model using the training data D1 and generates a model.
  • the model training unit 122 outputs model data M corresponding to the generated model to the model DB 123 and the analysis unit 125.
  • the model data M includes a plurality of parameter information constituting the model.
  • the parameter information includes, for example, information on explanatory variables used as model inputs, information on weights for each explanatory variable, information on weights for each sample forming input data, and the like.
  • the weight for each explanatory variable may be settable for each category attribute of each explanatory variable.
  • the model training unit 122 retrains the existing model to generate a modified model.
  • the model training unit 122 corrects the parameters constituting the model based on the correction information D3 input by the user using the input device 3, and uses training data for retraining as necessary to improve the model. Perform retraining.
  • the model training unit 122 stores model data M of the corrected model obtained through retraining in the model DB 123 and outputs it to the analysis unit 125.
  • the model training unit 122 is an example of a parameter changing means and a training means.
  • Methods of retraining by the model training unit 122 include a method of ignoring the existing model and retraining a completely new modified model, and a method of updating the existing model using new training data.
  • Other methods of retraining an existing model include a method of updating only the coefficients through retraining without changing the types of explanatory variables used in the model, and a method of retraining including the selection of explanatory variables.
  • the method for retraining the model is not limited to the method described above.
  • the evaluation data DB 124 stores evaluation data used to evaluate the generated model.
  • the evaluation data includes, for example, part of the collected data that was not used as training data, newly collected data, validation data prepared for verification, and the like. Note that training data may be used as evaluation data.
  • the evaluation data is composed of a plurality of combinations of input data and correct answers (correct values or correct labels) for the input data.
  • the evaluation data is stored and used in units of data sets.
  • Each data included in the dataset includes multiple categories. For example, in the case of a prediction model for determining credit, data on a large number of people to be determined is prepared as evaluation data, and each data includes categories such as age group, gender, area of residence, family structure, and income. Furthermore, each category includes multiple attributes (groups).
  • the analysis unit 125 uses the evaluation data to analyze the performance of the model for each attribute corresponding to each category of the dataset. For example, assume that a certain category "gender" includes attributes "male” and "female". In this case, the analysis unit 125 calculates performance values indicating the performance of the model for each of the attributes "male” and "female”. The analysis unit 125 calculates the performance value of the model for each attribute for other categories as well. Note that, as the performance index of the model, various indexes that can be used to evaluate the performance of the model, such as prediction accuracy and compatibility of the model, can be used. As other examples of performance indicators, F1 score, precision, recall may be used, and in the case of regression tasks, coefficient of determination, etc. may be used.
  • the analysis unit 125 generates information indicating the performance value of the model for each attribute (hereinafter also referred to as "performance information by attribute") for the plurality of categories, and outputs it to the display device 2 as evaluation information D2.
  • the analysis unit 125 is an example of a model acquisition means, a data set acquisition means, a performance calculation means, and an output means.
  • the display device 2 displays the evaluation information D2 output by the analysis section 125 on the display device 2. By looking at the displayed attribute-specific performance information, the user can know the difference in model performance for each attribute in each category.
  • the user inputs modification information D3 for modifying the current model into the input device 3, if necessary.
  • the modification information D3 includes, for example, information on explanatory variables used as model inputs, information on weights for each explanatory variable, information on weights set for each attribute of the category of explanatory variables, and weights for each sample constituting input data. This is information related to corrections such as information.
  • the model training unit 122 corrects the model by retraining the model using the input correction information D3.
  • FIG. 4A shows a display example of attribute-specific performance information.
  • the performance value of the model is displayed for each attribute for the entire dataset used for prediction. Note that in the following example, the accuracy of the model is used as the performance value of the model.
  • the display example 40 includes an overall performance value field 41, a category field 42, a performance value field 43, and a training button 44.
  • the overall performance value column 41 shows the performance value of the model for the entire target data set. In this example, "overall accuracy of 85%" is shown as the performance value of the model for the entire data set.
  • the category column 42 indicates the category for which the performance value of the model is displayed. In this example, the performance values of the model are displayed for four categories: "gender", “age”, “place of residence”, and "annual income”.
  • the performance value column 43 shows the performance value of the model for each attribute for each category.
  • FIG. 4(B) shows a portion of the performance value column 43 that corresponds to the category "gender” indicated by reference numeral 45 in FIG. 4(A).
  • the performance value column 43 includes attribute frames 46a to 46b, parameter value display columns 47a to 47b, and operation buttons 48a to 48b and 49a to 49b for each category.
  • the attribute frame 46a corresponds to the attribute "male”
  • the attribute frame 46b corresponds to the attribute "female”.
  • the parameter value display field 47a corresponds to the attribute "male”
  • the parameter value display field 47b corresponds to the attribute "female”.
  • the parameter value display columns 47a to 47b show the current values of parameters used by the model for prediction.
  • the parameter is a weight indicating the importance of each attribute.
  • the parameter value display column 47a indicates that the weight of the model for the explanatory variable of the attribute "male” of the category “gender” is "0.45".
  • the parameter value display column 47b indicates that the weight of the model for the explanatory variable of the attribute "female” of the category “gender” is "0.50".
  • the operation buttons 48a to 48b and 49a to 49b are buttons used by the user to increase or decrease parameter values for each attribute. The user presses the operation buttons 48a to 48b to increase the parameter value, and presses the operation buttons 49a to 49b to decrease the parameter value.
  • the performance value for the attribute "male” is 95%
  • the performance value for the attribute "female” is 60%.
  • the ratio of that attribute is shown in the parentheses of each attribute frame 46 in the performance value column 43.
  • the proportion of males is 60%
  • the proportion of females is 40% in the entire data set.
  • the size (horizontal length) of each attribute frame corresponds to the ratio of each attribute. For example, regarding the category "gender", the lengths of the attribute frame 46a for "male” and the attribute frame 46b for “female” are 3:2 (60:40).
  • the performance value for the attribute "child” is 35%
  • the performance value for the attribute “adult” is 94%
  • the performance value for the attribute "elderly” is 95%.
  • the proportion of the attribute "child” is 20%
  • the proportion of the attribute "adult” is 60%
  • the proportion of the attribute "elderly” is 20%.
  • the performance value for the attribute "Kanto” is 84%, and the performance value for the attribute "Kansai” is 86%.
  • the proportion of the attribute "Kanto” is 55%, and the proportion of the attribute "Kansai” is 45%.
  • the performance value for the attribute "less than 4 million yen” is 83%, and the performance value for the attribute "4 million or more” is 87%.
  • the proportion of the attribute "less than 4 million yen” is 48%, and the proportion of the attribute "4 million or more” is 52%.
  • the category column 42 and the performance value column 43 are colored based on the fairness of the model performance. Note that in this specification, for convenience of illustration, hatching is used instead of color coding. When the difference in model performance values between different attributes within the same category is small, it is said to be “fair model performance”, and when the difference in model performance values is large, it is said to be “unfair model performance”. Say.
  • the category column 42 and the performance value column 43 are colored differently depending on the type of hatching, depending on whether the performance of the model is fair or unfair.
  • the threshold for determining model performance as unfair is "5%”.
  • the accuracy of the attribute "male” is 95% and the accuracy of the attribute "female” is 60%, and the difference between them is more than the threshold of "5%”, so the performance of the model is judged to be unfair. be done. Therefore, as shown in the legend of Figure 4(A), the attribute frame for "male” with a high performance value is indicated by hatching in pattern P1, and the attribute frame for "female” in low performance value is indicated by hatching in pattern P2. has been done.
  • the attribute frame with a lower performance value is colored “red”
  • the attribute frame with a higher performance value is colored "yellow”, etc.
  • the category column 42 is indicated by hatching in pattern P2, similar to the attribute frames with lower performance values. Thereby, the user can easily recognize that the performance of the model is unfair for that category just by looking at the category column 42.
  • the performance value of the attribute "Child” is lower than the above threshold value compared to the performance value of the attributes "Adult” and "Elderly”, so the performance of the model is determined to be unfair.
  • the category column 42 and the attribute frame for "Children” are indicated by hatching in pattern P2
  • the attribute frames for "adult” and “elderly” are indicated by hatching in pattern P1.
  • the performance value of the model is displayed for each attribute for each category. Therefore, the user can know that even if the model is the same, the performance value of the model differs depending on the attribute of the category included in the data set used for prediction. In addition, for each category, it is determined whether the model performance is fair based on the performance value of each attribute, and categories where the model performance is fair and unfair are displayed separately. , the user can see the fairness of the model for each category at a glance.
  • the user looks at the attribute-specific performance information and thinks that the model needs to be modified, he or she can operate the input device 3 to input the modification information D3 and instruct retraining of the model. Specifically, the user checks the current parameter value by looking at the parameter value display field 47 for each attribute, and inputs an increase or decrease in the parameter value by operating the operation buttons 48 and 49 using the cursor C. Then, the user can instruct retraining of the model by pressing the training button 44. When the training button 44 is pressed, the input device 3 transmits a retraining instruction and the parameter values changed by operating the operation buttons 48 and 49 to the model training unit 122 of the model generation device 1 as modification information D3. .
  • the model training unit 122 retrains the model using the changed parameter values, and outputs the model data M after retraining to the model DB 123 and the analysis unit 125. Then, the analysis unit 125 calculates attribute-specific performance information for the retrained model and displays it on the display device 2. In this way, attribute-specific performance information is displayed for the model after parameter values have been adjusted by the user.
  • model training unit 122 may change other parameter values according to the parameter value of the attribute changed by the user. For example, if the user increases the weight of the attribute "male” of the category “gender” by 0.01, the model training unit 122 accordingly decreases the weight of the attribute "female” of the category “gender” by 0.01. That is, the model training unit 122 normalizes the parameter values of each attribute for each category using the parameter values changed by the user, and retrains the model.
  • the user can retrain the model to make the model's performance fair by looking at the attribute-specific performance information shown in Figure 4(A) and adjusting the parameter values especially for categories where the model's performance is unfair. It can be performed. For example, in the example of FIG. 4A, regarding the category "gender", the performance value of the gender "male” is high, and the performance value of the gender “female” is low. Basically, increasing the weight value increases the performance value, and decreasing the weight value decreases the performance value. Therefore, the user only has to operate the operation button 48 or 49 to decrease the weight of the attribute "male” or increase the weight of the attribute "female".
  • FIG. 5 is a display example of attribute-specific performance information after model retraining.
  • the performance of the model is fair for each category, all the hatching in the category column 42 and performance value column 43 of each category is pattern P3.
  • FIG. 6 is a flowchart of model analysis processing by the model generation device 100.
  • the model analysis process is a process of calculating the performance of the model for each attribute of each category and displaying performance information for each attribute. This processing is realized by the processor 112 shown in FIG. 2 executing a program prepared in advance and mainly operating as the model training section 122 and analysis section 125 shown in FIG. 3.
  • the analysis unit 125 acquires a target data set (step S10).
  • the analysis unit 125 divides the data set for each category to create a partial data set, and calculates the performance value of the model for each attribute for each category by making predictions using the model (step S11 ).
  • the analysis unit 125 displays the attribute-specific performance information on the display device 2, as illustrated in FIGS. 4, 5, etc. (step S12).
  • the model training unit 122 determines whether the user has changed the parameter value using the input device 3 (step S13). If the parameter value has been changed (step S13: Yes), the model training unit 122 retrains the model using the changed parameter value (step S14). Then, the model analysis unit 125 repeats steps S11 and S12 for the retrained model. In this way, each time the user changes a parameter value, attribute-specific performance information is generated and displayed for a model that has been retrained using the changed parameter value.
  • step S13 determines whether a termination instruction has been input by the user (step S15). If the termination instruction has not been input (step S15: No), the process returns to step S13. On the other hand, if an end instruction is input (step S15: Yes), the process ends.
  • the analysis unit 125 When calculating the performance value of the model for each attribute in step S11, if the data included in the dataset is a continuous variable such as numerical data, the analysis unit 125 generates the attribute by converting the continuous variable into a category. Specifically, the analysis unit 125 converts continuous variables such as age and annual income into ordered categories. For example, the analysis unit 125 equally divides the minimum and maximum values of a continuous variable into two or more attributes (groups) and converts them into categories.
  • the analysis unit 125 may convert continuous variables into categories according to the dividing points. For example, in the age example, the analysis unit 125 creates three attributes such as "child”, “adult”, and “elderly” based on business knowledge. The analysis unit 125 may also determine division points according to percentiles and convert continuous variables into categories so that the number of data samples for each attribute is the same. Furthermore, the analysis unit 125 may create a plurality of attributes by clustering data (variables) included in the data set. Note that if the variables included in the data set are originally categories, such as gender or place of residence, the above processing is not necessary.
  • the analysis unit 125 may present guide information regarding parameter value adjustment to the user. For example, in the example shown in FIG. 4A, the model performance is unfair for the category "gender", and by reducing the weight of the attribute "male” as described above, the model performance approaches fairness. Therefore, as shown in FIGS. 4A and 4B, for example, the analysis unit 125 colors the operation button 49b corresponding to the attribute "male” in a different color from the other operation buttons 48a to 48b and 49a (in this example, The user may be guided to decrease the weight of the attribute "male” by using a blank button) or the like. Instead, the analysis unit 125 may display a message such as "Regarding gender, if you decrease the weight of men or increase the weight of women, the performance of the model will approach fairness.”
  • FIG. 7 is a block diagram showing a schematic configuration of a model generation system 1x using a server and a terminal device.
  • a server 100x includes the configuration of the model generation device 100 shown in FIG.
  • the display device 2x and input device 3x of the terminal device 7 used by the user are used as the display device 2 and input device 3 shown in FIG.
  • FIG. 8 is a block diagram showing the functional configuration of the model analysis device 70 of the second embodiment.
  • the model analysis device 70 includes a model acquisition means 71, a data set acquisition means 72, a performance calculation means 73, an output means 74, a parameter change means 75, and a training means 76.
  • FIG. 9 is a flowchart of processing by the model analysis device 70 of the second embodiment.
  • the model acquisition means 71 acquires a model (step S71).
  • the data set acquisition means 72 acquires a data set (step S72).
  • the performance calculating means 73 calculates the performance of the model for each attribute corresponding to each category of the data set (step S73).
  • the output means 74 outputs performance information indicating the performance of the model for each calculated attribute (step S74).
  • the parameter change means 75 receives changes in the parameters of the model corresponding to the attributes (step S75).
  • the training means 76 retrains the model using the changed parameters (step S76).
  • the performance calculation means 73 calculates the performance of the model after retraining, and the output means 74 outputs the calculated performance of the model (step S77).
  • model analysis device 70 of the second embodiment it is possible to evaluate the performance of the model for each attribute of the category of the dataset used for prediction, and to modify the model so as to reduce the difference in model performance. becomes.
  • a model acquisition means for acquiring a model; a dataset acquisition means for acquiring the dataset; performance calculation means for calculating the performance of the model for each attribute corresponding to each category of the data set; an output means for outputting performance information indicating the performance of the model for each calculated attribute; parameter changing means for receiving a change in a parameter of the model corresponding to the attribute; training means for retraining the model using the changed parameters; Equipped with The performance calculation means is a model analysis device that calculates the performance of the retrained model when the model is retrained.
  • a recording medium recording a program that causes a computer to execute a process of retraining the model using the changed parameters and calculating performance of the model after the retraining.
  • Model generation device 112 Processor 121 Training data DB 122 Model training department 123 Model DB 124 Evaluation data DB 125 Analysis Department

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

モデル分析装置において、モデル取得手段は、モデルを取得する。データセット取得手段は、データセットを取得する。性能算出手段は、データセットの各カテゴリに対応する属性毎に、モデルの性能を算出する。出力手段は、算出された属性毎のモデルの性能を示す性能情報を出力する。パラメータ変更手段は、属性に対応するモデルのパラメータの変更を受け取る。訓練手段は、変更後のパラメータを用いてモデルを再訓練する。モデルが再訓練された場合、性能算出手段は再訓練後のモデルの性能を算出し、出力手段は算出されたモデルの性能を出力する。

Description

モデル分析装置、モデル分析方法、及び、記録媒体
 本開示は、機械学習モデルの分析に関する。
 近年、様々な分野において、機械学習により得られた予測モデルが利用されている。特許文献1は、識別モデルの学習に使用する学習用データのカテゴリ毎に、モデルの学習に使用した学習用データの数と、学習により得られたモデルの識別精度との関係を可視化する手法を記載している。
国際公開WO2021/085188号公報
 予測モデルを用いて予測を行う場合、入力されるデータセットのカテゴリや属性によって、モデルの性能に差が生じることがある。よって、ユーザは、モデルの性能の差を確認し、性能の差を小さくするようにモデルを修正する必要がある。
 本開示の1つの目的は、予測に使用されるデータセットのカテゴリの属性毎にモデルの性能を評価し、モデルの性能の差を小さくするようにモデルを修正することにある。
 本開示の一つの観点では、モデル分析装置は、
 モデルを取得するモデル取得手段と、
 データセットを取得するデータセット取得手段と、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出する性能算出手段と、
 算出された属性毎のモデルの性能を示す性能情報を出力する出力手段と、
 前記属性に対応する前記モデルのパラメータの変更を受け取るパラメータ変更手段と、
 前記変更後のパラメータを用いて前記モデルを再訓練する訓練手段と、
 を備え、
 前記性能算出手段は、前記モデルが再訓練された場合、再訓練後のモデルの性能を算出する。
 本開示の他の観点では、モデル分析方法は、
 モデルを取得し、
 データセットを取得し、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
 算出された属性毎のモデルの性能を示す性能情報を出力し、
 前記属性に対応する前記モデルのパラメータの変更を受け取り、
 前記変更後のパラメータを用いて前記モデルを再訓練し、再訓練後のモデルの性能を算出する。
 本開示のさらに他の観点では、記録媒体は、
 モデルを取得し、
 データセットを取得し、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
 算出された属性毎のモデルの性能を示す性能情報を出力し、
 前記属性に対応する前記モデルのパラメータの変更を受け取り、
 前記変更後のパラメータを用いて前記モデルを再訓練し、再訓練後のモデルの性能を算出する処理をコンピュータに実行させるプログラムを記録する。
 本開示によれば、予測に使用されるデータセットのカテゴリの属性毎にモデルの性能を評価し、モデルの性能の差を小さくするようにモデルを修正することができる。
第1実施形態に係るモデル生成システムの全体構成を示すブロック図である。 モデル生成装置のハードウェア構成を示すブロック図である。 第1実施形態のモデル生成装置の機能構成を示すブロック図である。 属性別性能情報の表示例を示す。 属性別性能情報の他の表示例を示す。 モデル分析処理のフローチャートである。 サーバと端末装置を用いたモデル生成システムの概略構成を示すブロック図である。 第2実施形態のモデル分析装置の機能構成を示すブロック図である。 第2実施形態のモデル分析装置による処理のフローチャートである。
 以下、図面を参照して、本開示の好適な実施形態について説明する。
 <第1実施形態>
 [全体構成]
 図1は、第1実施形態に係るモデル生成システムの全体構成を示すブロック図である。モデル生成システム1は、モデル生成装置100と、表示装置2と、入力装置3とを備える。モデル生成装置100は、本開示のモデル分析装置を適用したものであり、例えばパーソナルコンピュータ(PC)などのコンピュータにより構成される。表示装置2は、例えば液晶表示装置などであり、モデル生成装置100が生成した評価情報を表示する。入力装置3は、例えばマウス、キーボードなどであり、ユーザがモデルの修正時や評価情報の閲覧時に必要な指示、入力を行うために使用される。
 まず、モデル生成システム1の動作を概略的に説明する。モデル生成装置100は、予め用意された訓練データを用いて、機械学習モデル(以下、単に「モデル」とも呼ぶ。)を生成する。また、モデル生成装置100は、生成したモデルの分析、評価を行う。具体的に、モデル生成装置100は、評価用データなどを用いてモデルによる予測を行い、予測結果に基づいてモデルの予測性能を分析する。モデル生成装置100は、評価用データのカテゴリの属性毎に、モデルの性能を示す値(以下、「性能値」とも呼ぶ。)を算出する。そして、モデル生成装置100は、カテゴリの属性毎にモデルの性能を示す情報を評価情報としてユーザに提示する。ユーザは、評価情報を確認し、入力装置3を操作してモデルの修正のための修正情報を入力することができる。
 なお、「機械学習モデル」とは、説明変数と目的変数の関係を表す情報である。機械学習モデルは、例えば、説明変数に基づいて目的とする変数を算出することにより推定対象の結果を推定するためのコンポーネントである。機械学習モデルは、既に目的変数の値が得られている学習用データと任意のパラメータとを入力として、学習アルゴリズムを実行することにより生成される。機械学習モデルは、例えば、入力xを正解yに写像する関数cにより表されてもよい。機械学習モデルは、推定対象の数値を推定するものであってもよいし、推定対象のラベルを推定するものであってもよい。機械学習モデルは、目的変数の確率分布を記述する変数を出力してもよい。機械学習モデルは、「学習モデル」、「分析モデル」、「AI(Artificial Intelligence)モデル」または「予測式」などと記載されることもある。また、説明変数とは機械学習モデルにおいて入力として用いられる変数である。説明変数は、「特徴量」または「特徴」などと記載されることがある。
 また、機械学習モデルを生成するための学習アルゴリズムは特に限定されず、既存の学習アルゴリズムでよい。例えば、学習アルゴリズムは、ランダムフォレスト、サポートベクターマシン、ナイーブベイズ、FAB推論(Factorized Asymptotic Bayesian Inference)を利用した区分線形モデル、またはニューラルネットワークであってよい。なお、FAB推論を利用した区分線形モデルの手法は、例えば米国公開特許US2014/0222741A1号公報等に開示されている。
 [ハードウェア構成]
 図2は、モデル生成装置100のハードウェア構成を示すブロック図である。図示のように、モデル生成装置100は、インタフェース(I/F)111と、プロセッサ112と、メモリ113と、記録媒体114と、データベース(DB)115と、を備える。
 I/F111は、外部装置との間でデータの入出力を行う。具体的に、モデルの生成に使用する訓練データ、評価用データ、及び、ユーザが入力装置3を用いて入力した指示や入力は、I/F111を通じてモデル生成装置100に入力される。また、モデル生成装置100が生成したモデルの評価情報は、I/F111を通じて表示装置2へ出力される。
 プロセッサ112は、CPU(Central Processing Unit)などのコンピュータであり、予め用意されたプログラムを実行することによりモデル生成装置100の全体を制御する。なお、プロセッサ112は、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)、量子プロセッサまたはFPGA(Field-Programmable Gate Array)であってもよい。プロセッサ112は、後述するモデル分析処理を実行する。
 メモリ113は、ROM(Read Only Memory)、RAM(Random Access Memory)などにより構成される。メモリ113は、プロセッサ112による各種の処理の実行中に作業メモリとしても使用される。
 記録媒体114は、ディスク状記録媒体、半導体メモリなどの不揮発性で非一時的な記録媒体であり、モデル生成装置100に対して着脱可能に構成される。記録媒体114は、プロセッサ112が実行する各種のプログラムを記録している。モデル生成装置100が各種の処理を実行する際には、記録媒体114に記録されているプログラムがメモリ113にロードされ、プロセッサ112により実行される。
 DB115は、モデル生成装置100が生成したモデル(以下、「既存モデル」と呼ぶ。)、及び、再訓練による修正後のモデル(以下、「修正後モデル」と呼ぶ。)に関する情報を記憶する。また、DB115は、必要に応じて、I/F111を通じて入力された訓練データ、評価用データ、ユーザが入力した修正情報などを記憶する。
 (機能構成)
 図3は、第1実施形態のモデル生成装置100の機能構成を示すブロック図である。モデル生成装置100は、機能的には、訓練データDB121と、モデル訓練部122と、モデルDB123と、評価用データDB124と、分析部125と、を備える。
 訓練データDB121は、モデルの生成に用いられる訓練データを記憶する。訓練データD1は、モデル訓練部122に入力される。なお、訓練データD1は、入力データと、その入力データに対する正解(正解値又は正解ラベル)との複数の組み合わせにより構成される。
 モデル訓練部122は、訓練データD1を用いてモデルの訓練を行い、モデルを生成する。モデル訓練部122は、生成したモデルに対応するモデルデータMをモデルDB123及び分析部125へ出力する。なお、モデルデータMは、モデルを構成する複数のパラメータ情報を含む。パラメータ情報は、例えば、モデルの入力として用いられる説明変数の情報、各説明変数に対する重みの情報、入力データを構成する各サンプルに対する重みの情報などを含む。各説明変数に対する重みは、各説明変数のカテゴリの属性毎に設定可能としてもよい。
 また、モデル訓練部122は、既存モデルを再訓練して修正後モデルを生成する。この場合、モデル訓練部122は、ユーザが入力装置3を用いて入力した修正情報D3に基づいて、モデルを構成するパラメータを修正し、必要に応じて再訓練用の訓練データを用いてモデルの再訓練を行う。モデル訓練部122は、再訓練により得られた修正後モデルのモデルデータMをモデルDB123へ記憶するとともに、分析部125へ出力する。モデル訓練部122は、パラメータ変更手段、訓練手段の一例である。
 ここで、再訓練の方法の一例を示す。モデル訓練部122による再訓練の方法としては、既存モデルを無視して完全に新しい修正後モデルを訓練しなおす方法、および、新たな訓練データを利用して、既存モデルを更新する方法が挙げられる。他にも、既存モデルの再訓練方法として、モデルに用いる説明変数の種類を変えずに、再訓練によって係数のみ更新する方法、および、説明変数の選択も含めて再訓練する方法が挙げられる。ただし、モデルの再訓練方法は、上述する方法に限定されない。
 評価用データDB124は、生成されたモデルの評価に使用する評価用データを記憶する。評価用データは、例えば収集されたデータのうち、訓練データとして使用しなかった一部のデータや、新たに収集されたデータ、検証のために用意されたバリデーションデータなどである。なお、訓練データを評価用データとして使用してもよい。評価用データは、入力データと、その入力データに対する正解(正解値又は正解ラベル)との複数の組み合わせにより構成される。
 評価用データは、データセットの単位で記憶され、使用される。データセットに含まれる各データは、複数のカテゴリを含む。例えば、与信を判定する予測モデルの場合、評価用データとして多数の判定対象者のデータが用意され、各データは、例えば年齢層、性別、居住地域、家族構成、所得などのカテゴリを含む。また、各カテゴリは、複数の属性(グループ)を含む。
 分析部125は、評価用データを用いて、データセットの各カテゴリに対応する属性毎に、モデルの性能を分析する。例えば、あるカテゴリ「性別」が属性「男性」と「女性」を含むとする。この場合、分析部125は、属性「男性」及び「女性」のそれぞれについてモデルの性能を示す性能値を算出する。分析部125は、他のカテゴリについても、属性毎にモデルの性能値を算出する。なお、モデルの性能指標としては、例えば、モデルの予測精度、互換性など、モデルの性能を評価するために使用できる各種の指標を用いることができる。性能指標の他の例として、F1スコア、適合率、再現率を用いても良く、回帰タスクの場合には決定係数等を用いても良い。また、値が低いほど良いとされる誤差系の指標として、例えば平均二乗誤差や交差エントロピー等を用いても良い。そして、分析部125は、複数のカテゴリについて、属性毎にモデルの性能値を示す情報(以下、「属性別性能情報」とも呼ぶ。)を生成し、評価情報D2として表示装置2へ出力する。分析部125は、モデル取得手段、データセット取得手段、性能算出手段、出力手段の一例である。
 表示装置2は、分析部125が出力した評価情報D2を表示装置2に表示する。ユーザは、表示された属性別性能情報を見ることにより、各カテゴリの属性毎のモデルの性能の差異を知ることができる。
 また、ユーザは、必要に応じて、現行モデルを修正するための修正情報D3を入力装置3に入力する。修正情報D3は、例えば、モデルの入力として用いられる説明変数の情報、各説明変数に対する重みの情報、説明変数のカテゴリの属性毎に設定される重みの情報、入力データを構成する各サンプルに対する重みの情報などの修正に関する情報である。モデル訓練部122は、入力された修正情報D3を用いてモデルの再訓練を行うことにより、モデルの修正を行う。
 [属性別性能情報の表示例]
 次に、属性別性能情報の表示例について説明する。
 図4(A)は、属性別性能情報の表示例を示す。表示例40では、予測に用いられるデータセット全体について、属性毎にモデルの性能値が表示される。なお、以下の例では、モデルの性能値としてモデルの精度を用いる。
 具体的に、表示例40は、全体性能値欄41と、カテゴリ欄42と、性能値欄43と、訓練ボタン44と、を含む。全体性能値欄41は、対象となるデータセット全体に対するモデルの性能値を示す。本例では、データセット全体に対するモデルの性能値として、「全体精度85%」が示されている。カテゴリ欄42は、モデルの性能値の表示対象となるカテゴリを示す。本例では、4つのカテゴリ「性別」、「年齢」、「居住地」及び「年収」についてモデルの性能値が表示されている。
 性能値欄43は、各カテゴリについて、属性毎にモデルの性能値を示している。図4(B)は、性能値欄43のうち、図4(A)の符号45で示すカテゴリ「性別」に対応する部分を示す。性能値欄43は、各カテゴリについて、属性枠46a~46bと、パラメータ値表示欄47a~47bと、操作ボタン48a~48b、49a~49bと、を備える。図4(B)では、属性枠46aは属性「男性」に対応し、属性枠46bは属性「女性」に対応している。また、パラメータ値表示欄47aは属性「男性」に対応し、パラメータ値表示欄47bは属性「女性」に対応している。
 パラメータ値表示欄47a~47bは、モデルが予測に使用するパラメータの現在値を示している。本例では、例えばパラメータは各属性の重要度を示す重みであるとする。図4(B)では、パラメータ値表示欄47aは、カテゴリ「性別」の属性「男性」の説明変数に対するモデルの重みが「0.45」であることを示している。また、パラメータ値表示欄47bは、カテゴリ「性別」の属性「女性」の説明変数に対するモデルの重みが「0.50」であることを示している。操作ボタン48a~48b、49a~49bは、ユーザが各属性に対するパラメータ値を増減させるためのボタンである。ユーザは、パラメータ値を増加させる場合には操作ボタン48a~48bを押し、パラメータ値を減少させる場合には操作ボタン49a~49bを押す。
 図4(A)において、例えば、カテゴリ「性別」については、属性「男性」に対する性能値が95%、属性「女性」に対する性能値が60%となっている。なお、性能値欄43内の各属性枠46のかっこ内には、その属性の割合が示されている。例えば、図4(A)の例では、カテゴリ「性別」について、データセット全体において男性の割合が60%、女性の割合が40%となっている。また、各属性枠の大きさ(横方向の長さ)は、各属性の割合に対応している。例えば、カテゴリ「性別」について、「男性」の属性枠46aと「女性」の属性枠46bの長さは3:2(60:40)になっている。
 カテゴリ「年齢」については、属性「子供」に対する性能値が35%、属性「大人」に対する性能値が94%、属性「高齢者」に対する性能値が95%となっている。なお、カテゴリ「年齢」においては、属性「子供」の割合が20%、属性「大人」の割合が60%、属性「高齢者」の割合が20%である。
 カテゴリ「居住地」については、属性「関東」に対する性能値が84%、属性「関西」に対する性能値が86%となっている。なお、カテゴリ「居住地」においては、属性「関東」の割合が55%、属性「関西」の割合が45%である。
 カテゴリ「年収」については、属性「400万未満」に対する性能値が83%、属性「400万以上」に対する性能値が87%となっている。なお、カテゴリ「年収」においては、属性「400万未満」の割合が48%、属性「400万以上」の割合が52%である。
 カテゴリ欄42と性能値欄43は、モデルの性能の公平性に基づいて塗分けられる。なお、本明細書では、図示の便宜上、色分けの代わりにハッチングによる区別を用いる。同一カテゴリ内の異なる属性間でモデルの性能値の差が小さいことを「モデルの性能が公平である」と言い、モデルの性能値の差が大きいことを「モデルの性能が不公平である」と言う。カテゴリ欄42と性能値欄43は、モデルの性能が公平であるか不公平であるかに応じて、ハッチングの種類により塗分けられている。
 いま、モデルの性能を不公平と判定する際の閾値を「5%」と仮定する。カテゴリ「性別」については、属性「男性」の精度が95%、属性「女性」の精度が60%であり、その差が閾値「5%」以上であるため、モデルの性能が不公平と判定される。よって、図4(A)の凡例に示すように、性能値が高い「男性」の属性枠はパターンP1のハッチングで示され、性能値が低い「女性」の属性枠はパターンP2のハッチングで示されている。なお、実際の表示においては、例えば色分けにより、性能値が低い方の属性枠を「赤色」、性能値が高い方の属性枠を「黄色」などとして、性能値が低い方の属性枠をより目立つように表示することが好ましい。また、カテゴリ欄42は、性能値が低い方の属性枠と同様にパターンP2のハッチングで示す。これにより、ユーザはカテゴリ欄42を見ただけでも、そのカテゴリについてモデルの性能が不公平であることを容易に認識できる。
 カテゴリ「年齢」についても、属性「大人」及び「高齢者」の性能値に比べて、属性「子供」の性能値が上記の閾値以上低いので、モデルの性能が不公平であると判定される。その結果、カテゴリ欄42と「子供」の属性枠とはパターンP2のハッチングで示され、「大人」と「高齢者」の属性枠はパターンP1のハッチングで示されている。
 一方、カテゴリ「居住地」については、属性「関東」の性能値と属性「関西」の性能値の差が上記の閾値以下であるので、モデルの性能は公平であると判定される。よって、カテゴリ欄42及び性能値欄43は、いずれもモデルの性能が公平であることを示すパターンP3のハッチングで示されている。
 カテゴリ「年収」についても、属性「400万未満」の性能値と属性「400万以上」の性能値の差が上記の閾値以下であるので、モデルの性能は公平であると判定される。よって、カテゴリ欄42及び性能値欄43は、いずれもモデルの性能が公平であることを示すパターンP3のハッチングで示されている。
 以上のように、図4(A)に示す属性別性能情報の表示によれば、各カテゴリについて、属性毎にモデルの性能値が表示される。よって、ユーザは、同じモデルであっても、予測に用いるデータセットに含まれるカテゴリの属性によってモデルの性能値が異なることを知ることができる。また、各カテゴリについて、属性毎の性能値に基づいてモデルの性能が公平であるか否かが判定され、モデルの性能が公平であるカテゴリと不公平であるカテゴリとが区別して表示されるので、ユーザは、カテゴリ毎にモデルの公平性を一目で知ることができる。
 ユーザは、属性別性能情報を見てモデルの修正が必要と考えた場合、入力装置3を操作して修正情報D3を入力し、モデルの再訓練を指示することができる。具体的に、ユーザは、各属性のパラメータ値表示欄47を見て現在のパラメータ値を確認し、カーソルCを用いて操作ボタン48、49を操作してパラメータ値の増減を入力する。そして、ユーザは、訓練ボタン44を押すことにより、モデルの再訓練を指示すればよい。訓練ボタン44が押されると、入力装置3は、再訓練の指示、及び、操作ボタン48、49の操作により変更されたパラメータ値を修正情報D3としてモデル生成装置1のモデル訓練部122へ送信する。
 モデル訓練部122は、変更後のパラメータ値を用いてモデルを再訓練し、再訓練後のモデルデータMをモデルDB123及び分析部125へ出力する。そして、分析部125は、再訓練後のモデルについて属性別性能情報を算出し、表示装置2に表示する。こうして、ユーザによるパラメータ値の調整後のモデルについて、属性別性能情報が表示される。
 なお、モデル訓練部122は、ユーザが変更した属性のパラメータ値に応じて、他のパラメータ値を変更してもよい。例えば、ユーザが、カテゴリ「性別」の属性「男性」の重みを0.01増加した場合、それに応じてモデル訓練部122はカテゴリ「性別」の属性「女性」の重みを0.01減少させる。即ち、モデル訓練部122は、ユーザによる変更後のパラメータ値を用いてカテゴリ毎に各属性のパラメータ値を正規化し、モデルの再訓練を行う。
 ユーザは、図4(A)に示す属性別性能情報を見て、特にモデルの性能が不公平であるカテゴリについてパラメータ値を調整することにより、モデルの性能が公平となるようにモデルの再訓練を行うことができる。例えば、図4(A)の例では、カテゴリ「性別」に関して、性別「男性」の性能値が高く、性別「女性」の性能値が低い。基本的に、重みの値を増加させることにより性能値は上昇し、重みの値を減少させることにより性能値は低下する。よって、ユーザは、属性「男性」の重みを減少させるか、属性「女性」の重みを増加させるように操作ボタン48又は49を操作すればよい。
 ユーザは、上記のように、モデルの性能が不公平であるカテゴリ毎にパラメータ値を修正して再訓練を行う。図5は、モデルの再訓練を行った後の属性別性能情報の表示例である。この例では、各カテゴリについて、モデルの性能が公平となったため、各カテゴリのカテゴリ欄42及び性能値欄43のハッチングが全てパターンP3となっている。
 [モデル分析処理]
 次に、モデル生成装置100によるモデル分析処理について説明する。図6は、モデル生成装置100によるモデル分析処理のフローチャートである。モデル分析処理は、上記のように、各カテゴリの属性毎にモデルの性能を算出し、属性別性能情報を表示する処理である。この処理は、図2に示すプロセッサ112が予め用意されたプログラムを実行し、主として図3に示すモデル訓練部122及び分析部125として動作することにより実現される。
 まず、分析部125は、対象となるデータセットを取得する(ステップS10)。次に、分析部125は、カテゴリ毎にデータセットを分割して部分データセットを作成し、モデルを用いて予測を行うことにより、各カテゴリについて属性毎にモデルの性能値を算出する(ステップS11)。そして、分析部125は、図4、図5などに例示するように、属性別性能情報を表示装置2に表示する(ステップS12)。
 次に、モデル訓練部122は、入力装置3を用いてユーザがパラメータ値を変更したか否かを判定する(ステップS13)。パラメータ値が変更された場合(ステップS13:Yes)、モデル訓練部122は、変更されたパラメータ値を用いて、モデルを再訓練する(ステップS14)。そして、モデル分析部125は、再訓練後のモデルについて、ステップS11~S12を繰り返す。こうして、ユーザがパラメータ値を変更するたびに、変更されたパラメータ値を用いて再訓練されたモデルについて属性別性能情報が生成され、表示される。
 一方、パラメータ値が変更されていない場合(ステップS13:No)、分析部125は、ユーザにより終了指示が入力されたか否かを判定する(ステップS15)。終了指示が入力されていない場合(ステップS15:No)、処理はステップS13へ戻る。一方、終了指示が入力された場合(ステップS15:Yes)、処理は終了する。
 ステップS11で属性毎にモデルの性能値を算出する際、データセットに含まれるデータが数値データなどの連続変数である場合、分析部125は連続変数をカテゴリに変換することにより属性を生成する。具体的に、分析部125は、年齢、年収などの連続変数を、順序付きカテゴリに変換する。例えば、分析部125は、連続変数の取る最小値と最大値の間を2つ以上の属性(グループ)に等分割し、カテゴリに変換する。
 なお、分析部125は、業務知識に基づいて分割点を用意できる場合は、その分割点に応じて、連続変数をカテゴリに変換してもよい。例えば、年齢の例では、分析部125は、業務知識に基づき、「子供」、「大人」、「高齢者」というように3つの属性を作成している。また、分析部125は、各属性のデータサンプル数が同じになるように、パーセンタイルに応じて分割点を決定し、連続変数をカテゴリに変換してもよい。また、分析部125は、データセットに含まれるデータ(変数)のクラスタリングにより複数の属性を作成してもよい。なお、データセットに含まれる変数が例えば、性別、居住地など、もともとカテゴリである場合は、上記の処理は不要である。
 [変形例]
 (変形例1)
 図4(A)のように属性別性能情報を表示した状態で、分析部125は、パラメータ値の調整に関するガイド情報をユーザに提示してもよい。例えば、図4(A)の例では、カテゴリ「性別」についてモデルの性能が不公平となっており、前述のように属性「男性」の重みを減少させることによりモデルの性能は公平に近づく。よって、分析部125は、例えば図4(A)及び4(B)に示すように、属性「男性」に対応する操作ボタン49bを他の操作ボタン48a~48b、49aと異なる色(本例では白抜きのボタン)などとして、属性「男性」の重みを減少させるようにユーザを誘導してもよい。その代わりに、分析部125は、「性別については、男性の重みを減少させるか、女性の重みを増加させると、モデルの性能が公平に近づきます。」などのメッセージを表示してもよい。
 (変形例2)
 上記の実施形態では、モデル生成装置100をPCなどの独立した装置として構成しているが、その代わりに、モデル生成装置をサーバと端末装置により構成してもよい。図7は、サーバと端末装置を用いたモデル生成システム1xの概略構成を示すブロック図である。図7において、サーバ100xは、図3に示すモデル生成装置100の構成を備える。また、ユーザが使用する端末装置7の表示装置2x及び入力装置3xを、図3に示す表示装置2及び入力装置3として使用する。
 <第2実施形態>
 図8は、第2実施形態のモデル分析装置70の機能構成を示すブロック図である。モデル分析装置70は、モデル取得手段71と、データセット取得手段72と、性能算出手段73と、出力手段74と、パラメータ変更手段75と、訓練手段76と、を備える。
 図9は、第2実施形態のモデル分析装置70による処理のフローチャートである。モデル取得手段71は、モデルを取得する(ステップS71)。データセット取得手段72は、データセットを取得する(ステップS72)。性能算出手段73は、データセットの各カテゴリに対応する属性毎に、モデルの性能を算出する(ステップS73)。出力手段74は、算出された属性毎のモデルの性能を示す性能情報を出力する(ステップS74)。パラメータ変更手段75は、属性に対応するモデルのパラメータの変更を受け取る(ステップS75)。訓練手段76は、変更後のパラメータを用いてモデルを再訓練する(ステップS76)。モデルが再訓練された場合、性能算出手段73は再訓練後のモデルの性能を算出し、出力手段74は算出されたモデルの性能を出力する(ステップS77)。
 第2実施形態のモデル分析装置70によれば、予測に使用されるデータセットのカテゴリの属性毎にモデルの性能を評価し、モデルの性能の差を小さくするようにモデルを修正することが可能となる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
 (付記1)
 モデルを取得するモデル取得手段と、
 データセットを取得するデータセット取得手段と、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出する性能算出手段と、
 算出された属性毎のモデルの性能を示す性能情報を出力する出力手段と、
 前記属性に対応する前記モデルのパラメータの変更を受け取るパラメータ変更手段と、
 前記変更後のパラメータを用いて前記モデルを再訓練する訓練手段と、
 を備え、
 前記性能算出手段は、前記モデルが再訓練された場合、再訓練後のモデルの性能を算出するモデル分析装置。
 (付記2)
 前記性能情報は、前記属性毎の前記モデルの現在のパラメータの値を含む付記1に記載のモデル分析装置。
 (付記3)
 前記性能情報は、前記属性毎に前記パラメータの値を変更するための操作ボタンと、前記モデルの訓練を指示するための操作ボタンと、を含む付記1又は2に記載のモデル分析装置。
 (付記4)
 前記性能情報は、前記属性毎のモデルの性能の差が所定値以上であるカテゴリと、前記所定値未満であるカテゴリとを区別して示す付記1乃至3のいずれか一項に記載のモデル分析装置。
 (付記5)
 前記性能情報は、各カテゴリに対応する属性毎のデータ数の割合を示す情報を含む付記1乃至3のいずれか一項に記載のモデル分析装置。
 (付記6)
 モデルを取得し、
 データセットを取得し、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
 算出された属性毎のモデルの性能を示す性能情報を出力し、
 前記属性に対応する前記モデルのパラメータの変更を受け取り、
 前記変更後のパラメータを用いて前記モデルを再訓練し、再訓練後のモデルの性能を算出するモデル分析方法。
 (付記7)
 モデルを取得し、
 データセットを取得し、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
 算出された属性毎のモデルの性能を示す性能情報を出力し、
 前記属性に対応する前記モデルのパラメータの変更を受け取り、
 前記変更後のパラメータを用いて前記モデルを再訓練し、再訓練後のモデルの性能を算出する処理をコンピュータに実行させるプログラムを記録した記録媒体。
 以上、実施形態及び実施例を参照して本開示を説明したが、本開示は上記実施形態及び実施例に限定されるものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
 1、1x モデル生成システム
 2、2x 表示装置
 3、3x 入力装置
 7 端末装置
 100 モデル生成装置
 112 プロセッサ
 121 訓練データDB
 122 モデル訓練部
 123 モデルDB
 124 評価用データDB
 125 分析部

Claims (7)

  1.  モデルを取得するモデル取得手段と、
     データセットを取得するデータセット取得手段と、
     前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出する性能算出手段と、
     算出された属性毎のモデルの性能を示す性能情報を出力する出力手段と、
     前記属性に対応する前記モデルのパラメータの変更を受け取るパラメータ変更手段と、
     前記変更後のパラメータを用いて前記モデルを再訓練する訓練手段と、
     を備え、
     前記性能算出手段は、前記モデルが再訓練された場合、再訓練後のモデルの性能を算出するモデル分析装置。
  2.  前記性能情報は、前記属性毎の前記モデルの現在のパラメータの値を含む請求項1に記載のモデル分析装置。
  3.  前記性能情報は、前記属性毎に前記パラメータの値を変更するための操作ボタンと、前記モデルの訓練を指示するための操作ボタンと、を含む請求項1又は2に記載のモデル分析装置。
  4.  前記性能情報は、前記属性毎のモデルの性能の差が所定値以上であるカテゴリと、前記所定値未満であるカテゴリとを区別して示す請求項1乃至3のいずれか一項に記載のモデル分析装置。
  5.  前記性能情報は、各カテゴリに対応する属性毎のデータ数の割合を示す情報を含む請求項1乃至3のいずれか一項に記載のモデル分析装置。
  6.  モデルを取得し、
     データセットを取得し、
     前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
     算出された属性毎のモデルの性能を示す性能情報を出力し、
     前記属性に対応する前記モデルのパラメータの変更を受け取り、
     前記変更後のパラメータを用いて前記モデルを再訓練し、再訓練後のモデルの性能を算出するモデル分析方法。
  7.  モデルを取得し、
     データセットを取得し、
     前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
     算出された属性毎のモデルの性能を示す性能情報を出力し、
     前記属性に対応する前記モデルのパラメータの変更を受け取り、
     前記変更後のパラメータを用いて前記モデルを再訓練し、再訓練後のモデルの性能を算出する処理をコンピュータに実行させるプログラムを記録した記録媒体。
PCT/JP2022/013899 2022-03-24 2022-03-24 モデル分析装置、モデル分析方法、及び、記録媒体 WO2023181243A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/013899 WO2023181243A1 (ja) 2022-03-24 2022-03-24 モデル分析装置、モデル分析方法、及び、記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/013899 WO2023181243A1 (ja) 2022-03-24 2022-03-24 モデル分析装置、モデル分析方法、及び、記録媒体

Publications (1)

Publication Number Publication Date
WO2023181243A1 true WO2023181243A1 (ja) 2023-09-28

Family

ID=88100564

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/013899 WO2023181243A1 (ja) 2022-03-24 2022-03-24 モデル分析装置、モデル分析方法、及び、記録媒体

Country Status (1)

Country Link
WO (1) WO2023181243A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200349466A1 (en) * 2019-05-03 2020-11-05 Microsoft Technology Licensing, Llc Providing performance views associated with performance of a machine learning system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200349466A1 (en) * 2019-05-03 2020-11-05 Microsoft Technology Licensing, Llc Providing performance views associated with performance of a machine learning system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BARCELOS GABE: "Understanding Bias in Machine Learning Models", ARIZE, 15 March 2022 (2022-03-15), XP093094779, Retrieved from the Internet <URL:https://arize.com/blog/understanding-bias-in-ml-models/> [retrieved on 20231025] *

Similar Documents

Publication Publication Date Title
Sawatsky et al. Partial least squares regression in the social sciences
US10268876B2 (en) Attribute factor analysis method, device, and program
Carreira-Perpiñán et al. Counterfactual explanations for oblique decision trees: Exact, efficient algorithms
JP2017045434A (ja) データ分析システム、データ分析方法、プログラム、および、記録媒体
CN103714261A (zh) 二阶段混合模型的智能辅助医疗决策支持方法
Ghai et al. D-BIAS: A causality-based human-in-the-loop system for tackling algorithmic bias
CN110781933A (zh) 一种用于理解图卷积神经网络的可视分析方法
Silva et al. How to produce complementary explanations using an ensemble model
Hong et al. CBCRS: An open case-based color recommendation system
Kapoor et al. Performance and preferences: Interactive refinement of machine learning procedures
JP2019053491A (ja) ニューラルネットワーク評価装置、ニューラルネットワーク評価方法、およびプログラム
Cai et al. A simultaneous learning framework for clustering and classification
CN112101574A (zh) 一种机器学习有监督模型解释方法、系统及设备
WO2023181243A1 (ja) モデル分析装置、モデル分析方法、及び、記録媒体
EP4287083A1 (en) Determination program, determination apparatus, and method of determining
WO2023175921A1 (ja) モデル分析装置、モデル分析方法、及び、記録媒体
Akay et al. A neuro-fuzzy based approach to affective design
Gebel Multivariate calibration of classifier scores into the probability space
WO2023181245A1 (ja) モデル分析装置、モデル分析方法、及び、記録媒体
WO2016161424A1 (en) Profiling a population of examples in a precisely descriptive or tendency-based manner
CN113378885B (zh) 一种基于优选图像对的新用户审美偏好标定和分类方法
Rodwell et al. Categorical CVA biplots
WO2023181244A1 (ja) モデル分析装置、モデル分析方法、及び、記録媒体
WO2023181320A1 (ja) モデル処理装置、モデル処理方法、及び、記録媒体
WO2021079447A1 (ja) 表示方法、表示プログラム及び情報処理装置

Legal Events

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

Ref document number: 22933384

Country of ref document: EP

Kind code of ref document: A1