COMPUTER-READABLE RECORDING MEDIUM HAVING STORED THEREIN EVALUATION PROGRAM, EVALUATION METHOD, AND INFORMATION PROCESSING APPARATUS

A computer-readable recording medium has stored therein an evaluation program causing a computer to execute a process. The process includes: generating, when a portion of values of a plurality of attributes included in input data has a defect, complementary data of a plurality of patterns obtained by complementing the defect in a plurality of ways; determining perturbation information including an attribute to be changed and a change amount from among the plurality of attributes of complementary data in order to change a label predicted by the complementary data of the plurality of patterns; and evaluating the perturbation information based on a determination result as to whether the perturbation information determined in the complementary data of one pattern among the plurality of patterns can change the label also with respect to the complementary data of another pattern among the plurality of patterns.

FIELD

The present embodiment relates to a computer-readable recording medium having stored therein an evaluation program, an evaluation method, and an information processing device.

BACKGROUND

A model that predicts a label to which a prediction target belongs using a plurality of attributes and attribution values such as a matter, an object, and a person that are the prediction targets as input values can be generated by machine learning or the like using a computer. It may be desired to know which attribution value of the prediction target is to be changed and how much the attribution value is to be changed so that the label that is the prediction result to which the prediction target belongs can be changed. Here, it is conceivable to suggest an attribution value appropriate to be changed using a computer.

In one example, in counterfactual explanation (CE), a perturbation vector including one or a plurality of change attributes for changing a label and change amounts of the attributes is provided to a user. When a perturbation vector is given, the user can interpret the perturbation vector as an “action” for obtaining a desired determination result. According to such a technology, a constructive explanation regarding the prediction result can be presented to the user, thereby leading to trust building from the user.

For example, related art is disclosed in International Publication Pamphlet No. WO 2022/003816.

SUMMARY

According to an aspect of the embodiments, a non-transitory computer-readable recording medium having stored therein an evaluation program that causes a computer to execute a process. The process includes: generating, when a portion of values of a plurality of attributes included in input data has a defect, complementary data of a plurality of patterns obtained by complementing the defect in a plurality of ways; determining perturbation information including an attribute to be changed and a change amount from among the plurality of attributes of complementary data in order to change a label predicted by the complementary data of the plurality of patterns; and evaluating the perturbation information based on a determination result as to whether the perturbation information determined in the complementary data of one pattern among the plurality of patterns can change the label also with respect to the complementary data of another pattern among the plurality of patterns.

DESCRIPTION OF EMBODIMENT(S)

When a portion of attribution values of input data has a defect, there is a problem that it is difficult to evaluate a change attribute and a change amount that correspond to an action to be suggested for obtaining a desired result.

Hereinafter, embodiments related to the present evaluation program, evaluation method, and information processing apparatus are described with reference to the drawings. However, the embodiments described below are merely examples, and there is no intention to exclude the application of various modifications and techniques that are not explicitly described in the embodiments. That is, the present embodiment can be variously modified and implemented without departing from the gist thereof. Each drawing is not intended to include only the components illustrated in the drawing but may include other functions and the like.

FIG. 1 is a diagram illustrating an example of an action suggestion process when input data 1 does not have a defect in an information processing apparatus 100 as an example of an embodiment. The information processing apparatus 100 may function as an action suggestion device. FIG. 1 illustrates an example when the information processing apparatus 100 suggests an action of changing prediction from loan rejection to approval in credit examination.

The input data 1 includes a plurality of attributes 11-1 to 11-4 (may be collectively referred to as attributes 11) and attribution values 12-1 to 12-4 (may be collectively referred to as attribution values 12) of the respective attributes. The input data is also referred to as attribute data. In one example, the input data 1 may be input by a user from a user PC 200 (that is, a user terminal).

The input data 1 is input to a determination model 10. The determination model 10 may be a machine learning model machine-learned by an existing method. The determination model 10 predicts a label based on the input data 1. As an example, the determination model 10 predicts loan rejection or loan approval in credit examination. Since a configuration of the determination model 10 is similar to that of a machine learning model in the related art, detailed description of the determination model 10 is omitted.

To change a label predicted by the determination model 10 to a desired label, the information processing apparatus 100 determines a perturbation vector 3a, that is, an attribute to be changed 4a and a change amount 5a from the plurality of attributes 11. In the present embodiment, the information processing apparatus 100 determines the attribute to be changed 4a and the change amount 5a for changing the prediction from loan rejection to approval in the credit examination. The number of attributes to be changed 4a may be one or plural. In the example of FIG. 1, the attribute to be changed 4a is the attribute 11-3 “number of unrepaid loans” of the input data 1. The change amount 5a is reduced by two (that is, −2). The determined perturbation vector 3a, that is, the attribute to be changed 4a and the change amount 5a correspond to a suggested action presented to the user.

FIG. 2 is a diagram illustrating an example of the perturbation vector 3a determination process for changing a label. In a coordinate system 30 having each attribute 4a as a coordinate axis, in an example, a first label area 31 is an area in which a label of loan rejection is predicted by the determination model 10. A second label area 32 is an area in which a label of loan approval is predicted by the determination model 10.

The learned determination model 10 determines loan rejection in a situation (instance) x represented by each current attribution value 12. The information processing apparatus 100 determines a (perturbation vector 3a) that can lower a cost value of a cost function c(a) in a collection A of executable perturbation vectors so that f (x+a)=y is satisfied, that is, a target result (that is, the change of label) is possible. A process of determining the perturbation vector 3a may be referred to as a perturbation vector optimization process or an action optimization process.

