WO2019189249A1 - 学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体 - Google Patents

学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
WO2019189249A1
WO2019189249A1 PCT/JP2019/012984 JP2019012984W WO2019189249A1 WO 2019189249 A1 WO2019189249 A1 WO 2019189249A1 JP 2019012984 W JP2019012984 W JP 2019012984W WO 2019189249 A1 WO2019189249 A1 WO 2019189249A1
Authority
WO
WIPO (PCT)
Prior art keywords
division
condition
learning
division condition
learning data
Prior art date
Application number
PCT/JP2019/012984
Other languages
English (en)
French (fr)
Inventor
学 中野谷
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2020510958A priority Critical patent/JP6888737B2/ja
Priority to US16/982,781 priority patent/US20210012214A1/en
Publication of WO2019189249A1 publication Critical patent/WO2019189249A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/2163Partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Definitions

  • the present invention relates to a learning apparatus and a learning method for learning by a decision tree, and further relates to a computer-readable recording medium in which a program for realizing these is recorded.
  • system configuration management and configuration change are roughly divided into three phases. System configuration management and configuration change are performed in each of the three phases, and are realized by repeating the following operations (1), (2), and (3).
  • Patent Document 1 discloses a technique for generating an operation procedure used for changing a system by defining an operation state of elements constituting the system and constraints between the operation states. .
  • Patent Document 2 discloses a technique for expressing a component state and a constraint relationship by a state transition diagram.
  • Patent Document 3 before performing decision tree learning, by verifying an interaction between parameters, a parameter that is likely to have a dependency and a parameter that is not likely to be identified are identified, and a parameter that is a candidate for a division condition A method for narrowing down the set is disclosed.
  • Non-Patent Document 1 and Patent Document 2 disclose software tools for automating operation procedures. According to the software tool, the state or operation procedure after the system change is input as definition information, and the system is automatically changed and set.
  • Non-Patent Documents 3 and 4 include server device resources (CPU (Central Processing Unit), memory allocation, etc.), combinations of applications, trials, evaluations, and learning in various patterns. Alternatively, a technique using reinforcement learning for deriving a change parameter is disclosed.
  • server device resources CPU (Central Processing Unit), memory allocation, etc.
  • combinations of applications trials, evaluations, and learning in various patterns.
  • reinforcement learning for deriving a change parameter is disclosed.
  • JP2015-215585A Japanese Patent Laying-Open No. 2015-215887 Japanese Patent Laying-Open No. 2005-063353
  • Non-Patent Document 1 and Non-Patent Document 2 that automate the operation procedure can automate only the execution of the operation procedure, and the creation of the operation procedure is out of scope.
  • Patent Document 1 or Patent Document 2 that automates the generation of operation procedures to Non-Patent Document 1 or Non-Patent Document 2. That is, using the technology disclosed in Patent Document 1 or Patent Document 2, information indicating the operation procedure for changing the system configuration is generated in accordance with the input format of the software tool that automates the execution of the operation procedure. Then, by applying the generated operation procedure to the technology disclosed in Non-Patent Document 1 or Non-Patent Document 2, the process from creation to execution of the operation procedure is automated.
  • Patent Document 1 and Patent Document 2 it is necessary to manually perform (1) work for grasping the system configuration in advance and (2) work for defining change requirements. There is a problem that it takes a lot of work man-hours.
  • Non-Patent Document 3 it is conceivable to use the technique disclosed in Non-Patent Document 3 or Non-Patent Document 4 for the above-described problem.
  • server device resources for example, CPU, memory allocation, etc.
  • Non-Patent Documents 3 and 4 are different from the approach that directly handles dependencies between components in the system as disclosed in Patent Documents 1 and 2.
  • the target of evaluation and learning is the preference of specific control contents in a certain system state.
  • the control content is defined by observable values such as the response speed of the system.
  • reinforcement learning is relatively easy to apply because learning can be performed simply by inputting a means for observing the state of the system and an executable control set.
  • reinforcement learning it is generally not possible to read the relationship regarding the behavior between components such as dependency from the learning result. For this reason, it is difficult to reuse the learning result for another control task.
  • the function approximation in reinforcement learning is to obtain an approximation function that can predict information indicating the preference for specific control obtained as a result of learning from more abstract conditions. That is, learning an approximate function that can be predicted from an abstract condition.
  • the above-mentioned coping method was originally unable to manage all control patterns in a computer storage area when handling continuous amounts (infinite choices) of control.
  • This method has been developed to map an infinite set to a finite set and handle control patterns in the finite set.
  • the above-described coping method can increase the versatility of the learning result by appropriately abstracting not only a storage area problem but also a vast and miscellaneous option.
  • Approximate function used in function approximation must be selected according to the nature of the approximation target and the purpose of the approximation.
  • Typical functions include linear polynomials, neural networks, or decision trees.
  • function approximation based on decision trees is considered to be one of the promising approximation methods in the problem of predicting the design and control quality based on the system design or control contents.
  • the reason is that there is a dependency relationship between the parameters. That is, the optimum value of a certain parameter becomes a different value depending on the values of other parameters.
  • this is because the generated function is excellent in interpretability. That is, it is because humans can evaluate whether the function can express the control characteristics better.
  • C4.5 Classification And Regression Trees
  • CHAID Chi-squared Automatic Interaction Detection
  • C4.5 a division condition is adopted in which data divided under the division condition reduces entropy more than data before division.
  • the division condition generated by learning the decision tree is represented by a logical expression defined by a single parameter related to design and control. This will be specifically described.
  • the division condition related to the node (node) of the learned decision tree is, for example, “ A communication bandwidth ⁇ 10 Mbps ”,“ number of CPUs> 1 ”, and the like are conceivable.
  • the division condition regarding the parameter that depends on the division destination of the division condition is adopted.
  • “communication band ⁇ 10 Mbps” the number of CPU cores becomes a bottleneck.
  • a division condition of “communication bandwidth ⁇ 10 Mbps” is set at the vertex node of the decision tree, and a division condition regarding the number of CPU cores is defined at the division destination node.
  • learning of the decision tree evaluates how well the learning data can be classified for each single parameter and determines the partitioning condition. It may not be possible to set. For example, in addition to the parameters such as the communication bandwidth and the number of CPU cores described above, when a single parameter such as a memory size is a control target, the division condition cannot be set appropriately. Specifically, if the memory size is the parameter that apparently has the greatest influence on the throughput, the memory size is adopted as the division condition.
  • the divided learning data is divided according to the division condition depending on the memory size, and the division condition according to the dependency of the communication bandwidth and the number of CPU cores as described above is derived in each divided learning data. There is no. Such a problem is remarkable when the substance of the dependency relationship between parameters is exclusive OR.
  • FIG. 1 is a diagram showing an example of learning data.
  • “A”, “B”, “C”, and “D” illustrated in FIG. 1 indicate parameters (true: 1, false: binary value of 0).
  • “Y” indicates a value (predicted value) to be approximated.
  • the predicted value Y is a value obtained by adding a uniform random number in the interval [0, 1] to a real value obtained by multiplying the exclusive OR (true: 1, false: 0) of the parameters A and B by 10 times. is there.
  • the parameters C and D are parameters that do not actually affect the prediction at all.
  • “Id” “1” to “8” are identification numbers assigned to the rows having the parameters A to D and the predicted value Y, respectively.
  • the decision tree generated using the learning data shown in FIG. 1 is ideally a decision tree as shown in FIG. 2 that does not include the parameters C and D in the dividing condition.
  • FIG. 2 is a diagram illustrating an example of an ideal decision tree.
  • a decision tree generated using learning of an existing decision tree is a decision tree as shown in FIG.
  • FIG. 3 is a diagram illustrating an example of a decision tree generated by learning an existing decision tree.
  • the decision tree shown in FIG. 3 includes unnecessary partitioning conditions as compared with the decision tree shown in FIG. A tree is generated. In other words, a complicated decision tree is generated in which the essential division condition is not applied to the whole.
  • Patent Document 3 Before performing decision tree learning, by verifying an interaction between parameters, a parameter set that is likely to have a dependency and a parameter that is not likely to be identified are identified, and a parameter set that is a candidate for a division condition Narrow down.
  • Patent Document 3 aims to stabilize the quality of parameters before learning a decision tree, and does not solve the above-described problem.
  • An example of the object of the present invention is to provide a learning device, a learning method, and a computer-readable recording medium that improve the prediction accuracy of a decision tree.
  • a learning device includes: A feature value generation unit that generates a feature value based on learning data; A division condition generating unit that generates a division condition according to the feature quantity and a complexity requirement indicating the number of feature quantities; A learning data dividing unit for dividing the learning data into groups based on the dividing condition; A learning data evaluation unit that evaluates significance for each of the division conditions using groups before and after the division, In a group before and after the division, when the division condition is significant, a node generation unit that generates a decision tree node related to the division condition; It is characterized by having.
  • a learning method includes: (A) generating a feature value based on the learning data; and (B) generating a dividing condition according to the feature quantity and a complexity requirement indicating the number of the feature quantities; (C) dividing the learning data into groups based on the division condition; (D) using the groups before and after the division, evaluating the significance for each of the division conditions; (E) generating a decision tree node related to the division condition when the division condition is significant in the group after the division; It is characterized by having.
  • a computer-readable recording medium On the computer, (A) generating a feature value based on the learning data; and (B) generating a dividing condition according to the feature quantity and a complexity requirement indicating the number of the feature quantities; (C) dividing the learning data into groups based on the division condition; (D) using the groups before and after the division, evaluating the significance for each of the division conditions; (E) generating a decision tree node related to the division condition when the division condition is significant in the group after the division; A program including an instruction for executing is recorded.
  • the prediction accuracy of a decision tree can be improved.
  • FIG. 1 is a diagram illustrating an example of learning data.
  • FIG. 2 is a diagram illustrating an example of an ideal decision tree.
  • FIG. 3 is a diagram illustrating an example of a decision tree generated by learning an existing decision tree.
  • FIG. 4 is a diagram illustrating an example of a learning device.
  • FIG. 5 is a diagram illustrating an example of a system including a learning device.
  • FIG. 6 is a diagram illustrating an example of a division condition for the complexity requirement.
  • FIG. 7 is a diagram illustrating an example of the division result.
  • FIG. 8 is a diagram illustrating an example of the evaluation result.
  • FIG. 9 is a diagram illustrating an example of the evaluation result.
  • FIG. 10 is a diagram illustrating an example of operation of learning data.
  • FIG. 11 is a diagram illustrating an example of a computer that implements the learning apparatus.
  • FIG. 4 is a diagram illustrating an example of a learning device.
  • the learning device 10 is a device for improving the prediction accuracy of a decision tree.
  • the learning device 10 includes a feature amount generation unit 11, a division condition generation unit 12, a learning data division unit 13, a learning data evaluation unit 14, and a node generation unit 15.
  • the feature quantity generation unit 11 generates a feature quantity based on the learning data.
  • the division condition generation unit 12 generates a division condition according to the feature quantity and the complexity requirement indicating the number of feature quantities.
  • the learning data dividing unit 13 divides the learning data into groups based on the dividing conditions.
  • the learning data evaluation unit 14 evaluates the significance for each division condition using the group before division and the group after division.
  • the node generation unit 15 generates a split condition determination tree node related to the split condition when the split condition is significant in the groups before and after the split.
  • the learning data is divided into groups using the division condition generated according to the feature amount and the complexity requirement, and the group before division and the group after division are used.
  • the significance is evaluated for each division condition.
  • a node for the division condition decision tree related to the division condition is generated.
  • FIG. 5 is a diagram illustrating an example of a learning system having a learning device.
  • the learning device 10 includes a feature amount generation unit 11, a division condition generation unit 12, a learning data division unit 13, a learning data evaluation unit 14, and a node generation unit 15. And a division condition adding unit 16.
  • the system in addition to the learning device 10, the system includes an input device 30 for inputting the learning data 20 to the learning device 10 and an output device for outputting the decision tree data 50 generated by the learning device 10. 40.
  • the learning data 20 is data representing design rules that are input to a system that generates a decision tree.
  • the feature value generation unit 11 acquires the learning data 20 via the input device 30 and then generates a feature value (abstract feature value) that is an element of the division condition based on the learning data 20. Thereafter, the feature quantity generation unit 11 converts the learning data 20 based on the generated feature quantity.
  • the learning data shown in FIG. 1 is converted into learning data
  • the parameters A, B, C, and D are feature amounts (abstract feature amounts), and each row from the A column to the D column
  • the value of represents the evaluation value of the original learning data regarding the feature amount.
  • the learning data before conversion corresponding to the learning data in the first row is “the number of CPUs of the server device M: 1” “the number of CPUs of the server device N: 3” “the communication bandwidth of the server device M: 2”. It is assumed that “the communication bandwidth of the server apparatus N is 1” and the abstract feature amount A is “the number of CPUs of the server apparatus M> the number of CPUs of the server apparatus N”.
  • the communication band “2” of the server apparatus M and the communication band “1” of the server apparatus N described above indicate numbers assigned to the communication bands, for example.
  • the feature amount A which is a comparison of the number of CPUs between server devices, is not an example of a specific design value, but an example showing the relative relationship of parameters. Therefore, based on this concept, various designs and parameters such as an IP address, a communication band, and a memory allocation number can be evaluated with relative relationships without being limited to the number of CPUs. Note that the predicted value Y is the same as the original learning data, and no conversion is performed.
  • the division condition generation unit 12 generates a division condition (specific division condition) according to the feature amount generated based on the learning data and the designated complexity requirement.
  • the complexity requirement indicates the number of feature quantities used for one division condition, and the initial value is 1.
  • an upper limit value is also set for the complicated condition.
  • the upper limit value may be 2.
  • the division condition is a logical expression including two feature quantities.
  • FIG. 6 is a diagram illustrating a division condition for the complexity requirement.
  • FIG. 6 shows a division condition 61 that is generated for the learning data in FIG. 1 when the complexity requirement is 2 (division condition 60 in FIG. 6). That is, two are selected from the feature quantities A, B, C, and D shown in FIG. 1, and the five conditions (F1 and F2, not F1 and F2, and F1 or shown in the division condition 60 are selected. F2, F1 and not F2, and F1 xor F2) are applied to generate 30 (4C2 ⁇ 5) division conditions 61 shown in FIG.
  • a logical expression including the feature amount is generated as many as the complexity requirement.
  • FIG. 7 is a diagram illustrating an example of the division result.
  • the learning data evaluation unit 14 evaluates how much the learning data can be divided by the division result after obtaining the division result. In the evaluation, it is evaluated whether or not there is a statistically significant difference in the variance of the predicted values between the groups before and after the division. In other words, when the equality test is performed on the groups before and after the division, and the null hypothesis that the variances of the groups before and after the division are equal can be rejected at the significance level calculated using the preset significance level
  • the split condition is regarded as an effective split condition, and is used as a split condition for a decision tree branch.
  • the division condition with the smallest p value in the equal variance test is adopted as the division condition for the actual decision tree.
  • the equal variance test There are several methods for the equal variance test depending on differences in assumptions regarding the probability distribution of predicted values. For example, the Crown-Forsythe test is used when a specific probability distribution is not assumed for the predicted value. Note that the test method may be selected according to the nature of the data to be learned.
  • FIG. 8 shows an evaluation result based on the division result in FIG.
  • FIG. 8 is a diagram illustrating an example of the evaluation result.
  • the significance level is a value obtained by dividing the significance level as a reference set in advance by the number of test executions. That is, this is a measure for dealing with an increase in the probability of false positives by repeating the equal variance test.
  • the significance level used as a reference is 0.01 and the number of test executions is 4 ⁇ 2
  • the setting of the significance level is an example and is not limited.
  • the division condition adding unit 16 After obtaining the evaluation result, the division condition adding unit 16 performs reevaluation under a more complicated division condition when all the division conditions are not significant (when the p value is greater than or equal to the significance level). Increase requirements.
  • the division condition adding unit 16 increases the current complexity requirement because there is no significance for all the division conditions. For example, since the current complexity requirement is 1, the complexity requirement is 2.
  • the division condition generation unit 12 regenerates the division condition according to the updated complexity requirement. Subsequently, since the complexity requirement is 2, the division condition generation unit 12 generates the division condition illustrated in FIG. Thereafter, the learning data division unit 13 and the learning data evaluation unit 14 perform division and evaluation for the new division condition.
  • FIG. 9 is a diagram showing an example of the evaluation result.
  • a plurality of division conditions with significant significance are detected, but the exclusive OR “AxorB” of A and B, which is the division condition with the smallest p value, is adopted as the optimum division condition.
  • the learning data evaluation unit 14 sends the optimal division condition to the node generation unit 15.
  • the node generation unit 15 generates one decision tree node associated with the optimal division condition.
  • the node generation unit 15 sends the group divided by the division condition at the node to the division condition generation unit 12.
  • the division condition generation unit 12 sets the complexity requirement to 1 which is an initial value. Then, the division condition generation unit 12 continues the above-described processing by regarding the received group as a new group before division.
  • the node generation unit 15 sets the group that could not be divided as a termination node.
  • the target of node generation In the case of the evaluation result 90 shown in FIG. 9, each of group 1 (true) (5, 6, 7, 8) and group 0 (false) (1, 2, 3, 4) after division is the upper limit of the complexity requirement. Even when the dividing condition is evaluated up to a value of 2, no significant dividing condition is detected. In that case, the generation of the division condition is stopped, and the node generation unit 15 sets the group as the lowest layer node (leaf) of the decision tree.
  • the node generation unit 15 outputs the generated decision tree data 50 via the output device 40. As a result, the decision tree shown in FIG. 2 is output.
  • FIG. 10 is a diagram illustrating an example of the operation of the learning device.
  • FIGS. 1 to 9 are referred to as appropriate.
  • the learning method is implemented by operating the learning device. Therefore, the description of the learning method in the present embodiment is replaced with the following description of the operation of the learning device.
  • step A1 the feature value generation unit 11 generates a feature value (abstract feature value) that is an element of the division condition based on the acquired learning data 20. Thereafter, the feature quantity generation unit 11 converts the learning data 20 based on the generated feature quantity.
  • step A2 the division condition generation unit 12 generates a division condition (specific division condition) according to the feature amount included in the converted learning data and the complexity requirement of the designated division condition.
  • step A3 the learning data dividing unit 13 acquires learning data and a dividing condition, and then divides the learning data according to the dividing condition.
  • step A4 the learning data evaluation unit 14 obtains the division result, and then evaluates how well the division data can divide the learning data. For example, it is evaluated whether or not there is a statistically significant difference in the variance of predicted values between groups before and after the division.
  • step A5 the learning data evaluation unit 14 determines whether or not all the division conditions are significant. When there is no significance (step A5: No), in step A7, the division condition adding unit 16 determines whether or not the complexity requirement is an upper limit value.
  • step A6 the node generation unit 15 determines the division condition with significance. Generate a node of the decision tree associated with.
  • step A8 when the complexity requirement is not the upper limit value (step A7: No), the division condition adding unit 16 re-evaluates under a more complicated division condition, and thus increases the complexity requirement. Then, in the increased complexity requirement, the processes from step A2 to A5 are performed again. If the current complexity requirement is 1, the complexity requirement is 2.
  • step A9 the node generation unit 15 determines whether the lowest layer node has been generated for all the groups. When the lowest layer node of all the groups has been generated (step A9: Yes), this process ends. When the lowest layer node of all the groups has not been generated (step A9: No), in step A10, the division condition generation unit 12 sets the complexity requirement to 1 which is an initial value. Then, the division condition generation unit 12 newly performs a process on the divided group.
  • the learning data is divided into groups using the division condition generated according to the feature amount and the complexity requirement. Then, the significance is evaluated for each division condition using the group before division and the group after division. As a result, if the division condition is significant in the groups before and after the division, a node for the division condition decision tree related to the division condition is generated. By doing so, it is possible to generate a decision tree with high prediction accuracy that does not include unnecessary division conditions in the decision tree. In other words, a decision tree to which an essential division condition is applied can be generated.
  • the program in the embodiment of the present invention may be a program that causes a computer to execute steps A1 to A10 shown in FIG. By installing and executing this program on a computer, the learning device and the learning method in the present embodiment can be realized.
  • the processor of the computer functions as the feature amount generation unit 11, the division condition generation unit 12, the learning data division unit 13, the learning data evaluation unit 14, the node generation unit 15, and the division condition addition unit 16, and performs processing.
  • each computer is one of the feature quantity generation unit 11, the division condition generation unit 12, the learning data division unit 13, the learning data evaluation unit 14, the node generation unit 15, and the division condition addition unit 16, respectively. May function.
  • FIG. 11 is a diagram illustrating an example of a computer that implements the learning apparatus.
  • the computer 110 includes a CPU 111, a main memory 112, a storage device 113, an input interface 114, a display controller 115, a data reader / writer 116, and a communication interface 117. These units are connected to each other via a bus 121 so that data communication is possible.
  • the computer 110 may include a GPU (GraphicsGraphProcessing Unit) or an FPGA (Field-Programmable Gate Array) in addition to or instead of the CPU 111.
  • the CPU 111 performs various operations by developing the program (code) in the present embodiment stored in the storage device 113 in the main memory 112 and executing them in a predetermined order.
  • the main memory 112 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory).
  • the program in the present embodiment is provided in a state of being stored in a computer-readable recording medium 120. Note that the program in the present embodiment may be distributed on the Internet connected via the communication interface 117.
  • the storage device 113 includes a hard disk drive and a semiconductor storage device such as a flash memory.
  • the input interface 114 mediates data transmission between the CPU 111 and an input device 118 such as a keyboard and a mouse.
  • the display controller 115 is connected to the display device 119 and controls display on the display device 119.
  • the data reader / writer 116 mediates data transmission between the CPU 111 and the recording medium 120, and reads a program from the recording medium 120 and writes a processing result in the computer 110 to the recording medium 120.
  • the communication interface 117 mediates data transmission between the CPU 111 and another computer.
  • the recording medium 120 include general-purpose semiconductor storage devices such as CF (Compact Flash (registered trademark)) and SD (Secure Digital), magnetic recording media such as a flexible disk, or CD- An optical recording medium such as ROM (Compact Disk Read Only Memory).
  • CF Compact Flash (registered trademark)
  • SD Secure Digital
  • magnetic recording media such as a flexible disk
  • CD- An optical recording medium such as ROM (Compact Disk Read Only Memory).
  • the learning apparatus 1 can be realized not by using a computer in which a program is installed but also by using hardware corresponding to each unit. Furthermore, part of the learning device 1 may be realized by a program, and the remaining part may be realized by hardware.
  • a feature value generation unit that generates a feature value based on learning data
  • a division condition generating unit that generates a division condition according to the feature quantity and a complexity requirement indicating the number of feature quantities
  • a learning data dividing unit for dividing the learning data into groups based on the dividing condition
  • a learning data evaluation unit that evaluates significance for each of the division conditions using groups before and after the division, In a group before and after the division, when the division condition is significant, a node generation unit that generates a decision tree node related to the division condition;
  • a learning apparatus comprising:
  • a learning apparatus comprising:
  • the division condition generation unit generates the division condition using the following conditions when the number of feature quantities (F1, F2) used in the division condition indicated by the complexity requirement is two F1 and F2 not F1 and F2 F1 or F2 F1 and not F2 F1 xor F2
  • F1, F2 feature quantities
  • Appendix 10 A computer-readable recording medium according to appendix 9, wherein The program is the computer, (F) In the group before and after the division, when all the division conditions are not significant, an instruction for executing the step of increasing the number of the feature amounts indicated by the complexity requirement and adding the division condition is executed. In addition, A computer-readable recording medium on which a program is recorded.
  • (Appendix 12) A computer-readable recording medium according to appendix 11, In the step (b), when the number of feature quantities (F1, F2) used in the division condition indicated by the complexity requirement is two, the division condition is generated using the following conditions: F1 and F2 not F1 and F2 F1 or F2 F1 and not F2 F1 xor F2 A computer-readable recording medium.
  • the prediction accuracy of a decision tree can be improved.
  • the present invention is useful in fields where it is necessary to improve the prediction accuracy of decision trees.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Machine Translation (AREA)

