Estimator learning device

The estimator learning device improves decision tree estimation accuracy by converting prediction error minimization into a QUBO problem and generating branching conditions using quantum annealing, addressing the limitations of existing methods.

JP7713408B2Active Publication Date: 2025-07-25HITACHI LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2022015734
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-03
Publication Date
2025-07-25
Estimated Expiration
2042-02-03

AI Technical Summary

Technical Problem

Existing techniques for converting the problem of searching for a decision tree that minimizes estimation error into a QUBO problem are inadequate, limiting the estimation accuracy of decision trees.

Method used

An estimator learning device that includes a QUBO conversion unit to convert a prediction error minimization problem into a QUBO problem, a QUBO calculation unit to calculate the converted problem, and a branching condition generation unit to generate branching conditions based on the calculation results, thereby improving estimation accuracy.

Benefits of technology

Enhances the estimation accuracy of decision tree branching conditions by effectively utilizing quantum annealing machines for optimization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007713408000011
    Figure 0007713408000011
  • Figure 0007713408000012
    Figure 0007713408000012
  • Figure 0007713408000013
    Figure 0007713408000013
Patent Text Reader

Abstract

To enhance estimation accuracy of a branch condition of a decision tree.SOLUTION: There is provided an estimator learning device 100 for learning an estimator 12 which searches for a branch condition of a decision tree for estimating a target variable from data of an explanatory variable. The estimator 12 comprises: a QUBO problem conversion unit 105 which converts a prediction error minimization problem in searching of the branch condition into a QUBO problem or a first problem equivalent to the QUBO problem; a QUBO problem calculation unit 106 which calculates the first problem converted by the QUBO problem conversion unit 105; and a branch condition generation unit 107 which generates a branch condition on the basis of the calculation result of the QUBO problem calculation unit 106.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an estimator learning device.

Background Art

[0002] The technique of estimating a target variable from data of explanatory variables is the most basic technique of machine learning or artificial intelligence. Such an estimation technique is utilized in many scenarios. For example, in the scenario of material development, in order to develop a material with high specific material property values, if experiments are conducted under all combinations (conditions) among a plurality of material combinations, enormous time and cost are required. If the material property values can be estimated in advance from those experimental conditions, experiments with low prospects can be omitted, and efficient material development becomes possible. At this time, high estimation accuracy is desirable for the estimation of material property values. Decision trees and their derivative algorithms are used for the technique of estimating a target variable from data of explanatory variables because of their high accuracy.

[0003] An annealing machine is a machine capable of solving a QUBO (Quadratic Unconstrained Binary Optimization) problem such as a quadratic binary variable optimization problem, and is used when solving a combinatorial optimization problem. Therefore, if the problem of searching for a decision tree that minimizes the estimation error can be converted into a QUBO problem, it becomes possible to utilize the strength of the annealing machine in the learning of decision trees.

[0004] Therefore, Patent Document 1 discloses an annealing machine data input device and a method of inputting data to the annealing machine. The annealing machine data input device includes a conversion unit that executes a conversion process of converting an input expression in a format unsuitable for input to the annealing machine into a suitable format. The conversion unit derives a mathematical expression and evaluates whether the derived expression satisfies a preset quality index. When the derived expression is evaluated to satisfy the index, it is input to the annealing machine. When the derived expression is evaluated not to satisfy the index, the conversion unit repeats the conversion process using a different input expression.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0006] The technique of Patent Document 1 converts an input problem into a QUBO problem by repeating a conversion process that converts the input problem into a mathematically equivalent problem, and solves the converted QUBO problem using an annealing machine. However, the problem of searching for a decision tree that minimizes the estimation error cannot be made into a QUBO problem only by a mathematically equivalent conversion.

[0007] Therefore, the present invention has been made in view of the above problems, and an object thereof is to provide a technique for improving the estimation accuracy of a decision tree.

Means for Solving the Problems

