WO2022044064A1 - 機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置 - Google Patents

機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置 Download PDF

Info

Publication number
WO2022044064A1
WO2022044064A1 PCT/JP2020/031769 JP2020031769W WO2022044064A1 WO 2022044064 A1 WO2022044064 A1 WO 2022044064A1 JP 2020031769 W JP2020031769 W JP 2020031769W WO 2022044064 A1 WO2022044064 A1 WO 2022044064A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
attribute
types
machine learning
type
Prior art date
Application number
PCT/JP2020/031769
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 JP2022544887A priority Critical patent/JP7409513B2/ja
Priority to PCT/JP2020/031769 priority patent/WO2022044064A1/ja
Priority to EP20951320.9A priority patent/EP4202799A4/en
Publication of WO2022044064A1 publication Critical patent/WO2022044064A1/ja
Priority to US18/099,266 priority patent/US20230153694A1/en

Links

Images

Classifications

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

Definitions

  • This disclosure relates to machine learning data generation technology.
  • Machine learning is being used for decision-making for individuals such as entrance exams, recruitment, and credit, but there are cases where attributes that should not be discriminated against (protective attributes) such as gender and race affect the prediction results. Is occurring.
  • the above technology corrects each protection attribute in order.
  • the breakdown of another protection attribute is not taken into consideration, so discrimination of another protection attribute is exacerbated, the result of another protection attribute once corrected is changed, or a combination of protection attributes is combined. Discrimination in groups is not corrected.
  • One aspect is to provide a machine learning data generation program, a machine learning data generation method, and a machine learning data generation device that can improve the fairness of machine learning data.
  • the machine learning data generator retrieves multiple pieces of data, each labeled with a positive or negative example, and the first and second attributes associated with each of the pieces of data.
  • the ratio between the number of positive data and the number of negative data is calculated for each of the plurality of types of the set with, and when the difference in the calculated ratio for each of the multiple types is equal to or greater than the threshold value, the plurality of data is calculated.
  • the first one is characterized in that a computer is made to execute a process of generating machine learning data by selecting one data and changing the label of the first data included in a plurality of data.
  • FIG. 1 is a diagram illustrating information processing according to an embodiment.
  • FIG. 2 is a diagram showing an example of a functional block of an information processing apparatus.
  • FIG. 3 is a diagram showing an example of training data.
  • FIG. 4 is a diagram showing an example of grouping by the grouping unit 222.
  • FIG. 5 is a diagram showing an example of correction processing of a pair of groups by the correction trial unit 223.
  • FIG. 6 is a diagram showing an example of the aggregation result of the trial result of the correction process by the aggregation unit 224.
  • FIG. 7 is a diagram showing an example of calculation of the degree of excess by the calculation unit 225.
  • FIG. 8 is a diagram showing an example of calculation of the degree of excess by the calculation unit 225.
  • FIG. 1 is a diagram illustrating information processing according to an embodiment.
  • FIG. 2 is a diagram showing an example of a functional block of an information processing apparatus.
  • FIG. 3 is a diagram showing an example of training data.
  • FIG. 9 is a diagram showing an example of instance selection and modification by the selection unit 227 and the change unit 228.
  • FIG. 10 is a diagram showing an example of the corrected group.
  • FIG. 11 is a flowchart showing an example of a process (method of generating corrected training data) executed in the apparatus.
  • FIG. 12 is a diagram showing training data acquired by the acquisition unit 221.
  • FIG. 13 is a diagram showing grouping by the grouping unit 222.
  • FIG. 14 is a diagram showing a correction process of a pair of groups by the correction trial unit 223.
  • FIG. 15 is a diagram showing the aggregation result of the trial result of the correction process by the aggregation unit 224.
  • FIG. 16 is a diagram showing the calculation of the degree of excess by the calculation unit 225.
  • FIG. 17 is a diagram showing the calculation of the degree of excess by the calculation unit 225.
  • FIG. 18 is a diagram showing instance selection and modification by selection unit 227 and change unit 228.
  • FIG. 19 is a diagram showing a group after correction.
  • FIG. 20 is a flowchart showing an example of a corrected training data generation process executed in the apparatus.
  • FIG. 21 is a flowchart showing an example of a corrected training data generation process executed in the apparatus.
  • FIG. 22 is a diagram illustrating information processing according to the embodiment.
  • FIG. 23 is a diagram illustrating an example of hardware configuration of the device.
  • the fairness of a group in fairness-oriented machine learning is the fairness among groups depending on the value of the protection attribute, and means that the probabilities of each group match among the groups. For example, if the protection attribute is gender, there are male and female groups, and the hiring rate and loan examination rate match.
  • fairness-oriented machine learning if there is a difference in the probability of input / output data between groups, it is corrected by correcting the data.
  • fairness and accuracy are in a trade-off, it is required to satisfy fairness while suppressing data correction as much as possible.
  • the protection attribute may be specified more than once instead of individually.
  • the type and number of attributes are determined according to the social background, cultural background, and use case, and when a plurality of attributes are specified, there is a group for combining them.
  • the difference in classification results (unfairness) between groups depending on the group grouped by a set of multiple protection attributes is corrected.
  • a certain threshold may be used to determine whether fairness is satisfied.
  • the tolerance may be set for each protection attribute, in which case it may be set to a relatively small value if the protection attribute is to be rigorously corrected, otherwise it may be set to a relatively large value.
  • Existing fairness algorithms that can correct fairness between groups grouped by a single protection attribute may be used as is.
  • the fairness algorithm targets data correction (pre-processing, post-processing). Algorithms (in-processing) that build models with fairness in mind can also be targeted.
  • the impartiality algorithm may target a binary classification problem that does not reverse the rank between the original groups (eg, the rank of the ratio of positive examples). In the following, the case where pre-processing is targeted will be described.
  • FIG. 1 is a diagram illustrating an information processing apparatus 20 according to an embodiment.
  • FIG. 1 illustrates a data preparation phase, a training phase, and a classification phase as phases related to machine learning.
  • the information processing apparatus 20 corrects the training data 10.
  • the training data 10 is unfair data in which the protection attribute can greatly affect the classification result, that is, data without consideration for fairness. This unfairness is corrected by the information processing apparatus 20, and is generated as corrected training data 30.
  • the training device 40 In the training phase, the training device 40 generates the trained model 50 by machine learning using the corrected training data 30. In the classification phase, the classification device 60 classifies (predicts) using the trained model 50.
  • the information processing apparatus 20 executes data correction of training data that satisfies fairness by the minimum necessary data correction for a group in which a plurality of protection attributes are combined. Specifically, the information processing apparatus 20 acquires a plurality of data labeled with a positive example or a negative example. Subsequently, the information processing apparatus 20 determines the ratio of the number of positive data to the number of negative data for each of a plurality of types of pairs of the first attribute and the second attribute associated with each of the plurality of data. Is calculated.
  • the information processing apparatus 20 includes the first type included in the plurality of types and all the other types. For each combination of, change candidate data is specified among the data in which the first attribute and the second attribute corresponding to the first type are related, based on the ratio.
  • the information processing apparatus 20 is the first of the data in which the first attribute and the second attribute corresponding to the first type are related based on the change candidate data specified for each combination. Select the data of. After that, the information processing apparatus 20 generates the corrected training data 30 which is the machine learning data by changing the label of the first data included in the plurality of data.
  • the information processing apparatus 20 creates a group in which a plurality of protection attributes are combined, tries discrimination correction processing for all the pairs selected from the two groups, and aggregates the trial results for each group. , Modify in order from the instance with the highest score. In this way, the information processing apparatus 20 adopts the idea of one-versus-one classification that applies the binary classification algorithm to multi-value classification, suppresses unnecessary data correction, and fairness of machine learning data and classification data. Can be improved.
  • FIG. 2 is a diagram showing an example of a functional block of an information processing device.
  • the information processing device 20 includes an input unit 21, a control unit 22, a storage unit 23, and an output unit 24.
  • Training data 10 is input to the input unit 21.
  • the control unit 22 generates the corrected training data 30 by using the training data 10 input to the input unit 21.
  • the details of the control unit 22 will be described later.
  • the storage unit 23 stores various programs required for the processing of the control unit 22, various intermediate data generated by the control unit 20 in the process of various processing, and the like.
  • the storage unit 23 stores the training data 10 and the corrected training data 30.
  • the output unit 24 outputs the corrected training data 30 generated by the storage unit 23.
  • the control unit 22 includes an acquisition unit 221, a grouping unit 222, a correction trial unit 223, an aggregation unit 224, a calculation unit 225, a specific unit 226, a selection unit 227, and a change unit 228.
  • the acquisition unit 221 is input to the input unit 21 to acquire the training data 10 and stores it in the storage unit 13.
  • An example of training data 10 will be described with reference to FIG.
  • FIG. 3 is a diagram showing an example of training data 10.
  • the training data 10 includes data of a plurality of instances. Each piece of data is associated with and labeled with an instance id (identifier) and attributes.
  • An example of an instance is a person.
  • Attributes are classified into protected attributes and non-protected attributes.
  • Protected attributes are attributes that are intended to reduce the impact on classification results.
  • the unprotected attribute is an attribute other than the protected attribute. Examples of protective attributes are gender, race, religion, etc. Examples of non-protected attributes are age, address, score (eg, test score) and the like.
  • the attributes are shown as attributes 1 to 5.
  • the contents of the protection attributes (attribute 1 and attribute 2) are also shown as A1, B1, A2 and B2.
  • the contents of the non-protected attributes (attributes 3 to 5) are also shown as a3 to f3, a4 to f4, and a5 to f5.
  • the label shows the classification result, specifically, two values of positive example (favorable) and negative example (unfavorable).
  • positive and negative cases are, for example, pass and fail indicating pass / fail of the test.
  • the grouping unit 222 groups the training data 10 acquired by the acquisition unit 221 into a set of a plurality of protection attributes. This will be described with reference to FIG.
  • FIG. 4 is a diagram showing an example of grouping by the grouping unit 222.
  • the grouping unit 222 groups into four groups 1 to 4 by generating a pair in which each of the protection attributes A1, A2, B1 and B2 of the training data 13 shown in FIG. 3 is combined.
  • Group 1 is a group in which attribute 1 is A1 and attribute 2 is A2.
  • the other groups 2 to 4 are also as shown in FIG. Instances and labels corresponding to each group are illustrated with circles. The number of circles corresponds to the number of instances (4 in this example). Circles are indicated by solid or dashed circles. Solid circles correspond to regular labels. Dashed circles correspond to negative labels.
  • the grouping unit 222 may calculate the element metrics.
  • An example of element metrics is the ratio of the number of positive data to the number of negative data.
  • ratios are the ratio of the number of positive instances to the total number of instances (number of positive instances / total number of instances) and the ratio of the number of negative instances to the total number of instances (number of negative examples / total number of instances).
  • the proportion shall be the ratio of the number of positive instances to the total number of instances (number of regular instances / total number of instances).
  • the correction trial unit 223 tries the correction process for the pair of groups (pairs of the type of pair) grouped by the grouping unit 222. This will be described with reference to FIG.
  • FIG. 5 is a diagram showing an example of correction processing of a pair of groups by the correction trial unit 223.
  • the correction trial unit 223 is a pair of group 1 and group 2, a pair of group 1 and group 3, a pair of group 1 and group 4, and a pair of group 2 and group 3 from a combination of four groups of group 1 to group 4. , Group 2 and group 4 pairs, group 3 and group 4 pairs are generated, and 6 group pairs are generated. Then, the correction trial unit 223 tries the correction processing for each of the pairs of the six groups.
  • the correction trial unit 223 tries correction processing between the two groups constituting the pair for each of the six pairs.
  • the correction trial unit 223 tries the correction processing by using a fairness algorithm, which is also called, for example, an inter-bias algorithm. Since the fairness algorithm between two groups is known, detailed description is not given here.
  • An example of corrective action is changing the label of an instance. Label changes include positive to negative and negative to positive changes. Other examples of corrective action are the addition and modification of attributes. Hereinafter, unless otherwise specified, the corrective action shall be a label change. Since the correction trial unit 223 performs the correction processing trial, the result of the correction processing can be obtained, but the fairness between the two groups is immediately corrected according to the result, that is, the instance is changed by the label change. Please note that it will not be modified.
  • FIG. 5 also illustrates the result of the correction process.
  • the instance to be modified is indicated by hatching.
  • the second instance of group 1 (from the left) is the modification target.
  • the other pairs are also as shown in FIG.
  • the instance to be modified does not exist.
  • the aggregation unit 224 aggregates the trial results of the correction processing by the correction trial unit 223 for each group. This will be described with reference to FIG.
  • FIG. 6 is a diagram showing an example of the aggregation result of the trial result of the correction process by the aggregation unit 224.
  • the aggregation unit 224 aggregates the trial results of the correction processing of the six group pairs shown in FIG. 5 for each group 1, group 2, group 3, and group 4. That is, as shown in FIG. 6, the aggregation unit 224 aggregates the trial results of three types of correction processing into each of groups 1 to 4.
  • the aggregation unit 224 has one negative example label (dashed line circle) and two positive example labels (practical circles) from the pair of group 1 and group 2. Aggregate one label (hatching) to be changed.
  • the aggregation unit 224 aggregates one negative example label, two positive example labels, and one change target label from the pair of group 1 and group 3, and from the pair of group 1 and group 4. Aggregate one negative example label, one positive example label, and two labels to be changed.
  • the aggregation unit 224 gives a score to the instance.
  • the timing of giving the score is not particularly limited, and it can be executed until the selection by the selection unit 227 described later.
  • the score is an index (confidence) that indicates that the instance needs to be modified.
  • the aggregation unit 224 determines the score so that the larger the number of trial results for which the instance is to be modified, the higher the score. For example, the aggregation unit 224 determines the score based on the ratio (ratio, probability, etc.) of the number of trial results. In the example shown in FIG. 6, the second instance of group 1 is subject to modification by all three corrective action trials, so the score is 3/3 or 1.0.
  • the score of the third instance of group 1 is 1/3 or 0.33, as is the fourth instance of group 2 and the third instance of group 3.
  • the score of the third instance of group 4 is 2/3 or 0.67.
  • the scores of the other instances for which the scores are not shown are 0/3 or 0.
  • An instance to which a score is given can be an instance of a candidate to be modified.
  • the calculation unit 225 calculates the degree of excess for each pair of groups. Super-excessive indicates that the degree of injustice between the groups that make up the pair is above a certain level. The hyperexcessive calculation will be described with reference to FIGS. 7 and 8.
  • the calculation unit 225 classifies the two groups constituting the pair into a privileged group and a non-privileged group. Privileged groups are preferential groups.
  • a non-privileged group is a group that is treated cold. This classification is based on the size of the element metrics (eg, the ratio of positive examples). For example, the calculation unit 225 classifies a group having a large ratio of positive examples among the two groups into a privileged group. The calculation unit 225 classifies the group having a small ratio of positive examples among the two groups into a non-privileged group. In the example shown in FIG. 7, the calculation unit 225 classifies the group 1 into a privileged group and the group 2 into a non-privileged group in the pair of the group 1 and the group 2. The pairs of other groups are also as shown in FIG.
  • the calculation unit 225 calculates the fairness metric ⁇ for each pair.
  • Fairness metric ⁇ is a metric for measuring the fairness of data and models.
  • the fairness metric ⁇ using the statistical uniformity calculated according to the following equation (1) as an example shall be used.
  • fairness metrics based on probability, distance, distribution, and the like, and any one of them may be appropriately selected and used according to the use case.
  • D indicates a protection attribute
  • D unprividged indicates that it is a non-privileged group
  • D drivenged indicates that it is a privileged group.
  • the first term on the right-hand side shows the distribution of positive examples of non-privileged groups.
  • the second term on the right-hand side shows the distribution of positive examples of privileged groups.
  • Distribution Pr2 is the distribution of group 2.
  • Distribution Pr1 is the distribution of group 1.
  • the pairs of other groups are also as shown in FIG. 7
  • the calculation unit 225 calculates the degree of excess from the fairness metric ⁇ .
  • the hyperexcessive indicates how much the calculated fairness metric ⁇ deviates from the tolerance ⁇ , which is an example of the threshold set for the fairness metric ⁇ .
  • the calculation unit 225 calculates the degree of excess for each attribute and subtotals it. This allows different tolerances ⁇ to be set depending on the attribute.
  • the excess degree in the pair of group 1 and group 2 the excess degree corresponding to the attribute 1 is shown as the excess degree E12-1.
  • the degree of excess according to attribute 2 is shown as the degree of excess E12-2.
  • the subtotal values (total values) of the super-excess E12-1 and the excess E12-2 are shown as the excess E12.
  • the pairs of other groups are also as shown in FIG.
  • the calculation unit 225 calculates the excess degree of each group from the subtotal value of the excess degree shown in FIG. 7.
  • the calculation unit 225 calculates the degree of excess as a value obtained by adding or subtracting a subtotal value for the group (here, an absolute value).
  • the degree of excess of group 1 is shown as the degree of excess E1.
  • the calculation unit 225 determines whether to add or subtract the subtotal value according to whether the group is a privileged group or a non-privileged group in the pair of groups for which the subtotal value is calculated. In this example, the calculation unit 225 adds the subtotal value when it is a privileged group, and subtracts the subtotal value when it is a non-privileged group.
  • the other groups are also as shown in FIG.
  • the specific unit 226 identifies (selects) the group to be corrected based on the degree of excess calculated by the calculation unit 225. For example, the identification unit 226 identifies the group having the largest degree of excess as the group to be corrected. When there are multiple groups with the largest excess, for example, the specific unit 226 identifies the group with the highest number of instances of modification candidates (label change candidates) or the group with the highest score (confidence) as the correction target group. .. Here, it is assumed that Group 1 is specified as a correction target.
  • the selection unit 227 selects (specifies) the instance to be modified from the instances included in the group specified by the specific unit 226.
  • the change unit 228 modifies the instance by changing the label of the selected instance. This will be described with reference to FIGS. 9 and 10.
  • FIG. 9 is a diagram showing an example of instance selection and modification by the selection unit 227 and the change unit 228.
  • Group 1 is the target of correction
  • the aggregation result of Group 1 (FIG. 6) is reposted on the left side of FIG. Since the score of the second instance is 1.0, which is the highest, the selection unit 227 selects the second instance as the instance to be modified.
  • the change unit 228 changes the label of the second instance selected by the selection unit 227. In this example, the change unit 228 changes the label of the second instance from the positive example to the negative example, as shown on the right side of FIG.
  • FIG. 10 is a diagram showing an example of a group after correction. Compared to FIG. 4 described above, the label of the second instance of group 1 has been changed from the positive example to the negative example, and the ratio of the positive example between the group 1 and the other groups 2 to 4 is correspondingly the same. The difference is getting smaller. That is, fairness between groups has been corrected (unfairness has been reduced).
  • the processing by the specific unit 226, the selection unit 227, and the change unit 228 described with reference to FIGS. 7 to 10 and the like described above may be repeatedly executed until the degree of excess falls within the tolerance ⁇ . At that time, each process may be executed within the range in which the fairness between the groups (ranking of the ratio of positive examples) is not reversed. In that case, for example, the change unit 228 changes the label data in the group specified by the specific unit 226 when the order between the groups does not change even if the label selected by the selection unit 227 is changed. This makes it easier for the degree of excess to converge.
  • control unit 22 For example, by correcting the training data 10 (FIG. 1) as described above, the control unit 22 generates the corrected training data 30.
  • the modification unit 228 may be adopted by using an appropriate aggregate function from the modification candidates.
  • the change unit 228 can adopt a majority vote if it is a nominal scale, or can take an average if it is a proportional scale.
  • FIG. 11 is a flowchart showing an example of a method of generating corrected training data, which is a process executed in the apparatus.
  • the acquisition unit 221 acquires the training data 10 input to the input unit 21 (S1).
  • the grouping unit 222 groups the training data 10 acquired by the acquisition unit 221 as described above with reference to FIG. 4 (S2).
  • the correction trial unit 223 tries the correction processing for each pair of groups as described above with reference to FIG. 5 (S3).
  • the aggregation unit 224 aggregates the trial results of the correction process for each group as described above with reference to FIG. 6 (S4).
  • the calculation unit 225 calculates the degree of excess as described above with reference to FIGS. 7 and 8 (S5).
  • the identification unit 226 identifies the group to be corrected as described above with reference to FIGS. 7 and 8 (S6).
  • the selection unit 227 selects the instance to be modified as described above with reference to FIG. 9 (S7).
  • the change unit 228 modifies the instance as described above with reference to FIG. 9 (S8).
  • control unit 22 determines whether or not the degree of excess is within the range of the tolerance ⁇ (S9). When the super-excess is within the tolerance ⁇ (S9: Yes), the control unit 22 ends the processing of the flowchart. If not (S9: No), the control unit 22 returns the process to S6. As described above, while the processes of S6 to S9 are repeatedly executed, those processes may be executed within the range in which the fairness between the groups (ranking of the ratio of the positive examples) is not reversed. The flow in this regard is illustrated in FIGS. 20 and 21 which will be described later.
  • the corrected training data 30 generated as described above is corrected so as to be optimized for the entire group by combining the protection attributes when there are a plurality of protection attributes. If there are multiple protection attributes and one protection attribute is corrected in order, the content of another protection attribute is not taken into consideration when correcting one protection attribute, so discrimination between other protection attributes worsens. There's a problem. There is also the problem that the result of another protection attribute once corrected is changed, and the discrimination of the group that combines the protection attributes is not corrected. It is also conceivable to repeat the process of making corrections between two selected groups (pairs) and making corrections with the next pair for a group in which a plurality of protection attributes are combined. However, in this case, the instance to be modified is determined by the pair of selected groups, so that the modification result becomes a local solution. According to the method of this embodiment, these problems are reduced.
  • FIG. 12 is a diagram showing training data acquired by the acquisition unit 221.
  • Instances are test takers (applicants).
  • Protective attributes are gender and religion.
  • the non-protective attributes are age, address and score (test score).
  • Labels are pass (positive example) and fail (negative example).
  • FIG. 13 is a diagram showing grouping by the grouping unit 222.
  • the grouping unit 222 groups into a group of men and religion A, a group of men and religion B, a group of women and religion A, and a group of women and religion B.
  • the number of instances (number of circles) included in each group is 10. Solid circles correspond to pass (positive example), and dashed circles correspond to fail (negative example).
  • FIG. 14 is a diagram showing a correction process of a pair of groups by the correction trial unit 223.
  • the correction trial unit 223 tries the correction processing for each of the pairs of the six groups.
  • the instance to be modified is indicated by hatching.
  • FIG. 15 is a diagram showing the aggregation result of the trial result of the correction process by the aggregation unit 224. The score given to the instance is also shown.
  • 16 and 17 are diagrams showing the calculation of the degree of excess by the calculation unit 225.
  • the calculation unit 225 sets the tolerance of excess ⁇ 1 according to gender to 0.2 and the tolerance ⁇ 2 of excess according to religion to 0.3. Set.
  • the calculation unit 225 calculates the amount exceeding these excess degrees as the excess degree for each attribute.
  • the impartiality metric ⁇ is -0.3 for the male and religion A group and the female and religion A group.
  • the degree of excess of gender is 0.1 because it exceeds the tolerance ⁇ 2 (0.2) by 0.1.
  • the degree of religion excess is 0 because it does not exceed the tolerance ⁇ 1 (0.3).
  • the super-excessive subtotal value (total value) is 0.1.
  • the other groups are also as shown in FIG.
  • the calculation unit 225 calculates the degree of excess of each group as a value obtained by adding or subtracting a subtotal value.
  • the calculation unit 225 calculates the degree of excess of the male and religion A groups as 0.7.
  • the other groups are also as shown in FIG.
  • the group of men with the highest degree of excess and the group of religion A are identified as the group to be corrected by the specific unit 226.
  • FIG. 18 is a diagram showing instance selection and modification by the selection unit 227 and the change unit 228.
  • the instance given the highest score of 1.0 among the instances included in the group of male and religion A is selected by the selection unit 227 as the instance to be modified.
  • the label of the instance selected by the selection unit 227 is changed from pass to fail by the change unit 228, and the instance is modified.
  • FIG. 19 is a diagram showing a group after correction. Compared to FIG. 13 described above, the label of the second instance (from the top) of the male and religion A groups has been changed from positive to negative. As a result, the difference in the ratio of positive cases between the male and religion A groups and other groups is small. That is, fairness between groups has been corrected (unfairness has been reduced).
  • the method of generating the corrected training data explained above is only an example, and the method of generating it is specified from various viewpoints. Some examples will be described with reference to FIGS. 20 and 21.
  • FIG. 20 is a flowchart showing an example of a corrected training data generation process, which is a process executed in the device.
  • the correction trial unit 223 executes correction processing by the fairness algorithm for all pairs of the group in which the protection attributes are combined (S11). Specific examples are as described above with reference to FIGS. 5 and 14.
  • the aggregation unit 224 aggregates the correction processing results for each group, and the modified instance is set as a modification candidate (S12). Specific examples are as described above with reference to FIGS. 6 and 15. The instances shown by hatching in FIGS. 6 and 15 are instances of correction candidates.
  • the calculation unit 225 calculates the element metrics of all groups (for example, the ratio of positive examples), and determines the privilege of the element groups of all pairs (S13). Specific examples are as described above with reference to FIGS. 7 and 16.
  • the calculation unit 225 calculates the excess degree for each pair and the excess degree for each pair from the fairness metrics of all pairs (S14). Specific examples are as described above with reference to FIGS. 7 and 16.
  • the calculation unit 225 calculates the excess degree for each group from the excess degree for each pair, and sets the group exceeding 0 as a candidate for the correction target group (S15). Specific examples are as described above with reference to FIGS. 7 and 16.
  • control unit 22 determines whether or not there is a correction target group candidate. When there is a correction target group candidate (S16: Yes), the control unit 22 proceeds to S17. If not (S16: No), the control unit 22 ends the processing of the flowchart.
  • the specific unit 226 sets the group having the largest degree of excess among the correction target group candidates as the correction target group (S17). Specific examples are as described above.
  • control unit 22 determines whether or not there is an instance as a correction candidate in the correction target group (S18). If there is an instance that is a modification candidate (S18: Yes), the control unit 22 proceeds to S19. If not (S18: No), the control unit 22 proceeds to S22.
  • the selection unit 227 calculates the conviction (score) for each instance that is a modification candidate, and selects the instance with the highest conviction (S19). Specific examples are as described above with reference to FIGS. 9 and 18.
  • control unit 22 determines whether or not the order of the element metrics (for example, the ratio of positive examples) changes when the selected instance is modified (S20). When the order changes (S20: Yes), the control unit 22 proceeds to S22. If not (S20: No), the control unit 22 proceeds to S21.
  • the order changes for example, the ratio of positive examples
  • the change unit 228 reflects the modification content of the selected instance in the aggregation result by group and excludes it from the modification candidates (S21). Specific examples are as described above with reference to FIGS. 9, 10, 18 and 19. After the processing of S21 is completed, the control unit 22 returns the processing to S16.
  • control unit 22 is excluded from the correction group candidates (S22). That is, the control unit 22 excludes the group targeted for correction in S17 from the correction group candidates. After the processing of S22 is completed, the control unit 22 returns the processing to S16.
  • the corrected training data 30 can be generated as described above.
  • the instance is corrected within the range where the order of the element metrics (for example, the ratio of the positive example) does not change, so that the process is easy to converge.
  • FIG. 21 is a flowchart showing an example of a corrected training data generation process, which is a process executed in the apparatus.
  • the control unit 22 determines whether or not there is a correction target group candidate (S36). When there is a correction target group candidate (S36: Yes), the control unit 22 proceeds to S37. If not (S36: No), the control unit 22 ends the processing of the flowchart.
  • the control unit 22 determines whether or not there is a plurality of groups having the maximum degree of excess among the correction target group candidates (S37). When there are a plurality of groups having the maximum super excess (S37: Yes), the control unit 22 proceeds to S38. If not (S37: No), the control unit 22 proceeds to S39.
  • the specific unit 226 sets the group with the highest number of correction candidate instances or the highest degree of certainty (score) as the correction target group among the groups with the maximum degree of excess (S38). Specific examples are as described above. After the processing of S38 is completed, the control unit 22 advances the processing to S40.
  • the specific unit 226 sets the group with the maximum degree of excess as the correction target group (S39). Specific examples are as described above. After the processing of S39 is completed, the control unit 22 advances the processing to S40.
  • the corrected training data 30 can be generated as described above.
  • the correction target group can be specified.
  • the trial results of the correction process for each pair of groups are aggregated, and the label is changed based on the aggregated results.
  • the fairness of the training data 10 can be improved.
  • Appropriate correction can be made by modifying the group instance in the pair of groups with the highest degree of excess. After modifying one instance, you can modify another instance to make further corrections.
  • a corrective symmetry group with a high need for fairness correction can be identified. Can be identified.
  • the existing fairness algorithm can be utilized by selecting the modified symmetric instance using the fairness algorithm that corrects the fairness between the two groups.
  • the process can be easily converged.
  • the correction symmetry can be specified by setting the group with the highest number of correction candidate instances or confidence (score) as the correction target group.
  • the processing according to the embodiment targets pre-processing that corrects the training data.
  • the processing according to the embodiment can also be targeted for post-processing that corrects the classification data (prediction data) generated by the machine-learned model. This is because the same method as pre-processing can be applied.
  • the only difference from pre-processing is the type of data, where pre-processing changes the label of the original data (also known as the observation label or correct label), such as training / testing, while post-processing is predictive data. Change the label of. Since the prediction data and the label as well as the protection attribute are known, corrective processing is performed for each pair using it, the results are aggregated, and the instance to be corrected is determined. Post-processing will be described with reference to FIG.
  • FIG. 22 is a diagram illustrating information processing according to the embodiment.
  • the training data 10 is not corrected.
  • the training device 40 generates the trained model 50A by machine learning using the training data 10.
  • the classification device 60A classifies using the trained model 50A.
  • the classification result of the trained model 50A is shown as classification data 70.
  • the classification data 70 has a data structure similar to that of the training data 10.
  • the classification data 70 is corrected by the information processing apparatus 20A.
  • the information processing device 20A may have the same configuration as the information processing device 20 (FIG. 1). Since the classification data 70 has the same data structure as the training data 10, the information processing apparatus 20A can correct the classification data 70 in the same way that the information processing apparatus 20 corrects the training data 10.
  • the corrected data is illustrated as corrected classification data 80.
  • the corrected classification data 80 is data in which unfairness has been corrected, as in the corrected training data 30 (FIG. 1).
  • the processing related to the embodiment can also be targeted for in-processing.
  • the classification device 60 (classification algorithm) shown in FIG. 1 is treated as a classification algorithm in consideration of fairness by having a configuration included in the fairness algorithm.
  • in-processing build a model that is less biased than data correction. Since it is a model, the input is training / test and the output is prediction. Even in this case, the methods described so far can be applied in the same manner. That is, the training / test is corrected for each pair, the prediction data as a result is aggregated, and the instance is corrected. It can be advantageous in terms of accuracy and fairness compared to pre-processing and post-processing.
  • training data used in the above embodiment, types such as protection attributes, label examples, instance examples, etc. are just examples and can be changed arbitrarily.
  • each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution or integration of each device is not limited to the one shown in the figure. That is, all or a part thereof can be functionally or physically distributed / integrated in any unit according to various loads, usage conditions, and the like.
  • the element metrics can be calculated by the correction trial unit 223, the aggregation unit 224, the calculation unit 225, and the like other than the grouping unit 222 in the control unit 22.
  • the score can be given by the calculation unit 225 or the specific unit 226.
  • each processing function performed by each device is realized by a CPU (Central Processing Unit) and a program that is analyzed and executed by the CPU, or hardware by wired logic. Can be realized as.
  • CPU Central Processing Unit
  • FIG. 23 is a diagram illustrating a hardware configuration example.
  • the information processing device 20 includes a communication device 20a, a display device 20b, an HDD (Hard Disk Drive) 20c, a memory 20d, and a processor 20e. They are connected to each other by a bus or the like.
  • the communication device 20a is a network interface card or the like, and communicates with other servers.
  • the display device 20b is a device that displays a correction result or the like, and is, for example, a touch panel or a display.
  • the HDD 20c stores a program or DB that operates the function shown in FIG.
  • the processor 20e reads a program from the HDD 20c or the like and expands it to the memory 20d to operate a process for executing each function described in FIG. 2 or the like. For example, this process executes the same function as the control unit 22 of the information processing apparatus 20. Specifically, the processor 20e reads the program from the HDD 20c or the like. Then, the processor 20e executes a process of executing the same processing as the control unit 22 and the like.
  • the information processing device 20 operates as an information processing device that executes a method of generating corrected training data (machine learning data) by reading and executing a program. Further, the information processing apparatus 20 can realize the same function as the above-described embodiment by reading a program from the recording medium by the medium reading device and executing the read program.
  • the program referred to in the other embodiment is not limited to being executed by the information processing apparatus 20.
  • the present invention can be similarly applied when other computers or servers execute programs, or when they execute programs in cooperation with each other.
  • This program can be distributed via networks such as the Internet.
  • this program is recorded on a computer-readable recording medium such as a hard disk, flexible disk (FD), CD-ROM, MO (Magneto-Optical disk), DVD (Digital Versatile Disc), and is recorded from the recording medium by the computer. It can be executed by being read.
  • Training data 20 Information processing device 21 Input section 22 Control section 23 Storage section 24 Output section 30 Corrected training data 40 Training device 50 Trained model 60 Classification device 70 Classification data 80 Corrected classification data 221 Acquisition section 222 Grouping section 223 Correction trial part 224 Aggregation part 225 Calculation part 226 Specific part 227 Selection part 228 Change part

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