Abstract

学習データに基づいて特徴量を生成する、特徴量生成部11と、特徴量と特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、分割条件生成部12と、学習データを分割条件に基づいてグループに分割する、学習データ分割部13と、分割前のグループと分割後のグループとを用いて、分割条件ごとに有意性を評価する、学習データ評価部14と、分割後のグループにおいて、分割条件に有意性がある場合、分割条件に関連する分割条件決定木のノードを生成する、ノード生成部15と、を有する学習装置10である。

Description

学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体
 本発明は、決定木による学習をする学習装置、学習方法に関し、更には、これらを実現するためのプログラムを記録したしているコンピュータ読み取り可能な記録媒体に関する。
 IT(Information Technology)システムにおいて、システムの構成管理及び構成変更は、大きく三つのフェーズに分けられる。そして、システムの構成管理及び構成変更は、三つのフェーズそれぞれにおいて行われ、次に示す(1)(2)(3)の作業を反復することにより実現される。
 (1)システム構成を把握する作業。(2)変更要件の定義をする作業。(3)現在運用中のシステム構成を、(1)(2)から導かれるシステムへ変更する操作手順の生成、及び、生成した操作手順を実行する作業。
 ところが、これら三つの作業のうち、(3)に示した作業には、多大な作業工数を費やしている。そこで、作業工数を削減するための技術が提案されている。
 関連する技術として、特許文献1には、システムを構成する要素の動作状態と、その動作状態間の制約とを定義することで、システムの変更に用いる操作手順を生成する技術が開示されている。
 特許文献2には、部品の状態と制約関係とを状態遷移図により表現する技術が開示されている。
 特許文献3には、決定木の学習を実行する前に、パラメータ間の交互作用を検証することで、依存関係がありそうなパラメータと、そうでないパラメータとを識別し、分割条件候補となるパラメータのセットを絞り込む手法が開示されている。
 非特許文献1及び特許文献2には、操作手順を自動化するソフトウェアツールが開示されている。そのソフトウェアツールによれば、システム変更後の状態、又は操作手順を定義情報として入力し、自動的にシステムの変更、及び設定を行う。
 非特許文献3及び4には、サーバ装置のリソース(CPU(Central Processing Unit)やメモリ割当て量など)、アプリケーションの組み合わせを実際に様々なパターンで試行し評価、学習することで最適な変更手順、又は変更パラメータを導出する強化学習を用いた技術が開示されている。