[0008] In order to solve the above object, the present invention is an estimator learning device that learns an estimator that searches for a branching condition of a decision tree that estimates a target variable from data of explanatory variables, and the estimator includes: a QUBO conversion unit that converts a prediction error minimization problem in the search for the branching condition into a QUBO problem or a first problem equivalent to the QUBO problem; a QUBO calculation unit that calculates the first problem converted by the QUBO conversion unit; and a branching condition generation unit that generates the branching condition based on the calculation result of the QUBO calculation unit.

Effects of the Invention

[0009] According to the present invention, the estimation accuracy of the branching condition of the decision tree can be improved.

Brief Description of the Drawings

[0010]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Mode for Carrying Out the Invention

[0011] Hereinafter, a specific example of the estimator learning device according to an embodiment of the present invention will be described with reference to the drawings. Note that the present invention is not limited by the examples, but is indicated by the scope of the claims.

Examples

[0012] The first embodiment of the present invention will be described with reference to FIG. 1.

[0013] FIG. 1 is a functional block diagram of the estimator learning device according to Embodiment 1.

[0014] The estimator learning device 100 of the present invention includes an interface 10, a database (DB) 11, and an estimator 12.

[0015] The interface 10 includes an input unit 101 and an output unit 102 as an example of a "display unit". Data including an explanatory variable and an objective variable is input to the input unit 101. The explanatory variable is stored in the explanatory variable DB 110 (FIG. 4), and the objective variable is stored in the objective variable DB 111 (FIG. 5). The output unit 102 outputs data to the outside.

[0016] The estimator 12 includes a condition generation unit 103, a conditioned explanatory variable generation unit 104, a QUBO problem conversion unit 105, a QUBO problem calculation unit 106, a branch condition generation unit 107, a condition determination unit 108, and an objective variable estimation unit 109.

[0017] FIG. 2 is a decision tree according to Embodiment 1.

[0018] The condition generation unit 103 generates a branch condition. The branch condition is used for branching in a decision tree. A decision tree is a machine learning algorithm that estimates an objective variable based on given explanatory variables as shown in FIG. 2. In a decision tree, branches using explanatory variables are sequentially created so that the prediction error is minimized. Generally, the branch condition of a decision tree is a condition regarding a numerical value using one explanatory variable, such as "the temperature is higher than 30 degrees (temperature > 30)". However, the branch condition of the present invention is not limited to such a condition, and any condition that can return true or false from the explanatory variables of each sample may be used. For example, "the sum of the temperature and humidity is 100 or more" and "a person is shown in the image" are conceivable.

[0019] The condition generation unit 103 may create a branching condition manually by the user, or may automatically create a branching condition from the explanatory variables. For example, when the explanatory variable is a continuous quantity, it can be determined based on statistical quantities of the explanatory variable such as "temperature > 1 / 5 quantile of the temperature", "temperature > 2 / 5 quantile of the temperature", or "temperature > 3 / 5 quantile of the temperature". Parameters related to statistical quantities such as the fineness of the quantiles may be selected by the user or may be automatically determined based on the number of samples. When the explanatory variable is label data, it is conceivable to automatically generate conditions such as "the day of the week is Monday" or "the day of the week is not Monday". Also, it is considered that conditions such as "the temperature data is missing" or "the number of missing explanatory variables is 5 or more" can be automatically generated. When the explanatory variable is missing and it is difficult to determine the condition, for example, it may be determined that the condition is not uniformly satisfied. The generated conditions are stored in the condition DB 112.

[0020] The conditioned explanatory variable generation unit 104 generates a conditioned explanatory variable from the explanatory variable and stores the generated conditioned explanatory variable in the conditioned explanatory variable DB 113.

[0021] The QUBO problem conversion unit 105 converts the search problem of the condition of the branch that minimizes the prediction error (prediction error minimization problem) into a QUBO (Quadratic Unconstrained Binary Optimization) problem as an example of the "first problem". Note that the QUBO problem conversion unit 105 may convert the prediction error minimization problem into a problem equivalent to the QUBO problem.

[0022] Figure 3 is a functional block diagram of the QUBO problem conversion unit.

[0023] The QUBO problem conversion unit 105 includes an error function generation unit 301 and a QUBO problem generation unit 302.

[0024] The error function generation unit 301 will be described. As an error function that is an index indicating the prediction error, there is the sum of the squares of the residuals that is the error between the prediction and the estimation, and the sum of the squares of the residuals in the decision tree is represented by Equation (1) below.

