Computer system and search method for bias removal technique
Patent Information
- Application Number
- JP2023193681
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-14
- Publication Date
- 2026-02-27
AI Technical Summary
Existing bias removal techniques for AI models often compromise prediction accuracy and fail to effectively address biases not considered in the removal method, with varying requirements across different business applications.
A computer system that searches for and presents a bias removal method for generating an AI model, satisfying specific business requirements related to bias removal and prediction accuracy by managing datasets, business requirement definitions, and bias removal method information.
Enables the identification and implementation of an optimal bias removal method that balances bias removal with prediction accuracy, tailored to specific business needs.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a technique for removing bias in an AI model.
Background Art
[0002] In the field of machine learning, there is a method of generating an AI model using teacher data. In this method, since the correct values included in the teacher data are given by humans, it is known that a bias occurs in the output of the AI model generated using the biased teacher data.
[0003] As methods for removing bias, the methods of Patent Document 1 and Non-Patent Documents 1-4 are known.
[0004] Non-Patent Document 1 describes a method of rewriting the correct values of teacher data. Non-Patent Document 2 describes a method of rewriting the learning weights of teacher data. Non-Patent Document 3 describes a method of converting features. Non-Patent Document 4 describes a method of adding a bias index term to the Loss function.
[0005] Patent Document 1 describes that "in an AI system, the control unit 115 includes a classification result acquisition unit that acquires a plurality of classification results of a plurality of data obtained by inputting each of the plurality of data into a machine learning model, and based on the plurality of classification results, among the plurality of attributes included in each of the first plurality of data classified into the first group and the second plurality of data classified into the second group of the plurality of data, an attribute identification unit that identifies a first plurality of attributes in which the difference in the attribute values between the first plurality of data and the second plurality of data satisfies a criterion, and based on a first index combining the first plurality of attributes, a label determination unit that determines the label of each of the plurality of data, and a training unit that trains the machine learning model based on the determined label and the plurality of data."
Prior Art Documents
Patent Documents
[0006] [Patent Document 1] Japanese Unexamined Patent Application Publication No. 2023-113047 [Non-Patent Document]
[0007] [Non-Patent Document 1] Kamiran, Faisal, and Toon Calders. "Data preprocessing techniques for classification without discrimination." Knowledge and information systems 33.1 (2012): 1-33. [Non-Patent Document 2] Toon Calders, et.al "Building Classifiers with Independency Constraints", ICDM2009 [Non-Patent Document 3] Zemel, Rich, et al. "Learning fair representations." International conference on machine learning. PMLR, 2013. [Non-Patent Document 4] Toshihiro Kamishima, Shotaro Akaho, Hideki Asoh & Jun Sakuma. "Fairness-Aware Classifier with Prejudice Remover Regularizer", Machine Learning and Knowledge Discovery in Databases pp 35-50 [Summary of the Invention] [Problems to be Solved by the Invention]
[0008] The application of bias removal techniques has the following problems. (1) When a bias removal technique is applied, the prediction accuracy of the AI model decreases. (2) When a certain bias removal method is applied, the improvement effect of other biases not considered in the bias removal method is unknown.
[0009] The item (feature amount) for which bias is to be removed and the degree of bias removal vary depending on the business using the AI model. Also, there are various indicators for evaluating bias removal.
[0010] An object of the present invention is to realize a system and method for searching for and presenting a bias removal method used to generate an AI model that satisfies requirements (business requirements) related to bias removal and prediction accuracy specified by a user.
Means for Solving the Problems
[0011] A typical example of the invention disclosed in the present application is as follows. That is, a computer system comprising a processor and a storage device connected to the processor, the storage device storing a dataset composed of a plurality of feature quantities and a plurality of correct values, business requirement definition information storing a plurality of business requirement data defining business requirements in a business using an AI model, and bias removal method management information storing bias removal method data associating the feature quantity to be bias-removed and a bias removal method for removing the bias for the feature quantity, the plurality of business requirement data including a plurality of first business requirement data including the feature quantity to be bias-removed, a calculation method of a first index for evaluating the degree of bias removal, and a first business requirement defined using the first index, and second business requirement data including a second index for evaluating the prediction accuracy of the AI model and a second business requirement defined using the second index, the processor receiving an AI model generation request including information specifying at least one of the first business requirement and the second business requirement, and using the dataset, the business requirement definition information, and the bias removal method management information to execute a search process for searching for a bias removal method used to generate an AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request, and when the AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request is generated, generating a report including information on the bias removal method used and outputting the report, in the search process, a process of selecting at least one of the bias removal methods and a process of executing a learning process of generating the AI model using the selected bias removal method are repeatedly executed until the first business requirement and the second business requirement specified in the AI model generation request are satisfied.
Effect of the Invention
[0012] According to the present invention, it is possible to search for and present a bias removal method used to generate an AI model that satisfies business requirements. Problems, configurations, and effects other than those described above will be clarified by the description of the following embodiments.
Brief Description of Drawings
[0013]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7A
Figure 7B
Figure 8A
Figure 8B
Figure 9
Figure 10
Figure 11A
Figure 11B
Figure 12
Figure 13A
Figure 13B
Figure 14
Figure 15
Figure 16A
Figure 16B
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Embodiments for Carrying Out the Invention
[0014] Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention is not to be construed as being limited to the description of the embodiments shown below. It will be readily understood by those skilled in the art that the specific configuration can be changed without departing from the spirit or gist of the present invention.
[0015] In the configuration of the invention described below, the same or similar configurations or functions are denoted by the same reference numerals, and duplicate descriptions are omitted.
[0016] Expressions such as "first", "second", "third", etc. in this specification and the like are attached to identify components, and do not necessarily limit the number or order.
[0017] The positions, sizes, shapes, ranges, etc. of the respective configurations shown in the drawings and the like may not represent the actual positions, sizes, shapes, ranges, etc. in order to facilitate understanding of the invention. Therefore, in the present invention, it is not limited to the positions, sizes, shapes, ranges, etc. disclosed in the drawings and the like.
Embodiment
[0018] FIG. 1 is a diagram showing a configuration example of the AI model generation system according to Embodiment 1. FIG. 2 is a diagram showing an example of the hardware configuration of a computer constituting the AI model generation system according to Embodiment 1.
[0019] The AI model generation system 100 is a system that generates an AI model that meets business requirements, and is composed of one or more computers 200. The computer 200 has a processor 201, a network interface 202, a main storage device 203, a secondary storage device 204, an output device 205, and an input device 206. Each hardware element is connected via a bus 207.
[0020] The processor 201 executes a program stored in the main memory device 203. By executing processing according to the program, the processor 201 operates as a functional unit (module) that realizes a specific function. In the following description, when explaining processing with a functional unit as the subject, it indicates that the processor 201 is executing a program that realizes the functional unit.
[0021] The main memory device 203 is a storage device that stores a program executed by the processor 201 and information processed by the program, and is, for example, a volatile or non-volatile memory. The main memory device 203 is also used as a work area. The auxiliary storage device 204 is a large-capacity storage device, and is, for example, an HDD (Hard Disk Drive) and an SSD (Solid State Drive).
[0022] The AI model generation system 100 receives inputs of business requirement definition information 101, a dataset 102, AI model information 103, and bias removal method information 104.
[0023] In this embodiment, it is assumed that the business requirement definition information 101 and the bias removal method information 104 are pre-input to the AI model generation system 100. Also, the user selects a business requirement from the business requirement definition information 101 at an arbitrary timing, and inputs the dataset 102 and the AI model information 103.
[0024] The business requirement definition information 101 is information for managing business requirements. In this embodiment, a business requirement is defined as a condition that an evaluation index should satisfy. Details of the business requirement definition information 101 will be described with reference to FIGS. 7A and 7B. The dataset 102 is a set of teacher data used in a learning process for generating an AI model. Details of the dataset 102 will be described with reference to FIG. 3. The AI model information 103 is definition information of an AI model before learning. Details of the AI model information 103 will be described with reference to FIG. 4. The bias removal method information 104 is information for managing a bias removal method. Details of the bias removal method information 104 will be described with reference to FIG. 6.
[0025] The AI model generation system 100 includes a control unit 110, a solver unit 111, and a display unit 112.
[0026] The control unit 110 receives an external input and instructs the solver unit 111 to search for a bias removal method used to generate an AI model that satisfies the business requirements. The solver unit 111 generates an AI model and searches for a bias removal method for generating an AI model that satisfies the business requirements. As a processing result, the solver unit 111 transmits AI model information 120, as well as a combination of bias removal methods, an application order, and adjustment parameters. The adjustment parameter is a parameter for adjusting the degree of bias removal.
[0027] In the following description, a combination of bias removal methods for which the application order has been determined is referred to as a "bias removal method pattern".
[0028] When the control unit 110 receives the processing result, it generates an evaluation report 121 including the bias removal method pattern and the adjustment parameter, and presents the AI model information 120 and the evaluation report 121 to the user via the display unit 112.
[0029] Note that, regarding the functional units included in the AI model generation system 100, a plurality of functional units may be grouped into one functional unit, or one functional unit may be divided into a plurality of functional units for each function.
[0030] FIG. 3 is a diagram showing an example of the data structure of the dataset 102 of Example 1.
[0031] The dataset 102 stores teacher data composed of a data ID 301, a feature amount 302, and a correct value 303. In FIG. 3, one entry corresponds to one piece of teacher data.
[0032] The feature quantity 302 stores the values of a plurality of items (feature quantities) representing the features of the target. When the target is a person, features such as age, gender, and nationality become the feature quantities. The correct value 303 stores the predicted value in the inference event. For example, probability, profit, importance, etc. are stored as the predicted values.
[0033] FIG. 4 is a diagram showing an example of the data structure of the AI model information 103 in the first embodiment. FIG. 5 is a diagram showing an example of the data structure of the AI model information 120 in the first embodiment.
[0034] The AI model information 103 and the AI model information 120 include the values of the parameters that define the AI model. The AI model is, for example, a DNN (Deep Neural Network). Note that the AI model information 103 may include information representing the structure of the AI model.
[0035] FIG. 6 is a diagram showing an example of the data structure of the bias removal method information 104 in the first embodiment.
[0036] The bias removal method information 104 stores an entry including a method ID 601, a target feature quantity 602, a method definition 603, and an adjustment parameter 604. There is one entry for one bias removal method.
[0037] The method ID 601 is a field that stores the ID of the bias removal method. The target feature quantity 602 is a field that stores information on the feature quantity to be removed of the bias. For example, the name of the feature quantity is stored.
[0038] The method definition 603 is a field that stores information on the bias removal method. In this embodiment, for the sake of simplicity of explanation, the name of the bias removal method is described, but actually, program code for realizing the bias removal method is stored.
[0039] The adjustment parameter 604 is a field that stores the adjustment parameter in the bias removal method. Note that the adjustment parameter 604 for a bias removal method without an adjustment parameter is blank.
[0040] The Shapley method and the PR method are known as bias removal methods with adjustment parameters. The Shapley method is a method of correcting feature quantities using the contribution degree of feature quantities to predicted values and adjustment parameters. The PR method is the method described in Non-Patent Document 4.
[0041] FIGS. 7A and 7B are diagrams showing an example of the data structure of the business requirement definition information 101 of Example 1. The business requirement definition information 101 is described by being divided into two due to the margin of the drawing.
[0042] The business requirement definition information 101 stores entries composed of a business requirement ID 701, an index name 702, an index type 703, a target feature quantity 704, an index definition 705, and a business requirement 706. There is one entry for one business requirement.
[0043] The business requirement ID 701 is a field that stores the ID of the business requirement. The index name 702 is a field that stores the name of the index. The index type 703 is a field that stores the type of the index. In the case of an index (bias index) for evaluating the degree of bias removal, "bias" is stored in the index type 703, and in the case of an index (prediction accuracy index) for evaluating prediction accuracy, "prediction error" is stored in the index type 703. The target feature quantity 704 is a field that stores information on the feature quantity to be subjected to bias removal. Note that when there is no specific feature quantity to be subjected to bias removal, the target feature quantity 704 is blank.
[0044] The index definition 705 is a field that stores the definition (calculation method) of the index. The business requirement 706 is a field that stores the conditions that the index should satisfy, that is, the business requirement. In Example 1, it is assumed that a business requirement with an optimal value of 0 is set.
[0045] In the following description, the business requirements regarding the bias index are described as the first business requirement, and the business requirements regarding the prediction accuracy index are described as the second business requirement.
[0046] FIGS. 8A and 8B are diagrams showing an example of the data structure of the evaluation report 121 of Example 1.
[0047] The evaluation report 121 includes business requirement evaluation information 800 and bias removal method pattern information 810.
[0048] The business requirement evaluation information 800 is information for managing the evaluation of business requirements. The business requirement evaluation information 800 stores entries including a business requirement ID 801, an index type 802, a target feature amount 803, and an index 804. There is one entry for one business requirement. The business requirement evaluation information 800 includes as many entries as the number of business requirements specified by the user.
[0049] The business requirement ID 801, the index type 802, and the target feature amount 803 are the same fields as the business requirement ID 701, the index type 703, and the target feature amount 704. The index 804 is a field for storing the value of the index.
[0050] The bias removal method pattern information 810 is information for managing the bias removal method pattern. The bias removal method pattern information 810 stores entries including a bias removal method pattern 811 and an adjustment parameter 812.
[0051] The bias removal method pattern 811 is a field for storing the bias removal method pattern. The bias removal method pattern [ε 1 , ε 2 stored in the bias removal method pattern 811 of FIG. 8B represents a bias removal method pattern in which ε 1 is first applied and then ε 2 is applied.
[0052] The adjustment parameter 812 is a field that stores the value of the adjustment parameter of the bias removal method included in the bias removal method pattern.
[0053] Next, the processing executed by the AI model generation system 100 will be described. FIG. 9 is a diagram showing an example of an input screen presented by the AI model generation system 100 of Example 1.
[0054] The user accesses the AI model generation system 100 to instruct the generation of an AI model. When the AI model generation system 100 receives the access, it displays the input screen 900.
[0055] The input screen 900 includes an input area 901, input fields 902, 903, 904, and an operation button 905.
[0056] The input area 901 is an area for inputting business requirements. The input area 901 includes an input field 911 and operation buttons 912, 913. The input field 911 is a field for inputting business requirements. The operation button 912 is an operation button for adding the input field 911. The operation button 913 is an operation button for deleting the input field 911. In the following description, a set of multiple business requirements specified by the user is described as a business requirement pattern.
[0057] The input field 902 is a field for inputting the AI model information 103 of the AI model to be generated. The input field 903 is a field for inputting the dataset 102 to be used. The input field 904 is a field for inputting the upper limit value of the processing time for generating the AI model. The operation button 905 is an operation button for instructing the start of processing to the AI model generation system 100.
[0058] When the operation button 905 is operated, a generation request is input to the AI model generation system 100 together with information on a plurality of business requirements, the dataset 102, and the AI model information 103. It is assumed that a second business requirement and at least one first business requirement are selected.
[0059] FIG. 10, FIG. 11A, and FIG. 11B are flowcharts for explaining an example of the processing executed by the AI model generation system 100 of Example 1.
[0060] First, the processing executed by the control unit 110 will be described with reference to FIG. 10. When the control unit 110 receives a generation request, it reads out the entry of the business requirement specified by the user from the business requirement definition information 101 (step S101), and starts a loop process for the business requirement (first business requirement) (step S102). The control unit 110 selects one first business requirement from among the business requirement patterns.
[0061] The control unit 110 adds a term related to the first business requirement to the objective function used in the learning process (step S103). Here, the objective function is a function for calculating a prediction accuracy index. For example, the control unit 110 may add a term obtained by adding a weight to the bias index corresponding to the first business requirement.
[0062] The control unit 110 determines whether the processing has been completed for all the business requirements (step S104).
[0063] If the processing has not been completed for all the business requirements, the control unit 110 returns to step S102. If the processing has been completed for all the business requirements, the control unit 110 proceeds to step S105.
[0064] When the loop process ends, the objective function is transformed, for example, as shown in Equation (1).
[0065]
Equation
[0066] Here, L(ε,φ) is the objective function. The first term on the right side is the term related to the prediction accuracy index. A general objective function is defined only from the first term. The second term on the right side is the term related to the bias index. w k represents a weight, and ξ k(ε, φ) represents a bias index, and z k represents a threshold value. k represents identification information of the bias index. U represents a set of identification information of the bias index selected by the user. n represents the number of bias indices selected by the user. (ε, φ) represents that a bias removal method has been applied.
[0067] In this embodiment, it is assumed that learning is performed as an optimization problem with constraints to determine the parameters of the AI model so that the objective function is minimized. When the objective function is minimized, it is expected that the value of the index is also close to 0. That is, it is expected to satisfy the first business requirement and the second business requirement.
[0068] In step S105, the control unit 110 instructs the solver unit 111 to execute search processing (step S105). At this time, the control unit 110 notifies the solver unit 111 of the objective function, the calculation method of the index (index definition 705), and the business requirements (business requirements 706). Then, the control unit 110 waits for a response from the solver unit 111.
[0069] When the control unit 110 receives the processing result from the solver unit 111 (step S106), it determines whether the AI model has been generated (step S107).
[0070] If the AI model cannot be generated, the control unit 110 notifies an alert via the display unit 112 (step S110).
[0071] If the AI model can be generated, the control unit 110 calculates the index of each business requirement using the AI model (step S108).
[0072] The control unit 110 generates an evaluation report 121 and presents the evaluation report 121 via the display unit 112 (step S109).
[0073] Next, the search processing executed by the solver unit 111 will be described. The solver unit 111 initializes the variable S to 1 (step S201). The variable S is a variable representing the number of bias removal methods.
[0074] The solver unit 111 selects S bias removal methods (step S202). Assume that in the first processing, a bias removal method is randomly selected. In the processing after the second time, a bias removal method different from the previous time is selected.
[0075] The solver unit 111 determines a bias removal method pattern by determining the application order of the selected bias removal method (step S203).
[0076] The solver unit 111 sets the value of the adjustment parameter of the selected bias removal method (step S204). Assume that in the first processing, it is randomly set. In the processing after the second time, a value different from the previous value is set. Note that when the selected bias removal method is only a bias removal method without an adjustment parameter, the processing of step S203 is not executed.
[0077] Note that the solver unit 111 can also adopt a search method in which the maximum value that the adjustment parameter can take is set as the initial value of the adjustment parameter, and the adjustment parameter is updated to a small value when the learning fails. In the case of this search method, while the influence of the bias removal method becomes large and the prediction accuracy may be reduced, the possibility of satisfying the business requirements becomes high. Therefore, it is expected that the learning efficiency will be improved.
[0078] The solver unit 111 executes a learning process to which the selected bias removal method is applied (step S205). Note that in the learning process, an AI model that minimizes the objective function and satisfies the first business requirement and the second business requirement is generated. Note that a known learning process of the AI model may be used.
[0079] The solver unit 111 determines whether the learning has succeeded (step S206). In this embodiment, the solver unit 111 determines that the learning has succeeded when the first business requirement and the second business requirement are satisfied and the value of the objective function is smaller than the threshold value.
[0080] In addition, when the first service requirement and the second service requirement are satisfied and the state where the value of the objective function is smaller than a predetermined value continues, it may be determined that the learning is successful.
[0081] When the learning is successful, the solver unit 111 transmits the bias removal method pattern, the adjustment parameter, and the AI model information 120 to the control unit 110 as a response (step S207). Then, the solver unit 111 ends the search process.
[0082] When the learning is not successful, the solver unit 111 determines whether the processing time is greater than the upper limit time (step S208).
[0083] When the processing time is greater than the upper limit time, the solver unit 111 transmits error information to the control unit 110 as a response (step S209). Then, the solver unit 111 ends the search process.
[0084] When the processing time is less than or equal to the upper limit time, the solver unit 111 determines whether the adjustment parameter can be changed (step S210). That is, it is determined whether processing has been executed for all parameter ranges.
[0085] When the adjustment parameter can be changed, the solver unit 111 returns to step S204.
[0086] When the adjustment parameter cannot be changed, the solver unit 111 determines whether the application order of the bias removal method can be changed (step S211). That is, it is determined whether processing has been executed for all application orders.
[0087] When the application order of the bias removal method can be changed, the solver unit 111 returns to step S203.
[0088] When the application order of the bias removal method cannot be changed, the solver unit 111 determines whether processing has been completed for all combinations of bias removal methods (step S212).
[0089] If the processing is not completed for all combinations of bias removal methods, the solver unit 111 returns to step S202.
[0090] If the processing is completed for all combinations of bias removal methods, the solver unit 111 determines whether the value of variable S is n (step S213). n is the number of bias metrics selected by the user.
[0091] If the value of variable S is n, the solver unit 111 transmits error information to the control unit 110 as a response (step S209). Then, the solver unit 111 ends the search process.
[0092] If the value of variable S is not n, the solver unit 111 sets the value obtained by adding 1 to variable S as the new value of variable S (step S214). Then, the solver unit 111 returns to step S202.
[0093] FIG. 12 is a diagram showing an example of an output screen presented by the AI model generation system 100 of Example 1.
[0094] On the output screen 1200, business requirement evaluation information 800 and bias removal method pattern information 810 are displayed. Also, the output screen 1200 includes operation buttons 1201 and 1202. The operation button 1201 is an operation button for displaying details of the bias removal methods included in the bias removal method pattern. The operation button 1202 is an operation button for downloading the AI model information 120.
[0095] As described above, the AI model generation system 100 can comprehensively search for bias removal method patterns and adjustment parameters for generating an AI model with high prediction accuracy and with biases removed.
[0096] Note that the number of outputs of the evaluation report 121 can be arbitrarily set. In this case, the solver unit 111 of the AI model generation system 100 continues to search until the number of combinations of bias removal method patterns and adjustment parameters reaches the specified number until the evaluation report 121 is generated.
[0097] According to Example 1, information on the bias removal method for generating an AI model that meets the specified business requirements can be presented to the user. Also, the user can obtain and utilize an AI model that meets the specified business requirements.
Example
[0098] In Example 2, the AI model generation system 100 converts the index according to the optimization problem to be handled. Hereinafter, Example 2 will be described centering on the differences from Example 1.
[0099] The functional configuration of the AI model generation system 100 in Example 2 is the same as that in Example 1. The data structure of the information held by the AI model generation system 100 in Example 2 is the same as that in Example 1. However, in Example 2, some of the business requirements in the business requirement definition information 101 are different.
[0100] FIG. 13A and FIG. 13B are diagrams showing an example of the data structure of the business requirement definition information 101 in Example 2. Due to the margin of the drawing, the business requirement definition information 101 is divided into two and described.
[0101] In Example 1, it was treated as a constrained optimization problem of determining the parameters of the AI model so that the objective function is minimized. Therefore, it is assumed that the optimal value of the business requirement is 0.
[0102] However, in FIGS. 13A and 13B, business requirements (business requirements for index B and index E) whose optimal values are not 0 are set. Therefore, in Example 2, the index and business requirements are converted according to the optimization problem handled by the AI model generation system 100. As a method for converting the index, for example, the following conversion methods can be considered. abs() represents the ABS function.
[0103] (Conversion 1) abs(median value of the indicator - indicator) (Conversion 2) (indicator) -1 (Conversion 3) abs(max(indicator, 0))
[0104] Conversion 1 is applied when the value range is set as a condition. Conversion 2 is applied when maximizing the value is set as a condition. Conversion 3 is applied when minimizing the value is set as a condition.
[0105] FIG. 14 is a flowchart for explaining an example of the process executed by the AI model generation system 100 of Example 2. FIG. 15 is a flowchart for explaining an example of the indicator conversion process executed by the control unit 110 of Example 2.
[0106] When the control unit 110 receives a generation request, it reads out the entry of the business requirement specified by the user from the business requirement definition information 101 (step S101) and executes the indicator conversion process (step S301). Then, the control unit 110 proceeds to step S102. The processes from step S102 to step S110 are the same as the processes described in Example 1.
[0107] Next, the indicator conversion process will be described. The control unit 110 starts the loop process for business requirements (step S401). The control unit 110 selects one business requirement from the business requirement patterns.
[0108] The control unit 110 determines whether the conversion of the indicator is necessary based on the business requirement (step S402). When the condition that the optimal value is not 0 is set, the control unit 110 determines that the conversion of the indicator is necessary.
[0109] When the conversion of the indicator is not necessary, the control unit 110 proceeds to step S404.
[0110] When index conversion is necessary, the control unit 110 converts the index and the business requirements (step S403). After that, the control unit 110 proceeds to step S404.
[0111] Specifically, the control unit 110 selects a conversion method according to the business requirements, and converts the index and the business requirements by the selected conversion method. The control unit 110 reflects the conversion result in the entry of the selected business requirements.
[0112] The control unit 110 determines whether the processing for all the business requirements has been completed (step S404).
[0113] If the processing for all the business requirements has not been completed, the control unit 110 returns to step S401. If the processing for all the business requirements has been completed, the control unit 110 ends the index conversion process.
[0114] The search process executed by the solver unit 111 in the second embodiment is the same as the process described in the first embodiment.
[0115] According to the second embodiment, the user can arbitrarily define the business requirements. Thereby, the burden required for setting the business requirements can be reduced.
Embodiment
[0116] In the third embodiment, when the AI model generation system 100 cannot find a bias removal method pattern and adjustment parameters that satisfy the specified business requirements, it changes to business requirements similar to the specified business requirements and performs a search. Hereinafter, the third embodiment will be described centering on the differences from the first embodiment.
[0117] In the following description, the business requirement pattern composed of the business requirements specified by the user is described as the initial business requirement pattern.
[0118] The functional configuration of the AI model generation system 100 in the third embodiment is the same as that in the first embodiment. The data structure of the information held by the AI model generation system 100 in the third embodiment is the same as that in the first embodiment.
[0119] FIGS. 16A and 16B are flowcharts for explaining an example of the processing executed by the AI model generation system 100 of Example 3.
[0120] The processing from step S101 to step S107 is the same as the processing described in Example 1.
[0121] In step S107, when it is determined that the AI model cannot be generated, the control unit 110 determines whether there is a modifiable business requirement among the business requirements included in the initial business requirement pattern (step S501).
[0122] Specifically, the control unit 110 refers to the business requirement definition information 101 and determines whether there is another business requirement with the same target feature amount of the business requirement for each of the business requirements included in the initial business requirement pattern.
[0123] When the modification of the business requirement is impossible, the control unit 110 notifies an alert via the display unit 112 (step S110).
[0124] When the modification of the business requirement is possible, the control unit 110 determines whether the business requirement selection process has been executed (step S502).
[0125] Specifically, the control unit 110 determines whether the business requirement pattern list 1700 has been generated. When the business requirement pattern list 1700 has been generated, the control unit 110 determines that the business requirement selection process has been executed.
[0126] Here, the business requirement pattern list 1700 will be described. FIG. 17 is a diagram showing an example of the business requirement pattern list 1700 of Example 3.
[0127] The business requirement pattern list 1700 stores entries including a business requirement pattern 1701 and a selection flag 1702. There is one entry for one business requirement pattern.
[0128] The business requirement pattern 1701 is a field for storing business requirement patterns. The selection flag 1702 is for storing a flag indicating whether the business requirement pattern has been selected. When the business requirement pattern is selected, "1" is stored in the selection flag 1702, and when the business requirement pattern is not selected, "0" is stored in the selection flag 1702.
[0129] Return to the description of FIG. 16B. In step S502, if the business requirement selection process has been executed, the control unit 110 proceeds to step S504.
[0130] If the business requirement selection process has not been executed, the control unit 110 executes the business requirement selection process (step S503), and then proceeds to step S504.
[0131] In step S504, the control unit 110 selects one business requirement pattern from the business requirement pattern list 1700 (step S504), and then returns to step S101. At this time, the control unit 110 updates the selection flag 1702 of the selected business requirement pattern to "1".
[0132] The process of step S108 is the same as that in the first embodiment. The process of step S109 when the AI model is generated with the initial business requirement pattern is the same as that in the first embodiment. When the AI model is generated with a business requirement pattern different from the initial business requirement pattern, the process of step S109 is partially different.
[0133] FIG. 18 is a diagram showing an example of the data structure of the evaluation report 121 of the third embodiment. FIG. 18 shows the evaluation report 121 generated when the AI model is generated with a business requirement pattern different from the initial business requirement pattern. The evaluation report 121 includes the initial business requirement pattern information 820.
[0134] When the AI model is generated under a business requirement pattern different from the initial business requirement pattern, the control unit 110 generates an evaluation report 121 including the initial business requirement pattern information 820.
[0135] In this case, an output screen 1200 as shown in FIG. 19 is displayed. On the output screen 1200, information is added indicating that the AI model could not be generated under the initial business requirement pattern and information regarding the used business requirement pattern.
[0136] FIG. 20 is a flowchart for explaining an example of the business requirement selection process executed by the AI model generation system 100 of the third embodiment.
[0137] The control unit 110 initializes the business requirement pattern list 1700 (step S601).
[0138] Specifically, the control unit 110 generates an empty business requirement pattern list 1700 and adds one entry to the business requirement pattern list 1700. The control unit 110 sets the initial business requirement pattern in the business requirement pattern 1701 of the added entry and sets "1" in the selection flag 1702.
[0139] The control unit 110 starts the loop process for business requirements (step S602). One business requirement is selected from the initial business requirement patterns.
[0140] The control unit 110 refers to the business requirement definition information 101 and searches for other business requirements that are the same as the target feature amount of the selected business requirement (step S603). The control unit 110 stores the search result in the work area.
[0141] The control unit 110 determines whether the processing for all business requirements has been completed (step S604).
[0142] If the processing for all business requirements has not been completed, the control unit 110 returns to step S602.
[0143] When the processing for all business requirements is completed, the control unit 110 generates a business requirement pattern in which at least one business requirement of the initial business requirement pattern is replaced (step S605). The control unit 110 adds entries to the business requirement pattern list 1700 by the number of generated business requirement patterns, sets the business requirement pattern in the business requirement pattern 1701 of each entry, and sets "0" in the selection flag 1702 of each entry.
[0144] The search process executed by the solver unit 111 in the third embodiment is the same as the process described in the first embodiment.
[0145] According to the third embodiment, it is possible to present alternative business requirements, bias removal methods, and AI models by swapping similar business requirements.
Example
[0146] In the fourth embodiment, the AI model generation system 100 derives adjustment parameters for a bias removal method that does not have adjustment parameters. Hereinafter, the fourth embodiment will be described centering on the differences from the first embodiment.
[0147] The functional configuration of the AI model generation system 100 in the fourth embodiment is the same as that in the first embodiment. The data structure of the information held by the AI model generation system 100 in the fourth embodiment is the same as that in the first embodiment.
[0148] FIG. 21 is a flowchart for explaining an example of the adjustment parameter setting process executed by the AI model generation system 100 in the fourth embodiment. The AI model generation system 100 executes the adjustment parameter setting process described below in advance.
[0149] The control unit 110 starts the loop process of the bias removal method (step S701). The control unit 110 selects one bias removal method (entry) from the bias removal method information 104.
[0150] The control unit 110 determines whether there is an adjustment parameter for the selected bias removal method (step S702).
[0151] If there is an adjustment parameter for the selected bias removal method, the control unit 110 proceeds to step S707.
[0152] If there is no adjustment parameter for the selected bias removal method, the control unit 110 instructs the solver unit 111 to execute the process using the selected bias removal method (step S703). Then, the control unit 110 waits for a response from the solver unit 111.
[0153] When the control unit 110 receives the processing result from the solver unit 111 (step S704), it calculates the predicted value for the teacher data using the generated AI model (step S705).
[0154] The control unit 110 sets an objective function including the adjustment parameter w using the predicted value and the correct value (step S706), and then proceeds to step S707. Specifically, an objective function as shown in Equation (2) is set.
[0155]
Equation
[0156] Here, y car represents the predicted value calculated using the AI model learned using the bias removal method selected in step S701. y pred represents the predicted value calculated in the learning process executed when the execution instruction of step S105 is received.
[0157] The adjustment parameter w is a parameter for adjusting whether to approximate the prediction result to the predicted value before applying the bias removal method or the predicted value after applying the bias removal method. This functions as a parameter for adjusting the degree of bias removal, that is, as an adjustment parameter.
[0158] The control unit 110 sets the adjustment parameter w to the adjustment parameter 604 of the selected bias removal method in the bias removal method information 104. Here, w ranges from 0 to 1.
[0159] In step S707, the control unit 110 determines whether the processing for all the bias removal methods has been completed (step S707).
[0160] If the processing for all the bias removal methods has not been completed, the control unit 110 returns to step S701. If the processing for all the bias removal methods has been completed, the control unit 110 ends the adjustment parameter setting process.
[0161] The process for generating the evaluation report 121 of Example 4 is the same as that of Example 1.
[0162] According to Example 4, the search range can be expanded by introducing the adjustment parameter. Thereby, a more appropriate bias removal method and AI model can be presented.
Example
[0163] In Example 5, the AI model generation system 100 adjusts the adjustment parameter based on the correlation between the bias removal method and the index. Hereinafter, Example 5 will be described centering on the differences from Example 1.
[0164] The functional configuration of the AI model generation system 100 of Example 5 is the same as that of Example 1. The data structure of the information held by the AI model generation system 100 of Example 5 is the same as that of Example 1.
[0165] FIG. 22 is a flowchart for explaining an example of the correlation analysis process executed by the AI model generation system 100 of Example 5. FIG. 23 is a diagram showing an example of the correlation coefficient information generated by the AI model generation system 100 of Example 5. FIG. 24 is a diagram showing an example of the correlation analysis information generated by the AI model generation system 100 of Example 5.
[0166] The AI model generation system 100 executes correlation analysis processing described below in advance.
[0167] The control unit 110 starts loop processing of the bias removal method (step S801). The control unit 110 refers to the bias removal method information 104 and selects one bias removal method.
[0168] The control unit 110 sets two sets of adjustment parameters for the selected bias removal method (step S802). The set of adjustment parameters represents a set of adjustment parameters. For example, if there are two adjustment parameters Φ 1 , Φ 2 for the bias removal method, the control unit 110 sets the set of adjustment parameters (Φ 1 , Φ 2 ) and the set of adjustment parameters (Φ' 1 , Φ' 2 ).
[0169] The control unit 110 instructs the solver unit 111 to execute processing using the bias removal method with one set of adjustment parameters (step S803). Then, the control unit 110 waits for a response from the solver unit 111.
[0170] When the control unit 110 receives the processing result from the solver unit 111 (step S804), it calculates all the metrics defined in the business requirement definition information 101 using the AI model (step S805).
[0171] The control unit 110 instructs the solver unit 111 to execute processing using the bias removal method with the other set of adjustment parameters (step S806). Then, the control unit 110 waits for a response from the solver unit 111.
[0172] When the control unit 110 receives the processing result from the solver unit 111 (step S807), it calculates all the metrics defined in the business requirement definition information 101 using the AI model (step S808).
[0173] Based on the change amounts of the indicators calculated in steps S805 and S807 and the change amount of the adjustment parameter set, the control unit 110 calculates the correlation coefficient between the bias removal method and the indicator (step S809).
[0174] The control unit 110 determines whether the processing for all bias removal methods has been completed (step S810).
[0175] If the processing for all bias removal methods has not been completed, the control unit 110 returns to step S801.
[0176] If the processing for all bias removal methods has been completed, the control unit 110 generates correlation coefficient information 2300 as shown in FIG. 23 based on the calculation results (step S811). The correlation coefficient information 2300 is information in a matrix format in which the bias removal methods are rows and the bias indicators are columns. The correlation coefficients are stored in the cells.
[0177] Based on the correlation coefficients, the control unit 110 determines the correlation relationship between the bias removal method and the indicator and generates correlation analysis information 2400 (step S812). For example, the control unit 110 determines that an indicator with a correlation coefficient of +0.5 or more has a positive correlation with the bias removal method, an indicator with a correlation coefficient of -0.5 or less has a negative correlation with the bias removal method, and other indicators have no correlation with the bias removal method.
[0178] The correlation analysis information 2400 stores entries including a method ID 2401, a positive correlation 2402, a negative correlation 2403, and no correlation 2404. There is one entry for one bias removal method. The method ID 2401 is the same field as the method ID 601. The positive correlation 2402 is a field that stores the indicators that have a positive correlation with the bias removal method. The negative correlation 2403 is a field that stores the indicators that have a negative correlation with the bias removal method. The no correlation 2404 is a field that stores the indicators that have no correlation with the bias removal method.
[0179] The process executed by the control unit 110 to generate the evaluation report 121 that meets the service requirements is the same as that in the first embodiment.
[0180] The search process executed by the solver unit 111 is the same as that in the first embodiment, but the content of the process is partially different. Specifically, the content of step S204 is different.
[0181] (S204-1) The solver unit 111 identifies the indicators that do not meet the conditions among the indicators calculated using the AI model.
[0182] (S204-2) The solver unit 111 refers to the correlation analysis information 2400 and determines whether to change the adjustment parameter.
[0183] Here, assume there are indicators ξ 1 , ξ 2 , ξ 4 , ξ N , and the bias removal method pattern is only ε 1 . If the indicator ξ 2 is greater than the threshold and has a positive correlation with the bias removal method ε 1 , there is a possibility of meeting the conditions by reducing the adjustment parameter of the bias removal method ε 1 . On the other hand, if the indicators ξ 1 , ξ 4 have a negative correlation with the bias removal method ε 1 , reducing the adjustment parameter of the bias removal method ε 1 may result in not meeting the conditions.
[0184] Therefore, the solver unit 111 determines whether to change the adjustment parameter based on the degree of violation of the indicator conditions and the correlation between the indicator and the selected bias removal method.
[0185] (S204-3) If it is determined not to change the adjustment parameter, the solver unit 111 returns to step S203.
[0186] (S204-4) When it is determined that the adjustment parameter is to be changed, the solver unit 111 sets the adjustment parameter based on the degree of violation of the index condition and the correlation between the index and the selected bias removal method.
[0187] Note that in step S202, the solver unit 111 may select a bias removal method with reference to the correlation analysis information 2400 and the previous bias removal method pattern.
[0188] According to the fifth embodiment, since the adjustment range of the adjustment parameter or the selection range of the bias removal method is narrowed, it is possible to search for the bias removal method and the AI model at a higher speed.
[0189] Note that the present invention is not limited to the above-described embodiments, and includes various modifications. For example, the above-described embodiments are those in which the configuration is described in detail in order to explain the present invention in an easy-to-understand manner, and are not necessarily limited to those having all the configurations described. In addition, a part of the configuration of each embodiment can be added to, deleted from, or replaced with another configuration.
[0190] In addition, each of the above configurations, functions, processing units, processing means, etc. may be realized in hardware by designing a part or all of them, for example, by an integrated circuit. The present invention can also be realized by a program code of software that realizes the functions of the embodiments. In this case, a storage medium recording the program code is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code itself and the storage medium storing the same constitute the present invention. As a storage medium for supplying such a program code, for example, a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), an optical disk, a magneto-optical disk, a CD-R, a magnetic tape, a non-volatile memory card, a ROM, etc. are used.
[0191] In addition, the program code for implementing the functions described in this embodiment can be implemented in a wide range of programs or script languages such as assembler, C / C++, perl, Shell, PHP, Python, Java (registered trademark), etc.
[0192] Furthermore, by distributing the program code of the software that realizes the functions of the embodiment via a network, it can be stored in a storage means such as a hard disk or memory of a computer, or a storage medium such as a CD-RW or CD-R, and the processor provided in the computer reads and executes the program code stored in the storage means or the storage medium.
[0193] In the above-described embodiment, the control lines and information lines show those considered necessary for explanation, and not necessarily all control lines and information lines are shown on the product. All components may be interconnected.
Explanation of Reference Numerals
[0194] 100 AI model generation system 101 Business requirement definition information 102 Dataset 103 AI model information 104 Bias removal method information 110 Control unit 111 Solver unit 112 Display unit 120 AI model information 121 Evaluation report 200 Computer 201 Processor 202 Network interface 203 Main memory device 204 Auxiliary storage device 205 Output device 206 Input device 207 Bus 900 Input screen 1200 Output screen 1700 Business Requirement Pattern List 2300 Correlation Coefficient Information 2400 Correlation Analysis Information
Claims
1. A computer system comprising: a processor and a storage device connected to the processor, wherein the storage device stores: a dataset composed of a plurality of feature quantities and a plurality of teacher data including correct values; business requirement definition information storing a plurality of business requirement data defining business requirements in operations using an AI model; bias removal method management information storing bias removal method data associating the feature quantity to be bias-removed and a bias removal method for removing the bias for the feature quantity; the plurality of business requirement data includes a plurality of first business requirement data including the feature quantity to be bias-removed, a calculation method of a first index for evaluating the degree of bias removal, and a first business requirement defined using the first index, and second business requirement data including a second index for evaluating the prediction accuracy of the AI model and a second business requirement defined using the second index; the processor: receives an AI model generation request including information specifying at least one of the first business requirement and the second business requirement; executes a search process for searching for a bias removal method used to generate an AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request, using the dataset, the business requirement definition information, and the bias removal method management information; when an AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request is generated, generates a report including information on the bias removal method used and outputs the report; in the search process, a process of selecting at least one of the bias removal methods and a learning process of generating the AI model using the selected bias removal method are repeatedly executed until the first business requirement and the second business requirement specified in the AI model generation request are satisfied. The computer system is characterized by this.
2. The computer system according to claim 1, wherein in the search process, when the processor selects a plurality of the bias removal methods, the processor searches for an AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request while changing the application order of the selected plurality of bias removal methods. A computer system characterized by generating the report including the application order of the bias removal method.
3. The computer system according to claim 1, wherein at least one of the bias removal method data includes an adjustment parameter for adjusting the intensity of bias removal, and the processor, in the search process, when the bias removal method having the adjustment parameter is selected, while changing the adjustment parameter, searches for the AI model that satisfies the first service requirement and the second service requirement specified in the AI model generation request, A computer system characterized by generating the report including the selected bias removal method and the adjustment parameter.
4. The computer system according to claim 3, wherein the bias removal method management information stores the bias removal method data for which the feature amount to be removed from bias is the same, and the processor, in the search process, when there is no AI model that satisfies the first service requirement and the second service requirement specified in the AI model generation request, refers to the bias removal method management information to identify other first service requirements for which the feature amount to be removed from bias of the first service requirement specified in the AI model generation request is the same, A computer system characterized by searching for the AI model after converting the first service requirement specified in the AI model generation request into the identified first service requirement.
5. The computer system according to claim 3, wherein the processor, in the search process, when the bias removal method having no adjustment parameter is selected, sets, as the adjustment parameter, a parameter for adjusting the error between the predicted value of the AI model to which the bias removal method is applied and the correct value.
6. The computer system according to claim 3, and the processor, analyzes the correlation between the bias removal method and the first index and the second index, A computer system characterized by selecting the bias removal method or adjusting the adjustment parameter based on the result of the analysis in the search process.
7. A method for searching for a bias removal method for generating an AI model that satisfies service requirements, which is executed by a computer system, The computer system includes a processor and a storage device connected to the processor, wherein the storage device stores a dataset composed of a plurality of feature quantities and a plurality of teacher data including correct values, business requirement definition information storing a plurality of business requirement data defining business requirements in a business using an AI model, bias removal method management information storing bias removal method data associating the feature quantity to be bias-removed and a bias removal method for removing the bias for the feature quantity, the plurality of business requirement data includes a plurality of first business requirement data including the feature quantity to be bias-removed, a calculation method of a first index for evaluating the degree of bias removal, and a first business requirement defined using the first index, and second business requirement data including a second index for evaluating the prediction accuracy of the AI model and a second business requirement defined using the second index, the method for searching for the bias removal method is a first step in which the processor receives an AI model generation request including information specifying at least one of the first business requirement and the second business requirement, a second step in which the processor executes a search process for searching for a bias removal method used to generate an AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request, using the dataset, the business requirement definition information, and the bias removal method management information, a third step in which, when the AI model that satisfies the first business requirement and the second business requirement specified in the AI model generation request is generated, the processor generates a report including information on the bias removal method used and outputs the report, the second step includes a step of repeatedly executing, until the first business requirement and the second business requirement specified in the AI model generation request are satisfied, a process in which the processor selects at least one of the bias removal methods and a learning process of generating the AI model using the selected bias removal method. The method for searching for a bias removal method is characterized by this.
8. The method for searching for a bias removal method according to Claim 7, The second step includes the step of the processor searching for the AI model that satisfies the first service requirement and the second service requirement specified in the AI model generation request while changing the application order of the selected multiple bias removal methods when the processor selects the multiple bias removal methods. The third step includes the step of the processor generating the report including the application order of the bias removal method. A method for searching for a bias removal method, characterized in that.
9. A method for searching for a bias removal method according to claim 7, At least one of the bias removal method data includes an adjustment parameter for adjusting the intensity of bias removal. The second step includes the step of the processor searching for the AI model that satisfies the first service requirement and the second service requirement specified in the AI model generation request while changing the adjustment parameter when the bias removal method having the adjustment parameter is selected. The third step includes the step of the processor generating the report including the selected bias removal method and the adjustment parameter. A method for searching for a bias removal method, characterized in that.
10. A method for searching for a bias removal method according to claim 9, In the bias removal method management information, the bias removal method data with the same feature amount to be removed from bias is stored. The second step is When the AI model that satisfies the first service requirement and the second service requirement specified in the AI model generation request does not exist, the processor refers to the bias removal method management information and identifies other first service requirements with the same feature amount to be removed from bias of the first service requirement specified in the AI model generation request; A method for searching for a bias removal method, characterized by including the step of the processor searching for the AI model after converting the first service requirement specified in the AI model generation request into the identified first service requirement.
11. A method for searching for a bias removal method according to claim 9, The second step includes setting, as the adjustment parameter, a parameter for adjusting an error between a predicted value of the AI model to which the bias removal method has been applied and the correct value when the bias removal method without the adjustment parameter is selected by the processor. A method for searching for a bias removal method, characterized in that it comprises the steps of:
12. A method for searching for a bias removal method according to claim 9, wherein the processor includes a step of analyzing a correlation relationship between the bias removal method and the first index and the second index, and the second step includes a step in which the processor selects the bias removal method or adjusts the adjustment parameter based on the result of the analysis. A method for searching for a bias removal method, characterized in that it comprises the steps of: