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

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

Info

Publication number
WO2023181245A1
WO2023181245A1 PCT/JP2022/013901 JP2022013901W WO2023181245A1 WO 2023181245 A1 WO2023181245 A1 WO 2023181245A1 JP 2022013901 W JP2022013901 W JP 2022013901W WO 2023181245 A1 WO2023181245 A1 WO 2023181245A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
performance
attribute
category
data
Prior art date
Application number
PCT/JP2022/013901
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/013901 priority Critical patent/WO2023181245A1/ja
Publication of WO2023181245A1 publication Critical patent/WO2023181245A1/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 objective of the present disclosure is to evaluate and visualize the performance of a model for each category attribute of a dataset used for prediction.
  • 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; Equipped with
  • 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, Performance information indicating the performance of the model for each calculated attribute is output.
  • 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, A program is recorded that causes a computer to execute a process of outputting performance information indicating the performance of the model for each calculated attribute.
  • 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 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 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 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 model 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 is, for example, information related to modification, such as information on explanatory variables used as model inputs, information on weights for each explanatory variable, and information on weights for each sample constituting the input data.
  • the model training unit 122 corrects the model by retraining the model using the input correction information D3.
  • FIG. 4A shows an initial display example of the first 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 initial display example 40 includes an overall performance value column 41, a category column 42, and a performance value column 43.
  • 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 in a frame corresponding to each attribute (hereinafter referred to as an "attribute frame") for each category.
  • 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.
  • 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.
  • the lengths of the attribute frames for "male” and “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 value for determining model performance as unfair is "5%”, and when the difference in accuracy is 5% or more, model performance is determined to be unfair.
  • 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. It is preferable to display it conspicuously.
  • 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 differs depending on the attribute of the category included in the dataset 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.
  • FIG. 4(B) shows an example of display of attribute-specific performance information when the user selects an attribute.
  • the user can select any attribute corresponding to each category using, for example, the cursor C.
  • the user selects the attribute "male” for the category "gender” and selects the attribute "adult” for the category "age.”
  • the analysis unit 125 extracts data corresponding to the selected attribute from the data set to create a partial data set, and generates and displays attribute-specific performance information for the partial data set. do.
  • the overall performance value column 41 displays performance values for the attributes selected by the user, that is, "male” and "adult.”
  • the category field 42 is displayed in white (no hatching) for "gender” and "age” that are selected by the user.
  • the attribute frames for "gender” and “age” selected by the user are displayed in black to indicate that they have been selected, and the other attribute frames are displayed in white to indicate that they have not been selected. . Further, in each attribute frame, only the proportion of each attribute to the whole is displayed.
  • the performance value for each attribute of each category can be displayed for data corresponding to that attribute. can.
  • the user can find unfairness in model performance that was not apparent in the initial display example. For example, in the example of FIG. 4A in which attribute-specific performance information for the entire data set is displayed, the performance of the model is determined to be fair for the category "annual income.” However, as shown in FIG. 4(B), when the data is limited to "male” and "adult", the user can notice that the model's performance is unfair in the category "annual income”. Therefore, by selecting an arbitrary attribute and displaying attribute-specific performance information, the user can check whether the fairness of the model is ensured under various conditions (i.e., combinations of attributes).
  • FIG. 5A shows a second display example of attribute-specific performance information.
  • the first display example described above displays model performance for each attribute of each category for one model and one data set.
  • the second display example displays model performance for each category attribute for multiple models and one data set.
  • the second display example 50 has a model column 51, an overall performance value column 52, a category column 53, an attribute column 54, and a performance value column 55.
  • the model column 51 shows multiple models. In this example, the performance of the five models h1 to h5 is shown for each attribute of each category.
  • the overall performance value column 52 shows the performance value of the model for the target data set. In this example, the accuracy of the model with respect to the target data set is shown for each model.
  • the category column 53 indicates the category for which the performance value of the model is displayed.
  • the performance values of the model are displayed for three categories: "gender", "age”, and "place of residence”.
  • the attribute column 54 shows attributes corresponding to each category.
  • an attribute frame is provided for each attribute of each category, and the performance value of the model is displayed within the attribute frame. Further, the attribute frame for each attribute is hatched in one of patterns P1 to P3 indicating the fairness of the model, as in the first display example.
  • the fairness of model performance for each category can be displayed simultaneously for multiple models. Therefore, the user can compare and consider the fairness of model performance for a plurality of models. For example, by targeting a plurality of models that have been updated over time, it is possible to evaluate transitions in model performance from the perspective of fairness in model performance.
  • the attribute-specific performance information for the data set corresponding to the selected attribute may be displayed.
  • the user may select any attribute in a window other than the display example 50.
  • a click on the attribute field 54 by the user may be accepted so that the user can select any attribute.
  • FIG. 5(B) shows a third display example of attribute-specific performance information.
  • the first display example described above displays model performance for each attribute of each category for one model and one data set.
  • the third display example displays model performance for each attribute of each category for one model and a plurality of data sets.
  • the third display example 60 has a data set column 61, an overall performance value column 62, a category column 63, an attribute column 64, and a performance value column 65.
  • the data set column 61 shows a plurality of data sets. In this example, model performance is shown for each category attribute for five data sets DS1 to DS5.
  • the overall performance value column 62 shows the performance value of the model for each data set. In this example, the accuracy of the model is shown for each of five data sets DS1-DS5.
  • the category column 63, attribute column 64, and performance value column 65 are basically the same as in the second display example 50.
  • the fairness of model performance for each category can be displayed simultaneously for multiple data sets. Therefore, the user can compare and consider the fairness of model performance for multiple data sets.
  • the attribute-specific performance information for the data set corresponding to the selected attribute may be displayed.
  • the user may select any attribute in a window other than the display example 60.
  • a click on the attribute column 64 by the user may be accepted so that the user can select any attribute.
  • 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 prepared program and mainly operating as the analysis unit 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 analysis unit 125 determines whether the user has selected an attribute using the input device 3 (step S13). If an attribute is selected (step S13: Yes), the analysis unit 125 acquires a data set corresponding to the selected attribute (step S14). Then, the analysis unit 125 repeats steps S11 and S12 for the data set corresponding to the selected attribute. In this way, each time the user selects an attribute, attribute-specific performance information is generated and displayed for the data set corresponding to the selected attribute.
  • 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.
  • Modified example (Modification 1)
  • the analysis unit 125 when the user selects an attribute of an arbitrary category, the analysis unit 125 generates and displays attribute-specific performance information for the data set corresponding to the selected attribute.
  • the analysis unit 125 may automatically calculate combinations of attributes that result in unfair model performance and present them to the user. Specifically, as described above, first, the threshold value of the difference in performance values for determining that the performance of the model is unfair is determined in advance.
  • the analysis unit 125 calculates attribute-specific performance information for all combinations of attributes corresponding to a plurality of categories, and extracts categories in which the performance of the model is unfair. Then, the analysis unit 125 may output and display information including the extracted category and the performance value for each attribute corresponding to the category. According to this, it becomes possible to extract and display combinations of attributes that result in unfair model performance without the user having to repeatedly select attributes.
  • 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, and an output means 74.
  • 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).
  • model analysis device 70 of the second embodiment it is possible to evaluate the performance of a model for each category attribute of a dataset.
  • a model analysis device comprising:
  • Additional note 2 comprising selection means for receiving a selection of said attributes;
  • the dataset acquisition means acquires a dataset corresponding to the selected attribute,
  • the model analysis device according to supplementary note 1, wherein the performance calculation means calculates the performance of the model for each attribute corresponding to a category other than the category for which the attribute is selected.
  • the model acquisition means acquires a plurality of models, The model analysis device according to any one of Supplementary Notes 1 to 4, wherein the performance information includes performance information about the plurality of models.
  • the data acquisition means acquires a plurality of data sets, The model analysis device according to any one of Supplementary Notes 1 to 4, wherein the performance information includes performance information about the plurality of data sets.
  • Appendix 7 The model analysis device according to any one of appendices 1 to 6, wherein the performance calculation means determines an attribute corresponding to the category by clustering data included in the data set.
  • Appendix 8 The model analysis device according to any one of appendices 1 to 6, wherein the performance calculation means determines the attributes corresponding to the categories by percentile division so that the number of data samples included in each attribute is equal.
  • a recording medium that records a program that causes a computer to execute a process of outputting performance information indicating the performance of a model for each calculated attribute.
  • 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へ出力する。
 評価用データDB124は、生成されたモデルの評価に使用する評価用データを記憶する。評価用データは、例えば収集されたデータのうち、訓練データとして使用しなかった一部のデータや、新たに収集されたデータ、検証のために用意されたバリデーションデータなどである。なお、訓練データを評価用データとして使用してもよい。評価用データは、入力データと、その入力データに対する正解(正解値又は正解ラベル)との複数の組み合わせにより構成される。
 評価用データは、データセットの単位で記憶され、使用される。データセットに含まれる各データは、複数のカテゴリを含む。例えば、与信を判定する予測モデルの場合、評価用データとして多数の判定対象者のデータが用意され、各データは、例えば年齢層、性別、居住地域、家族構成、所得などのカテゴリを含む。また、各カテゴリは、複数の属性(グループ)を含む。
 分析部125は、評価用データを用いて、データセットの各カテゴリに対応する属性毎に、モデルの性能を分析する。例えば、あるカテゴリ「性別」が属性「男性」と「女性」を含むとする。この場合、分析部125は、属性「男性」及び「女性」のそれぞれについてモデルの性能を示す性能値を算出する。分析部125は、他のカテゴリについても、属性毎にモデルの性能値を算出する。なお、モデルの性能指標としては、例えば、モデルの予測精度、互換性など、モデルの性能を評価するために使用できる各種の指標を用いることができる。モデルの性能指標の他の例として、F1スコア、適合率、再現率を用いても良く、回帰タスクの場合には決定係数等を用いても良い。また、値が低いほど良いとされる誤差系の指標として、例えば平均二乗誤差や交差エントロピー等を用いても良い。そして、分析部125は、複数のカテゴリについて、属性毎にモデルの性能値を示す情報(以下、「属性別性能情報」とも呼ぶ。)を生成し、評価情報D2として表示装置2へ出力する。分析部125は、モデル取得手段、データセット取得手段、性能算出手段及び出力手段の一例である。
 表示装置2は、分析部125が出力した評価情報D2を表示装置2に表示する。ユーザは、表示された属性別性能情報を見ることにより、各カテゴリの属性毎のモデルの性能の差異を知ることができる。
 また、ユーザは、必要に応じて、現行モデルを修正するための修正情報D3を入力装置3に入力する。修正情報D3は、例えば、モデルの入力として用いられる説明変数の情報、各説明変数に対する重みの情報、入力データを構成する各サンプルに対する重みの情報などの修正に関する情報である。モデル訓練部122は、入力された修正情報D3を用いてモデルの再訓練を行うことにより、モデルの修正を行う。
 [属性別性能情報の表示例]
 次に、属性別性能情報の表示例について説明する。
 (第1の表示例)