Equation

[0025] J is the sum of squared residuals, y[i] is the target variable of sample i, S1 is the set of samples that satisfy the condition, S0 is the set of samples that do not satisfy the condition, pred1 is the predicted value of the samples that satisfy the condition, and pred0 is the predicted value of the samples that do not satisfy the condition. pred1 and pred0 that minimize J are the average of y of the samples that satisfy the condition and the average of y of the samples that do not satisfy the condition, respectively. Therefore, the sum of squared residuals J is represented by Equation 2 below.

Equation

[0026] Var(S) represents the variance of set S, and N(S) represents the number of elements in set S. That is, the sum of squared residuals is the value obtained by weighting the variances of the sample groups divided by the condition by the respective number of samples. By transforming the formula of Equation 2, the following Equation 3 is obtained.

Equation

[0027] However, if N(S1) and N(S0) exist in the denominator of the formula of Equation 3, it cannot be converted into a QUBO problem.

[0028] Therefore, in the QUBO problem conversion unit 105, the sum of squared residuals J is converted into a QUBO problem by adjusting the weight for the variance of the sample group. For example, as shown in Equation 4 below, instead of weighting by the number of samples, it is weighted by the squared value of the number of samples. However, if N(S1) and N(S0) can be eliminated from the denominator, the weight does not have to be the square of the number of samples. For example, it may be the cube, the fourth power of the number of samples, or the square of the ratio of the number of samples.

Equation

[0029] When the formula of Equation 4 is transformed, it becomes Equation 5 below, and N(S1) and N(S0) disappear from the denominator.

Equation

[0030] The error function H is a value obtained by changing the weighting from the sum of squared residuals J, has a strong correlation with the sum of squared residuals J, and can be transformed into a QUBO problem. Therefore, the branching condition for minimizing the error function H is the same as the branching condition for minimizing the sum of squared residuals J.

[0031] The QUBO problem generation unit 302 will be described. The QUBO problem generation unit 302 determines the search conditions and the data to be input to the QUBO problem calculation unit 106. As the search conditions, for example, conditions corresponding to the columns of the conditional explanatory variables (Fig. 7) described later (such as temperature > 20) can be considered.

[0032] The generated QUBO will be described. However, a QUBO problem is represented by an error function to be minimized, represented by QUBO variables expressed as 0 or 1, and one or more constraints that the QUBO variables must satisfy. The error function is represented by the following Equation 6.

Equation

[0033] S is the set of all samples, X[i][j] is the conditional explanatory variable of condition j for sample i, C is the set of conditions, c is a QUBO variable representing whether to use the condition, and c[j]=1 indicates that condition j is used in the branch. The condition to be used needs to be narrowed down to one and is represented by the following Constraint 7.

Equation

[0034] The QUBO problem conversion unit 105 outputs the error function and constraints calculated as described above. The QUBO problem calculation unit 106 calculates the QUBO problem. The QUBO problem calculation unit 106 (also called an annealing machine) may be, for example, a quantum annealing machine using the properties of quantum mechanics, a coherent Ising machine using the characteristics of light, and a digital annealer composed of a digital circuit using CMOS or FPGA. The QUBO problem calculation unit 106 outputs a QUBO variable c as an example of the "calculation result".

[0035] The branch condition generation unit 107 generates a condition j based on the QUBO variable c. When the QUBO variable c does not satisfy the constraint, the branch condition generation unit 107 changes the parameters related to the learning of the annealing machine and searches for the condition j again. The branch condition generation unit 107 may repeat the search for the condition j a certain number of times and, if the constraint is not satisfied, proceed to the next process without the condition j. Then, the QUBO problem calculation unit 106 adopts the condition j such that c[h]=1 as a condition for branching.

[0036] The condition determination unit 108 determines whether to use the condition j, which is the output of the QUBO problem calculation unit 106, in the estimator 12. First, the condition determination unit 108 calculates how the number of samples is divided and the prediction error at that time by using the output condition j. Then, the condition determination unit 108 stores this information in the decision tree DB114. If the condition determination unit 108 decides to use the condition j, it may repeat whether to further divide each of the divided sample groups.