特開2015-215885号公報 特開2015-215887号公報 特開2005-063353号公報
"Puppet"、[online]、[平成29年1月19日検索]、インターネット<URL:https://puppet.com/> "Ansible"、[online]、[平成29年1月19日検索]、インターネッ ト<URL:https://www.ansible.com/> J. Rao, X. Bu, C. Z. Xu and K. Wang、"A Distributed Self-Learning Approach for Elastic Provisioning of Virtualized Cloud Resources,"、[online]、[平成 29年1月19日検索]平成23年8月30日、IEEE Xplore、[平成29年1月19日検索]、インターネット<URL:http://ieeexplore.ieee.org/abstract/document/6005367/> I. J. Jureta, S. Faulkner, Y. Achbany and M. Saerens、"Dynamic Web Service Composition within a Service-Oriented Architecture,"、[online]、[平成29年1月19日検索]平成19年7月30日、IEEE Xplore、[平成29年1月19日検索]、インターネット<URL:http://ieeexplore.ieee.org/document/4279613/>
 しかしながら、非特許文献1及び非特許文献2に開示されている、操作手順を自動化するソフトウェアツールが自動化できるのは、操作手順の実行のみで、操作手順の作成は対象外である。
 そこで、非特許文献1又は非特許文献2に、操作手順の生成を自動化する、特許文献1又は特許文献2に開示の技術を適用することが考えられる。すなわち、特許文献1又は特許文献2に開示の技術を用いて、操作手順の実行を自動化するソフトウェアツールの入力の形式に合わせた、システムの構成を変更する操作手順を示す情報を生成する。そして、生成した操作手順を、非特許文献1又は非特許文献2に開示の技術に適用することで、操作手順の作成から実行までを自動化する。
 ところが、特許文献1及び特許文献2に開示された技術では、事前に(1)システム構成を把握する作業、(2)変更要件の定義をする作業を、手作業で行う必要があるため、多大な作業工数を費やすことになるという問題がある。
 そこで、上述した問題に対して、非特許文献3又は非特許文献4に開示された技術を用いることが考えられる。つまり、サーバ装置のリソース(例えば、CPU、メモリ割当て量など)、又はアプリケーションの組み合わせを、実際に様々なパターンで試行し評価、学習することで、操作手順、及びパラメータを導出することが考えられる。
 しかし、上述した非特許文献3、4に開示された強化学習を用いた自動化は、特許文献1、2に開示されているような、システム内の構成要素間の依存関係を直接扱うアプローチと異なり、評価、学習の対象は、あるシステムの状態における特定の制御内容の好ましさである。制御内容は、例えば、システムの応答速度などの観測可能な値によって規定される。
 そのため、強化学習では、システムの状態を観測する手段と、実行可能な制御集合とを入力するだけで学習が実行可能となるため、適用が比較的容易である。ところが、強化学習では、学習結果から、依存性をはじめとした構成要素間の挙動に関する関係性を、一般には読み取ることができない。そのため、学習結果を別の制御タスクへ再利用することが困難である。
 そこで、こうした問題への対処方法として、強化学習にいわゆる関数近似を適用することが考えられる。強化学習における関数近似とは、学習の結果得られた具体的な制御に関する好ましさを示す情報を、より抽象的な条件から予測できる近似関数を求めることである。すなわち、抽象的な条件から予測できる近似関数を学習することである。
 上述した対処方法は、元々はロボット制御などの分野において、連続量(無限に選択肢が存在する)の制御を取り扱う際、すべての制御パターンをコンピュータの記憶領域で管理することが不可能なため、無限集合を有限集合へマッピングし、その有限集合における制御パターンを取り扱うために発展してきた手法である。また、上述した対処方法は、記憶領域の問題だけでなく、広大かつ雑多な選択肢を適切に抽象化することで学習結果の汎用性を高めることもできる。
 関数近似で用いる近似関数は、近似対象の性質や近似の目的に合わせて選択する必要がある。代表的な関数としては、線形多項式、又はニューラルネットワーク、又は決定木などが挙げられる。
 しかし、システムの設計、又は制御内容からその設計、制御の良し悪しを予測する問題においては、決定木による関数近似が有力な近似手法の一つと考えられる。その理由として、まず、パラメータ間に依存関係があることが挙げられる。すなわち、あるパラメータの最適値は、他のパラメータの値に依存して異なる値となるからである。また、非線形な挙動への対応ができることが挙げられる。設定値の些細な違いが好ましさに大きく影響するためである。更に、生成された関数の解釈性の高さが優れているからである。すなわち、その関数が制御特性をより良く表現できているかを、人間が評価できるためである。
 決定木の代表的な学習としてC4.5、CART(Classification And Regression Trees)、CHAID(Chi-squared Automatic Interaction Detection)などがある。これらは、木の分割条件を選択する際、使用する指標が異なることが特徴である。例えば、C4.5では、分割条件で分割したデータが、分割前のデータと比較してよりエントロピーを減少させる分割条件を採用する。
 決定木の学習により生成される分割条件は、設計や制御に関する単一のパラメータにより規定される論理式で表される。具体的に説明する。通信帯域、及びCPUコア数といった二つのパラメータを調整することで、アプリケーションサーバのスループットを最適化するというタスクの場合、学習された決定木の節(ノード)に関連する分割条件は、例えば、「通信帯域<10Mbps」、及び「CPU数>1」などが考えられる。
 また、パラメータが他のパラメータに依存する場合、分割条件の分割先で依存するパラメータに関する分割条件を採用することになる。例えば、「通信帯域≧10Mbps」の場合、CPUコア数がボトルネックとなる。また、CPUコア数がスループットに影響しないシステムの場合、決定木の頂点ノードで「通信帯域<10Mbps」の分割条件を設定し、分割先のノードでCPUコア数に関する分割条件を定義する。
 しかし、決定木の学習では、単一のパラメータごとにどれだけ学習データをうまく分類できるかを評価して分割条件を決定するため、複数のパラメータ間に依存関係がある場合、分割条件を適切に設定できないことがある。例えば、上述した通信帯域、及びCPUコア数といったパラメータに加え、更にメモリサイズなどの単一のパラメータが制御の対象である場合、分割条件を適切に設定できない。具体的には、メモリサイズが、見かけ上最もスループットへ影響を与えるパラメータだったとすると、分割条件としてメモリサイズに関するものが採用されてしまう。
 そうすると、分割後の学習データは、メモリサイズによる分割条件で分断されてしまい、分断後の学習データそれぞれにおいて、上述したような通信帯域及びCPUコア数の依存関係に従った分割条件が導かれる保証はない。このような問題は、パラメータ間の依存関係の実体が排他的論理和であるときに顕著である。
 図1は、学習データの一例を示す図である。図1に示す「A」「B」「C」「D」は、パラメータ(真:1、偽:0のバイナリ値)を示している。また、「Y」は、近似したい値(予測値)を示している。具体的には、予測値Yは、パラメータA、Bの排他的論理和(真:1、偽:0)を10倍した実数値に[0, 1]区間の一様乱数を加えた値である。なお、パラメータC、Dは、実際には予測には全く影響しないパラメータである。なお、「id」「1」から「8」は、パラメータAからDと予測値Yとを有する行それぞれに付された識別番号である。
 従って、図1に示す学習データを用いて生成される決定木は、パラメータC、Dを分割条件に含まない、図2のような決定木になるのが理想的である。図2は、理想的な決定木の一例を示す図である。ところが、既存の決定木の学習を用いて生成した決定木は、図3のような決定木になる。図3は、既存の決定木の学習により生成された決定木の一例を示す図である。
 既存の決定木の学習では、単一のパラメータで評価するため、図2に示した決定木と比較すると、図3に示した決定木には不要な分割条件を含むため、予測精度の低い決定木が生成されてしまう。言い換えれば、本質的な分割条件が全体に適用されていない、複雑な決定木が生成されてしまう。
 具体的には、パラメータCは予測値Yに影響を与えないパラメータであるにもかかわらず、最も予測値と相関があるパラメータであるため、最上位の分割条件となる。そのため、図3に示す左側(False:C≠1)の部分木では、パラメータA、Bによる排他的論理和を表す決定木が生成されたものの、図3に示す右側(True:C=1)の部分木では、パラメータA、Bによる排他的論理和を表す部分木が生成されない。
 そこで、特許文献3を用いることが考えられる。特許文献3では、決定木の学習を実行する前に、パラメータ間の交互作用を検証することで、依存関係がありそうなパラメータと、そうでないパラメータとを識別し、分割条件候補となるパラメータセットを絞り込んでいる。しかし、特許文献3は、決定木の学習前において、パラメータの品質を安定化させることを目的としており、上述した問題を解決するものではない。
 本発明の目的の一例は、決定木の予測精度を向上させる学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体を提供することにある。
 上記目的を達成するため、本発明の一側面における学習装置は、
 学習データに基づいて特徴量を生成する、特徴量生成部と、
 前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、分割条件生成部と、
 前記学習データを前記分割条件に基づいてグループに分割する、学習データ分割部と、
 分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、学習データ評価部と、
 分割前後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ノード生成部と、
 を有することを特徴とする。
 また、上記目的を達成するため、本発明の一側面における学習方法は、