機械学習データ生成プログラムは、それぞれに正例または負例がラベル付けされた複数のデータを取得し、複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、複数の種類のそれぞれに対して算出された比率の差が閾値以上である場合、複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、比率に基づいて、第1の種類に対応する第1の属性と第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、組み合わせ毎に特定された変更候補のデータに基づいて、第1の種類に対応する第1の属性と第2の属性とが関連付いたデータのうち、第1のデータを選択し、複数のデータに含まれる第1のデータのラベルを変更することによって機械学習データを生成する、処理をコンピュータに実行させる。

Description

機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置
 本開示は、機械学習データの生成技術に関する。
 機械学習は、入試や採用、与信など、個人に対する意思決定に利用されるようになってきているが、性別や人種など、差別してはならない属性(保護属性)が予測結果に影響するケースが発生している。
 近年では、差別のような潜在的な社会的問題に配慮し、予測結果からバイアスを無くすように是正する技術として、機械学習済みの分類器を用いたインスタンス(既知のデータ)の修正技術などが利用されている。例えば、訓練データまたはテストデータに対し、分類器を用いてインスタンスの分類スコアを算出し、ラベル毎にソートして2グループ間で確率が合うようにラベルを変更した後、分類スコアでソートすることで、曖昧性の高いラベルが付与されたインスタンスに修正する。