[0037] The target variable estimation unit 109 estimates the target variable from the data of the explanatory variables using the learned estimator 12.

[0038] The database (DB) 11 includes an explanatory variable database (DB) 110, a target variable DB111, a condition DB112, a conditioned explanatory variable DB113, a decision tree DB114, and a learning parameter DB115. The user can input data including explanatory variables and target variables at the input unit to obtain an estimator for estimating the target variable or an estimation result using the estimator with the explanatory variables of new data.

[0039] FIG. 4 is a diagram showing an example of the data structure of the explanatory variable DB according to Embodiment 1. FIG. 5 is a diagram showing an example of the data structure of the objective variable DB according to Embodiment 1. Here, a case of learning an estimator for estimating the daily sales of juice in a certain store will be described as an example.

[0040] The explanatory variable DB110 is a table that stores, as item values (column values), ID401 and, as an example of the "explanatory variable" of each sample, the temperature 402, the humidity 403, the day of the week 404, and the photo 405 of the storefront the day before. ID401 is an identifier for specifying the explanatory variable. The temperature 402 is the Celsius temperature (degree) on the day around a certain store. The humidity 403 is the humidity (%) on the day around a certain store. The day of the week 404 is the day of the week at a certain store. The photo 405 of the storefront the day before is an image obtained by imaging the front of the store the day before at a certain store.

[0041] Each row of the explanatory variable DB110 and the objective variable DB111 corresponds to a sample, and these two explanatory variable DB110 and objective variable DB111 are linked by ID401, 501. ID401, 501 may be not only numbers but also character strings. For example, in the case of juice sales, ID401, 501 may be a date.

[0042] In the explanatory variable DB110, for each ID401, the explanatory variables of each sample are linked. The explanatory variable may be a continuous numerical value such as the temperature 402 and the humidity 403, class information such as the day of the week 204, or may correspond to ID401 like the photo (image information) 405 of the storefront the day before, and the data format is not limited. For example, the explanatory variable may also be other things such as voice, text, chemical formula, etc. Also, the explanatory variable may be partially missing.

[0043] The target variable DB111 is a table that stores, as item values (column values), ID501 and the sales of juice 502 as an example of the "target variable" to be estimated. ID501 is an identifier that specifies the target variable. The sales of juice 502 are the number of juice sold on the same day at a certain store. As an example, the sales of juice 502 are "20 (bottles)", "22 (bottles)", "33 (bottles)".

[0044] In the target variable DB111, the target variable is stored for each ID501.

[0045] FIG. 6 is a diagram showing an example of the data structure of the condition DB according to Embodiment 1.

[0046] The condition DB112 is a table that stores, as item values (column values), condition ID601 and condition 602 as an example of the "branch condition". Condition ID601 is an identifier that specifies the branch condition. Condition 602 is a branch condition in the decision tree for estimating the target variable from the explanatory variables. As an example, condition 602 is "temperature > 20 (degrees)", "temperature > 22 (degrees)", "the day of the week is Sunday".

[0047] FIG. 7 is a diagram showing an example of the data structure of the conditioned explanatory variable DB according to Embodiment 1.

[0048] The conditioned explanatory variable DB113 is a table that stores, as item values (column values), ID701, "temperature > 20 (condition 0)" 702, "temperature > 22 (condition 1)" 703, "the day of the week is Sunday (condition 2)" 704, and "there is a person in the image (condition 3)" 705. ID501 is an identifier that specifies the conditioned explanatory variable. "Temperature > 20 (condition 0)" 502 is a branch condition where the temperature around a certain store on the same day is higher than 20 degrees. "Temperature > 22 (condition 1)" 503 is a branch condition where the temperature around a certain store on the same day is higher than 22 degrees. "The day of the week is Sunday (condition 2)" 504 is a branch condition where the day of the week at a certain store on the same day is Sunday. "There is a person in the image (condition 3)" 505 is a branch condition where there is a person in the image taken in front of the store the day before at a certain store.