(a)学習データに基づいて特徴量を生成する、ステップと、
(b)前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、ステップと、 
(c)前記学習データを前記分割条件に基づいてグループに分割する、ステップと、
(d)分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、ステップと、
(e)分割後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ステップと、
 を有することを特徴とする。
 更に、上記目的を達成するため、本発明の一側面におけるプログラムをコンピュータ読み取り可能な記録媒体は、
 コンピュータに、
(a)学習データに基づいて特徴量を生成する、ステップと、
(b)前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、ステップと、
(c)前記学習データを前記分割条件に基づいてグループに分割する、ステップと、
(d)分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、ステップと、
(e)分割後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ステップと、
 を実行させる命令を含むプログラムを記録していることを特徴とする。
 以上のように本発明によれば、決定木の予測精度を向上させることができる。
図1は、学習データの一例を示す図である。 図2は、理想的な決定木の一例を示す図である。 図3は、既存の決定木の学習により生成された決定木の一例を示す図である。 図4は、学習装置の一例を示す図である。 図5は、学習装置を有するシステムの一例を示す図である。 図6は、複雑さ要件に対する分割条件の一例を示す図である。 図7は、分割結果の一例を示す図である。 図8は、評価結果の一例を示す図である。 図9は、評価結果の一例を示す図である。 図10は、学習データの動作の一例を示す図である。 図11は、学習装置を実現するコンピュータの一例を示す図である。
(実施の形態)
 以下、本発明の実施の形態について、図1から図11を参照しながら説明する。