特表2019-519021号公報
 しかしながら、上記技術では、或る属性だけに着目して、ラベルを変更してインスタンスを修正し、公平性の是正を実行した場合、他の属性での偏り(不公平性)が大きくなる可能性がある。
 例えば、複数の保護属性がある場合、上記技術では、1保護属性ずつ順に是正する。しかし、1保護属性を是正する際、別の保護属性の内訳を考慮しないので、別の保護属性の差別が悪化したり、一度是正した別の保護属性の結果が変更されたり、保護属性を組み合わせたグループの差別は是正されない。
 なお、複数の保護属性を組み合わせたグループに対し、選択した2グループ間(ペア)で差別是正を行うことも考えられるが、是正される内容が選択されグループのペアによって決定されるので、グループ選択を繰り返すことで得られる最終的な是正結果が局所解となることがある。このように、一部のグループが持つ特徴により、全体の特徴に反した是正が行われる可能性がある。
 一つの側面では、機械学習データの公平性を向上することができる機械学習データ生成プログラム、機械学習データ生成方法および機械学習データ生成装置を提供することを目的とする。
 第1の案では、機械学習データ生成プログラムは、それぞれに正例または負例がラベル付けされた複数のデータを取得し、複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、複数の種類のそれぞれに対して算出された比率の差が閾値以上である場合、複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、比率に基づいて、第1の種類に対応する第1の属性と第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、組み合わせ毎に特定された変更候補のデータに基づいて、第1の種類に対応する第1の属性と第2の属性とが関連付いたデータのうち、第1のデータを選択し、複数のデータに含まれる第1のデータのラベルを変更することによって機械学習データを生成する、処理をコンピュータに実行させることを特徴とする。
 一つの側面では、機械学習データの公平性を向上することができる。