(1)初期表示例
 図4(A)は、属性別性能情報の第1の表示例の初期表示例を示す。初期表示例40では、予測に用いられるデータセット全体について、属性毎にモデルの性能値が表示される。なお、以下の例では、モデルの性能値としてモデルの精度を用いる。
 具体的に、初期表示例40は、全体性能値欄41と、カテゴリ欄42と、性能値欄43とを含む。全体性能値欄41は、対象となるデータセット全体に対するモデルの性能値を示す。本例では、データセット全体に対するモデルの性能値として、「全体精度85%」が示されている。カテゴリ欄42は、モデルの性能値の表示対象となるカテゴリを示す。本例では、4つのカテゴリ「性別」、「年齢」、「居住地」及び「年収」についてモデルの性能値が表示されている。
 性能値欄43は、各カテゴリについて、各属性に対応する枠(以下、「属性枠」と呼ぶ。)により、属性毎にモデルの性能値を示している。例えば、カテゴリ「性別」については、属性「男性」に対する性能値が95%、属性「女性」に対する性能値が60%となっている。なお、性能値欄43内の各属性名のかっこ内には、その属性の割合が示されている。例えば、図4(A)の例では、カテゴリ「性別」について、データセット全体において男性の割合が60%、女性の割合が40%となっている。また、各属性枠の大きさ(横方向の長さ)は、各属性の割合に対応している。例えば、カテゴリ「性別」について、「男性」の属性枠と「女性」の属性枠の長さは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%」と仮定し、精度の差が5%以上の場合にモデルの性能が不公平と判定するものとする。カテゴリ「性別」については、属性「男性」の精度が95%、属性「女性」の精度が60%であり、その差が閾値「5%」以上であるため、モデルの性能が不公平と判定される。よって、図4(A)の凡例に示すように、性能値が高い「男性」の属性枠はパターンP1のハッチングで示され、性能値が低い「女性」の属性枠はパターンP2のハッチングで示されている。なお、実際の表示においては、例えば色分けにより、性能値が低い方の属性枠を「赤色」、性能値が高い方の属性枠を「黄色」などとして、性能値が低い方の属性枠をより目立つように表示することが好ましい。また、カテゴリ欄42は、性能値が低い方の属性枠と同様にパターンP2のハッチングで示す。これにより、ユーザはカテゴリ欄42を見ただけでも、そのカテゴリについてモデルの性能が不公平であることを容易に認識できる。
 カテゴリ「年齢」についても、属性「大人」及び「高齢者」の性能値に比べて、属性「子供」の性能値が上記の閾値以上低いので、モデルの性能が不公平であると判定される。その結果、カテゴリ欄42と「子供」の属性枠とはパターンP2のハッチングで示され、「大人」と「高齢者」の属性枠はパターンP1のハッチングで示されている。
 一方、カテゴリ「居住地」については、属性「関東」の性能値と属性「関西」の性能値の差が上記の閾値以下であるので、モデルの性能は公平であると判定される。よって、カテゴリ欄42及び性能値欄43は、いずれもモデルの性能が公平であることを示すパターンP3のハッチングで示されている。
 カテゴリ「年収」についても、属性「400万未満」の性能値と属性「400万以上」の性能値の差が上記の閾値以下であるので、モデルの性能は公平であると判定される。よって、カテゴリ欄42及び性能値欄43は、いずれもモデルの性能が公平であることを示すパターンP3のハッチングで示されている。
 以上のように、図4(A)に示す属性別性能情報の表示によれば、各カテゴリについて、属性毎にモデルの性能値が表示される。よって、ユーザは、同じモデルであっても、予測に用いるデータセットに含まれるカテゴリの属性によって性能値が異なることを知ることができる。また、各カテゴリについて、属性毎の性能値に基づいてモデルの性能が公平であるか否かが判定され、モデルの性能が公平であるカテゴリと不公平であるカテゴリとが区別して表示されるので、ユーザは、カテゴリ毎にモデルの公平性を一目で知ることができる。