[装置構成]
 最初に、図4を用いて、本実施の形態における学習装置10の構成について説明する。図4は、学習装置の一例を示す図である。
 図4に示すように、学習装置10は、決定木の予測精度を向上させるための装置である。学習装置10は、特徴量生成部11と、分割条件生成部12と、学習データ分割部13と、学習データ評価部14と、ノード生成部15とを有する。
 このうち、特徴量生成部11は、学習データに基づいて特徴量を生成する。分割条件生成部12は、特徴量と特徴量の数を示す複雑さ要件とに応じて分割条件を生成する。学習データ分割部13は、学習データを分割条件に基づいてグループに分割する。学習データ評価部14は、分割前のグループと分割後のグループとを用いて、分割条件ごとに有意性を評価する。ノード生成部15は、分割前後のグループにおいて、分割条件に有意性がある場合、分割条件に関連する分割条件決定木のノードを生成する。
 このように、本実施の形態では、特徴量と複雑さ要件とに応じて生成した分割条件を用いて、学習データをグループに分割して、分割前のグループと分割後のグループとを用いて、分割条件ごとに有意性を評価する。そして、分割前後のグループにおいて、分割条件に有意性がある場合、分割条件に関連する分割条件決定木のノードを生成する。そうすることで、決定木には不要な分割条件を含まない、予測精度の高い決定木を生成することができる。言い換えれば、本質的な分割条件を適用した決定木が生成できる。
 続いて、図5を用いて、本実施の形態における学習装置10の構成をより具体的に説明する。図5は、学習装置を有する学習システムの一例を示す図である。
 図5に示すように、本実施の形態における学習装置10は、特徴量生成部11と、分割条件生成部12と、学習データ分割部13と、学習データ評価部14と、ノード生成部15と、分割条件追加部16とを有する。
 また、図5においては、システムは、学習装置10に加え、学習装置10へ学習データ20を入力するための入力装置30と、学習装置10が生成した決定木データ50を出力するための出力装置40とを有する。学習データ20は、決定木を生成するシステムに入力する、設計ルールを表現したデータである。
 特徴量生成部11は、入力装置30を介して学習データ20を取得した後、学習データ20に基づいて、分割条件の要素となる特徴量(抽象的な特徴量)を生成する。その後、特徴量生成部11は、生成した特徴量に基づいて、学習データ20を変換する。
 具体的には、図1に示した学習データを変換後の学習データとした場合、パラメータA、B、C、Dが特徴量(抽象的な特徴量)となり、A列からD列までの各行の値は、その特徴量に関する元の学習データの評価値を表している。そして、図1において、一行目の学習データに該当する、変換前の学習データが「サーバ装置MのCPU数:1」「サーバ装置NのCPU数:3」「サーバ装置Mの通信帯域:2」「サーバ装置Nの通信帯域:1」で、抽象的な特徴量Aが「サーバ装置MのCPU数>サーバ装置NのCPU数」であるとする。その場合において、当該学習データは特徴量Aの評価値として、特徴量Aで示される論理式を満たさない(1<3)ためFalse(0)という評価値を得る。なお、上述したサーバ装置Mの通信帯域「2」、及びサーバ装置Nの通信帯域「1」は、例えば、通信帯域に割り付けられた番号を示す。
 このように、サーバ装置間のCPU数の大小比較という特徴量Aは、具体的な設計値ではなく、パラメータの相対的な関係性を示した例である。そのため、この考え方に基づいて、CPU数に限定されずにIPアドレス、通信帯域、メモリ割り当て数など様々な設計、パラメータを相対的な関係性で評価できる。なお、予測値Yは、元の学習データと同じとし、変換は行わない。
 分割条件生成部12は、学習データに基づいて生成された特徴量と、指定された複雑さ要件とに応じて、分割条件(具体的な分割条件)を生成する。複雑さ要件は、一つの分割条件に使用する特徴量の数を示し、初期値は1である。また、段階的に複雑さを増やす場合、複雑な条件に上限値も設定する。例えば、上限値は2とすることが考えられる。
 また、具体的な分割条件は、複雑さ要件が1の場合、図1の学習データの分割条件は、「A=True(1)/B=True(1)/C=True(1)/D=True(1)」の四つとなる。また、複雑さ要件が2の場合、分割条件は特徴量を二つ含む論理式となる。
 図6は、複雑さ要件に対する分割条件を示す図である。図6には、複雑さ要件が2の場合(図6の分割条件60)に、図1の学習データに対して生成される、分割条件61が示されている。すなわち、図1に示した特徴量A、B、C、Dから二つを選び、分割条件60に示した五つの条件(F1 and F2、not F1 and F2、F1 or
 F2、F1 and not F2、F1 xor F2)を適用して、図6に示す30通り(4C2×5通り)の分割条件61を生成する。
 また、複雑さ要件が3以上の場合、複雑さ要件の数だけ、特徴量を含んだ論理式を生成する。なお、初期動作では複雑さ要件の初期値に従い、上述した四つの分割条件「A=True(1)/B=True(1)/C=True(1)/D=True(1)」が生成される。
 学習データ分割部13は、学習データと分割条件とを取得した後、学習データを分割条件に従い分割する。学習データの分割は、例えば、図1に示す学習データを、複雑さ要件が1の分割条件「A=True(1)/B=True(1)/C=True(1)/D=True(1)」に従い分割した場合、図7に示すような分割結果70となる。図7は、分割結果の一例を示す図である。
 学習データ評価部14は、分割結果を取得した後、分割結果がどの程度学習データをよりよく分割できるかを評価する。評価は、分割前後のグループ間の予測値の分散に統計的な有意差があるか否かを評価する。すなわち、分割前後のグループに対して等分散検定を行い、予め設定された基準となる有意水準を用いて算出される有意水準において、分割前後のグループの分散が等しいという帰無仮説が棄却できる場合、その分割条件を有効な分割条件と見做して決定木の枝の分割条件とする。
 なお、上述したような単一論式による二分木の場合、分割後のグループは二つ生成されるため、実施される等分散検定は、分割前対分割後の二つのグループがあり、どちらかの検定が有意であれば、その分割条件は有効と見做す。
 また、有効な分割条件が複数検出された場合、等分散検定におけるp値が、最小の分割条件を実際の決定木の分割条件として採用する。等分散検定は、予測値の確率分布に関する仮定の違いなどによりいくつかの手法が存在する。例えば、予測値に特定の確率分布を仮定しない場合にはCrown-Forsythe検定を用いる。なお、学習対象のデータの性質に応じて検定手法を選択してもよい。
 図8に、図7における分割結果に基づく評価結果を示す。図8は、評価結果の一例を示す図である。有意水準は、予め設定された基準となる有意水準を、検定実施回数で割った値とする。すなわち、これは等分散検定の繰り返しによる偽陽性の発生確率の増大に対応するための措置である。図8においては、基準となる有意水準を0.01とし、検定実施回数を4×2としているので、有意水準は0.01/(4×2)=0.00125となる。なお、この有意水準の設定は一例であり限定されない。
 分割条件追加部16は、評価結果を取得した後、すべての分割条件について有意性がない場合(p値が有意水準以上である場合)、より複雑な分割条件で再評価を行うため、複雑さ要件を増加する。
 具体的には、図8に示した評価結果80の場合、分割条件追加部16は、すべての分割条件について有意性がないので、現状の複雑さ要件を増加させる。例えば、現状の複雑さ要件は1であるので、複雑さ要件を2とする。
 その後、分割条件生成部12は、更新された複雑さ要件に従い分割条件を再生成する。続いて、分割条件生成部12は、複雑さ要件が2であるので、図6に示した分割条件を生成する。以降、学習データ分割部13、学習データ評価部14は、新たな分割条件に対して、分割と評価とを実施する。
 図9は、評価結果の一例を示す図である。図9では、有意性が認められる分割条件が複数検出されているが、p値が最小の分割条件であるAとBとの排他的論理和「AxorB」が最適な分割条件として採用される。
 また、学習データ評価部14は、最適な分割条件が検出された場合、その最適な分割条件はノード生成部15へ送られる。
 ノード生成部15は、その最適な分割条件に関連付けられた決定木のノードを一つ生成する。また、ノード生成部15は、そのノードにおける分割条件により分割されたグループを分割条件生成部12へ送る。なお、二分木の場合、二つのグループとなる。続いて、分割条件生成部12は、分割されたグループを受けた場合、複雑さ要件を初期値である1に設定する。そして、分割条件生成部12は、受け取ったグループを新たに分割前のグループと見做して上述した処理を継続する。
 更に、ノード生成部15は、有効な分割条件が検出されず、複雑さ要件を増加させていきその上限に達しても有効な分割条件が見つからない場合、その分割できなかったグループを終端ノードとしてノード生成の対象にする。図9に示した評価結果90の場合、分割後のグループ1(真)(5,6,7,8)、グループ0(偽)(1,2,3,4)それぞれは複雑さ要件の上限値である2まで、分割条件を評価しても有意な分割条件が検出されない。その場合、分割条件の生成を停止して、ノード生成部15は、当該グループを決定木の最下層ノード(葉)とする。
 そして、すべてのグループに関して最下層ノードの生成が完了した場合、ノード生成部15は、生成した決定木データ50を、出力装置40を介して出力する。その結果、図2に示した決定木が出力される。