[0049] Each column in FIG. 7 indicates whether each sample meets the condition with 0 and 1. If it meets the condition, "1" is stored; if it does not meet the condition, "0" is stored. However, the stored value only needs to indicate whether the condition is met, and it does not have to be "1, 0". For example, "true, false" or "True, False" may also be used.

[0050] FIG. 8 is a diagram showing an example of the data structure of the learning decision tree DB according to Embodiment 1.

[0051] In the decision tree DB114 shown at the upper part of FIG. 8, the features of the decision tree being created are stored. The decision tree DB114 is a table that stores, as item values (column values), a node ID801, a parent node 802, the truth value 803 of the condition of the parent node, a condition 804, an expected value 805 in the case of true, and an expected value 806 in the case of false.

[0052] The condition 804 is managed as a node, and the node ID801 of the parent node indicating the condition used for the condition, the truth value 803 of the condition of the parent node, the ID related to the condition of the node, and the predicted values for each truth value of the condition of the node are described. However, for the initially used condition 804, the parent node 802 and the truth value 803 of the condition of the parent node are not stored. Also, when there is a further branch of the condition 804, the predicted values for each truth value 803 of the condition of the parent node are not stored.

[0053] Note that the predicted value is the average value of the target variables of the divided samples. As a determination condition for using an estimator, for example, the case where the number of each of the samples divided by the condition is below a threshold can be considered. Or, the case where the reduction width of the prediction error is small, or the case where the depth of the decision tree exceeds the threshold, etc. can be considered. The threshold is stored in the learning data parameter DB115.

[0054] The decision tree based on the data stored in the decision tree DB114 at the lower part of FIG. 8 is shown. In this decision tree, when the condition 804 of "temperature > 22 (degrees)" is true (YES) at node ID: 0, it proceeds to the condition 804 of "day of the week is Sunday" at node ID: 1. When the condition 804 of "temperature > 22 (degrees)" is false (NO) at node ID: 0, the predicted value 806 for the false case is "10 (pieces)". When the condition 804 of "day of the week is Sunday" is true (YES) at node ID: 1, the predicted value 805 for the true case is "120 (pieces)". When the condition 804 of "day of the week is Sunday" is false (NO) at node ID: 1, the predicted value 806 for the false case is "90 (pieces)".

[0055] FIG. 9 is a diagram showing an example of the data structure of the learning parameter DB according to Embodiment 1. The learning parameter DB115 is a table that stores, as item values (column values), the minimum division parameter 901, the minimum prediction error reduction width 902, and the maximum decision tree severity 903. As an example, the minimum division parameter 901 is "10", the minimum prediction error reduction width 902 is "0.01", and the maximum decision tree severity 903 is "5". The setting of the parameters may be set by the user or may be fixed values. Or it may be in the form of trying multiple parameters.

[0056] FIG. 10 is a diagram showing the processing flow of the estimator learning device according to Embodiment 1. The system configuration will be described in the order of the processing flow.

[0057] Data including an explanatory variable and an objective variable is input to the input unit 101 (S1). The explanatory variable input to the input unit 101 is stored in the explanatory variable DB110, and the objective variable is stored in the objective variable DB111. Next, the condition generation unit 103 generates conditions for use in the branching of the decision tree (S2).

[0058] Next, the conditioned explanatory variable generation unit 104 generates a conditioned explanatory variable from the explanatory variable and stores the generated conditioned explanatory variable in the conditioned explanatory variable DB113 (S3).

[0059] Next, the QUBO problem conversion unit 105 searches for the conditions of the branch that minimizes the prediction error. Next, the condition determination unit 108 uses the branch conditions generated by the branch condition generation unit 107 to divide the data samples, determines whether to use the division for the estimator 12, and stores the determination result in the decision tree DB 114 (S6). If this determination result is true (S6: YES), since further division is performed for each of the divided sample groups, the process returns to the process flow S5. When this determination result is false (when there are no more sample groups to divide) (S6: NO), the condition determination unit 108 proceeds to the next process flow S7.

[0060] Next, the QUBO problem calculation unit 106 calculates the QUBO problem converted by the QUBO problem conversion unit 105, and the branch condition generation unit 107 generates the conditions for branching (S5).