(2)属性選択時の表示例
 図4(B)は、ユーザが属性を選択した際の属性別性能情報の表示例を示す。図4(A)に示す初期表示例40において、ユーザは、例えばカーソルCなどを用いて、各カテゴリに対応する任意の属性を選択することができる。図4(B)に示す属性選択時の表示例40xでは、ユーザは、カテゴリ「性別」について属性「男性」を選択し、カテゴリ「年齢」について属性「大人」を選択している。
 属性が選択されると、分析部125は、データセットのうち、選択された属性に該当するデータを抽出して部分データセットを作成し、その部分データセットについて属性別性能情報を生成して表示する。
 具体的に、図4(B)において、全体性能値欄41には、ユーザにより選択された属性、即ち、「男性」かつ「大人」に対する性能値が表示される。ユーザによる選択の対象となった「性別」及び「年齢」について、カテゴリ欄42は白色(ハッチング無し)で表示される。また、ユーザにより選択された「性別」及び「年齢」の属性枠は、選択されたことを示す黒色で示され、それ以外の属性枠は、選択されていないことを示す白色で表示されている。さらに、各属性枠には、各属性の全体に対する割合のみが表示される。
 一方、ユーザによる選択の対象となっていないカテゴリ「居住地」及び「年収」については、図4(A)の例と同様に、そのカテゴリについてモデルの性能が公平であるか否かを示すパターンのハッチングがカテゴリ欄42及び性能値欄43に表示される。具体的に、カテゴリ「居住地」については、モデルの性能が公平であるため、カテゴリ欄42及び性能値欄43がいずれもパターンP3のハッチングで表示されている。一方、カテゴリ「年収」については、属性「400万未満」の性能値と属性「400万以上」の性能値の差が上記の閾値5%以上であり、モデルの性能が不公平であるため、「400万以上」の属性枠がパターンP1のハッチングで表示され、カテゴリ欄42及び「400万未満」の属性枠がパターンP2のハッチングで表示されている。
 このように、本実施形態では、属性別性能情報の表示画面において、ユーザが任意の属性を選択することにより、その属性に該当するデータについて、各カテゴリの属性毎の性能値を表示させることができる。ユーザは、属性を選択して属性別性能情報を表示することにより、初期表示例ではわからなかったモデル性能の不公平を見つけることができる。例えば、データセット全体に対する属性別性能情報を表示している図4(A)の例では、カテゴリ「年収」についてモデルの性能は公平であると判定されている。しかし、図4(B)に示すように、データを「男性」かつ「大人」に限定すると、ユーザは、カテゴリ「年収」においてモデルの性能が不公平であることに気づくことができる。よって、ユーザは、任意の属性を選択して属性別性能情報を表示させることにより、様々な条件(即ち、属性の組み合わせ)についてモデルの公平性が担保できているかを確認することができる。
 (第2の表示例)
 図5(A)は、属性別性能情報の第2の表示例を示す。上述の第1の表示例は、1つのモデル及び1つのデータセットについて、各カテゴリの属性毎にモデルの性能を表示している。これに対し、第2の表示例は、複数のモデル及び1つのデータセットについて、各カテゴリの属性毎にモデルの性能を表示する。
 図示のように、第2の表示例50は、モデル欄51と、全体性能値欄52と、カテゴリ欄53と、属性欄54と、性能値欄55とを有する。モデル欄51は、複数のモデルを示す。本例では、5つのモデルh1~h5について、各カテゴリの属性毎にモデルの性能が示されている。全体性能値欄52は、対象のデータセットに対するモデルの性能値を示す。本例では、対象のデータセットに対するモデルの精度がモデル毎に示されている。
 カテゴリ欄53は、モデルの性能値の表示対象となるカテゴリを示す。本例では、3つのカテゴリ「性別」、「年齢」、及び、「居住地」についてモデルの性能値が表示されている。属性欄54は、各カテゴリに対応する属性を示す。性能値欄55は、各カテゴリの属性毎に属性枠が設けられ、属性枠内にモデルの性能値が表示されている。また、各属性の属性枠は、第1の表示例と同様に、モデルの公平性を示すパターンP1~P3のいずれかのハッチングが付されている。
 第2の表示例50によれば、カテゴリ毎のモデルの性能の公平性を、複数のモデルについて同時に表示することができる。よって、ユーザは、複数のモデルについてモデルの性能の公平性を比較検討することができる。例えば、時系列で更新された複数のモデルを対象とすることにより、モデルの性能の公平性という観点でモデルの性能の遷移を評価することができる。
 なお、第2の表示例でも、ユーザが任意の属性を選択することにより、選択された属性に該当するデータセットに対する属性別性能情報が表示されるようにしてもよい。その場合、ユーザは、表示例50とは別のウィンドウなどにおいて、任意の属性を選択すればよい。また、ユーザによる属性欄54のクリックを受け付けるようにして、ユーザが任意の属性を選択できるようにしてもよい。
 (第3の表示例)
 図5(B)は、属性別性能情報の第3の表示例を示す。上述の第1の表示例は、1つのモデル及び1つのデータセットについて、各カテゴリの属性毎にモデルの性能を表示している。これに対し、第3の表示例は、1つのモデル及び複数のデータセットについて、各カテゴリの属性毎にモデルの性能を表示する。
 図示のように、第3の表示例60は、データセット欄61と、全体性能値欄62と、カテゴリ欄63と、属性欄64と、性能値欄65とを有する。データセット欄61は、複数のデータセットを示す。本例では、5つのデータセットDS1~DS5について、各カテゴリの属性毎にモデルの性能が示されている。全体性能値欄62は、各データセットに対するモデルの性能値を示す。本例では、5つのデータセットDS1~DS5のそれぞれに対するモデルの精度が示されている。カテゴリ欄63、属性欄64及び性能値欄65は、基本的に第2の表示例50と同様である。
 第3の表示例50によれば、カテゴリ毎のモデルの性能の公平性を、複数のデータセットについて同時に表示することができる。よって、ユーザは、複数のデータセットについて、モデルの性能の公平性を比較検討することができる。
 なお、第3の表示例でも、ユーザが任意の属性を選択することにより、選択された属性に該当するデータセットに対する属性別性能情報が表示されるようにしてもよい。その場合、ユーザは、表示例60とは別のウィンドウなどにおいて、任意の属性を選択すればよい。また、ユーザによる属性欄64のクリックを受け付けるようにして、ユーザが任意の属性を選択できるようにしてもよい。
 [モデル分析処理]
 次に、モデル生成装置100によるモデル分析処理について説明する。図6は、モデル生成装置100によるモデル分析処理のフローチャートである。モデル分析処理は、上記のように、各カテゴリの属性毎にモデルの性能を算出し、属性別性能情報を表示する処理である。この処理は、図2に示すプロセッサ112が予め用意されたプログラムを実行し、主として図3に示す分析部125として動作することにより実現される。
 まず、分析部125は、対象となるデータセットを取得する(ステップS10)。次に、分析部125は、カテゴリ毎にデータセットを分割して部分データセットを作成し、モデルを用いて予測を行うことにより、各カテゴリについて属性毎にモデルの性能値を算出する(ステップS11)。そして、分析部125は、図4、図5などに例示するように、属性別性能情報を表示装置2に表示する(ステップS12)。
 次に、分析部125は、入力装置3を用いてユーザが属性を選択したか否かを判定する(ステップS13)。属性が選択された場合(ステップS13:Yes)、分析部125は、選択された属性に対応するデータセットを取得する(ステップ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(B)の例では、ユーザが任意のカテゴリの属性を選択すると、分析部125は、選択された属性に該当するデータセットについて属性別性能情報を生成し、表示している。その代わりに、分析部125は、モデルの性能が不公平となる属性の組み合わせを自動的に計算し、ユーザに提示してもよい。具体的には、まず、前述のように、モデルの性能を不公平と判定するための性能値の差の閾値を予め決定しておく。分析部125は、複数のカテゴリに対応する属性の全ての組み合わせについて属性別性能情報を計算し、モデルの性能が不公平となるカテゴリを抽出する。そして、分析部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と、を備える。
 図9は、第2実施形態のモデル分析装置70による処理のフローチャートである。モデル取得手段71は、モデルを取得する(ステップS71)。データセット取得手段72は、データセットを取得する(ステップS72)。性能算出手段73は、データセットの各カテゴリに対応する属性毎に、モデルの性能を算出する(ステップS73)。出力手段74は、算出された属性毎のモデルの性能を示す性能情報を出力する(ステップS74)。
 第2実施形態のモデル分析装置70によれば、データセットのカテゴリの属性毎にモデルの性能を評価することが可能となる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
 (付記1)
 モデルを取得するモデル取得手段と、
 データセットを取得するデータセット取得手段と、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出する性能算出手段と、
 算出された属性毎のモデルの性能を示す性能情報を出力する出力手段と、
 を備えるモデル分析装置。
 (付記2)
 前記属性の選択を受け取る選択手段を備え、
 前記データセット取得手段は、選択された属性に該当するデータセットを取得し、
 前記性能算出手段は、前記属性の選択の対象となったカテゴリ以外のカテゴリについて、当該カテゴリに対応する属性毎に、前記モデルの性能を算出する付記1に記載のモデル分析装置。
 (付記3)
 前記性能情報は、前記属性毎のモデルの性能の差が所定値以上であるカテゴリと、前記所定値未満であるカテゴリとを区別して示す付記1又は2に記載のモデル分析装置。
 (付記4)
 前記性能情報は、カテゴリに対応する属性毎のデータ数の割合を示す情報を含む付記1乃至3のいずれか一項に記載のモデル分析装置。
 (付記5)
 前記モデル取得手段は、複数のモデルを取得し、
 前記性能情報は、前記複数のモデルについての性能情報を含む付記1乃至4のいずれか一項に記載のモデル分析装置。
 (付記6)
 前記データ取得手段は、複数のデータセットを取得し、
 前記性能情報は、前記複数のデータセットについての性能情報を含む付記1乃至4のいずれか一項に記載のモデル分析装置。
 (付記7)
 前記性能算出手段は、前記データセットに含まれるデータのクラスタリングにより、前記カテゴリに対応する属性を決定する付記1乃至6のいずれか一項に記載のモデル分析装置。
 (付記8)
 前記性能算出手段は、パーセンタイル分割により、各属性に含まれるデータサンプル数が等しくなるように、前記カテゴリに対応する属性を決定する付記1乃至6のいずれか一項に記載のモデル分析装置。
 (付記9)
 モデルを取得し、
 データセットを取得し、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
 算出された属性毎のモデルの性能を示す性能情報を出力するモデル分析方法。
 (付記10)
 モデルを取得し、
 データセットを取得し、
 前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
 算出された属性毎のモデルの性能を示す性能情報を出力する処理をコンピュータに実行させるプログラムを記録した記録媒体。
 以上、実施形態及び実施例を参照して本開示を説明したが、本開示は上記実施形態及び実施例に限定されるものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
 1、1x モデル生成システム
 2、2x 表示装置
 3、3x 入力装置
 7 端末装置
 100 モデル生成装置
 112 プロセッサ
 121 訓練データDB
 122 モデル訓練部
 123 モデルDB
 124 評価用データDB
 125 分析部

Claims (10)

  1.  モデルを取得するモデル取得手段と、
     データセットを取得するデータセット取得手段と、
     前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出する性能算出手段と、
     算出された属性毎のモデルの性能を示す性能情報を出力する出力手段と、
     を備えるモデル分析装置。
  2.  前記属性の選択を受け取る選択手段を備え、
     前記データセット取得手段は、選択された属性に該当するデータセットを取得し、
     前記性能算出手段は、前記属性の選択の対象となったカテゴリ以外のカテゴリについて、当該カテゴリに対応する属性毎に、前記モデルの性能を算出する請求項1に記載のモデル分析装置。
  3.  前記性能情報は、前記属性毎のモデルの性能の差が所定値以上であるカテゴリと、前記所定値未満であるカテゴリとを区別して示す請求項1又は2に記載のモデル分析装置。
  4.  前記性能情報は、カテゴリに対応する属性毎のデータ数の割合を示す情報を含む請求項1乃至3のいずれか一項に記載のモデル分析装置。
  5.  前記モデル取得手段は、複数のモデルを取得し、
     前記性能情報は、前記複数のモデルについての性能情報を含む請求項1乃至4のいずれか一項に記載のモデル分析装置。
  6.  前記データ取得手段は、複数のデータセットを取得し、
     前記性能情報は、前記複数のデータセットについての性能情報を含む請求項1乃至4のいずれか一項に記載のモデル分析装置。
  7.  前記性能算出手段は、前記データセットに含まれるデータのクラスタリングにより、前記カテゴリに対応する属性を決定する請求項1乃至6のいずれか一項に記載のモデル分析装置。
  8.  前記性能算出手段は、パーセンタイル分割により、各属性に含まれるデータサンプル数が等しくなるように、前記カテゴリに対応する属性を決定する請求項1乃至6のいずれか一項に記載のモデル分析装置。
  9.  モデルを取得し、
     データセットを取得し、
     前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
     算出された属性毎のモデルの性能を示す性能情報を出力するモデル分析方法。
  10.  モデルを取得し、
     データセットを取得し、
     前記データセットの各カテゴリに対応する属性毎に、前記モデルの性能を算出し、
     算出された属性毎のモデルの性能を示す性能情報を出力する処理をコンピュータに実行させるプログラムを記録した記録媒体。
PCT/JP2022/013901 2022-03-24 2022-03-24 モデル分析装置、モデル分析方法、及び、記録媒体 WO2023181245A1 (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

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

Family

ID=88100628

Family Applications (1)

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

Country Status (1)

Country Link
WO (1) WO2023181245A1 (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
Chen et al. Constructing the geometric Bonferroni mean from the generalized Bonferroni mean with several extensions to linguistic 2-tuples for decision-making
Sim et al. Missing values and optimal selection of an imputation method and classification algorithm to improve the accuracy of ubiquitous computing applications
Cobb et al. Loss-calibrated approximate inference in Bayesian neural networks
Bernard et al. A survey and task-based quality assessment of static 2D colormaps
US20110191141A1 (en) Method for Conducting Consumer Research
Zheng et al. Learning criteria weights of an optimistic Electre Tri sorting rule
Zhang et al. Fair decision-making under uncertainty
US20070038587A1 (en) Predicting apparatus, predicting method, and computer product
JP2017045434A (ja) データ分析システム、データ分析方法、プログラム、および、記録媒体
Ghai et al. D-bias: A causality-based human-in-the-loop system for tackling algorithmic bias
EP3745325A1 (en) Data analysis apparatus, data analysis method, and data analysis program
Kohl Introduction to statistical data analysis with R
Cincotta The age-structural theory of state behavior
CN112101574A (zh) 一种机器学习有监督模型解释方法、系统及设备
Wilbert et al. Package ‘scan’
Franczak et al. Product selection for liking studies: The sensory informed design
Towner et al. Alternative statistical approaches to the use of data as evidence for hypotheses in human behavioral ecology
Đorđević Evaluation of the usability of Web-based applications
WO2023181245A1 (ja) モデル分析装置、モデル分析方法、及び、記録媒体
Hartley et al. Elicitation and calibration: A Bayesian perspective
Kell et al. The quantification and presentation of risk
US20180121811A1 (en) Profiling a population of examples in a precisely descriptive or tendency-based manner
WO2023175921A1 (ja) モデル分析装置、モデル分析方法、及び、記録媒体
Morariu et al. Predicting user preferences of dimensionality reduction embedding quality
WO2023181243A1 (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: 22933386

Country of ref document: EP

Kind code of ref document: A1