[装置動作]
 次に、本発明の実施の形態における学習装置の動作について図10を用いて説明する。図10は、学習装置の動作の一例を示す図である。以下の説明においては、適宜図1から図9を参酌する。また、本実施の形態では、学習装置を動作させることによって、学習方法が実施される。よって、本実施の形態における学習方法の説明は、以下の学習装置の動作説明に代える。
 ステップA1において、特徴量生成部11は、取得した学習データ20に基づいて、分割条件の要素となる特徴量(抽象的な特徴量)を生成する。その後、特徴量生成部11は、生成した特徴量に基づいて、学習データ20を変換する。
 ステップA2において、分割条件生成部12は、変換した学習データに含まれる特徴量と、指定された分割条件の複雑さ要件とに応じて、分割条件(具体的な分割条件)を生成する。ステップA3において、学習データ分割部13は、学習データと分割条件とを取得した後、学習データを分割条件に従い分割する。 
 ステップA4において、学習データ評価部14は、分割結果を取得した後、分割結果がどの程度学習データをよりよく分割できているか否かを評価する。例えば、分割前後のグループ間の予測値の分散に統計的な有意差があるか否かを評価する。
 ステップA5において、学習データ評価部14は、すべての分割条件について有意性があるか否かを判定する。有意性がない場合(ステップA5:No)、ステップA7において、分割条件追加部16は、複雑さ要件が上限値であるか否かを判定する。
 有意性がある場合(ステップA5:Yes)、又は、有意性がなく複雑さ要件が上限値である場合(ステップA7:No)、ステップA6において、ノード生成部15は、有意性がある分割条件に関連付けられた決定木のノードを生成する。
 ステップA8において、複雑さ要件が上限値でない場合(ステップA7:No)、分割条件追加部16は、より複雑な分割条件で再評価を行うため、複雑さ要件を増加する。そして、増加した複雑さ要件において、再度ステップA2からA5の処理を行う。なお、現状の複雑さ要件が1であれば、複雑さ要件を2とする。
 ステップA9において、ノード生成部15は、すべてのグループに対して最下層ノードを生成したか否かを判定する。すべてのグループの最下層ノードを生成した場合(ステップA9:Yes)、この処理を終了する。すべてのグループの最下層ノードを生成していない場合(ステップA9:No)、ステップA10において、分割条件生成部12は、複雑さ要件を初期値である1に設定する。そして、分割条件生成部12は、分割されたグループに対して新たに処理を実行する。