図1は、実施形態に係る情報処理を説明する図である。 図2は、情報処理装置の機能ブロックの例を示す図である。 図3は、訓練データの例を示す図である。 図4は、グループ化部222によるグループ化の例を示す図である。 図5は、是正試行部223によるグループのペアの是正処理の例を示す図である。 図6は、集約部224による、是正処理の試行結果の集約結果の例を示す図である。 図7は、算出部225による超過度の算出の例を示す図である。 図8は、算出部225による超過度の算出の例を示す図である。 図9は、選択部227および変更部228によるインスタンスの選択および修正の例を示す図である。 図10は、是正後のグループの例を示す図である。 図11は、装置において実行される処理(是正済み訓練データの生成方法)の例を示すフローチャートである。 図12は、取得部221によって取得された訓練データを示す図である。 図13は、グループ化部222によるグループ化を示す図である。 図14は、是正試行部223によるグループのペアの是正処理を示す図である。 図15は、集約部224による、是正処理の試行結果の集約結果を示す図である。 図16は、算出部225による超過度の算出を示す図である。 図17は、算出部225による超過度の算出を示す図である。 図18は、選択部227および変更部228によるインスタンスの選択および修正を示す図である。 図19は、是正後のグループを示す図である。 図20は、装置において実行される是正済み訓練データの生成処理の例を示すフローチャートである。 図21は、装置において実行される是正済み訓練データの生成処理の例を示すフローチャートである。 図22は、実施形態に係る情報処理を説明する図である。 図23は、装置のハードウェア構成例を説明する図である。
 以下、実施形態を図面に基づいて詳細に説明する。この実施形態により発明は限定されない。各形態は、矛盾のない範囲内で適宜組み合わされてよい。
 近年、機械学習は、入試や採用、与信など、個人に対する意思決定に利用されるようになってきている。しかし、性別や人種など、差別してはならない保護属性が分類結果(予測結果)に影響するケースが発生しており、問題となっている。そのため、差別のような潜在的な社会的問題に配慮し、予測結果からバイアスを無くすように是正する公平性配慮型機械学習が期待される。
 ここで、公平性配慮型機械学習におけるグループの公平性とは、保護属性の値に依存したグループ間における公平性であり、グループ毎の確率がグループ間で一致することを指す。例えば、保護属性が性別であれば、男性グループと女性グループが存在し、採用率やローン審査率が一致することなどである。公平性配慮型機械学習では、入出力するデータにグループ間で確率に差があればデータを修正することで是正する。ただし、公平性と精度はトレードオフになっているので、なるべくデータ修正を抑えた上で公平性を満たすことが求められる。
 また、保護属性は単独ではなく、複数指定されることがある。例えば、属性の種類や数は、社会的背景や文化的背景およびユースケースに応じて決定され、複数指定される場合、それらを組み合わせた分のグループが存在する。
 開示される技術によれば、特に、複数の保護属性の組でグループ化されたグループに依存したグループ間での分類結果の差(不公平)が是正される。公平性を満たすかどうかの判断として、ある閾値(許容度)が用いられてよい。許容度は保護属性毎に設定されてよく、その場合、厳しく是正したい保護属性の場合には比較的小さい値に設定され、そうでなければ比較的大きい値に設定されてよい。単一の保護属性でグループ化されたグループ間の公平性を是正することが可能な既存の公平性アルゴリズムがそのまま用いられてよい。公平性アルゴリズムは、データ修正(pre-processing、post-processing)を対象とする。公平性を配慮してモデルを構築するアルゴリズム(in-processing)も対象となりうる。公平性アルゴリズムは元のグループ間の順位(例えば正例の比率の順位)を逆転しない2値の分類問題を対象としてよい。以下では、特にpre-processingを対象とする場合について説明する。
 図1は、実施形態に係る情報処理装置20を説明する図である。図1には、機械学習に関するフェーズとして、データ準備フェーズ、訓練フェーズおよび分類フェーズが例示される。
 データ準備フェーズにおいて、情報処理装置20は、訓練データ10を是正する。訓練データ10は、保護属性が分類結果に大きな影響を及ぼし得る不公平なデータ、つまり公平性配慮の無いデータである。この不公平が、情報処理装置20によって是正され、是正済み訓練データ30として生成される。
 訓練フェーズにおいて、訓練装置40が、是正済み訓練データ30を用いた機械学習によって、訓練済みモデル50を生成する。分類フェーズにおいて、分類装置60が、訓練済みモデル50を用いて分類(予測)を行う。
 ここで、情報処理装置20は、複数の保護属性を組み合わせたグループに対して、必要最低限のデータ修正によって公平性を満たす、訓練データのデータ修正を実行する。具体的には、情報処理装置20は、それぞれに正例または負例がラベル付けされた複数のデータを取得する。続いて、情報処理装置20は、複数のデータそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類ごとに、正例のデータ数と負例のデータ数との比率を算出する。
 そして、情報処理装置20は、複数の種類(グループ)のそれぞれに対して算出された比率の差が閾値以上である場合、複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、比率に基づいて、第1の種類に対応する第1の属性と第2の属性とが関連付いたデータのうち、変更候補のデータを特定する。
 続いて、情報処理装置20は、組み合わせ毎に特定された変更候補のデータに基づいて、第1の種類に対応する第1の属性と第2の属性とが関連付いたデータのうち、第1のデータを選択する。その後、情報処理装置20は、複数のデータに含まれる第1のデータのラベルを変更することによって機械学習データである是正済み訓練データ30を生成する。
 つまり、情報処理装置20は、複数の保護属性を組み合わせたグループを生成し、その中から、2グループを選択したペア全てに対し、差別是正処理を試行し、その試行結果をグループ毎に集約し、スコアの高いインスタンスから順に修正する。このように、情報処理装置20は、2値分類アルゴリズムを多値分類に適用するone-versus-one分類の考えを取り入れ、不要なデータ修正を抑制しつつ、機械学習データや分類データの公平性を向上することができる。
 図2は、情報処理装置の機能ブロックの例を示す図である。情報処理装置20は、入力部21と、制御部22と、記憶部23と、出力部24とを含む。
 入力部21には、訓練データ10が入力される。制御部22は、入力部21に入力された訓練データ10を用いて、是正済み訓練データ30を生成する。制御部22の詳細については後述する。記憶部23は、制御部22の処理に必要な種々のプログラムや制御部20が各種処理の過程で生成する各種中間データなどを記憶する。例えば、記憶部23は、訓練データ10と是正済み訓練データ30を記憶する。出力部24は、記憶部23によって生成された是正済み訓練データ30を出力する。
 制御部22について詳述する。制御部22は、取得部221と、グループ化部222と、是正試行部223と、集約部224と、算出部225と、特定部226と、選択部227と、変更部228とを含む。
 取得部221は、入力部21に入力され訓練データ10を取得して、記憶部13に格納する。訓練データ10の例について、図3を参照して説明する。
 図3は、訓練データ10の例を示す図である。訓練データ10は、複数のインスタンスのデータを含む。各データは、インスタンスid(identifier(識別子))および属性が関連付けられるとともに、ラベル付けされている。インスタンスの例は、人である。
 属性は、保護属性および非保護属性に分類される。保護属性は、分類結果への影響を低減することが意図されている属性である。非保護属性は、保護属性以外の属性である。保護属性の例は、性別、人種、宗教等である。非保護属性の例は、年齢、住所、点数(例えば試験の点数)等である。図3においては、属性が属性1~属性5として示される。保護属性(属性1および属性2)の内容も、A1、B1、A2およびB2として示される。非保護属性(属性3~属性5)の内容も、a3~f3、a4~f4およびa5~f5として示される。
 ラベルは、分類結果を示し、具体的には正例(favorable)または負例(unfavorable)の2値を示す。正例および負例の例は、例えば試験の合否を示す合格および不合格である。
 図2に戻り、グループ化部222は、取得部221によって取得された訓練データ10を、複数の保護属性の組にグループ化する。これについて、図4を参照して説明する。
 図4は、グループ化部222によるグループ化の例を示す図である。グループ化部222は、図3に示した訓練データ13の保護属性であるA1、A2、B1、B2それぞれを組み合わせたペアを生成することで、グループ1~グループ4の4つにグループ化する。グループ1は、属性1がA1、属性2がA2のグループである。他のグループ2~グループ4についても、図4に示されるとおりである。各グループに対応するインスタンスおよびラベルが、丸印で図示される。丸印の数は、インスタンスの数(この例では4)に対応する。丸印は、実線丸印または破線丸印で示される。実線丸印は、正例のラベルに対応する。破線丸印は、負例のラベルに対応する。このとき、グループ化部222は、要素メトリクスを算出してよい。要素メトリクスの例は、正例のデータ数と負例のデータ数との比率である。比率の例は、全インスタンス数に対する正例のインスタンス数の比率(正例のインスタンス数/全インスタンス数)、全インスタンス数に対する負例のインスタンス数の比率(負例のインスタンス数/全インスタンス数)、負例のインスタンス数に対する正例のインスタンス数の比率(正例のインスタンス数/負例のインスタンス数)および正例のインスタンス数に対する負例のインスタンス数(負例のインスタンス数/正例のインスタンス数)である。以下、とくに説明がある場合を除き、比例は、全インスタンス数に対する正例のインスタンス数の比率(正例のインスタンス数/全インスタンス数)であるものとする。
 図2に戻り、是正試行部223は、グループ化部222によってグループ化されたグループのペア(組の種類のペア)に対して、是正処理を試行する。これについて、図5を参照して説明する。
 図5は、是正試行部223によるグループのペアの是正処理の例を示す図である。是正試行部223は、グループ1~グループ4の4つのグループの組み合わせから、グループ1とグループ2のペア、グループ1とグループ3のペア、グループ1とグループ4のペア、グループ2とグループ3のペア、グループ2とグループ4のペア、グループ3とグループ4のペアを生成して、6つのグループのペアを生成する。そして、是正試行部223は、6つのグループのペアそれぞれに対して、是正処理を試行する。
 是正試行部223は、6つのペアそれぞれについて、ペアを構成する2つのグループ間の是正処理を試行する。是正試行部223は、例えばバイアス間アルゴリズム等とも称される公平性アルゴリズムを用いることによって是正処理を試行する。2グループ間の公平性アルゴリズムは公知であるので、ここでは詳細な説明は行わない。是正処理の例は、インスタンスのラベル変更である。ラベル変更は、正例から負例への変更および負例から正例への変更を含む。是正処理の他の例は、属性の追加、修正等である。以下、特に説明がある場合を除き、是正処理がラベル変更であるものとする。なお、是正試行部223によって行われるのは是正処理の試行であるので、是正処理の結果は取得できるが、その結果通りに直ちに2グループ間の公平性が是正される、すなわちラベル変更によりインスタンスが修正されるわけではないことに留意されたい。
 図5には、是正処理の結果も例示される。修正対象のインスタンスが、ハッチングで示される。この例では、グループ1およびグループ2のペアにおいて、グループ1の(左から)2番目のインスタンスが修正対象である。他のペアについても、図5に示される通りである。なお、グループ3およびグループ4のペアにおいては、修正対象のインスタンスは存在しない。
 図2に戻り、集約部224は、是正試行部223による是正処理の試行結果を、グループごとに集約する。これについて、図6を参照して説明する。
 図6は、集約部224による、是正処理の試行結果の集約結果の例を示す図である。集約部224は、図5に示した6つのグループペアの是正処理の試行結果を、グループ1、グループ2、グループ3、グループ4ごとに集約する。すなわち、図6に示すように、集約部224は、グループ1~グループ4それぞれに3通りの是正処理の試行結果を集約する。例えば、グループ1を例にして集約を説明すると、集約部224は、グループ1とグループ2のペアから、1つの負例のラベル(破線丸印)、2つの正例のラベル(実践丸印)、1つの変更対象のラベル(ハッチング)とを集約する。同様に、集約部224は、グループ1とグループ3のペアから、1つの負例のラベル、2つの正例のラベル、1つの変更対象のラベルとを集約し、グループ1とグループ4のペアから、1つの負例のラベル、1つの正例のラベル、2つの変更対象のラベルとを集約する。
 また、集約部224は、インスタンスにスコアを付与する。スコア付与のタイミングはとくに限定されず、後述の選択部227による選択までに実行することができる。スコアは、インスタンスの修正の必要性が高いことを示す指標(確信度)である。集約部224は、そのインスタンスを修正対象とする試行結果の数が多いほど高くなるようにスコアを定める。例えば、集約部224は、試行結果の数の割合(比率、確率等)に基づいて、スコアを定める。図6に示される例では、グループ1の2番目のインスタンスは、3通りの是正処理の試行結果すべてによって修正対象とされているため、スコアは、3/3すなわち1.0である。グループ1の3番目のインスタンスのスコアは、1/3すなわち0.33であり、グループ2の4番目のインスタンスおよびグループ3の3番目のインスタンスも同様である。グループ4の3番目のインスタンスのスコアは、2/3すなわち0.67である。スコアが図示されない他のインスタンスのスコアは、0/3すなわち0である。スコアが付与されたインスタンスは、修正対象候補のインスタンスとなりうる。
 図2に戻り、算出部225は、グループのペアごとに、超過度を算出する。超過度は、ペアを構成するグループ同士の間の不公平の程度が一定以上であることを示す。超過度の算出について、図7および8を参照して説明する。
 図7および図8は、算出部225による超過度の算出の例を示す図である。図7を参照して、算出部225は、ペアを構成する2つのグループを、特権グループと非特権グループと分類する。特権グループは、優遇されるグループである。非特権グループは、冷遇されるグループである。この分類は、要素メトリクス(例えば正例の比率)の大きさに基づいて行われる。例えば、算出部225は、2つのグループのうち、正例の比率が大きいグループを、特権グループに分類する。算出部225は、2つのグループのうち、正例の比率が小さいグループを、非特権グループに分類する。図7に示される例では、算出部225は、グループ1およびグループ2のペアにおいては、グループ1を特権グループに分類し、グループ2を非特権グループに分類する。他のグループのペアについても、図7に示されるとおりである。
 算出部225は、それぞれのペアについて、公平性メトリクスδを算出する。公平性メトリクスδは、データおよびモデルの公平性を測るためのメトリクスである。グループ間の公平性を判断するために、一例として、下記の式(1)にしたがって算出される統計的均一性(statistical parity)を一例とする公平性メトリクスδを用いるものとする。ただし、これ以外にも、公平性メトリクスは、確率、距離および分布などをベースとして多種存在しており、それらのいずれかがユースケースに応じて適宜選択され、用いられてよい。