[0061] Next, the condition determination unit 108 uses the branch conditions generated by the branch condition generation unit 107 to divide the data samples, determines whether to use the division for the estimator 12, and stores the determination result in the decision tree DB 114 (S6). If this determination result is true (S6: YES), since further division is performed for each of the divided sample groups, the process returns to the process flow S5. When this determination result is false (when there are no more sample groups to divide) (S6: NO), the condition determination unit 108 proceeds to the next process flow S7.

[0062] Next, the output unit 102 outputs the characteristics of the decision tree stored in the decision tree DB 114. That is, the output unit 102 outputs the parameters obtained by learning (S7).

[0063] According to this configuration, an estimator learning device that learns an estimator 12 for searching for a branching condition of a decision tree that estimates a target variable from data of explanatory variables, the estimator 12 includes a QUBO problem conversion unit 105, a QUBO problem calculation unit 106, and a branching condition generation unit 107. The QUBO problem conversion unit 105 converts a prediction error minimization problem in the search for a branching condition into a QUBO problem. The QUBO problem calculation unit 106 calculates the QUBO problem converted by the QUBO problem conversion unit. The branching condition generation unit 107 generates a branching condition based on the calculation result of the QUBO problem calculation unit 106. Thereby, the estimation accuracy of the branching condition of the decision tree can be improved.

Embodiment

[0064] A specific example of the estimator learning device according to Embodiment 2 of the present invention will be described with reference to the drawings. Note that the present invention is not limited by the embodiments, but is indicated by the claims.

[0065] FIG. 11 is a decision tree including conditions that can be expressed by a logical product according to Embodiment 1. FIG. 12 is a diagram for explaining a method of expressing a logical product condition according to Embodiment 2.

[0066] In the present Embodiment 2, an example in which a QUBO problem conversion unit 1005 different from that in Embodiment 1 is applied is disclosed, showing that not only one condition but also conditions that can be expressed by a logical product of the condition are included.

[0067] Branching using conditions that can be expressed by a logical product is a condition of whether all two conditions of "temperature > 30" and "day of the week is Sunday" such as "temperature > 30 and Sunday" as shown in FIG. 11 are satisfied. The conditions are not limited to two, and any number of conditions described in the condition DB112 can be used. Such conditions that can be expressed by a logical product of conditions are called logical product conditions.

[0068] Therefore, as a method of expressing conditions, instead of using the condition ID, each condition is expressed as a vector indicating whether it is used or not as shown in FIG. 12. In the case of FIG. 12, the condition is "temperature > 30 and humidity > 50". Therefore, the QUBO problem conversion unit will search for the said vector.

[0069] The error function H in the search problem is represented by Equation (8) below.

Equation

[0070] KX is a matrix of QUBO variables indicating the number of conditions not satisfied among the conditions constituting the condition expressed by the logical product in sample i. KX[i][k] = 1 indicates that there are k conditions not satisfied among the conditions constituting the condition expressed by the logical product in sample i. That is, KX[i][0] = 1 indicates that all the conditions constituting the logical product condition are satisfied in sample i, indicating that it is true regarding the logical product condition. Conversely, not KX[i][0] = 0 indicates that it is false regarding the logical product condition.

[0071] There are multiple constraints in the QUBO problem. First, for all samples i, the following two constraints (1) and (2) need to hold. TIFF0007713408000009.tif16164

[0072] sc is a QUBO variable representing the logical product condition, and sc[j] = 1 indicates that condition j is used in the logical product condition. K is the maximum of the conditions constituting the logical product condition.

[0073] Also, the following constraint (3) needs to hold. TIFF0007713408000010.tif13147

[0074] The QUBO problem conversion unit 1005 generates a QUBO problem expressed by the error function and three types of constraints as described above.

[0075] According to this configuration, the branch condition generation unit 107 sets the search range of the branch condition as a condition generated from data in a table format divided for each branch or a condition expressed as a logical product of conditions. This makes it possible to expand the search range of the branch condition.

[0076] Note that the present invention is not limited to the above-described embodiments, and includes various modifications. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Also, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, or replace other configurations for a part of the configuration of each embodiment.