[本実施の形態の効果]
 以上のように本実施の形態によれば、特徴量と複雑さ要件とに応じて生成した分割条件を用いて、学習データをグループに分割する。そして、分割前のグループと分割後のグループとを用いて、分割条件ごとに有意性を評価する。その結果、分割前後のグループにおいて、分割条件に有意性がある場合、分割条件に関連する分割条件決定木のノードを生成する。そうすることで、決定木には不要な分割条件を含まない、予測精度の高い決定木を生成することができる。言い換えれば、本質的な分割条件を適用した決定木が生成できる。
[プログラム]
 本発明の実施の形態におけるプログラムは、コンピュータに、図10に示すステップA1からA10を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における学習装置と学習方法とを実現することができる。この場合、コンピュータのプロセッサは、特徴量生成部11、分割条件生成部12、学習データ分割部13、学習データ評価部14、ノード生成部15、分割条件追加部16として機能し、処理を行なう。
 また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、特徴量生成部11、分割条件生成部12、学習データ分割部13、学習データ評価部14、ノード生成部15、分割条件追加部16のいずれかとして機能してもよい。
[物理構成]
 ここで、実施の形態におけるプログラムを実行することによって、学習装置を実現するコンピュータについて図11を用いて説明する。図11は、学習装置を実現するコンピュータの一例を示す図である。
 図11に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)を備えていてもよい。
 CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。
 また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
 データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
 また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。
 なお、本実施の形態における学習装置1は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、学習装置1は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
[付記]
 以上の実施の形態に関し、更に以下の付記を開示する。上述した実施の形態の一部又は全部は、以下に記載する(付記1)から(付記12)により表現することができるが、以下の記載に限定されるものではない。
(付記1)
 学習データに基づいて特徴量を生成する、特徴量生成部と、
 前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、分割条件生成部と、
 前記学習データを前記分割条件に基づいてグループに分割する、学習データ分割部と、
 分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、学習データ評価部と、
 分割前後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ノード生成部と、
 を有することを特徴とする学習装置。
(付記2)
 付記1に記載の学習装置であって、
 前記分割前後のグループにおいて、すべての前記分割条件に有意性がない場合、前記複雑さ要件が示す前記特徴量の数を増加させ、前記分割条件生成部に前記分割条件を追加させる、分割条件追加部と、
 を有することを特徴とする学習装置。
(付記3)
 付記1又は2に記載の学習装置であって、
 前記分割条件生成部は、前記特徴量間の関係性を表す論理演算子を用いて、前記分割条件を生成する
 ことを特徴とする学習装置。
(付記4)
 付記3に記載の学習装置であって、
 前記分割条件生成部は、前記複雑さ要件が示す、前記分割条件で使用する前記特徴量の数(F1、F2)が二つである場合、前記分割条件を、以下の条件を用いて生成する
   F1 and F2
   not F1 and F2
   F1 or F2
   F1 and not F2
   F1 xor F2
 ことを特徴とする学習装置。
(付記5)
(a)学習データに基づいて特徴量を生成する、ステップと、
(b)前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、ステップと、
(c)前記学習データを前記分割条件に基づいてグループに分割する、ステップと、
(d)分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、ステップと、
(e)分割後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ステップと、
 を有することを特徴とする学習方法。
(付記6)
 付記5に記載の学習方法であって、
(f)前記分割前後のグループにおいて、すべての前記分割条件に有意性がない場合、前記複雑さ要件が示す前記特徴量の数を増加させ、前記分割条件を追加させる、ステップと、
 を有することを特徴とする学習方法。
(付記7)
 付記5又は6に記載の学習方法であって、
 前記(b)のステップにおいて、前記特徴量間の関係性を表す論理演算子を用いて、前記分割条件を生成する
 ことを特徴とする学習方法。
(付記8)
 付記7に記載の学習方法であって、
 前記(b)のステップにおいて、前記複雑さ要件が示す、前記分割条件で使用する前記特徴量(F1、F2)の数が二つである場合、前記分割条件を、以下の条件を用いて生成する
   F1 and F2
   not F1 and F2
   F1 or F2
   F1 and not F2
   F1 xor F2
 ことを特徴とする学習方法。
(付記9)
 コンピュータに、
(a)学習データに基づいて特徴量を生成する、ステップと、
(b)前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、ステップと、
(c)前記学習データを前記分割条件に基づいてグループに分割する、ステップと、
(d)分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、ステップと、
(e)分割前後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ステップと、
 を実行させる命令を含む、プログラムを記録しているコンピュータ読み取り可能な記録媒体。
(付記10)
 付記9に記載のコンピュータ読み取り可能な記録媒体であって、
 前記プログラムが、前記コンピュータは、
(f)前記分割前後のグループにおいて、すべての前記分割条件に有意性がない場合、前記複雑さ要件が示す前記特徴量の数を増加させ、前記分割条件を追加させる、ステップを実行させる命令を更に含む、
 プログラムを記録しているコンピュータ読み取り可能な記録媒体。
(付記11)
 付記9又は10に記載のコンピュータ読み取り可能な記録媒体であって、
 前記(b)のステップにおいて、前記特徴量間の関係性を表す論理演算子を用いて、前記分割条件を生成する
 ことを特徴とするコンピュータ読み取り可能な記録媒体。
(付記12)
 付記11に記載のコンピュータ読み取り可能な記録媒体であって、
 前記(b)のステップにおいて、前記複雑さ要件が示す、前記分割条件で使用する前記特徴量(F1、F2)の数が二つである場合、前記分割条件を、以下の条件を用いて生成する
   F1 and F2
   not F1 and F2
   F1 or F2
   F1 and not F2
   F1 xor F2
 ことを特徴とするコンピュータ読み取り可能な記録媒体。
 以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2018年3月29日に出願された日本出願特願2018-066057を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 以上のように本発明によれば、決定木の予測精度を向上させることができる。本発明は、決定木の予測精度を向上させることが必要な分野において有用である。
 10 学習装置
 11 特徴量生成部
 12 分割条件生成部 
 13 学習データ分割部
 14 学習データ評価部
 15 ノード生成部
 16 分割条件追加部
 20 学習データ
 30 入力装置
 40 出力装置
 50 決定木データ
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス

Claims (12)

  1.  学習データに基づいて特徴量を生成する、特徴量生成部と、
     前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、分割条件生成部と、
     前記学習データを前記分割条件に基づいてグループに分割する、学習データ分割部と、
     分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、学習データ評価部と、
     分割後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ノード生成部と、
     を有することを特徴とする学習装置。
  2.  請求項1に記載の学習装置であって、
     前記分割前後のグループにおいて、すべての前記分割条件に有意性がない場合、前記複雑さ要件が示す前記特徴量の数を増加させ、前記分割条件生成部に前記分割条件を追加させる、分割条件追加部と、
     を有することを特徴とする学習装置。
  3.  請求項1又は2に記載の学習装置であって、
     前記分割条件生成部は、前記特徴量間の関係性を表す論理演算子を用いて、前記分割条件を生成する
     ことを特徴とする学習装置。
  4.  請求項3に記載の学習装置であって、
     前記分割条件生成部は、前記複雑さ要件が示す、前記分割条件で使用する前記特徴量の数(F1、F2)が二つである場合、前記分割条件を、以下の条件を用いて生成する
       F1 and F2
       not F1 and F2
       F1 or F2
       F1 and not F2
       F1 xor F2
     ことを特徴とする学習装置。
  5. (a)学習データに基づいて特徴量を生成する、ステップと、
    (b)前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、ステップと、
    (c)前記学習データを前記分割条件に基づいてグループに分割する、ステップと、
    (d)分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、ステップと、
    (e)分割後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ステップと、
     を有することを特徴とする学習方法。
  6.  請求項5に記載の学習方法であって、
    (f)前記分割前後のグループにおいて、すべての前記分割条件に有意性がない場合、前記複雑さ要件が示す前記特徴量の数を増加させ、前記分割条件を追加させる、ステップと、
     を有することを特徴とする学習方法。
  7.  請求項5又は6に記載の学習方法であって、
     前記(b)のステップにおいて、前記特徴量間の関係性を表す論理演算子を用いて、前記分割条件を生成する
     ことを特徴とする学習方法。
  8.  請求項7に記載の学習方法であって、
     前記(b)のステップにおいて、前記複雑さ要件が示す、前記分割条件で使用する前記特徴量(F1、F2)の数が二つである場合、前記分割条件を、以下の条件を用いて生成する
       F1 and F2
       not F1 and F2
       F1 or F2
       F1 and not F2
       F1 xor F2
     ことを特徴とする学習方法。
  9.  コンピュータに、
    (a)学習データに基づいて特徴量を生成する、ステップと、
    (b)前記特徴量と前記特徴量の数を示す複雑さ要件とに応じて分割条件を生成する、ステップと、
    (c)前記学習データを前記分割条件に基づいてグループに分割する、ステップと、
    (d)分割前後のグループを用いて、前記分割条件ごとに有意性を評価する、ステップと、
    (e)分割後のグループにおいて、前記分割条件に有意性がある場合、前記分割条件に関連する決定木のノードを生成する、ステップと、
     を実行させる命令を含む、プログラムを記録しているコンピュータ読み取り可能な記録媒体。
  10.  請求項9に記載のコンピュータ読み取り可能な記録媒体であって、
     前記プログラムが、前記コンピュータに、
    (f)前記分割後のグループにおいて、すべての前記分割条件に有意性がない場合、前記複雑さ要件が示す前記特徴量の数を増加させ、前記分割条件を追加させる、ステップを実行させる命令を更に含む、
     プログラムを記録しているコンピュータ読み取り可能な記録媒体。
  11.  請求項9又は10に記載のコンピュータ読み取り可能な記録媒体であって、
     前記(b)のステップにおいて、前記特徴量間の関係性を表す論理演算子を用いて、前記分割条件を生成する
     ことを特徴とするコンピュータ読み取り可能な記録媒体。
  12.  請求項11に記載のコンピュータ読み取り可能な記録媒体であって、
     前記(b)のステップにおいて、前記複雑さ要件が示す、前記分割条件で使用する前記特徴量(F1、F2)の数が二つである場合、前記分割条件を、以下の条件を用いて生成する
       F1 and F2
       not F1 and F2
       F1 or F2
       F1 and not F2
       F1 xor F2
     ことを特徴とするコンピュータ読み取り可能な記録媒体。
PCT/JP2019/012984 2018-03-29 2019-03-26 学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体 WO2019189249A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020510958A JP6888737B2 (ja) 2018-03-29 2019-03-26 学習装置、学習方法、及びプログラム
US16/982,781 US20210012214A1 (en) 2018-03-29 2019-03-26 Learning apparatus, learning method, and computer-readable recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018066057 2018-03-29
JP2018-066057 2018-03-29

Publications (1)

Publication Number Publication Date
WO2019189249A1 true WO2019189249A1 (ja) 2019-10-03

Family

ID=68060021

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/012984 WO2019189249A1 (ja) 2018-03-29 2019-03-26 学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体

Country Status (3)

Country Link
US (1) US20210012214A1 (ja)
JP (1) JP6888737B2 (ja)
WO (1) WO2019189249A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023149138A1 (ja) * 2022-02-03 2023-08-10 株式会社日立製作所 推定器学習装置
JP7559957B2 (ja) 2021-08-05 2024-10-02 日本電信電話株式会社 学習方法、装置及びプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7059220B2 (ja) * 2019-02-15 2022-04-25 株式会社日立製作所 機械学習プログラム検証装置および機械学習プログラム検証方法
US20200394527A1 (en) * 2019-06-12 2020-12-17 International Business Machines Corporation Prediction model

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004157814A (ja) * 2002-11-07 2004-06-03 Fuji Electric Holdings Co Ltd 決定木生成方法およびモデル構造生成装置
JP2011028519A (ja) * 2009-07-24 2011-02-10 Nippon Hoso Kyokai <Nhk> データ分類装置及びプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7233931B2 (en) * 2003-12-26 2007-06-19 Lee Shih-Jong J Feature regulation for hierarchical decision learning
US8095498B2 (en) * 2008-12-17 2012-01-10 International Business Machines Corporation Data mining model interpretation, optimization, and customization using statistical techniques
JPWO2010100701A1 (ja) * 2009-03-06 2012-09-06 株式会社東芝 学習装置、識別装置及びその方法
US9177247B2 (en) * 2011-09-23 2015-11-03 Fujitsu Limited Partitioning medical binary decision diagrams for analysis optimization
CN104603291B (zh) * 2012-06-22 2018-04-06 Htg分子诊断有限公司 黑素细胞病变中的分子恶性肿瘤
WO2014039790A1 (en) * 2012-09-07 2014-03-13 Children's Medical Center Corporation Detection of epileptogenic brains with non-linear analysis of electromagnetic signals
WO2014149629A1 (en) * 2013-03-15 2014-09-25 Htg Molecular Diagnostics, Inc. Subtyping lung cancers
US10963810B2 (en) * 2014-06-30 2021-03-30 Amazon Technologies, Inc. Efficient duplicate detection for machine learning data sets
CN105718493B (zh) * 2014-12-05 2019-07-23 阿里巴巴集团控股有限公司 基于决策树的搜索结果排序方法及其装置
JP2018116545A (ja) * 2017-01-19 2018-07-26 オムロン株式会社 予測モデル作成装置、生産設備監視システム、及び生産設備監視方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004157814A (ja) * 2002-11-07 2004-06-03 Fuji Electric Holdings Co Ltd 決定木生成方法およびモデル構造生成装置
JP2011028519A (ja) * 2009-07-24 2011-02-10 Nippon Hoso Kyokai <Nhk> データ分類装置及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7559957B2 (ja) 2021-08-05 2024-10-02 日本電信電話株式会社 学習方法、装置及びプログラム
WO2023149138A1 (ja) * 2022-02-03 2023-08-10 株式会社日立製作所 推定器学習装置

Also Published As

Publication number Publication date
JPWO2019189249A1 (ja) 2021-02-12
JP6888737B2 (ja) 2021-06-16
US20210012214A1 (en) 2021-01-14

Similar Documents

Publication Publication Date Title
WO2019189249A1 (ja) 学習装置、学習方法、及びコンピュータ読み取り可能な記録媒体
US10764370B2 (en) Hybrid cloud migration delay risk prediction engine
US11436056B2 (en) Allocation of shared computing resources using source code feature extraction and clustering-based training of machine learning models
US11556785B2 (en) Generation of expanded training data contributing to machine learning for relationship data
US10862765B2 (en) Allocation of shared computing resources using a classifier chain
US11302096B2 (en) Determining model-related bias associated with training data
WO2014199920A1 (ja) 予測関数作成装置、予測関数作成方法、及びコンピュータ読み取り可能な記録媒体
US11392607B2 (en) Automatic feature engineering during online scoring phase
EP4339843A1 (en) Neural network optimization method and apparatus
US20210158183A1 (en) Trustworthiness of artificial intelligence models in presence of anomalous data
CN110249312A (zh) 数据集成作业转换
US11501115B2 (en) Explaining cross domain model predictions
US20150309731A1 (en) Dynamic Tuning of Memory in MapReduce Systems
Aironi et al. Tackling the linear sum assignment problem with graph neural networks
Lakhno et al. Modeling and Optimization of Discrete Evolutionary Systems of İnformation Security Management in a Random Environment
Lößer et al. Bottlemod: Modeling data flows and tasks for fast bottleneck analysis
Guindani et al. aMLLibrary: An automl approach for performance prediction
JP5555238B2 (ja) ベイジアンネットワーク構造学習のための情報処理装置及びプログラム
CN116974765A (zh) 一种异构计算机的存储管理系统
CN115796228A (zh) 算子融合方法、装置、设备以及存储介质
JP6908126B2 (ja) 構成管理装置、構成管理方法および構成管理プログラム
KR20220151256A (ko) 순환 생성 적대 네트워크 조건부 생성 적대 네트워크
KR101470695B1 (ko) 그리드 컴퓨팅 스케쥴링을 위한 생물지리학적 최적화 방법 및 시스템
US10929177B2 (en) Managing resources for multiple trial distributed processing tasks
CN112486615B (zh) 基于拓扑路径的决策流执行方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19777659

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2020510958

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19777659

Country of ref document: EP

Kind code of ref document: A1