Figure JPOXMLDOC01-appb-M000001
 上記の式(1)において、Yはラベルを示し、Y=1は正例を示す。Dは保護属性を示し、D=unpriviledgedは非特権グループであることを示し、D=priviledgedは特権グループであることを示す。右辺第1項は、非特権グループの正例の分布を示す。右辺第2項は、特権グループの正例の分布を示す。公平性メトリクスδの値が大きいほど、グループ間の不公平が大きいことを示す。
 図7において、グループ1およびグループ2のペアにおける公平性メトリクスδが、δ12(=Pr2-Pr1)として示される。分布Pr2は、グループ2の分布である。分布Pr1は、グループ1の分布である。他のグループのペアについても、図7に示されるとおりである。
 算出部225は、公平性メトリクスδから、超過度を算出する。超過度は、公平性メトリクスδに対して設定された閾値の一例である許容度εから、算出された公平性メトリクスδがどの程度外れているのかを示す。この例では、算出部225は、超過度を、属性別に算出して小計する。これにより、属性に応じて異なる許容度εが設定されうる。図7において、グループ1およびグループ2のペアにおける超過度のうち、属性1に応じた超過度が、超過度E12-1として示される。属性2に応じた超過度が、超過度E12-2として示される。超過度E12-1および超過度E12-2の小計値(合計値)が、超過度E12として示される。他のグループのペアについても、図7に示される通りである。
 図8を参照して、算出部225は、図7に示す超過度の小計値から、各グループの超過度を算出する。算出部225は、そのグループに関する小計値を加算または減算した値(ここでは絶対値)として超過度を算出する。図8において、グループ1の超過度が、超過度E1として示される。ここで、算出部225は、小計値を加算するか減算するかを、小計値が算出されたグループのペアにおいて、そのグループが特権グループおよび非特権グループのいずれであったかに応じて決定する。この例では、算出部225は、特権グループであった場合に小計値を加算し、非特権グループであった場合に小計値を減算する。特権グループ(優遇されるグループ)と非特権グループ(冷遇されるグループ)とでは、是正の方向が異なるからである。例えば加算だけにすると、優遇および冷遇の両方での是正が必要な場合に、一方の是正によって他方の超過度が大きくなってしまう。加算および減算を使い分けることで、超過度が大きくなり過ぎないようにすることができる。超過度は後述するように是正の優先度を高めるという意味もあり、超過度の抑制は、是正の優先度を下げることにつながる。図8に示される例では、算出部225は、グループ1の超過度E1を、E1=|E12+E13+E14|として算出する。他のグループについても、図8に示されるとおりである。
 図2に戻り、特定部226は、算出部225によって算出された超過度に基づいて、是正対象のグループを特定(選択)する。例えば、特定部226は、超過度が最も大きいグループを、是正対象のグループとして特定する。超過度が最も大きいグループが複数存在する場合には、例えば、特定部226は、最も修正候補(ラベルの変更候補)のインスタンスの数またはスコア(確信度)の高いグループを是正対象グループとして特定する。ここでは、グループ1が是正対象として特定されるものとする。
 選択部227は、特定部226によって特定されたグループに含まれるインスタンスから、修正対象となるインスタンスを選択(特定)する。変更部228は、選択されたインスタンスのラベルを変更することによってインスタンスを修正する。これについて、図9および図10を参照して説明する。
 図9は、選択部227および変更部228によるインスタンスの選択および修正の例を示す図である。上述のようにグループ1が是正対象であり、図9の左側には、グループ1の集約結果(図6)が再掲される。2番目のインスタンスのスコアが1.0で最も高いので、選択部227は、2番目のインスタンスを、修正対象のインスタンスとして選択する。変更部228は、選択部227によって選択された2番目のインスタンスのラベルを変更する。この例では、変更部228は、図9の右側に示されるように、2番目のインスタンスのラベルを正例から負例に変更する。
 図10は、是正後のグループの例を示す図である。先に説明した図4と比較すると、グループ1の2番目のインスタンスのラベルが正例から負例に変更されており、その分、グループ1と他のグループ2~4との正例の比率の差が小さくなっている。すなわち、グループ間の公平性が是正(不公平性が低減)されている。
 上述の図7~図10等を参照して説明した特定部226、選択部227および変更部228による処理は、超過度が許容度εに収まるまで、繰り返し実行されてよい。その際、グループ間の公平性(正例の比率の順位)が逆転しない範囲で各処理が実行されてよい。その場合、例えば、変更部228は、特定部226によって特定されたグループにおいて選択部227によって選択されたラベルを変更してもグループ間の順位が変わらない場合に、そのラベルデータを変更する。これにより、超過度が収束しやすくなる。
 例えば以上のようにして訓練データ10(図1)を是正することにより、制御部22は、是正済み訓練データ30を生成する。
 なお、公平性アルゴリズムによっては、非保護属性を修正または追加するが、その場合、変更部228は、修正候補の中から適当な集約関数を用いて採用してよい。例えば、変更部228は、名義尺度であれば多数決を採用したり、比例尺度であれば平均を取ったりすることができる。
 図11は、装置において実行される処理である是正済み訓練データの生成方法の例を示すフローチャートである。
 取得部221は、入力部21に入力された訓練データ10を取得する(S1)。
 続いて、グループ化部222は、先に図4を参照して説明したように、取得部221によって取得された訓練データ10をグループ化する(S2)。
 そして、是正試行部223は、先に図5を参照して説明したように、グループのペアごとに是正処理を試行する(S3)。
 その後、集約部224は、先に図6を参照して説明したように、是正処理の試行結果をグループごとに集約する(S4)。
 続いて、算出部225は、先に図7および図8を参照して説明したように、超過度を算出する(S5)。
 そして、特定部226は、先に図7および図8を参照して説明したように、是正対象のグループを特定する(S6)。
 続いて、選択部227は、先に図9を参照して説明したように、修正対象のインスタンスを選択する(S7)。
 その後、変更部228は、先に図9を参照して説明したように、インスタンスを修正する(S8)。
 その後、制御部22は、超過度が許容度εの範囲内であるか否かを判断する(S9)。超過度が許容度εの範囲内である場合(S9:Yes)、制御部22は、フローチャートの処理を終了する。そうでない場合(S9:No)、制御部22は、S6に処理を戻す。なお、S6~S9の処理が繰り返し実行される間、先に述べたように、グループ間の公平性(正例の比率の順位)が逆転しない範囲でそれらの処理が実行されてよい。これに関するフローについては、後に説明する図20および図21で例示される。
 以上のようにして生成された是正済み訓練データ30は、複数の保護属性がある場合に、保護属性を組み合わせグループ全体に対して最適化するように是正されている。仮に、複数の保護属性がある場合に一つの保護属性ずつ順に是正した場合、1つの保護属性を是正する際に別の保護属性の内容が考慮されないため、別の保護属性の差別が悪化するといった問題がある。一度是正した別の保護属性の結果が変更される問題、保護属性を組み合わせたグループの差別が是正されない問題もある。また、複数の保護属性を組み合わせたグループに対し、選択した2グループ間(ペア)で是正を行い、次のペアで是正を行い、という処理を繰り返すことも考えられる。しかしこの場合には、修正されるインスタンスが、選択したグループのペアによって決定されるため、修正結果が局所解となってしまう。本実施形態の手法によれば、これらの問題が低減される。
 次に、図12~図21を参照して、上述した処理の具体例を説明する。これまでの説明と重複する内容については詳細な説明は省略する。
 図12は、取得部221によって取得された訓練データを示す図である。インスタンスは、試験の受験者(応募者)ある。保護属性は、性別および宗教である。非保護属性は、年齢、住所および点数(試験の点数)である。ラベルは、合格(正例)および不合格(負例)である。
 図13は、グループ化部222によるグループ化を示す図である。グループ化部222は、男性および宗教Aのグループ、男性および宗教Bのグループ、女性および宗教Aのグループ、ならびに、女性および宗教Bのグループにグループ化する。各グループに含まれるインスタンスの数(丸印の数)は、10である。実線丸印は合格(正例)に対応し、破線丸印は不合格(負例)に対応する。
 図14は、是正試行部223によるグループのペアの是正処理を示す図である。是正試行部223は、6つのグループのペアそれぞれについて是正処理を試行する。修正対象のインスタンスが、ハッチングで示される。
 図15は、集約部224による、是正処理の試行結果の集約結果を示す図である。インスタンスに付与されたスコアも図示される。
 図16および図17は、算出部225による超過度の算出を示す図である。図16を参照して、ここでは、算出部225は、性別に応じた超過度の許容度εを0.2に設定し、宗教に応じた超過度の許容度εを0.3に設定する。算出部225は、これらの超過度を超えた分を、属性別の超過度として算出する。男性および宗教Aのグループと、女性および宗教Aのグループとのペアにおいて、公平性メトリクスδが-0.3である。性別の超過度は、許容度ε(0.2)を0.1だけ上回るため、0.1である。宗教の超過度は、許容度ε(0.3)を上回らないので、0である。超過度の小計値(合計値)は、0.1である。他のグループについても、図16に示されるとおりである。
 図17を参照して、算出部225は、各グループの超過度を、小計値を加算または減算した値として算出する。算出部225は、男性および宗教Aのグループの超過度を0.7として算出する。他のグループについても、図17に示されるとおりである。
 図17に示される4つのグループのうち、最も超過度の大きい男性および宗教Aのグループが、特定部226によって、是正対象のグループとして特定される。
 図18は、選択部227および変更部228によるインスタンスの選択および修正を示す図である。図18の左側に示されるように、男性および宗教Aのグループに含まれるインスタンスのうち最も高い1.0のスコアが付与されたインスタンスが、選択部227によって、修正対象のインスタンスとして選択される。図18の右側に示されるように、選択部227によって選択されたインスタンスのラベルが変更部228によって合格から不合格に変更され、インスタンスが修正される。
 図19は、是正後のグループを示す図である。先に説明した図13と比較すると、男性および宗教Aのグループの(上から)2番目のインスタンスのラベルが正例から負例に変更されている。その結果、男性および宗教Aのグループと、他のグループとの正例の比率の差が小さくなっている。すなわち、グループ間の公平性が是正(不公平性が低減)されている。
 以上説明した是正済み訓練データの生成方法は一例に過ぎず、さまざまな観点から生成方法が特定される。いくつかの例を、図20および図21を参照して説明する。
 図20は、装置において実行される処理である是正済み訓練データの生成処理の例を示すフローチャートである。
 是正試行部223は、保護属性を組み合わせたグループのすべてのペアに対し、公平性アルゴリズムによる是正処理を実行する(S11)。具体例については先に図5および図14を参照して説明したとおりである。
 続いて、集約部224は、グループ毎に是正処理結果を集約し、修正されたインスタンスを修正候補とする(S12)。具体例については先に図6および図15を参照して説明したとおりである。図6および図15においてハッチングで示されるインスタンスが、是正候補のインスタンスである。
 そして、算出部225は、全グループの要素メトリクス(例えば正例の比率)を算出し、全ペアの要素グループの特権性を判定する(S13)。具体例については先に図7および図16を参照して説明したとおりである。
 次に、算出部225は、全ペアの公平性メトリクスから、ペア別属性別超過度、およびペア別超過度を算出する(S14)。具体例については先に図7および図16を参照して説明したとおりである。
 そして、算出部225は、ペア別超過度から、グループ別超過度を算出し、0を超過するグループを是正対象グループ候補とする(S15)。具体例については先に図7および図16を参照して説明したとおりである。
 ここで、制御部22は、是正対象グループ候補があるか否かを判断する。是正対象グループ候補がある場合(S16:Yes)、制御部22は、S17に処理を進める。そうでない場合(S16:No)、制御部22は、フローチャートの処理を終了する。
 そして、特定部226は、是正対象グループ候補の中で最も大きい超過度を持つグループを是正対象グループとする(S17)。具体例についてはこれまで説明したとおりである。
 ここで、制御部22は、是正対象グループに、修正候補となるインスタンスがあるか否かを判断する(S18)。修正候補となるインスタンスがある場合(S18:Yes)、制御部22は、S19に処理を進める。そうでない場合(S18:No)、制御部22は、S22に処理を進める。
 続いて、選択部227は、修正候補となるインスタンス毎に確信度(スコア)を算出し、最も確信度の高いインスタンスを選択する(S19)。具体例については、先に図9および図18を参照して説明したとおりである。
 そして、制御部22は、選択したインスタンスを修正した場合、要素メトリクス(例えば正例の比率)の順位が変わるか否かを判断する(S20)。順位が変わる場合(S20:Yes)、制御部22は、S22に処理を進める。そうでない場合(S20:No)、制御部22は、S21に処理を進める。
 次に、変更部228は、選択したインスタンスの修正内容をグループ別集約結果に反映し、修正候補から除外する(S21)。具体例については、先に図9、図10、図18および図19を参照して説明したとおりである。S21の処理が完了した後、制御部22は、S16に処理を戻す。
 その後、制御部22は、是正グループ候補から除外する(S22)。すなわち、制御部22は、先のS17で是正対象とされたグループを、是正グループ候補から除外する。S22の処理が完了した後、制御部22は、S16に処理を戻す。
 例えば以上のようにして、是正済み訓練データ30を生成することができる。とくにS20の処理を経ることによって、要素メトリクス(例えば正例の比率)の順位が変わらない範囲でインスタンスが是正されるので、処理が収束し易くなる。
 図21は、装置において実行される処理である是正済み訓練データの生成処理の例を示すフローチャートである。
 S31~S35の処理は、先に図20を参照して説明したS11~S15の処理と同様であるので、ここでは説明は繰り返さない。
 制御部22は、是正対象グループ候補があるか否かを判断する(S36)。是正対象グループ候補がある場合(S36:Yes)、制御部22は、S37に処理を進める。そうでない場合(S36:No)、制御部22は、フローチャートの処理を終了する。
 制御部22は、是正対象グループ候補の中で超過度が最大となるグループが複数あるか否かを判断する(S37)。超過度が最大となるグループが複数ある場合(S37:Yes)、制御部22は、S38に処理を進める。そうでない場合(S37:No)、制御部22は、S39に処理を進める。
 特定部226は、超過度が最大となるグループの中で、最も修正候補のインスタンスの数または確信度(スコア)の高いグループを是正対象グループとする(S38)。具体例についてはこれまで説明したとおりである。S38の処理が完了した後、制御部22は、S40に処理を進める。
 特定部226は、超過度が最大となるグループを是正対象グループとする(S39)。具体例についてはこれまで説明したとおりである。S39の処理が完了した後、制御部22は、S40に処理を進める。
 S40~S44の処理は、先に図20を参照して説明したS18~S22の処理と同様であるので、ここでは説明は繰り返さない。S43またはS44の処理が完了した後、制御部22は、S36に処理を戻す。
 例えば以上のようにして、是正済み訓練データ30を生成することができる。とくにS37~S39の処理を経ることによって、超過度が最大となるグループが複数存在する場合でも、是正対象グループを特定することができる。
 以上説明した情報処理装置20によれば、グループのペアそれぞれについての是正処理の試行結果を集約し、その集約結果に基づいてラベル変更する。これにより、例えば特定のグループのペアにだけ着目してラベル変更する場合と比較して、グループ全体の間での不公平性が大きくなることを防ぐことができる。したがって、訓練データ10の公平性を向上することができる。
 超過度が最も大きいグループのペアにおけるグループのインスタンスを修正することで、適切な是正を行うことができる。一つのインスタンスの修正後、別のインスタンスも修正することで、さらに是正を行うことができる。
 公平性メトリクスδを算出すること、また、公平性メトリクスδが閾値に対して超過しているグループを、是正対称のグループとして特定することで、公平性是正の必要性が高い是正対称のグループを特定することができる。
 公平性メトリクスの超過度の小計値の加算または減算の結果に基づいて是正対称のグループを特定することで、例えば優遇される特権グループと冷遇される非特権グループとの是正の方向の違いを考慮することができる。
 2つのグループ間の公平性を是正する公平性アルゴリズムを用いて修正対称のインスタンスを選択することで、既存の公平性アルゴリズムを活用することができる。
 要素メトリクス(例えば正例の比率)の順位が変わらない場合にラベル変更すること、すなわち順位が変わらない範囲でインスタンスを是正することで、処理が収束し易くなる。
 超過度が最大となるグループが複数存在する場合には、最も修正候補のインスタンスの数または確信度(スコア)の高いグループを是正対象グループとすることで、是正対称を特定することができる。
 保護属性を組み合わせたグループに処理を適用することで、差別してはならない保護属性による分類結果への影響を低減することができる。
 以上では、実施形態に係る処理が訓練データを是正するpre-processingを対象とする例について説明した。ただし、実施形態に係る処理は、機械学習済みのモデルによって生成された分類データ(予測データ)を是正するpost-processingを対象とすることもできる。pre-processingと同じ方式を適用できるからである。pre-processingとの違いはデータの種類だけで、pre-processingが訓練/テストといった、元のデータのラベル(観測ラベルや正解ラベルとも言われる)を変更するのに対し、post-processingは予測データのラベルを変更する。予測データもラベルの他に保護属性も分かるので、それを使ってペア毎に是正処理を行い、その結果を集約して、修正するインスタンスを決めていく。post-processingについて、図22を参照して説明する。
 図22は、実施形態に係る情報処理を説明する図である。データ準備フェーズにおいて、訓練データ10の是正は行われない。学習フェーズにおいて、訓練装置40が、訓練データ10を用いた機械学習によって、訓練済みモデル50Aを生成する。分類フェーズにおいて、分類装置60Aが、訓練済みモデル50Aを用いて分類を行う。訓練済みモデル50Aの分類結果が、分類データ70として図示される。分類データ70は、訓練データ10と同様のデータ構造を有する。分類データ70は、情報処理装置20Aによって是正される。情報処理装置20Aは、情報処理装置20(図1)と同様の構成を備えていてよい。分類データ70が訓練データ10と同様のデータ構造を有することから、情報処理装置20Aは、情報処理装置20が訓練データ10を是正するのと同様に、分類データ70を是正することができる。是正されたデータが、是正済み分類データ80として図示される。是正済み分類データ80は、是正済み訓練データ30(図1)と同様に、不公平が是正されたデータである。
 実施形態に係る処理は、in-processingを対象とすることもできる。この場合、例えば図1に示される分類装置60(分類アルゴリズム)が、公平性アルゴリズムに内包された構成とすることで、公平性に配慮した分類アルゴリズムとして扱われる。in-processingにおいては、データ修正というよりは、バイアスのかかりにくいようなモデルを構築する。モデルであるので、入力は訓練/テスト、出力は予測となる。この場合でも、これまで説明した方式が同じように適用できる。すなわち、訓練/テストをペア毎で是正処理を行い、その結果となる予測データを集約し、インスタンスを修正する。pre-processingおよびpost-processingと比較して、精度および公平性の観点で有利となりうる。
 上記実施の形態で用いた訓練データの数や種類、保護属性等の種別、ラベル例、インスタンス例等は、あくまで一例であり、任意に変更することができる。
 上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、要素メトリクスは、制御部22におけるグループ化部222以外の是正試行部223、集約部224、算出部225等が算出することもできる。また、スコアの付与は、算出部225や特定部226が実行することもできる。
 さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPU(Central Processing Unit)および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 上述した情報処理装置20のハードウェア構成の例について、図23を参照して説明する。なお、情報処理装置20A、訓練装置40および分類装置60についても同様のハードウェア構成を有するので、ここでは、情報処理装置20についてのみ説明する。
 図23は、ハードウェア構成例を説明する図である。情報処理装置20は、通信装置20a、表示装置20b、HDD(Hard Disk Drive)20c、メモリ20d、プロセッサ20eを有する。それらはバス等で相互に接続される。
 通信装置20aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。表示装置20bは、是正結果などを表示する装置であり、例えばタッチパネルやディスプレイなどである。HDD20cは、図2に示した機能を動作させるプログラムやDBを記憶する。
 プロセッサ20eは、プログラムをHDD20c等から読み出してメモリ20dに展開することで、図2等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、情報処理装置20が有する制御部22と同様の機能を実行する。具体的には、プロセッサ20eは、プログラムをHDD20c等から読み出す。そして、プロセッサ20eは、制御部22等と同様の処理を実行するプロセスを実行する。
 このように、情報処理装置20は、プログラムを読み出して実行することで是正済み訓練データ(機械学習データ)の生成方法を実行する情報処理装置として動作する。また、情報処理装置20は、媒体読取装置によって記録媒体からプログラムを読み出し、読み出されたプログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、情報処理装置20によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
 このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
 10 訓練データ
 20 情報処理装置
 21 入力部
 22 制御部
 23 記憶部
 24 出力部
 30 是正済み訓練データ
 40 訓練装置
 50 訓練済みモデル
 60 分類装置
 70 分類データ
 80 是正済み分類データ