[0077] Also, each of the above configurations may be configured such that some or all of them are configured by hardware or by a program being executed by a processor. Also, the control lines and information lines show those considered necessary for explanation, and not all control lines and information lines are necessarily shown on the product. In practice, it may be considered that almost all configurations are interconnected.

[0078] For example, the QUBO problem conversion units 105 and 1005 may weight the error of each sample group in the sum of errors to be minimized, which is represented by the sum of errors of each sample group of data in a table format divided for each branch, by the number of samples in the sample group, a value proportional to the number of samples, or an output value of a function expressed by a sample coefficient or the number of samples and the sample coefficient, and convert the error minimization problem into a QUBO problem. As a result, since the error to be minimized becomes smaller, the estimation accuracy of the branch condition of the decision tree can be further improved.

[0079] The branch condition generation unit 107 may create a new branch condition based on the decision tree that has searched for the branch condition. Thereby, a deep decision tree can be created.

[0080] The branch condition generation unit 107 may create a plurality of decision trees, and combine the created plurality of decision trees to create a new decision tree. Thereby, the estimation accuracy of the branch conditions of the decision tree can be further improved.

[0081] Based on the calculation result of the QUBO problem calculation unit 106, it may include an importance calculation unit that calculates the importance of the branch condition, and a display unit 102 that displays the importance calculated by the importance calculation unit. Thereby, the user can determine the branch condition while checking the importance.

[0082] It may include a display unit 102 that displays the importance of the conditions generated by the branch condition generation unit 107. Thereby, the user can determine the branch condition while checking the importance.

Explanation of symbols

[0083] 12…Estimator, 100…Estimator learning device, 102…Output unit, 105…QUBO problem conversion unit, 106…QUBO problem calculation unit, 107…Branch condition generation unit, 109…Objective variable estimation unit

Claims

1. An estimator learning device that learns an estimator for searching for a branching condition of a decision tree that estimates a target variable from data of explanatory variables, wherein the estimator includes: a QUBO problem conversion unit that converts a prediction error minimization problem in the search for the branching condition into a QUBO problem or a first problem equivalent to the QUBO problem; a QUBO problem calculation unit that calculates the first problem converted by the QUBO problem conversion unit; a branching condition generation unit that generates the branching condition based on the calculation result of the QUBO problem calculation unit.

2. The QUBO problem conversion unit weights the error of each sample group in the data in table form divided for each branch, which is the error to be minimized represented by the sum of errors of each sample group, by the number of samples in the sample group, a value proportional to the number of samples, or an output value of a function expressed by a sample coefficient or the number of samples and the sample coefficient, and converts the error minimization problem into the first problem. The estimator learning device according to claim 1.

3. The branching condition generation unit sets the search range of the branching condition to a condition generated from the data in table form divided for each branch or a condition expressed by a logical product of the conditions. The estimator learning device according to claim 1.

4. The branching condition generation unit creates a new branching condition based on the decision tree in which the branching condition has been searched. The estimator learning device according to claim 1.

5. The branching condition generation unit creates a plurality of the decision trees, and combines the plurality of created decision trees to create a new decision tree. The estimator learning device according to claim 4.

6. It includes a target variable estimation unit that estimates the target variable using the learned estimator. The estimator learning device according to claim 1.

7. The QUBO problem calculation unit is an annealing machine. The estimator learning device according to claim 1.

8. an importance calculation unit that calculates the importance of the branching condition based on the calculation result of the QUBO problem calculation unit; a display unit that displays the importance calculated by the importance calculation unit. The estimator learning device according to claim 1.

9. It includes a display unit that displays the importance of the condition generated by the branching condition generation unit. The estimator learning device according to claim 2. ?

Citation Information

Patent Citations

  • System for generating decision tree in database

    JP1998222370A

  • Decision tree generating method and model structure generating device

    JP2004157814A

  • Leaning device and leaning method

    JP2020030699A

  • Ising machine data input apparatus and method for inputting data in ising machine

    JP2021002322A

  • Computer Program Stored in Computer Readable Medium and Database Server Transforming Decision Table Into Decision Tree

    US20190392332A1