The cost function c(a) is a function indicating the perturbation vector 3a, that is, a cost such as labor of executing an action. In an example, the cost function c(a) may be an existing cost function used in mixed integer linear optimization problem-based counterfactual explanation techniques such as total log-percentile shift (TLPS) or distribution-aware counterfactual explanation (DACE). Therefore, detailed description of the cost function c(a) and calculation of a cost value of the cost function is omitted. The cost value may be calculated in a process of determining the perturbation vector 3a.

FIG. 3 is a diagram illustrating an example of the action suggestion process when the input data 1 has a defect in the information processing apparatus 100 as an example of the embodiment. Even when the input data 1 has a defect as such, the information processing apparatus 100 according to the embodiment can evaluate the change attribute and the change amount corresponding to an action suggested for obtaining a desired result, and can suggest an action. The defect of the attribution value in the input data 1 includes a state where the attribution value is not input (that is, a blank state), a state where the attribution value is not read, and the like.

In the example illustrated in FIG. 3, the input data 1 lacks the attribution value 12-2 in an item of monthly income as the attribute 11-2 among the plurality of attributes 11-1 to 11-4. The defect in the input data 1 may occur due to various causes. A defect may occur due to an accidental reason such as a portion of the attribution values 12 not being measured due to a failure of a meter or the like. A defect may occur due to an artificial reason such as the user not inputting the attribution value 12 such as monthly income due to concern about inputting privacy information.

When the input data 1 has a defect, it is also conceivable to complement the defect with a single complementary value such as an average value and determine the perturbation vector 3a related the action to be suggested based on the method described in FIG. 2. However, when the single complementary value (complement method) deviates from the omitted original value, it may be difficult to propose an action for changing the prediction result (perturbation vector 3a).

When a portion of the attribution values 12 of the plurality of attributes 11 included in the input data 1 has a defect, the information processing apparatus 100 of the present embodiment generates complementary data 2-1 to 2-6 of a plurality of patterns obtained by complementing the defect in a plurality of ways. The information processing apparatus 100 determines perturbation vectors 3-1 to 3-6 of the complementary data 2-1 to 2-6 to change the labels predicted by the complementary data 2-1 to 2-6 of each of the plurality of patterns by a method similar to that in FIG. 2. The perturbation vectors 3-1 to 3-6 include attributes to be changed 4-1 to 4-6 and change amounts 5-1 to 5-6, respectively. The information processing apparatus 100 may generate sets (may be referred to as a “complement_action set”) of the complementary data 2-1 to 2-6 (may be collectively referred to as complementary data 2) and the perturbation vectors 3-1 to 3-6 (may be collectively referred to as perturbation vectors 3). Note that the perturbation vector 3 is an example of perturbation information. The perturbation information is not expressed in a vector format as long as the perturbation information is information including the attributes to be changed and the change amounts among the plurality of attributes of the complementary data for changing the labels predicted by the complementary data of each of the plurality of patterns.

The information processing apparatus 100 determines whether the perturbation vector (for example, perturbation vector 3-1) determined for the complementary data (for example, the complementary data 2-1) of one pattern among the plurality of patterns can change the labels for the complementary data 2-2 to 2-6 of other patterns and obtains a determination result. The information processing apparatus 100 calculates evaluation indexes 8-1 to 8-6 (may be collectively referred to as evaluation indexes 8) based on determination results 7-1 to 7-6 (may be collectively referred to as determination results 7) and cost values 6-1 to 6-6 (may be collectively referred to as cost values 6) associated with each perturbation vector 3.

The information processing apparatus 100 evaluates each perturbation vector 3, in other words, each complement_action set based on the determination result 7. For example, the information processing apparatus 100 evaluates each perturbation vector 3, in other words, each complement_action set, using the determined evaluation index 8 including the cost value 6 and the determination result 7 associated with each perturbation vector 3.

The information processing apparatus 100 selects a predetermined number of complement_action sets from the plurality of complement_action sets based on the evaluation result and outputs one or a plurality of suggested actions.

FIG. 4 is a diagram illustrating a hardware configuration of the information processing apparatus 100 as an example of the embodiment.

For example, as illustrated in FIG. 4, the information processing apparatus 100 includes a processor 121, a memory 122, a storage device 123, a graphic processing device 124, an input interface 125, an optical drive device 126, a device connection interface 127, and a network interface 128 as components. The components 121 to 128 are configured to be able to communicate with each other via a bus 129.