221 取得部
222 グループ化部
223 是正試行部
224 集約部
225 算出部
226 特定部
227 選択部
228 変更部

Claims (15)

  1.  それぞれに正例または負例がラベル付けされた複数のデータを取得し、
     前記複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、
     前記複数の種類のそれぞれに対して算出された前記比率の差が閾値以上である場合、前記複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、
     前記組み合わせ毎に特定された前記変更候補のデータに基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、第1のデータを選択し、
     前記複数のデータに含まれる前記第1のデータのラベルを変更することによって機械学習データを生成する、
     処理をコンピュータに実行させることを特徴とする機械学習データ生成プログラム。
  2.  前記特定する処理は、前記複数の種類のうち、前記比率の差が前記閾値から最も離れている種類を、前記第1の種類として選択する処理、
     を含むことを特徴とする請求項1に記載の機械学習データ生成プログラム。
  3.  前記特定する処理は、前記選択する処理によって前記第1のデータが選択され、前記生成する処理によって前記第1のデータのラベルが変更された後、前記複数の種類のうちの前記第1の種類とは別の第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記別の第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定する処理、
     を含むことを特徴とする請求項1または2に記載の機械学習データ生成プログラム。
  4.  前記算出する処理は、前記比率の差として、2つの前記種類の間の確率、距離および分布の少なくとも一つに基づく値である公平性メトリクスを算出する処理、
     を含み、
     前記特定する処理は、前記算出する処理によって算出された前記公平性メトリクスに基づいて、前記第1の種類を選択する処理、
     を含むことを特徴とする請求項1に記載の機械学習データ生成プログラム。
  5.  前記特定する処理は、前記複数の種類のうち、前記公平性メトリクスが閾値に対して超過している種類から、前記第1の種類を選択する処理、
     を含むことを特徴とする請求項4に記載の機械学習データ生成プログラム。
  6.  前記特定する処理は、前記第1の属性および前記第2の属性それぞれに対して設定された閾値に対する前記公平性メトリクスの超過度の小計値の加算または減算の結果に基づいて、前記第1の種類を選択する処理、
     を含むことを特徴とする請求項4に記載の機械学習データ生成プログラム。
  7.  前記選択する処理は、2つの前記種類の間の公平性を是正する公平性アルゴリズムを用いて、前記第1のデータを選択する処理、
     を含むことを特徴とする請求項1に記載の機械学習データ生成プログラム。
  8.  前記生成する処理は、前記選択する処理によって選択された前記第1のデータのラベルを変更しても前記複数の種類間の前記比率の順位が変わらない場合に、前記第1のラベルのデータを変更する処理、
     を含むことを特徴とする請求項1に記載の機械学習データ生成プログラム。
  9.  前記特定する処理は、前記複数の種類のうち、前記比率の差が前記閾値から最も離れている種類が複数ある場合には、前記変更候補の数が最も多いまたは前記比率が最も大きい種類を前記第1の種類とする処理、
     を含むことを特徴とする請求項1に記載の機械学習データ生成プログラム。
  10.  前記第1の属性および前記第2の属性は、いずれも保護属性である、
     ことを特徴とする請求項1に記載の機械学習データ生成プログラム。
  11.  それぞれに正例または負例がラベル付けされた複数のデータを取得し、
     前記複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、
     前記複数の種類のそれぞれに対して算出された前記比率の差が閾値以上である場合、前記複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、
     前記組み合わせ毎に特定された前記変更候補のデータに基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、第1のデータを選択し、
     前記複数のデータに含まれる前記第1のデータのラベルを変更することによって機械学習データを生成する、
     処理をコンピュータが実行することを特徴とする機械学習データ生成方法。
  12.  それぞれに正例または負例がラベル付けされた複数のデータを取得し、
     前記複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、
     前記複数の種類のそれぞれに対して算出された前記比率の差が閾値以上である場合、前記複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、
     前記組み合わせ毎に特定された前記変更候補のデータに基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、第1のデータを選択し、
     前記複数のデータに含まれる前記第1のデータのラベルを変更することによって機械学習データを生成する、
     処理を実行する制御部を含むことを特徴とする機械学習データ生成装置。
  13.  それぞれに正例または負例がラベル付けされた複数のデータを取得し、
     前記複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、
     前記複数の種類のそれぞれに対して算出された前記比率の差が閾値以上である場合、前記複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、
     前記組み合わせ毎に特定された前記変更候補のデータに基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、第1のデータを選択し、
     前記複数のデータに含まれる前記第1のデータのラベルを変更することによって分類データを生成する、
     処理をコンピュータに実行させることを特徴とする分類データ生成プログラム。
  14.  それぞれに正例または負例がラベル付けされた複数のデータを取得し、
     前記複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、
     前記複数の種類のそれぞれに対して算出された前記比率の差が閾値以上である場合、前記複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、
     前記組み合わせ毎に特定された前記変更候補のデータに基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、第1のデータを選択し、
     前記複数のデータに含まれる前記第1のデータのラベルを変更することによって分類データを生成する、
     処理をコンピュータが実行することを特徴とする分類データ生成方法。
  15.  それぞれに正例または負例がラベル付けされた複数のデータを取得し、
     前記複数のデータのそれぞれに関連付けられた第1の属性と第2の属性との組の複数の種類毎に、正例のデータ数と負例のデータ数との比率を算出し、
     前記複数の種類のそれぞれに対して算出された前記比率の差が閾値以上である場合、前記複数の種類に含まれる第1の種類と他の全ての種類それぞれとの組み合わせ毎に、前記比率に基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、変更候補のデータを特定し、
     前記組み合わせ毎に特定された前記変更候補のデータに基づいて、前記第1の種類に対応する前記第1の属性と前記第2の属性とが関連付いたデータのうち、第1のデータを選択し、
     前記複数のデータに含まれる前記第1のデータのラベルを変更することによって分類データを生成する、
     処理を実行する制御部を含むことを特徴とする分類データ生成装置。
