The present disclosure relates to a non-transitory computer-readable recording medium storing a rule update program or the like.
With respect to an “answer” derived by artificial intelligence (AI), “explainable AI” which can explain why the “answer” is derived has attracted attention. For example, as the explainable AI, there is AI that comprehensively extracts combinations of items from data to be trained and presents a hypothesis (rule) to be the basis for determination that is easy for humans to understand.
Furthermore, there is related art that prepares an interface that can set a parameter of AI, resets the parameter using the interface in a case where a rule set output by the AI is different from a user's intended rule set, and causes the AI to output the rule set again.
Examples of the related art include [Patent Document 1] Japanese Laid-open Patent Publication No. 11-15842.
According to an aspect of the embodiments, there is provided a non-transitory computer-readable recording medium storing a rule update program for causing a computer to execute processing including: receiving first appropriateness determination for at least some determination rules among a plurality of determination rules derived through machine learning by using training data; performing second appropriateness determination for a determination rule other than the some determination rules, based on a result of the first appropriateness determination and similarity between the some determination rules and the determination rule other than the some determination rules; and updating the plurality of determination rules, based on the result of the first appropriateness determination and a result of the second appropriateness determination.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention.
For example, the related art that resets a parameter of AI using an interface interactively corrects a constraint condition for an entire rule set output from the AI and updates the output rule set in a form in which user's intention is more reflected.
However, with the related art described above, it is difficult for a user to confirm each rule by comparing the rule with knowledge and experience of the user, correct the rule as necessary, and update a rule set so that the corrected rule is reflected. This is because it is difficult for the user to recognize and understand all of a large number of rules output by the AI and to correct the rules by comparing the rules with the experience and the knowledge of the user.
In one aspect, an object of the present disclosure is to provide a rule update program, a rule update method, and a rule update device that can optimize a rule set without imposing a burden on a user.
Hereinafter, an embodiment of a rule update program, a rule update method, and a rule update device disclosed in the present application will be described in detail with reference to the drawings. Note that the embodiment does not limit the present invention.
In the example illustrated in
The rule update device makes a display device display information regarding the rule group 20 and provides an interface used to add labels to be described later to the rules 1a to 1e to a user 10. The user 10 refers to the rules 1a to 1e of the rule group 20 and adds the label on the interface, based on one's experience.
For example, the user 10 adds a “first label” to a rule that is determined to be appropriate. The user 10 adds a “second label” to a rule that is determined to be inappropriate. The user 10 adds an “unclassified label” to a rule that cannot be determined whether or not the rule is appropriate. In the present embodiment, appropriately, the first label is illustrated as a “circle”, the second label is illustrated as a “cross”, and the unclassified label is illustrated as a “question mark”. In initial setting, the unclassified label may be set to each rule of the rule group 20, and the user 10 may add the first label or the second label.
The rule update device generates a labeled rule 143, based on a result of adding the label indicating whether or not the rule is appropriate from the user 10. In the example illustrated in
A determination unit 153 of the rule update device determines whether or not the rules 1c to 1e are appropriate based on similarity between the rules 1a and 1b to which the first label or the second label is added and the remaining rules 1c to 1e, among the rules 1a to 1e included in the labeled rule 143.
For example, in a case where appropriateness of the rule 1c can be reliably led from the similarity between the rules 1a and 1b and the rule 1c, the determination unit 153 adds the first label to the rule 1c. In a case where inappropriateness of the rule 1d can be reliably led from the similarity between the rules 1a and 1b and the rule 1d, the determination unit 153 adds the second label to the rule 1d.
In a case where whether or not the rule 1e is appropriate cannot be reliably led from the similarity between the rules 1a and 1b and the rule 1e, the determination unit 153 keeps the label of the rule 1e as the unclassified label.
A rule update device notifies the user 10 of a classification result 30 obtained by classifying the rules 1a to 1e for each type of the label by displaying the classification result 30 on the display device. In the example illustrated in
The user 10 refers to the classification result 30 and adds a label indicating whether or not the rule is appropriate only to a rule of which appropriateness can be newly determined, on the interface. For example, the user 10 refers to the classification result 30, and in a case where it can be determined whether or not the rule, to which the unclassified label is added, is appropriate, the user 10 adds the first label or the second label to the rule to which the unclassified label is added.
In a case where the label is added from the user 10 again, the determination unit 153 determines whether or not remaining rules are appropriate, based on similarity between the rule to which the first label or the second label is added and the remaining rules, and displays a classification result.
The rule update device repeatedly executes processing for receiving the addition of the label by the user 10 and processing for determining whether or not the remaining rules are appropriate, based on the similarity between the rule to which the first label or the second label is added and the remaining rules and displaying the classification result.
Furthermore, the rule update device feeds back to the rule group 20, based on a result of the label addition obtained by repeatedly executing the processing. For example, the rule update device deletes the rule to which the second label is added from the rule group 20. As described above, the rule to which the second label is added is an inappropriate rule.
As described above, the rule update device receives the addition of the labels to some rules from the user 10, among the rules in the rule group 20 and determines labels to be added to the remaining rules, based on the similarity between the rules to which the label is added and the remaining rules. The rule update device executes processing for updating the rule group 20, based on the label added to the rule. In this way, since the rule group is updated by adding the label to the rule of which the appropriateness can be determined by the user 10, the rule set can be optimized without imposing a burden on the user 10.
Next, an example of a configuration of the rule update device according to the present embodiment will be described.
The communication unit 110 is wiredly or wirelessly coupled to an external device or the like, and exchanges information with the external device or the like. For example, the communication unit 110 is implemented by a network interface card (NIC) or the like. The control unit 150 may acquire the data 141 to be described later, via the communication unit 110.
The input unit 120 is an input device that inputs various types of information into the rule update device 100. The input unit 120 corresponds to a keyboard, a mouse, a touch panel, or the like. For example, the user 10 operates the input unit 120 and adds a label to a rule.
The display unit 130 is a display device that displays information output from the control unit 150. The display unit 130 corresponds to a liquid crystal display, an organic electro luminescence (EL) display, a touch panel, or the like. For example, the display unit 130 displays information regarding the rule group 20, the classification result 30, or the like.
The storage unit 140 includes the data 141, a rule set 142, and the labeled rule 143. The storage unit 140 is implemented by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk.
The data 141 includes data of a plurality of hypotheses. The hypothesis is a combination of objective variables, and a label indicating whether or not the hypothesis satisfies a specific condition is added. For example, a hypothesis obtained by combining a plurality of hypotheses, based on the plurality of hypotheses included in the data 141 and a rule group (rule set 142) to which a label indicating whether or not the hypothesis satisfies a predetermined condition is added are generated by the rule generation unit 151.
The rule set 142 holds data of the rule group generated by the rule generation unit 151, based on the data 141.
The rule indicates whether or not a combination of explanatory variables satisfies a specific condition. The reference “A” indicates an AND condition. The reference “¬” denies an immediately subsequent explanatory variable. The number “1” indicates that the specific condition is satisfied, and the number “0” indicates that the specific condition is not satisfied. Although not illustrated in
In a rule of identification information “R1001”, “A”, “B”, and “denial of C” indicates “0 (does not satisfy specific condition)”. As an example, in a case of “A (carnivorous), “B (with backbone)”, and “¬ C (with no hair)”, this indicates “(0) not a mammal”.
In a rule of identification information “R1003”, “A”, “B”, and “D” indicate “1 (satisfy specific condition)”. As an example, in a case of “A (carnivorous)”, “B (with backbone)”, and “D (with teeth)”, this indicates “(1) a mammal”.
The importance indicates how important the rule is to derive “0” or “1”. For example, both of the rule of the identification information “R1001” and the rule of the identification information “R1002” are rules that derive “0”. Since the importance of the rule of the identification information “R1001” is higher than the importance of the rule of the identification information “R1002”, this means that the rule of the identification information “R1001” is more important than the rule of the identification information “R1002” as the rule for deriving “0”.
The labeled rule 143 is information indicating a label added to a rule.
The label is a label that indicates whether a corresponding rule is appropriate or inappropriate, or of which appropriateness is unknown. The “first label” is set to an appropriate rule. The “second label” is set to an inappropriate rule. The “unclassified label” is set to a rule of which appropriateness is unknown.
The description returns to
The rule generation unit 151 generates the rule set 142, by inputting the data 141 into a training model that has performed machine learning, according to training data. For example, for the processing for generating the rule set 142 by the rule generation unit 151, a technique described in Patent Document (Japanese Laid-open Patent Publication No. 2020-46888) or the like or another technique may be used. The rule generation unit 151 stores the generated rule set 142 in the storage unit 140. The rule set 142 corresponds to the rule group 20 described with reference to
The display control unit 152 generates screen information (interface) used to add a label to a rule based on the rule set 142 and causes the display unit 130 to display the generated screen information. The user 10 who has referred to the screen information operates the input unit 120 and adds a label to each rule. The display control unit 152 specifies a relationship between the rule and the label based on the input from the user 10 and sets the specified result to the labeled rule 143.
In a case illustrated in
In a case of receiving the press of the button 42, the display control unit 152 generates screen information corresponding to
In screen information 45 in
In a case where the button 46 is pressed, the display control unit 152 specifies the checked region for each rule and specifies a relationship between the rule and the label. In the example illustrated in
In the example illustrated in
The description returns to
A case will be described where the determination unit 153 determines a label of the identification information “R1003”. Since the first label (appropriate) is added to a rule “C∧D⇒0” of identification information “R1004”, the determination unit 153 reliably assumes that “C∧D⇒0”. Here, by using the rule “C∧D⇒0”, the determination unit 153 determines that a rule “A∧C∧D⇒1” of the identification information “R1003” is reliably “inappropriate”. The determination unit 153 sets the label of the identification information “R1003” to the “second label”.
A case will be described where the determination unit 153 determines a label of identification information “R1005”. A rule “A∧¬D∧E⇒1” of the identification information “R1005” has low similarity with the rule to which the first label or the second label is added by the user 10. Therefore, the determination unit 153 cannot reliably determine whether the “first label” is added or the “second label” is added. Therefore, the determination unit 153 keeps the label of the identification information “R1005” as the “unclassified label”.
In a case where the determination described above has been completed, the determination unit 153 outputs information indicating that the determination has been completed to the display control unit 152.
In a case of receiving the information indicating that the determination has been completed from the determination unit 153, the display control unit 152 generates information regarding a classification result and displays the information (screen information) regarding the classification result on the display unit 130. The user 10 refers to the information regarding the classification result, operates the input unit 120 about a rule of which appropriateness can be determined, and adds the first label or the second label.
The region 51b is a region where a rule to which the second label is added is displayed. For example, in a case where the second label is added (updated) to the rule “A∧C∧D⇒1” by the determination unit 153, the display control unit 152 highlights “A∧C∧D⇒1”.
The region 51c is a region where a rule to which the unclassified label is added is displayed. In a case where the user 10 can determine the label of the rule in the region 51c based on a relationship between the rules in the regions 51a and 51b and the labels, the user 10 operates the input unit 120 and adds the first label or the second label to the rule in the region 51c. The display control unit 152 receives the input from the user 10 and updates the labeled rule 143.
In a case of continuing the processing for adding a label to a rule, the user 10 presses a button 53a. In a case of ending the processing for adding a label to a rule, the user 10 presses a button 53b.
The display control unit 152 and the determination unit 153 repeatedly execute the processing described above each time when the user 10 presses the button 53a. In a case where the button 53b is pressed by the user 10, the display control unit 152 and the determination unit 153 end the processing for setting a label to the labeled rule 143. Note that, in a case of generating screen information again, the display control unit 152 may select only a rule to which an unclassified label is added, based on the labeled rule 143, display the selected rule on the display unit 130, and receive designation of the label by the user 10.
The user 10 refers to the screen information 55 of the classification result illustrated in
In a case of continuing the processing for adding a label to a rule, the user 10 presses a button 57a. In a case of ending the processing for adding a label to a rule, the user 10 presses a button 57b.
The display control unit 152 and the determination unit 153 repeatedly execute the processing described above each time when the user 10 presses the button 57a. In a case where the button 57b is pressed by the user 10, the display control unit 152 and the determination unit 153 end the processing for setting a label to the labeled rule 143. Note that, in a case of generating screen information again, the display control unit 152 may select only a rule to which an unclassified label is added, based on the labeled rule 143, display the selected rule on the display unit 130, and receive designation of the label by the user 10.
By the way, the display control unit 152 and the determination unit 153 calculate a ratio of the rules to which the “unclassified label” is added, among all the rules included in the labeled rule 143, and in a case where the calculated ratio is equal to or less than a threshold σ, the display control unit 152 and the determination unit 153 may end the processing for setting a label to the labeled rule 143. In a case of ending the processing for setting a label, the determination unit 153 outputs an update request to the update unit 154.
In a case of acquiring the update request from the determination unit 153, the update unit 154 updates the rule set 142, based on the labeled rule 143. For example, the update unit 154 specifies identification information of a rule to which the second label is added, in the labeled rule 143. The update unit 154 updates the rule set 142 by deleting the rule corresponding to the specified identification information from the rule set 142.
Next, an example of a processing procedure of the rule update device 100 according to the present embodiment will be described.
As illustrated in
The display control unit 152 generates screen information based on the selected rule and displays the screen information on the display unit 130 (step S102). The display control unit 152 receives the selection of the label from the user 10 who operates the input unit 120 and registers the label in the labeled rule 143 (step S103).
The determination unit 153 of the rule update device 100 determines the rule with the unclassified label as any one of the first label, the second label, or the unclassified label, based on the labeled rule 143 (step S104). In a case where the end button is not pressed by the user 10 (step S105, No), the rule update device 100 proceeds to step S101.
On the other hand, in a case where the end button is pressed by the user 10 (step S105, Yes), the rule update device 100 proceeds to step S106. The update unit 154 of the rule update device 100 updates the rule set 142 based on the labeled rule 143.
As illustrated in
The display control unit 152 generates screen information based on the selected rule and displays the screen information on the display unit 130 (step S202). The display control unit 152 receives the selection of the label from the user 10 who operates the input unit 120 and registers the label in the labeled rule 143 (step S203).
The determination unit 153 of the rule update device 100 determines the rule with the unclassified label as any one of the first label, the second label, or the unclassified label, based on the labeled rule 143 (step S204). In a case where the ratio of the rules to which the unclassified label is added among all the rules is not equal to or less than the threshold σ (step S205, No), the rule update device 100 proceeds to step S201.
On the other hand, in a case where the ratio of the rules to which the unclassified label is added among all the rules is equal to or less than the threshold σ (step S205, Yes), the rule update device 100 proceeds to step S206. The update unit 154 of the rule update device 100 updates the rule set 142 based on the labeled rule 143.
Next, effects of the rule update device 100 according to the present embodiment will be described. The rule update device 100 receives the addition of the label to some rules from the user 10, among the rules in the rule group 20 and determines labels to be added to the remaining rules, based on the similarity between the rule to which the label is added and the remaining rules. The rule update device 100 executes processing for updating the rule group 20, based on the label added to the rule. In this way, since the rule group is updated by adding the label to the rule of which the appropriateness can be determined by the user 10, the rule set can be optimized without imposing a burden on the user 10.
In a case where an importance is set to a rule, the rule update device 100 displays the rules in descending order of the importance. As a result, the user 10 more easily determines appropriateness of the rule with a larger importance.
In a case where the rule to which the first label or the second label is added is similar to the rule included in the rules to which the unclassified label is added, the rule update device 100 specifies a rule that derives a probable result. Then, the rule update device 100 determines whether or not the rule with the unclassified label is appropriate, based on the specified rule. As a result, the rule with the unclassified label can be automatically classified into the first label or the second label.
The rule update device 100 deletes the rule to which the second label is added from the rule set, based on the labeled rule 143. As a result, an appropriate rule can be left in the rule set 142.
Furthermore, with the rule update device 100, it is possible for the user to confirm each rule of a huge rule set to be generated and correct a rule that can be understood as necessary, with the rule generation unit 151. Here, even if the user cannot understand all the rules, the user can automatically confirm other rules so as to be appropriate with respect to the confirmation result of the user, by confirming the rules as possible. By repeating this operation several times, it is possible to confirm most of the rule set and can update the rule set as necessary.
Next, an example of a hardware configuration of a computer that implements functions similar to those of the rule update device 100 indicated in the embodiment described above will be described.
As illustrated in
The hard disk device 207 includes a rule generation program 207a, a display control program 207b, a determination program 207c, and an update program 207d. Furthermore, the CPU 201 reads each of the programs 207a to 207d, and loads them into the RAM 206.
The rule generation program 207a functions as a rule generation process 206a. The display control program 207b functions as a display control process 206b. The determination program 207c functions as a determination process 206c. The update program 207d functions as an update process 206d.
Processing of the rule generation process 206a corresponds to the processing of the rule generation unit 151. Processing of the display control process 206b corresponds to the processing of the display control unit 152. Processing of the determination process 206c corresponds to the processing of the determination unit 153. Processing of the update process 206d corresponds to the processing of the update unit 154.
Note that each of the programs 207a to 207d does not necessarily have to be stored in the hard disk device 207 beforehand. For example, each of the programs is stored in a “portable physical medium” to be inserted into the computer 200, such as a flexible disk (FD), a CD-ROM, a DVD, a magneto-optical disk, or an IC card. Then, the computer 200 may read and execute each of the programs 207a to 207d.
All examples and conditional language provided herein are intended for the pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although one or more embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
This application is a continuation application of International Application PCT/JP2020/048158 filed on Dec. 23, 2020 and designated the U.S., the entire contents of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2020/048158 | Dec 2020 | US |
Child | 18330603 | US |