The processor (controller) 121 controls the entire information processing apparatus 100. The processor 121 may be a multiprocessor. The processor 121 may be, for example, any one of a CPU, a micro processing unit (MPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a programmable logic device (PLD), and a field programmable gate array (FPGA). The processor 121 may be a combination of two or a plurality of types of elements of CPU, MPU, DSP, ASIC, PLD, and FPGA.

Then, the processor 121 executes a control program (an evaluation program 123a or an action suggestion program), thereby implementing the function as a controller 101 illustrated in FIG. 5.

Note that the information processing apparatus 100 implements a function as an evaluation device or an action suggestion device, for example, by executing a program [the evaluation program 123a or an operating system (OS) program] recorded on a computer-readable non-transitory recording medium.

A program that describes processing contents to be executed by the information processing apparatus 100 can be recorded in various recording media. For example, the program to be executed by the information processing apparatus 100 can be stored in the storage device 123. The processor 121 loads at least a portion of the program in the storage device 123 onto the memory 122 and executes the loaded program.

The program to be executed by the information processing apparatus 100 (processor 121) can be recorded in a non-transitory portable recording medium such as an optical disk 126a, a memory device 127a, and a memory card 127c. The program stored in the portable recording medium is executable, for example, after being installed in the storage device 123 under control of the processor 121. The processor 121 can directly read the program from the portable recording medium and execute the program.

The memory 122 is a storage memory including a read only memory (ROM) and a random access memory (RAM). The RAM of the memory 122 is used as a main storage device of the information processing apparatus 100. At least a portion of the OS program or the control program to be executed by the processor 121 is temporarily stored in the RAM. The memory 122 also stores various pieces of data used in processing by the processor 121.

The storage device 123 is a storage device such as a hard disk drive (HDD), a solid state drive (SSD), or a storage class memory (SCM) and stores various pieces of data. The storage device 123 is used as an auxiliary storage device of the present information processing apparatus 100. The storage device 123 stores the OS program, the control program, and various pieces of data. The control program may include the evaluation program 123a and the like.

Note that a semiconductor storage device such as an SCM or a flash memory can also be used as the auxiliary storage device. The plurality of storage devices 123 may be used to configure redundant arrays of inexpensive disks (RAID).

The storage device 123 may store various pieces of data generated when the controller 101 described below executes each process.

The graphic processing device 124 performs screen display control on an output device such as a monitor 124a. Examples of the graphic processing device 124 include various arithmetic processing devices, for example, an integrated circuit (IC) such as a graphics processing unit (GPU), an APU, a DSP, an ASIC, or an FPGA. The graphic processing device 124 may have a configuration as an accelerator that executes machine learning processing and inference processing using a machine learning model. The graphic processing device 124 may execute at least a portion of the program (the evaluation program 123a or the OS program).

The monitor 124a is connected to the graphic processing device 124. The graphic processing device 124 displays an image on a screen of the monitor 124a according to a command from the processor 121. Examples of the monitor 124a include a display device using a cathode ray tube (CRT) and a liquid crystal display device.

A keyboard 125a and a mouse 125b are connected to the input interface 125. The input interface 125 transmits a signal transmitted from the keyboard 125a or the mouse 125b to the processor 121. Note that the mouse 125b is an example of a pointing device, and other pointing devices can also be used. Examples of other pointing devices include a touch panel, a tablet, a touch pad, and a track ball.

The optical drive device 126 reads data recorded on the optical disk 126a using laser light or the like. The optical disk 126a is a portable non-transitory recording medium on which data is recorded to be readable by reflection of light. Examples of the optical disk 126a include a digital versatile disc (DVD), a DVD-RAM, a compact disc read only memory (CD-ROM), and a CD-recordable (R)/rewritable (RW).

The device connection interface 127 is a communication interface for connecting peripheral devices to the information processing apparatus 100. For example, the memory device 127a and a memory reader/writer 127b can be connected to the device connection interface 127. The memory device 127a is a non-transitory recording medium, for example, a universal serial bus (USB) memory, having a function of communicating with the device connection interface 127. The memory reader/writer 127b writes data into the memory card 127c or reads data from the memory card 127c. The memory card 127c is a card-type non-transitory recording medium.

The network interface 128 is connected to a network (not illustrated). The network interface 128 may be connected to the user PC 200, a communication device, another information processing apparatus, or the like via the network.

FIG. 5 is a diagram illustrating a functional configuration of the information processing apparatus 100 as an example of the embodiment. In the information processing apparatus 100, the processor 121 may function as the evaluation device or a perturbation vector output device (action suggestion device) by executing the control program (the evaluation program 123a or the action suggestion program).

As illustrated in FIG. 5, the information processing apparatus 100 includes the controller 101 and a memory unit 110. The controller 101 illustratively includes a complementary data generator 102, a perturbation vector determinator 103, a determinator 104, an evaluator 105, a selector 107, and an outputter 108.

The memory unit 110 is an example of a storage area and stores various pieces of data used by the controller 101. The memory unit 110 may be implemented, for example, by a storage area in one or both of the memory 122 and the storage device 123 illustrated in FIG. 4.

As illustrated in FIG. 5, for example, the memory unit 110 can store area information 111 and cost information 112. The area information 111 is data indicating a class (that is, label) set to an area in the coordinate system 30 (FIG. 2) having coordinates for each type of the attribute 11. The class (that is, label) includes, for example, a positive class and a negative class. The area information 111 may be acquired based on a result of machine learning in the determination model 10. In an example, the area information 111 may include coordinate information for defining the first label area 31 and the second label area 32 in FIG. 2.

The cost information 112 includes the cost value 6 calculated in the process of determining the perturbation vector 3 by the perturbation vector determinator 103.

The function of each unit in FIG. 5 is described with reference to FIGS. 6 to 13.

The controller 101 executes various arithmetic processes based on the input data 1. Even when incomplete data having a defect in the attribution value is input, the controller 101 generates the complementary data 2-1 to 2-6 of a plurality of patterns and extracts representative complementary data to perform action suggestion capable of dealing with the incomplete data. In an example, the controller 101 generates a plurality of sets of the complementary data 2-1 to 2-6 and the perturbation vectors 3 in each piece of the complementary data 2-1 to 2-6 and extracts a representative set from the plurality of generated sets. Extraction of a representative set (or complementary data or perturbation vector 3) may be referred to as a “summary”. When the accurate attribution value has a defect and is unknown, the controller 101 evaluates and provides the perturbation vector 3 for changing to a desired prediction result.

When a portion of the attribution values 12 in the plurality of attributes 11 included in the input data 1 has a defect, the complementary data generator 102 generates the complementary data 2 of a plurality of patterns obtained by complementing the defect in a plurality of ways.

FIG. 6 is a diagram illustrating an example of a complementary data generation process in the information processing apparatus 100 as an example of the embodiment. The complementary data generator 102 may sample a value for complementing a defect on an attribute space (for example, the coordinate system 30). Information on an obtainable range of a defective attribution value may be stored in the memory unit 110. The complementary data generator 102 samples a plurality of complementary values within the range. In FIG. 6, values of 0 yen, 50,000 yen, 340,000 yen, 580,000 yen, 820,000 yen, and 1,070,000 yen are sampled as complementary values for the attribution value 12-2 of monthly income. The complementary data generator 102 may inclusively sample a plurality of complementary values within the obtainable range. For sampling, in addition to uniform sampling, an existing complement method (for example, a probability model for estimating a defective value from a value of a non-defective attribute) can also be used. Sampling intervals are equal or not equal.

The complementary data generator 102 generates the complementary data 2-1 to 2-6 of a plurality of patterns by replacing the defective attribution value in the input data 1 with a plurality of complementary values. In one defect, the number of pieces 2-1 to 2-6 of the generated complementary data is not limited to the number of FIG. 6.

The perturbation vector determinator 103 determines each perturbation vector 3 including the attribute to be changed 4 and the change amount 5 for changing the predicted label in the complementary data 2 of each of the plurality of patterns.

FIG. 7 is a diagram illustrating an example of an action optimization process in the information processing apparatus as an example of the embodiment. In the action optimization process, the perturbation vector determinator 103 may determine the perturbation vectors 3-1 to 3-6. The processes performed by the perturbation vector determinator 103 are similar to the processes described with reference to FIG. 2 except that the perturbation vectors 3-1 to 3-6 are determined from the plurality of pieces of complementary data 2-1 to 2-6 instead of the input data 1. Therefore, repeated description is omitted. The perturbation vector determinator 103 generates a collection of complement_action sets 9-1 to 9-6 of the number of sets corresponding to the number of pieces of complementary data 2-1 to 2-6.

FIG. 8 is a diagram illustrating an example of the complement_action set 9 and the cost value 6. When the perturbation vector determinator 103 determines the perturbation vectors 3-1 to 3-6, the cost values 6 corresponding to each of the perturbation vectors 3-1 to 3-6 are calculated.

The selector 107 selects a set based on the evaluation indexes 8 from unselected sets in the complement_action sets 9-1 to 9-6 including the perturbation vectors 3-1 to 3-6 corresponding to each piece of the complementary data 2-1 to 2-6 of a plurality of patterns. Note that, when the values of the evaluation indexes 8 are the same values for the plurality of complement_action sets 9, the selector 107 may select a set according to a predetermined standard. For example, the selector 107 may select a set in which the complementary value is close to the average value of the attribution values. In contrast, when the values of the evaluation indexes 8 are the same values and minimum values, the selector 107 may select all the sets indicating the minimum evaluation indexes 8.

FIG. 9 is a diagram illustrating a complement_action set 9 selection process. The selector 107 selects (extracts) a limited number of representative sets from the generated collection of the complement_action sets 9-1 to 9-6. In FIG. 9, the complement_action sets 9-1 to 9-6 include complementary data #1 to #6 (complementary data 2-1 to 2-6) and perturbation vectors #1 to #6, respectively. The perturbation vectors #1 to #6 correspond to recommended actions #1 to #6. In the example of FIG. 9, the selector 107 selects the complement_action sets 9-1, 9-3, and 9-5. The number of sets to be selected is not limited to three and may be determined by an instruction of the user.

FIG. 10 is a diagram illustrating details of the complement_action set 9 selection process. A predetermined number of complement_action sets 9-1 to 9-6 are generated by the perturbation vector determinator 103. The generated complement_action sets 9-1 to 9-6 are input to the selector 107.

When P sets (where P is a natural number) of complement_action sets 9 are selected, the selector 107 selects the P sets of complement_action sets 9 by repeating a step of selecting one set in each stage P times. In FIG. 10, the selector 107 selects three (P=3) sets of complement_action sets 9 in total by repeating the step of selecting one set in each stage three times.

As illustrated in FIG. 10, in the first stage, the selector 107 selects a set in which the evaluation index 8 can be minimized (in FIG. 10, the complement_action set #1) from all of the complement_action sets #1 to #6 (the complement_action sets 9-1 to 9-6). However, depending on the content of the evaluation index 8, a set in which the evaluation index 8 can be maximized may be selected.

In the second stage, the selector 107 selects a set in which the evaluation index 8 can be minimized (in FIG. 10, the set #5) from the remaining complement_action sets #2 to #6 excluding the already selected complement_action set #1.

In the third stage, the selector 107 selects a set in which the evaluation index 8 can be minimized (in FIG. 10, the set #3) from the remaining complement_action sets #2 to #4 and #6 excluding the already selected complement_action sets #1 and #5.

The outputter 108 outputs information on the action recommended based on the selected complement_action set 9 to outside. The outputter 108 may output the information to the monitor 124a or to another computer such as the user PC 200.

The determinator 104 determines whether the perturbation vector (for example, perturbation vector 3-1) determined for the complementary data (for example, the complementary data 2-1) of one pattern among the plurality of patterns can change the labels for the complementary data 2-2 to 2-6 of other patterns and obtains the determination results 7. The determinator 104 may determine the number of pieces of complementary data of other patterns of which the labels can be changed.

FIG. 11 is a diagram illustrating an example of a stage of selecting a first set from the complement_action sets 9. An example in which the determinator 104 determines a perturbation vector (for example, 3-1) determined in complementary data (for example, the complementary data 2-1) of one pattern among a plurality of patterns is described. The perturbation vector 3-1 includes the attribute to be changed 4-1 and the change amount 5-1 indicating that the number of unrepaid loans is reduced by 2 and the number of repayment delays is reduced by 1. Therefore, since each content of the other perturbation vectors 3-2 to 3-6 is satisfied by the perturbation vector 3-1, it is determined that the perturbation vectors 3-1 can change the label for each piece of the complementary data 2-2 to 2-6 of the other patterns.

In the example illustrated in FIG. 11, the perturbation vector 3-1 determined for the complementary data 2-1 may change the labels from loan rejection to approval for all of other pieces of complementary data 2-2 to 2-6. Therefore, the determinator 104 obtains, as the determination result 7, a result indicating that the number of pieces of complementary data 2-2 to 2-6 of other patterns of which labels are not changed depending on the perturbation vector of one pattern (independent number) is 0. In other words, the determinator 104 obtains, as the determination result 7, a result indicating that the total number of dependent complementary data 2-1 to 2-6 of which the labels can be changed (dependent number) is 6. The determinator 104 performs a similar process on each of the perturbation vectors 3-1 to 3-6.

The evaluator 105 evaluates each of the perturbation vectors 3-1 to 3-6 based on the determination result by the determinator 104. “Evaluation” may be evaluation on effectiveness and usefulness for changing the predicted label by the perturbation vectors 3-1 to 3-6 and may mean calculation of the evaluation index 8 regarding the selection order for selecting the perturbation vectors 3-1 to 3-6. The perturbation vectors 3-1 to 3-6 correspond to recommended actions. Therefore, “evaluation” may be evaluation on effectiveness and usefulness for changing the predicted label by the recommended actions and may mean calculation of the evaluation index 8 regarding the selection order for selecting the recommended actions.

In the present embodiment, the evaluation index 8 includes the cost value 6 of the cost function associated with the determined perturbation vectors 3 and the determination result 7. The evaluation index 8 decreases as the number of other patterns of which the labels can be changed increases and as the cost value 6 decreases.

The selector 107 selects a set based on the evaluation indexes 8 from unselected sets in the complement_action sets 9-1 to 9-6 including the perturbation vectors 3-1 to 3-6 corresponding to each piece of the complementary data 2-1 to 2-6 of a plurality of patterns. The selector 107 may use the evaluation index 8 that decreases as the number of other patterns of which the labels can be changed increases and as the cost value 6 decreases. Here, in one stage, the selector 107 may select the complement_action set 9 having the minimum evaluation index 8 among the unselected sets.

However, unlike the present embodiment, the evaluator 105 may calculate an evaluation index that increases as the number of other patterns of which the labels can be changed increases and as the cost value 6 decreases as the evaluation index. Here, in one stage, the selector 107 may select the complement_action set 9 having the maximum evaluation index among the unselected sets.

In one example, the evaluation index is represented by [Total Cost]+[Total Number of Complements to Which Effective Action to Change Label Is Not Taken].

An example in which m (m is a natural number of 1 or more) perturbation vectors 3s1, 3S2, . . . , and 3sm are selected by the selector 107 is considered. When the cost values associated with the perturbation vectors 3s1, 3S2, . . . , and 3sm are C1, C2, . . . , and Cm, and the number (that is, responsible number) of perturbation vectors 3 responsible for the perturbation vectors 3s1, 3S2, . . . , and 3sm are T1, T2, . . . , and Tm, the total cost is as follows.

Note that the responsible perturbation vector includes the perturbation vector 3 in the complementary data of another pattern of which the label can be changed. However, for other patterns of which the labels of the plurality of perturbation vectors among the selected perturbation vectors 3s1, 3S2, . . . , and 3Sn can be changed, a perturbation vector having a low cost value among the perturbation vectors 3s1, 3S2, . . . , and 3Sn is responsible. The responsible perturbation vector also includes the selected perturbation vector itself.

The total cost when the perturbation vector 3-1 is selected in FIG. 11 is a value obtained by multiplying 0.70 by 6 since the perturbation vector 3-1 having the cost value C1 is responsible for all (six including itself) perturbation vectors 3. In FIG. 11, the number of pieces of complementary data 2-2 to 2-6 of other patterns of which the labels are not changed depending on the perturbation vector of one pattern (independent number) is 0. Thus, the total number of complements for which including no valid action for changing the label is 0. Therefore, the evaluation index when the perturbation vector 3-1 is selected is 4.20.

Similarly, in the total cost when the perturbation vector 3-2 is selected, the perturbation vector 3-2 having the cost value C2 satisfies the attributes to be changed and the change amounts of the perturbation vectors 3-2 to 3-4 and 3-6. Meanwhile, the perturbation vector 3-2 does not satisfy the attributes to be changed and the change amounts of the perturbation vectors 3-1 and 3-5. Therefore, the responsible number when the perturbation vector 3-2 is selected is 4, and the total cost is 2.44 by multiplying 0.61 by 4. The total number of complements including no valid action for changing the label is 2. Therefore, the evaluation index when the perturbation vector 3-2 is selected is 4.44.

Hereinafter, the evaluator 105 similarly calculates the evaluation indexes 8 when the perturbation vectors 3-3, 3-4, 3-5, and 3-6 are adopted, respectively. The evaluator 105 selects the perturbation vector 3-1 (that is, selects the complement_action set 9-1) by which the evaluation index 8 can be minimized when selected.

FIG. 12 is a diagram illustrating an example of a stage of selecting a second set from the complement_action sets 9 subsequent to FIG. 11. The selector 107 selects a set from the unselected sets based on the evaluation index 8. When the selector 107 selects vector 3-5 in addition to the already selected perturbation vector 3-1, the evaluator 105 calculates the evaluation index as follows.

As a determination result, the determinator 104 determines that the label can be changed in the other piece of complementary data 2-6 depending on the perturbation vector 3-5 in the complementary data 2-5. The perturbation vector 3-5 itself and the perturbation vector 3-6 can change the labels dependently by the already selected perturbation vector 3-1. However, since the cost value 6 of the perturbation vector 3-5 is lower than that of the perturbation vector 3-1, the perturbation vector 3-5 is responsible for the perturbation vector 3-5 itself and the perturbation vector 3-6.

The responsible number of the perturbation vector 3-5 is 2, and the responsible number of the perturbation vector 3-1 is reduced to 4. The evaluator 105 calculates a total cost when vector 3-5 is selected in addition to the perturbation vector 3-1 as 0.70×4+0.30×2=3.40. Since the selected perturbation vectors 3-1 and 3-5 can satisfy the conditions of all of the perturbation vectors 3, the total number of complements including no valid action for changing the label is 0. Therefore, the evaluation index when the perturbation vectors 3-1 and 3-5 are selected is 3.40.

Similarly, when the selector 107 selects vector 3-2 in addition to the already selected perturbation vector 3-1, the evaluator 105 calculates the evaluation index as follows.

As a determination result, the determinator 104 determines that the labels can be changed in the other pieces of complementary data 2-3, 2-4, and 2-6 depending on the perturbation vector 3-2 in the complementary data 2-2. The perturbation vector 3-2 itself and the perturbation vectors 3-3, 3-4, and 3-6 can change the labels dependently by the already selected perturbation vector 3-1. However, since the cost value of the perturbation vector 3-2 is lower than that of the perturbation vector 3-1, the perturbation vector 3-2 is responsible for the perturbation vectors 3-2, 3-3, 3-4, and 3-6.

The responsible number of the perturbation vector 3-2 is 4, and the responsible number of the perturbation vector 3-1 is 2. The total number of complements including no valid action for changing the label is 0. As a result, the evaluation index when the perturbation vectors 3-1 and 3-2 are selected is 0.70×2+0.61×4=3.84. Similarly, the evaluation index when the perturbation vector 3-3 is selected in addition to the already selected perturbation vector 3-1 is 3.8. An evaluation index when the perturbation vector 3-4 is selected in addition to the perturbation vector 3-1 is 3.88.

Note that, when the selector 107 selects the perturbation vector 3-6 in addition to the already selected perturbation vector 3-1, the evaluator 105 calculates the evaluation index as follows.

As a determination result, the determinator 104 does not change the labels in all of the other pieces of complementary data 2-1 to 2-5 depending on the perturbation vector 3-6 in the complementary data 2-6. Therefore, the perturbation vector 3-6 is responsible for the perturbation vector 3-6 itself, and the perturbation vector 3-1 is responsible for the other perturbation vectors 3-1 to 3-5. The responsible number of the perturbation vector 3-6 is 1, and the responsible number of the perturbation vector 3-1 is 5. As a result, the evaluation index when the perturbation vectors 3-1 and 3-6 are selected is 0.70×5+0.20×1=3.70.

When performing further selection in addition to the already selected perturbation vector 3-1, the selector 107 selects the perturbation vector 3-5 (that is, selects the complement_action set 9-5) with which the evaluation index 8 can be minimized.

FIG. 13 is a diagram illustrating an example of a stage of selecting a third set from the complement_action sets 9 subsequent to FIG. 12. Also in FIG. 13, the determinator 104 determines whether the perturbation vector 3 determined in the complementary data 2 of one pattern among the plurality of patterns can change the labels of the complementary data 2 of other patterns among the plurality of patterns.

Then, the evaluator 105 evaluates the perturbation vector 3 based on the determination result 7. When performing further selection in addition to the already selected perturbation vectors 3-1 and 3-5, the selector 107 selects the perturbation vector 3-3 (that is, selects the complement_action set 9-3) with which the evaluation index 8 can be minimized.

According to the processes illustrated in FIGS. 11 to 13, the information processing apparatus 100 does not evaluate the plurality of perturbation vectors 3 only by the cost value 6. The information processing apparatus 100 evaluates the perturbation vector 3 considering whether the perturbation vector 3 determined in the complementary data of one pattern among the plurality of patterns can change the labels of the complementary data of other patterns among the plurality of patterns. As a result, it is possible to evaluate the perturbation vector 3 (that is, the attribute to be changed 4 and the change amount 5) corresponding to an action suggested for obtaining a desired result even for incomplete data having a defect. Since the perturbation vector 3 corresponding to the suggested action can be selected based on such an evaluation, a suggested action can be proposed to the user even when the input data 1 has a defect.

The action suggestion process in the information processing apparatus 100 as an example of the embodiment configured as described above is described with reference to a flowchart illustrated in FIG. 14 (steps S1 to S13).

In step S1, the controller 101 of the information processing apparatus 100 receives the input data 1 from the user PC 200 or the like via a network line (step S1).

In step S2, the controller 101 determines whether a portion of the attribution value 12 of the input data 1 has a defect.

As a determination result, when the input data 1 does not have a defect (see NO route in step S2), the process proceeds to step S3.

In step S3, the perturbation vector determinator 103 calculates the perturbation vector 3a for changing the label predicted by the input data 1 (step S3). The perturbation vector 3a includes at least one attribute to be changed 4a selected from the attributes 11 of the input data 1 and the change amount 5a for the attribute 4a.

In step S4, the outputter 108 outputs information on an encouraged action corresponding to the calculated perturbation vector 3a.

Meanwhile, as a determination result, when the input data 1 has a defect (see YES route in step S2), the process proceeds to step S5.

In step S5, the complementary data generator 102 generates the complementary data 2 of a plurality of patterns obtained by complementing the defect in a plurality of ways.

In step S6, the perturbation vector determinator 103 determines each perturbation vector 3 including the attribute to be changed 4 and the change amount 5 for changing the predicted label in the complementary data 2 of each of the plurality of patterns. In other words, the perturbation vector determinator 103 generates a collection of the complement_action sets 9 that are sets including the complementary data 2 and the perturbation vector 3.

In step S7, the selector 107 acquires one set from the complement_action sets 9 including unselected complementary data 2 and the perturbation vector 3 as a selection candidate.

In step S8, the determinator 104 determines the number of pieces of complementary data of which labels can be changed by a perturbation vector (for example, the perturbation vector 3-1) of complementary data (for example, the complementary data 2-1) of a set acquired as a selection candidate for the complementary data 2-2 to 2-6 of other patterns.

In step S9, the evaluator 105 calculates the evaluation index 8 in the process of evaluating the perturbation vectors 3-1 to 3-6. The evaluation index 8 includes the cost value 6 of the cost function associated with the perturbation vector 3 of the acquired set and the determination result 7 of the number of changeable pieces. In an example, the evaluation index 8 is an index that decreases as the number of other patterns of which the label can be changed increases and as the cost value 6 decreases.

In step S10, the selector 107 checks whether a set unacquired as a selection candidate exists.

When a set unacquired as a selection candidate exists (see YES route of step S10), the process proceeds to step S7.

Meanwhile, when a set unacquired as a selection candidate does not exist (see NO route of step S10), the process proceeds to step S11. In other words, the fact that a set unacquired as the selection candidate does not exist means that all the unselected sets are acquired as the selection candidates.

In step S11, the selector 107 selects one complement_action set 9 that is a set of the complementary data 2 and the perturbation vector 3 (estimated action) that can improve the evaluation index 8 most among the selection candidates.

In step S12, the selector 107 determines whether a predetermined number of complement_action sets 9 is already selected.

When the selector 107 did not yet select the predetermined number of complement_action sets 9 (see NO route in step S12), the process proceeds to step S7.

Meanwhile, when the selector 107 already selected the predetermined number of complement_action sets 9 (see YES route in step S12), the process proceeds to step S13.

In step S13, the outputter 108 outputs the predetermined number of selected complement_action sets 9, that is, sets of the complementary data 2 and the perturbation vector 3. The outputter 108 outputs information on a suggested action corresponding to the selected perturbation vector 3 together with a complement method (a complementary value or the like).

FIG. 15 is a diagram illustrating an example of suggesting an action of changing prediction from loan rejection to approval in credit examination when the input data has a defect. In FIG. 15, the technology of the embodiment is applied to action suggestion of credit examination when the value of monthly income has a defect.

The original monthly income was 3,000 dollars, but since the user did not input the monthly income for privacy or the like, a defect occurred. The information processing apparatus 100 selected and outputted three complement_action sets 9-1b, 9-2b, and 9-3b in total indicated by reference signs (a), (b), and (c). As illustrated in FIGS. 11 to 13, the three sets were not selected based only on the cost value 6 associated with the perturbation vector 3 but were selected considering label change possibilities in complementary data of other patterns.

Reference sign (a) indicates a case of complementary data 2-1b in which the information processing apparatus 100 complements the amount of monthly income with a complementary value of 0 dollars (a range of 0 dollars or more and 0 dollars or less) in the input data 1 having a defect in the amount of monthly income. Here, the selector 107 selected a perturbation vector 3-1b of “number of repayment delays for 30 to 59 days is reduced by 1, and number of unrepaid loans is reduced by 1”. In other words, the selector 107 selected the complement_action set 9-1b including the complementary data 2-1b and the perturbation vector 3-1b.

Reference sign (b) indicates a case of complementary data 2-2b in which the information processing apparatus 100 complements the amount of monthly income with a complementary value of 8,227 dollars (a range of 8,227 dollars or more and 10,750 dollars or less) in the input data 1 having a defect in the amount of monthly income. Here, the selector 107 selected a perturbation vector 3-2b of “number of unrepaid loans is reduced by 4”. In other words, the selector 107 selected the complement_action set 9-2b including the complementary data 2-2b and the perturbation vector 3-2b.

Reference sign (c) indicates a case of complementary data 2-3b in which the information processing apparatus 100 complements the amount of monthly income with a complementary value of 3,471 dollars (a range of 553 dollars or more and 5,831 dollars or less) in the input data 1 having a defect in the amount of monthly income. Here, the selector 107 selected a perturbation vector 3-3b of “number of repayment delays for 30 to 59 days is reduced by 1”. In other words, the selector 107 selected the complement_action set 9-3b including the complementary data 2-3b and the perturbation vector 3-3b.

The information processing apparatus 100 presents three types of action suggestion on the screen of the user PC 200 based on the selected complement_action sets 9-1b, 9-2b, and 9-3b. In (a) first set (the complement method of 0 dollars) and (c) third set (the complement method of 3,471 dollars (553 dollars or more and 5,831 dollars or less)), the actual attribution value of 3,000 dollars satisfies the range of the complementary value. Therefore, the user can perform the action encouraged in (a) or (c) to change the label of loan rejection to the label of loan approval.

Meanwhile, in (b) second set (the complement method of 8,227 dollars (8,227 dollars or more and 10,750 dollars or less)), the actual attribution value of 3,000 dollars does not satisfy the range of the complementary value. Therefore, even if the user performs the action encouraged in (b), the label of loan rejection is not changed to the label of loan approval. However, as illustrated in FIG. 15, by presenting not only the action (in other words, the perturbation vector 3) but also the complement method (the complementary value or the range of the complementary value), the user themselves could select an appropriate action.

Also in the embodiment illustrated in FIG. 15, it was possible to suggest an action capable of changing a label on input data having a defect. The information processing apparatus 100 could suggest about 3 to 4 appropriate complement_action sets 9 within 1 minute by application of action suggestion in which prediction is changed from loan rejection to approval in credit examination. In the benchmark experiment, for the input data 1 having a defect, a rate at which action suggestion in which prediction is changed from loan rejection to approval in credit examination can be provided to the user was improved from 37% to 96%.

In FIGS. 1 to 15, the information processing apparatus 100 according to the embodiment is mainly described as an example of a case of action suggestion in which prediction is changed from loan rejection to approval. However, the information processing apparatus 100 according to the present embodiment is not limited thereto.

FIG. 16 is a diagram illustrating an example of the embodiment in action suggestion for improving a health condition. In FIG. 16, input data la has attributes including items such as age, blood sugar level, and body fat ratio. In FIG. 16, “blood sugar level” as an attribution value has a defect. Also here, the information processing apparatus 100 may generate complementary data of a plurality of patterns by substituting a plurality of complementary values for a defective value. The information processing apparatus 100 generates a plurality of sets of complement_action sets 9-1a to 9-Na (#1 to #N) by determining a perturbation vector for each of the complementary data of the plurality of patterns. The information processing apparatus 100 selects complement_action sets #j to #k considering the determination result 7 on whether the perturbation vector 3 determined in the complementary data of one pattern among the plurality of patterns can change the labels of the complementary data of other patterns among the plurality of patterns. The information processing apparatus 100 may output the selected complement_action sets #j to #k. The information processing apparatus 100 may present suggested actions 14-j to 14-k corresponding to the complement_action sets #j to #k to the user terminal 200 or the like.

Note that, although a case where the information processing apparatus 100 includes the selector 107 and the outputter 108 is described, there is a case where the information processing apparatus 100 does not include the selector 107 and the outputter 108. Also here, the embodiment can be used as an evaluation technique capable of evaluating a change attribute and a change amount corresponding to an action suggested for obtaining a desired result for data having a defect. The evaluated change attribute and change amount can also be used by other devices for various analyses and the like.

According to the information processing apparatus 100 as an example of the present embodiment, when a portion of the attribution values 12 of the plurality of attributes 11 included in the input data 1 has a defect, the complementary data generator 102 generates the complementary data 2 of a plurality of patterns obtained by complementing the defect in a plurality of ways. As a result, the perturbation vector determinator 103 determines the perturbation vectors 3 (perturbation information) including the attributes to be changed 4 and the change amounts 5 among the plurality of attributes of the complementary data for changing the labels predicted by the complementary data 2 of each of the plurality of patterns. The evaluator 105 evaluates the perturbation vector 3 based on the determination result 7 on whether the perturbation vector 3 determined in the complementary data of one pattern among the plurality of patterns can change the labels of the complementary data 2 of other patterns among the plurality of patterns.

As a result, it is possible to evaluate a change attribute and a change amount corresponding to an action suggested for obtaining a desired result for data having a defect. The evaluation system can be improved as compared with when one piece of complementary data is generated by replacing a defective value with a simple average value or the like.

Since the perturbation vector 3 can be evaluated considering the determination result 7 on whether the labels can be changed for other patterns among the plurality of patterns, it is possible to increase tolerance for a range in which an actual defective value may be obtainable when it is difficult to predict a defective value. Accordingly, a possibility of selecting a change attribute and a change amount with which the predicted label can be changed increases.

Even when an attribution value that a user did not want to disclose is not disclosed, the information processing apparatus 100 can evaluate the perturbation vector 3 of which the label can be changed.

The evaluator 105 evaluates the perturbation vector 3 using the evaluation index 8. The evaluation index 8 includes the cost value 6 of the cost function associated with the perturbation vector 3 and the determination result 7. The evaluation index 8 is changed to either an increase or a decrease as the number of other patterns of which the labels can be changed increases and as the cost value 6 decreases.

As a result, it is possible to implement evaluation on the perturbation vector 3 according to usage considering a balance between a viewpoint of enhancing tolerance for a range in which an actual defective value may be obtainable and a viewpoint of lowering the cost value 6.

The selector 107 repeats selection of sets among unselected sets based on the evaluation index 8 from the complement_action sets 9 of the perturbation vectors 3 corresponding to the complementary data 2 of the plurality of patterns, respectively, until a predetermined number of sets are selected. Therefore, a plurality of complement_action sets 9 can be selected. The number of types of actions selected based on evaluation can be increased. Therefore, more options of actions to be presented to the user who receives presentation can be provided. It is possible to provide not only an action of each option but also a complement method such as a complementary value or a range of the complementary value.

The outputter 108 outputs information on the action recommended based on the selected set to outside. Therefore, it is possible to present a recommended action even for incomplete data having a defect in the input data 1. The user can obtain an action suggested for changing the label without disclosing an attribution value that a user does not want to disclose for privacy or the like.

As effects in an assumed business scene, the method of the present embodiment can be applied to all fields in which a determination model is used related to a user's decision-making task such as health, management, transaction, and loan approval. In all fields related to the user's decision-making task, it is possible to provide an action guideline for leading the user to a desired determination while privacy of the user or the like is considered. As a result, it is possible to help the user make a decision.

The disclosed technology is not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present embodiment.

For example, each configuration and each process of the present embodiment can be selected as wanted or may be appropriately combined.

In one aspect, the present embodiment can evaluate a change attribute and a change amount that correspond to an action to be suggested for obtaining a desired result when a portion of attribution values of input data has a defect.

Throughout the descriptions, the indefinite article “a” or “an”, or adjective “one” does not exclude a plurality.