PCT/JP2020/031769 2020-08-24 2020-08-24 機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置 WO2022044064A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2022544887A JP7409513B2 (ja) 2020-08-24 2020-08-24 機械学習データ生成プログラム、機械学習データ生成方法および機械学習データ生成装置
PCT/JP2020/031769 WO2022044064A1 (ja) 2020-08-24 2020-08-24 機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置
EP20951320.9A EP4202799A4 (en) 2020-08-24 2020-08-24 MACHINE LEARNING DATA GENERATION PROGRAM, MACHINE LEARNING DATA GENERATION METHOD, CLASSIFICATION DATA GENERATION PROGRAM, CLASSIFICATION DATA GENERATION METHOD AND CLASSIFICATION DATA GENERATION APPARATUS
US18/099,266 US20230153694A1 (en) 2020-08-24 2023-01-20 Training data generation method, training data generation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/031769 WO2022044064A1 (ja) 2020-08-24 2020-08-24 機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/099,266 Continuation US20230153694A1 (en) 2020-08-24 2023-01-20 Training data generation method, training data generation device

Publications (1)

Publication Number Publication Date
WO2022044064A1 true WO2022044064A1 (ja) 2022-03-03

Family

ID=80352812

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/031769 WO2022044064A1 (ja) 2020-08-24 2020-08-24 機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置

Country Status (4)

Country Link
US (1) US20230153694A1 (ja)
EP (1) EP4202799A4 (ja)
JP (1) JP7409513B2 (ja)
WO (1) WO2022044064A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023159782A (ja) * 2022-04-20 2023-11-01 ヤフー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
WO2024047735A1 (ja) * 2022-08-30 2024-03-07 富士通株式会社 公平性評価プログラム、公平性評価方法、及び、情報処理装置
WO2024047766A1 (ja) * 2022-08-30 2024-03-07 富士通株式会社 バイアス評価プログラム、バイアス評価方法及びバイアス評価装置
EP4372630A1 (en) 2022-11-16 2024-05-22 Fujitsu Limited Medium storing data generation program, data generation method, and data generation device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008123043A (ja) * 2006-11-08 2008-05-29 Sony Corp 情報処理装置および方法、プログラム、並びに記録媒体
JP2019519021A (ja) 2016-04-12 2019-07-04 ハイアービュー インコーポレイテッド パフォーマンスモデル悪影響補正

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11734585B2 (en) 2018-12-10 2023-08-22 International Business Machines Corporation Post-hoc improvement of instance-level and group-level prediction metrics

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008123043A (ja) * 2006-11-08 2008-05-29 Sony Corp 情報処理装置および方法、プログラム、並びに記録媒体
JP2019519021A (ja) 2016-04-12 2019-07-04 ハイアービュー インコーポレイテッド パフォーマンスモデル悪影響補正

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FLAVIO P. CALMON; DENNIS WEI; KARTHIKEYAN NATESAN RAMAMURTHY; KUSH R. VARSHNEY: "Optimized Data Pre-Processing for Discrimination Prevention", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 11 April 2017 (2017-04-11), 201 Olin Library Cornell University Ithaca, NY 14853 , XP080762284 *
See also references of EP4202799A4

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023159782A (ja) * 2022-04-20 2023-11-01 ヤフー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
JP7410209B2 (ja) 2022-04-20 2024-01-09 Lineヤフー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
WO2024047735A1 (ja) * 2022-08-30 2024-03-07 富士通株式会社 公平性評価プログラム、公平性評価方法、及び、情報処理装置
WO2024047766A1 (ja) * 2022-08-30 2024-03-07 富士通株式会社 バイアス評価プログラム、バイアス評価方法及びバイアス評価装置
EP4372630A1 (en) 2022-11-16 2024-05-22 Fujitsu Limited Medium storing data generation program, data generation method, and data generation device

Also Published As

Publication number Publication date
JP7409513B2 (ja) 2024-01-09
JPWO2022044064A1 (ja) 2022-03-03
EP4202799A4 (en) 2023-09-13
US20230153694A1 (en) 2023-05-18
EP4202799A1 (en) 2023-06-28

Similar Documents

Publication Publication Date Title
WO2022044064A1 (ja) 機械学習データ生成プログラム、機械学習データ生成方法、機械学習データ生成装置、分類データ生成プログラム、分類データ生成方法および分類データ生成装置
Ponomareva et al. How to dp-fy ml: A practical guide to machine learning with differential privacy
Dash et al. Summarizing user-generated textual content: Motivation and methods for fairness in algorithmic summaries
Venugopal et al. Privacy preserving generative adversarial networks to model electronic health records
Yu et al. Predicting hospital readmission: a joint ensemble-learning model
US20220414766A1 (en) Computing system and method for creating a data science model having reduced bias
de Andrade Silva et al. An experimental study on the use of nearest neighbor-based imputation algorithms for classification tasks
Miao Using machine learning algorithms to predict diabetes mellitus based on Pima Indians Diabetes dataset
Bendekgey et al. Scalable and stable surrogates for flexible classifiers with fairness constraints
Yuan et al. Ehrdiff: Exploring realistic ehr synthesis with diffusion models
Xu et al. GFairHint: improving individual fairness for graph neural networks via fairness hint
Sharma et al. Rank level fusion in multibiometric systems
Li et al. A credit risk model with small sample data based on G-XGBoost
Deschepper et al. Using structured pathology data to predict hospital-wide mortality at admission
US20220198329A1 (en) Information processing apparatus, information processing method, and information processing program
Bieganek et al. Prediction of clinical trial enrollment rates
Pölsterl et al. Scalable, axiomatic explanations of deep alzheimer’s diagnosis from heterogeneous data
Ärje et al. Breaking the curse of dimensionality in quadratic discriminant analysis models with a novel variant of a Bayes classifier enhances automated taxa identification of freshwater macroinvertebrates
Jiang et al. Action Strategy Analysis in Probabilistic Preference Movement‐Based Three‐Way Decision
Gomes et al. Pairwise combination of classifiers for ensemble learning on data streams
Mielniczuk et al. One-Class Classification Approach to Variational Learning from Biased Positive Unlabeled Data
Paigude et al. Deep Learning Model for Work-Life Balance Prediction for Working Women in IT Industry
Bermúdez et al. Explainable AI for paid-up risk management in life insurance products
Moriah et al. Measuring and Mitigating Biases in Motor Insurance Pricing
Almog et al. Diagnosis for post concept drift decision trees repair

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: 20951320

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022544887

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020951320

Country of ref document: EP

Effective date: 20230324