Predictor creation support system and predictor creation support method
The system addresses the challenge of invalid predictors by decomposing and evaluating components across datasets, enabling valid prediction formula estimation.
Patent Information
- Application Number
- JP2022031957
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-03-02
- Publication Date
- 2025-08-13
- Estimated Expiration
- 2042-03-02
AI Technical Summary
Existing predictor generation methods are susceptible to defects and noise when data sets are insufficient, making it difficult to determine the validity of calculated prediction formulas.
A system and method that supports predictor creation by decomposing predictors into components, evaluating their agreement using separate datasets, and estimating prediction formulas based on selected components to ensure validity.
Enables the determination of the validity of prediction formulas, ensuring reliable predictions even with limited data.
Smart Images

Figure 0007722946000001 
Figure 0007722946000002 
Figure 0007722946000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a predictor creation support system and a predictor creation support method. [Background technology]
[0002] In recent years, artificial intelligence (AI) technology has been applied to a variety of tasks. For example, predictors generated by machine learning of experimental data sets are used to explore optimal formulations of new materials and optimal social policies. Prediction formulas that represent the rules used by such predictors are useful as explicit knowledge about the laws underlying complex phenomena.
[0003] Non-Patent Document 1 and Patent Document 1 disclose techniques for calculating a prediction formula from a dataset used to generate a predictor. The technique described in Non-Patent Document 1 decomposes a dataset into components of main effects and components of interaction effects on predicted values, and calculates a generalized additive model such as a cubic spline function representing each component as a prediction formula. Patent Document 1 also discloses a technique for converting rules learned by a neural network from a dataset into a decision tree model that can be interpreted by the user and calculating the result as a prediction formula. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2002-109508 [Non-patent literature]
[0005] [Non-Patent Document 1] Yin Lou, Rich Caruana, Johannes Gehrke, Giles Hooker, "Accurate Intelligible Models which Pairwise Interactions", Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining (KDD'13), August 2013. Summary of the Invention [Problem to be solved by the invention]
[0006] However, in the techniques described in Non-Patent Document 1 and Patent Document 1, if the amount of data in the data set is insufficient, the predictor generated by machine learning may have defects or may be strongly affected by noise in the data set itself. In such cases, it may be impossible to determine the validity of the calculated prediction formula.
[0007] An object of the present invention is to provide a predictor creation support system and a predictor creation support method that are capable of determining the validity of a prediction formula used in prediction by a predictor. [Means for solving the problem]
[0008] A prediction formula creation support system according to one aspect of the present disclosure is a predictor creation support system that supports the creation of a predictor, and includes: a predictor creation unit that creates a first predictor based on a first dataset and a second predictor based on a second dataset; a component decomposition unit that decomposes the first predictor into a plurality of first components corresponding to each combination of first explanatory variables included in the first dataset and decomposes the second predictor into a plurality of second components corresponding to each combination of second explanatory variables included in the second dataset; an evaluation unit that generates evaluation information that evaluates the degree of agreement between the first components and the second components for each of the first components and the second components that correspond to each other; and a prediction formula estimation unit that estimates a prediction formula used for prediction by the first predictor based on selected components, which are the first components selected in accordance with the evaluation information. [Effects of the Invention]
[0009] According to the present invention, it is possible to determine the validity of the prediction formula used in the prediction by the predictor. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 is a diagram illustrating an example of the configuration of a prediction formula creation support system according to an embodiment of the present disclosure. [Figure 2] FIG. 10 illustrates an example of the configuration of a validity analysis unit. [Figure 3] FIG. 10 is a diagram illustrating an example of a function template table. [Figure 4] FIG. 10 is a diagram illustrating an example of a search function template table. [Figure 5] 10 is a flowchart illustrating an example of the operation of the prediction formula creation support system. [Figure 6] FIG. 10 is a diagram illustrating an example of a user screen. [Figure 7] 10 is a flowchart illustrating an example of a component tendency analysis process. [Figure 8] FIG. 10 is a diagram illustrating an example of generating a component decomposition dataset. [Figure 9] FIG. 10 is a diagram illustrating an example of a component data management table. [Figure 10] FIG. 10 is a diagram illustrating an example of a trend analysis process. [Figure 11] FIG. 10 is a diagram illustrating an example of trend comparison information. [Figure 12] FIG. 10 is a diagram illustrating an example of a user screen. [Figure 13] FIG. 10 is a diagram illustrating an example of a user screen. [Figure 14] FIG. 10 is a diagram illustrating an example of a user screen. [Figure 15] FIG. 10 is a diagram illustrating an example of validity supporting information. DETAILED DESCRIPTION OF THE INVENTION
[0011] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. [Example]
[0012] FIG. 1 is a diagram illustrating an example configuration of a prediction formula creation support system according to an embodiment of the present disclosure. The prediction formula creation support system 10 is configured, for example, by a computer system including a processor (computer) and memory (neither of which is shown). In this case, at least a portion of the components and functions described below are realized, for example, by the processor reading a program and executing the read program. The program can be recorded on a computer-readable recording medium such as memory. The prediction formula creation support system 10 may also be connected to input devices such as a keyboard, touch panel, and pointing device that receive various information from users, output devices such as a display device and printer that output various information to users, and network interface devices that transmit and receive various information via a communication network such as the Internet.
[0013] The prediction formula creation support system 10 shown in FIG. 1 includes a data reading unit 100, a predictor creation unit 110, a component decomposition unit 120, a validity analysis unit 130, a component selection unit 140, a prediction formula search unit 150, a prediction formula creation unit 160, and a residual generation unit 170.
[0014] The data reading unit 100 reads the prediction target data 11 and the verification data 12, and selects explanatory variables and objective variables for each of the read prediction target data 11 and verification data 12. The data reading unit 100 also defines a correspondence relationship between the explanatory variables and objective variables of the prediction target data 11 and the explanatory variables and objective variables of the verification data 12.
[0015] The prediction target data 11 is a first data set for generating a predictor, and the verification data 12 is a second data set for verifying the validity of a prediction formula (a prediction formula representing rules used in the predictor) used in the predictor. In this embodiment, the prediction target data 11 and the verification data 12 are data sets including a plurality of variables that can be determined as explanatory variables and response variables. Note that the verification data 12 includes variables corresponding to at least some of the variables selected as explanatory variables of the prediction target data 101 and the variables selected as response variables of the prediction target data 101.
[0016] The data reading unit 100 outputs the explanatory variables and the response variable of the prediction target data 11 as prediction target data 101 to the predictor creation unit 110 and the residual generation unit 170. The data reading unit 100 also outputs the explanatory variables and the response variable of the verification data 12 as verification data 102 to the validity analysis unit 130.
[0017] The predictor creation unit 110 creates a target predictor, which is a first predictor, using prediction target data 101 and a predetermined machine learning model, and calculates the prediction accuracy of the target predictor. The predictor creation unit 110 outputs the target predictor and its prediction accuracy as predictor information 111 to the component decomposition unit 120. The predetermined machine learning model is not particularly limited, but is, for example, a supervised learning model such as XGBoost or a neural network.
[0018] The component decomposition unit 120 performs component decomposition processing and component analysis processing on the target predictor based on the predictor information 111, and outputs the processing results to the validity analysis unit 130 as component information 121.
[0019] The component decomposition process is a process of additively decomposing a target predictor into components (first components) that indicate the contribution of each combination of explanatory variables. The algorithm for performing the component decomposition process is not particularly limited, and examples thereof include Shapley decomposition, functional ANOVA, and GA2M.
[0020] Here, a combination of explanatory variables includes a combination consisting of a single explanatory variable. Below, a component corresponding to a single explanatory variable may be referred to as a main effect component or a component of the main effect, and a component corresponding to a combination of multiple explanatory variables may be referred to as a mutual effect component or a component of the mutual effect. Furthermore, a component corresponding to a single explanatory variable may be referred to as a first-order component, a component corresponding to a combination of two explanatory variables as a second-order component, and a component corresponding to a combination of three explanatory variables as a third-order component.
[0021] The component analysis process calculates the degree of influence that each component decomposed in the component decomposition process has on the predicted value. As will be described later, the influence can be used by the user to determine which components should be reflected in the prediction formula.
[0022] The validity analysis unit 130 generates validity analysis information 131 by evaluating the validity of each component included in the component information 121 based on the component information 121 and the verification data 102 , and outputs the generated validity analysis information to the component selection unit 140 .
[0023] Fig. 2 is a diagram showing an example configuration of the validity analysis unit 130. The validity analysis unit 130 shown in Fig. 2 includes a trend analysis unit 210, a predictor creation unit 220, a component decomposition unit 230, a trend analysis unit 240, and a trend comparison unit 250. The predictor creation unit 220, the component decomposition unit 230, and the trend analysis unit 240 have the same configurations as the predictor creation unit 110, the component decomposition unit 120, and the trend analysis unit 210, respectively.
[0024] The trend analysis unit 210 analyzes the tendency of the characteristics of each component included in the component information 121 , generates trend information 211 indicating the tendency, and outputs it to the trend comparison unit 250 .
[0025] Specifically, the trend analysis unit 210 first performs parameter fitting (parameter fitting) for each component included in the component information 121 between that component and each of a plurality of function templates prepared in advance, and determines a component function defined by the function template representing the characteristic trend of each component and the coefficients (parameters) of the function template. Next, the trend analysis unit 210 generates trend information 211 indicating a detailed trend and a general trend as the characteristic trend of each component based on the component function. The general trend is information indicating the characteristic trend from a macroscopic perspective compared to the detailed trend, and in this embodiment, is an increase / decrease trend indicating whether the component function is increasing or decreasing. In this embodiment, the plurality of function templates are stored in advance in the trend analysis unit 210 as a function template table.
[0026] 3 is a diagram showing an example of a function template table 300. The function template table 300 shown in FIG.
[0027] Field 310 stores a template ID, which is identification information for identifying a function template. Field 320 stores a function template. For example, a function template with a template ID of "T1" is "a*X+b", where a and b are coefficients. Field 330 stores a judgment condition for judging trend information from the coefficients of the component function. Field 340 stores a detailed trend according to the judgment condition. Field 350 stores an increase / decrease trend, which is a general trend according to the judgment condition.
[0028] When the explanatory variable of the component to be analyzed is X, the process of finding the coefficient that minimizes the error with the data of the component to be analyzed is called fitting. The trend analysis unit 210 finds the function template and its coefficient that minimizes the error as the component function, and finds the detailed trend and the increase / decrease trend based on the coefficient and the judgment condition.
[0029] The detailed trend may be, for example, a "linear increase" where a value increases linearly, a "linear decrease" where a value decreases linearly, a "decay" where a value converges to 0, a "saturation" where a value converges to a predetermined value other than 0, a "positive divergence" where a value diverges to a positive value at a rate faster than linear, or a "negative divergence" where a value diverges to a negative value at a rate faster than linear.
[0030] Returning to the explanation of Fig. 2, the predictor creation unit 220 creates a verification predictor, which is a second predictor, using the verification data 102 and a predetermined machine learning model, and calculates the prediction accuracy of the verification predictor. The predictor creation unit 220 outputs the created verification predictor and its prediction accuracy as predictor information 221 to the component decomposition unit 230. The predetermined machine learning model is the same as the machine learning model used when the predictor creation unit 110 created the target predictor.
[0031] The component decomposition unit 230 performs component decomposition processing and component analysis processing on the validation predictor based on the predictor information 221 , and outputs the processing results to the tendency analysis unit 240 as component information 231 .
[0032] The trend analysis unit 240 analyzes the tendency of the characteristics of each component included in the component information 231 , generates trend information 241 indicating the tendency, and outputs it to the trend comparison unit 250 .
[0033] The trend comparison unit 250 compares the trends of the characteristics of each component included in the trend information 211 and the trend information 241, evaluates the degree of coincidence of the characteristics of each component as the degree of coincidence of each component, generates evaluation information indicating the evaluation result as validity analysis information 131, and outputs it to the component selection unit 140. The trend analysis units 210, 240 and the trend comparison unit 250 constitute an evaluation unit that generates evaluation information evaluating the degree of coincidence of each component.
[0034] Returning to the explanation of Figure 1, the component selection unit 140 generates analysis visualization information 141 by visualizing the validity analysis information 131 and presents it to the user. The component selection unit 140 also receives from the user component selection information 103 that specifies the prediction formula target component, which is the component to be reflected in the estimation of the prediction formula of the target predictor, according to the analysis visualization information 141, and selects the prediction formula target component based on the component selection information 103. The component selection unit 140 generates selected component information 142 that indicates the prediction formula target component and outputs it to the prediction formula search unit 150.
[0035] The prediction formula search unit 150 and the prediction formula creation unit 160 constitute a prediction formula estimation unit that estimates the prediction formula used for prediction by the target predictor based on the prediction formula target component included in the selected component information 142.
[0036] For each prediction formula target component included in the selected component information 142, the prediction formula search unit 150 performs fitting between that prediction formula target component and each of a plurality of search function templates prepared in advance, and obtains a prediction formula representing each prediction formula target component as a partial prediction formula. The prediction formula search unit 150 generates partial prediction formula information 151 indicating the partial prediction formula and outputs it to the prediction formula creation unit 160. In this embodiment, the plurality of search function templates are stored in advance in the prediction formula search unit 150 as a search function template table.
[0037] Fig. 4 is a diagram showing an example of a search function template table 400. The search function template table 400 shown in Fig. 4 has fields 410 to 420. Field 410 stores a template ID, which is identification information for identifying a search function template. Field 420 stores a search function template. Similar to the trend analysis section 210, the prediction formula search section 150 performs fitting for each prediction formula target component included in the selected component information 142, and determines the search function template and its coefficients that minimize the error as a partial prediction formula.
[0038] Returning to the explanation of Fig. 1, the prediction formula creation unit 160 generates an estimated prediction formula by estimating the prediction formula used in prediction by the target predictor, based on partial prediction formula information 151, and outputs prediction formula information 161 indicating the estimated prediction formula to the residual generation unit 170. Specifically, each time partial prediction formula information 151 is generated, the prediction formula creation unit 160 generates an estimated prediction formula by adding the partial prediction formula indicated in the partial prediction formula information 151. In other words, the prediction formula creation unit 160 generates (updates) an estimated prediction formula by adding the partial prediction formula indicated in the newly generated partial prediction formula information 151 to the estimated prediction formulas obtained so far.
[0039] The residual generation unit 170 calculates a prediction residual, which is the difference between the dependent variable of the prediction target data 101 and the predicted value of the prediction formula information 161, and outputs residual information 711 indicating the prediction residual to the predictor creation unit 110 as a new dependent variable.
[0040] FIG. 5 is a flowchart for explaining an example of the operation of the prediction formula creation support system 10. First, the data reading unit 100 reads the prediction target data 11 and the verification data 12 in response to an instruction from a user, and determines the explanatory variables and the objective variables in the prediction target data 11 and the verification data 12, respectively (step S510).
[0041] 6 is a diagram showing an example of a read instruction screen, which is a user screen for a user to give instructions to the data reading unit 100. The read instruction screen 600 shown in FIG. 6 includes a prediction target data setting unit 610, a verification data setting unit 620, a verification data adding unit 630, and an analysis execution trigger 640.
[0042] The prediction target data setting section 610 is a setting section for setting the objective variable, explanatory variables, and order of analysis for the prediction target data 11, and includes a file selection section 611, a file name display section 612, a variable name display section 613, an objective variable setting section 614, an explanatory variable setting section 615, an analysis order setting section 616, and an explanatory variable selection button 617.
[0043] The file selection section 611 is an interface for the user to select a file including the prediction target data 11. The file name display section 612 displays the file name of the file selected in the file selection section 611. The variable name display section 613 displays the variable names of the variables of the prediction target data 11 included in the file selected in the file selection section 611.
[0044] The objective variable setting section 614 is an interface for setting an objective variable from a variable with a variable name in the variable name display section 613. Here, the variable with that variable name is set as the objective variable by operating (e.g., clicking) the cell displaying the variable name. In the example shown in the figure, the variable x4 is set as the objective variable.
[0045] The explanatory variable setting unit 615 is an interface for setting explanatory variables from the variables of the variable name in the variable name display unit 613. Note that when the explanatory variable selection button 617 is operated with the objective variable selected, a variable other than the objective variable may be automatically set as an explanatory variable and reflected in the explanatory variable setting unit 615. Naturally, the user can also set any explanatory variable by directly operating the explanatory variable setting unit 615. The analysis order setting unit 616 is an interface for setting the analysis order of each component for the prediction target data. The analysis order is the maximum order for analyzing a component.
[0046] The validation data setting unit 620 is a setting unit for setting the objective variable, explanatory variables, and order of analysis for the validation data 12, and includes a file selection unit 621, a file name display unit 622, a variable name display unit 623, a corresponding variable setting unit 624, an explanatory variable setting unit 625, an order of analysis setting unit 626, and an explanatory variable selection button 627. Note that a validation data setting unit 620 is provided for each validation data 12.
[0047] The file selection section 621 is an interface for the user to select a file containing the verification data 12. The file name display section 622 displays the file name of the file selected in the file selection section 621. The variable name display section 623 displays the variable names of the variables of the verification data 12 included in the file selected in the file selection section 621.
[0048] The corresponding variable setting section 624 is an interface for setting corresponding variables, which are variables of the prediction target data 11 displayed in the variable name display section 623 that correspond to each variable of the verification data 12 displayed in the variable name display section 623. If there is no corresponding variable, the cell corresponding to that variable will be left blank.
[0049] The explanatory variable setting unit 615 is an interface for setting explanatory variables from the variables of the variable name in the variable name display unit 623. Note that when an explanatory variable selection button 627 is operated with a corresponding variable selected, the variable set as the corresponding variable may be automatically set as an explanatory variable and a target variable and reflected in the explanatory variable setting unit 625. This operation corresponds to setting the explanatory variables of the validation data 12 to a maximum subset of the explanatory variables of the prediction target data 11 (a set consisting of only explanatory variables corresponding to the explanatory variables of the prediction target data 11). The analysis order setting unit 626 is an interface for setting the analysis order of each component of the validation data.
[0050] Generally, when the correlation between explanatory variables is high, the explanatory variables focused on by the predictor vary greatly depending on the initial values of the learning process, and therefore the main and interactive effects of the predictor also vary greatly. For this reason, it is preferable to have the minimum number of explanatory variables in the validation data for verifying each component of the prediction target data, which can be achieved by setting the explanatory variables in the validation data to the largest subset of the explanatory variables of the prediction target data.
[0051] The verification data adding unit 630 is an interface for adding new verification data. When the verification data adding unit 630 is operated, a new verification data file is read and a new verification data setting unit 620 is created.
[0052] The analysis execution trigger 640 is a start button for starting analysis execution, and when operated, starts analysis processing using the information set on the read instruction screen 600, which will be described in the following step S511 and subsequent steps. In the subsequent processing, the variable names of the verification data 12 are unified with the variable names of the prediction target data 11 associated by the associated variable setting unit 624.
[0053] Returning to the explanation of Fig. 5, the predictor creation unit 110 and the component decomposition unit 120 execute component tendency analysis processing on the prediction target data 11 (step S511).
[0054] FIG. 7 is a flowchart illustrating an example of the component tendency analysis process.
[0055] In the component tendency analysis process, first, the predictor creation unit 110 creates a target predictor that predicts a dependent variable from the explanatory variables set in step S510 based on the prediction target data 11 and a predetermined machine learning model, and evaluates the prediction accuracy of the target predictor (step S710).
[0056] In evaluating prediction accuracy, the predictor creation unit 110 may use five-fold cross-validation to divide the prediction target data 11 into training data and accuracy evaluation data, and evaluate the prediction accuracy of a predictor trained on all data. For example, prediction accuracy is the prediction error or coefficient of determination for regression problems, and the accuracy rate for classification problems. Prediction accuracy is an index for determining whether a predictor has been properly trained, and can therefore be used to determine whether to terminate the prediction formula creation process.
[0057] The component decomposition unit 120 performs a component decomposition process to additively decompose the predictor created by the predictor creation unit 110 into main effect components and interaction effect components of each explanatory variable of the prediction target data 11 (step S711). More specifically, the component decomposition unit 120 performs a component decomposition process to additively decompose the predictor created by the predictor creation unit 110 into main effect components and interaction effect components of each explanatory variable of the prediction target data 11 (step S711). n} is expanded in a series of explanatory variables X as shown in the following equation (1). M(X)=F0+ΣF i (x i )+ΣF i , j (x i ,x j )+ΣF i,j,k (x i ,x j ,x k )+... (1)
[0058] The first term F0 on the right side of equation (1) represents the zeroth-order action (constant) component. i (x i ) is the explanatory variable x i represents the component of the first-order action (main effect) on the predicted value. i,j (x i ,x j ) is the explanatory variable x i and x j (where i≠j) indicates the component of the second-order effect (second-order interaction effect) on the predicted value. The third and subsequent terms on the right-hand side of equation (1) are decomposed using the same rules. Note that i = {1, 2, ..., n} and j = {1, 2, ..., n}.
[0059] The predictor creation unit 110 performs component decomposition processing on the target predictor up to the analysis order term set in the analysis order setting unit 616 in Fig. 6. Generally, lower-order effects have a stronger influence on the predicted value, so third-order and higher effects are often not required.
[0060] Algorithms for performing component decomposition generally perform component decomposition by inputting multiple pieces of input data into a predictor and statistically analyzing the relationship between the input data and the predicted values of the predictor. To perform additive decomposition of two or more predictors using the same criteria and compare their components, as in this embodiment, it is preferable that the distributions of the input data input to those predictors, i.e., the distributions of the explanatory variables common to the target data and the validation data, are identical. However, the data distributions of the explanatory variables between the prediction target data 11 and the validation data 12 generally differ from each other. Therefore, in this embodiment, the predictor creation unit 110 generates a component decomposition dataset, which is a third dataset for performing component decomposition on the predictor, based on the prediction target data 11 and the validation data 12, and performs component decomposition using the component decomposition dataset.
[0061] Fig. 8 is a diagram for explaining an example of generating a component decomposition dataset. Fig. 8 shows an example in which a dataset common to first validation data (referred to as validation data 1 in the figure) and second validation data (referred to as validation data 2 in the figure) is generated as the component decomposition dataset for an explanatory variable x1 of data to be predicted.
[0062] The component decomposition unit 120 first detects the minimum value of the explanatory variable x1 for each of the prediction target data, the first validation data, and the second validation data, and then determines the maximum value among these minimum values as the minimum value 810 (x 1min ) of the explanatory variable x1 of the component decomposition dataset. The component decomposition unit 120 detects the maximum value of the explanatory variable x1 for each of the data to be predicted, the first validation data, and the second validation data, and sets the smallest value among these maximum values as the maximum value 820 (x 1max) and the component decomposition unit 120 sets the minimum value 810(x 1min ) to a maximum value of 820(x 1max ) are randomly generated as the values of the explanatory variable x1 of the component decomposition dataset. The number of component decomposition datasets is not particularly limited, but may be, for example, 1000 or more.
[0063] If there is no overlapping domain of explanatory variable x1 between the data to be predicted and the first and second validation data, the decomposition unit 120 determines the domain of explanatory variable x1 of the data to be predicted as the domain 830 of explanatory variable x1 of the decomposition data set. If explanatory variable x1 is only included in the data to be predicted, the decomposition unit 120 makes domain 830 the same as the domain of explanatory variable x1 of the data to be predicted. If explanatory variable x1 is included in only one of the first validation data and the second validation data, the decomposition unit 120 sets the domain of that validation data as domain 830, and if explanatory variable x1 is included in only both the first validation data and the second validation data, the decomposition unit 120 sets the overlapping portion of the domains of the first validation data and the second validation data as domain 830.
[0064] The component decomposition unit 120 performs the above process on all explanatory variables to obtain each explanatory variable of the component decomposition dataset. Furthermore, the component decomposition process using the component decomposition dataset is extremely effective for algorithms such as Shapley decomposition, in which the characteristics of each component after decomposition can change significantly when the distribution of input data to the predictor differs.
[0065] Returning to the description of Fig. 7, the component decomposition unit 120 performs a component analysis process to calculate the degree of influence on the predicted value for each component obtained in the component decomposition process of step S711 (step S712).
[0066] In this embodiment, the influence is calculated using the following average absolute value sum: i The influence of the 0th order component F0 on thei Impact Index I i and the second-order component F i,j Impact Index I i,j can be calculated as shown in equations (2) to (4). I0=F0(1) I i =Σ d |F i (x i,d )| / N (2) I i,j =Σ d |F i,j (x i,j,d )| / N (3) Here, d is the identification number of the data included in the component decomposition dataset. N is the number of data included in the component decomposition dataset. Similar calculations can be performed for higher-order components from the third order onwards. The greater the influence, the more important the component is in the predictor.
[0067] The component decomposition unit 120 may organize and manage the analysis results of the component analysis process.
[0068] 9 is a diagram showing an example of a component data management table in which the analysis results of the component analysis process are organized. The component data management table 900 shown in FIG.
[0069] The data set management table 910 is information for managing the data sets (prediction target data 11 and verification data 12) read in step S510, and includes fields 911 to 914.
[0070] Field 911 stores a dataset name indicating the name of the dataset. Field 912 stores a data attribute indicating whether the dataset is data to be predicted or data for validation. Field 913 stores a dataset ID, which is identification information for identifying the dataset. The dataset ID is automatically assigned by, for example, the prediction formula creation support system 10. Field 914 stores an analysis result ID, which is identification information for identifying the analysis results obtained in the processing of steps S710 to S712.
[0071] The analysis result management table 920 is information for managing the analysis results for each data set, and includes fields 921 to 925. The analysis result management table 920 is set for each analysis result ID.
[0072] Field 921 stores a component attribute indicating the order of the whole (the whole predictor) or each component. Field 922 stores the prediction accuracy of the predictor calculated in step S710 when the component attribute is "whole." In the example of FIG. 9, the prediction accuracy is the coefficient of determination. The coefficient of determination is an index showing how superior the predicted value actually obtained by the predictor is compared to when the average value of the correct values is used as the predicted value, and is therefore preferable as an index showing whether the predictor is able to properly learn rules from data rather than the prediction error.
[0073] Field 923 stores the degree-level influence, which is the degree of influence of each component in degree units. The degree-level influence is the average value of the influence of all the combinations of explanatory variables at the corresponding degree. For example, in the case of a first-order component, the degree-level influence is the average value of the influence of the components F1 to F2 calculated in the process of step S712. n Influence of I1~I n is the average value of
[0074] Field 924 stores the influence of each component calculated in step S712. Field 925 stores the component data ID, which is identification information for identifying each component. In the example of Figure 9, an example of an analysis result management table with an analysis result ID of "A1" is shown, so all component data IDs are written with symbols starting with "A1".
[0075] Returning to the explanation of Fig. 7, the trend analysis unit 210 of the validity analysis unit 130 analyzes the tendency of the characteristics of each component obtained in the component decomposition process in step S711, performs trend analysis process to generate trend information for each component (step S713), and ends the component trend analysis process.
[0076] FIG. 10 is a diagram for explaining an example of the trend analysis process. In FIG. 10, the component of the interaction effect of explanatory variables x1 and x2 on the predictor M (F 1,2 An example is shown where the trend of (x1,x2) is estimated with respect to the explanatory variable x1.
[0077] Plot 1010 shown in FIG. 10 is a graph of the predicted value of predictor M versus component F 1,2 The contribution of (x1, x2) is plotted with the explanatory variable x1 on the horizontal axis, and the component interaction effect F 1,2 This is called the dependency plot of (x1, x2) with respect to the explanatory variable x1. The contribution is calculated by the component decomposition algorithm.
[0078] The tendency of the interaction effect components changes depending on the value of the explanatory variable (here, explanatory variable x2) that is paired with the explanatory variable of interest (here, explanatory variable x1), which is the explanatory variable of interest, so the tendency analysis unit 210 acquires the tendency when the paired explanatory variable is greater than a predetermined threshold (denoted as th2_x2 in the figure) as trend information related to the variable of interest. In other words, the trend analysis unit 210 calculates trend information by performing fitting using a function template on only data in the plot 1010 that satisfies x2>th2_x2 (shown as black circles in the figure).
[0079] 10 shows the results of the trend analysis process obtained by fitting. The result table 1020 has fields 1021 to 1026.
[0080] Field 1021 stores a template ID. Field 1022 stores a function template. Field 1023 stores optimal coefficients, which are coefficients obtained by fitting. Field 1024 stores error information indicating the degree of error between the optimal coefficients and the component data to be analyzed when the optimal coefficients are applied to the function template. In the example of FIG. 10, the error information is RMSE (Root Mean Square Error). Field 1025 stores detailed trends, and field 1026 stores increasing / decreasing trends.
[0081] The trend analysis unit 210 performs fitting for all function templates included in the function template table 300, and determines the trend of the component function defined by the function template with the smallest error and the coefficients of that function template as the trend of the component characteristics. 1,2 The detailed trend for x1 in (x1, x2) is "saturation", and the increase / decrease trend indicates "increase".
[0082] Interaction effect components (F 1,2 The trend related to the explanatory variable x2 of (x1, x2) can be calculated in a similar manner. Similarly, for third-order and higher-order components, fitting can be performed only on data for which explanatory variables other than the variable of interest are greater than a predetermined threshold, thereby enabling the trend related to the explanatory variable of interest to be calculated. The predetermined threshold may be set by the user or automatically by the trend analysis unit 210. Specifically, the trend analysis unit 210 sets the threshold based on the relationship between the maximum and minimum values of the explanatory variables other than the variable of interest. For example, when calculating the threshold th2_x2 for the explanatory variable x2, the trend analysis unit 210 calculates the threshold th2_x2 using the maximum value x2max and minimum value x2min of the explanatory variable x2 as shown in Equation (5). In Equation (5), A is a constant, such as 0.9. th2_x2=(x2max−x2min)*A+x2min (5)
[0083] Returning to the explanation of FIG. 5, the tendency analysis unit 210 refers to the component data management table 900 managed by the component decomposition unit 120, presents the prediction accuracy of the target predictor to the user, and then receives input information from the user indicating whether or not to terminate the process. The tendency analysis unit 210 checks the input information and determines whether or not to terminate the process (step S512). Note that, because the user determines whether or not to terminate the process based on the prediction accuracy, it is preferable that the prediction accuracy be a coefficient of determination. In this case, if the coefficient of determination is equal to or less than a predetermined value (e.g., 0.1), the tendency analysis unit 210 may determine that it is difficult to extract a meaningful prediction formula from the predictor, and may prompt the user to terminate the process.
[0084] If it is determined not to end the processing (step S512: No), the validity analysis unit 130 executes processing equivalent to the component trend analysis processing of steps S710 to S713 for any of the verification data 102 to update the component data management table 900 and generate trend information 241 for the verification data 102 (step S520). Note that for the verification data 102, the processing corresponding to step S710 is executed by the predictor creation unit 220, the processing corresponding to steps S711 and S712 is executed by the component decomposition unit 230, and the processing corresponding to step S713 is executed by the trend analysis unit 240.
[0085] Next, the validity analysis unit 130 determines whether the component trend analysis process has been performed on all of the verification data (step S521). If the component trend analysis process has not been performed on all of the verification data (step S521: No), the validity analysis unit 130 returns to the process of step S520.
[0086] When the component trend analysis process has been performed on all the verification data (step S521: Yes), the trend comparison unit 250 compares the trends of the characteristics of each component contained in the trend information 211 and the trend information 241, evaluates the degree of agreement of the characteristics of each component as the degree of agreement of each component, and generates evaluation information indicating the evaluation result as validity analysis information 131 and outputs it to the component selection unit 140 (step S540).
[0087] 11 is a diagram showing trend comparison information 1100, which is an example of the validity analysis information 131. The trend comparison information 1100 shown in FIG.
[0088] Field 1110 stores a component name indicating the name of the component. Field 1120 stores a prediction target data trend, which is a detailed trend of the prediction target data 101 for that component. Field 1130 stores a verification data trend, which is a detailed trend of the verification data 102 for that component. Field 1140 stores correlation information, which is a correlation coefficient between each component of the prediction target data 101 and each component of each verification data 102. Note that if the target component does not exist in all of the verification data 102, the field for that component will be blank or will contain "no information."
[0089] Field 1150 stores a match determination result indicating whether the trend of each component of the prediction target data 101 matches the trend of each component of each verification data 102. Here, the match determination result indicates whether the increase / decrease trends match, but is not limited to this example. For example, the match determination information may indicate "match" when the value of the correlation coefficient is greater than a threshold, and "mismatch" when the value of the correlation coefficient is less than the threshold. The match determination result may also indicate whether the detailed results match. The match determination result may also be a combination of these.
[0090] A field 1160 stores a component data ID, which is identification information for identifying each component. A field 1170 stores a data set ID.
[0091] The trend comparison information 1100 is information that summarizes the degree of agreement between each component of the prediction target data 101 and the verification data 102, and is information that can help the user determine the validity of each component based on domain knowledge.
[0092] Returning to the explanation of Figure 5, the component selection unit 140 presents the user with a selection instruction screen, which is a user screen showing analysis visualization information 141 that visualizes the component data management table 900 and trend comparison information 1100. Thereafter, the component selection unit 140 receives component selection information 103 from the user that specifies the components to be reflected in the prediction formula, selects the components to be reflected in the prediction formula based on the component selection information 103, and outputs selected component information 142 related to the selected components to the prediction formula search unit 150 (step S541).
[0093] Fig. 12 is a diagram showing an example of a selection instruction screen. The selection instruction screen 1200 shown in Fig. 12 includes a component order of interest selection section 1210, a display method switching section 1220, an order level influence display section 1230, a component plot comparison display section 1240, and a prediction formula creation execution trigger 1250.
[0094] The component of interest order selection unit 1210 is a selection tab for switching the component of interest order, which is the order of the component to be displayed in the component plot comparison display unit 1240. Fig. 10 shows an example in which information about the first-order component (main effect) and the second-order component (second-order interaction effect) is simultaneously displayed in a two-dimensional arrangement. When the user selects the first-order tab, information about only the first-order component is displayed in a one-dimensional arrangement. The component of interest order selection unit 1210 displays selection tabs for the number of orders input in the analysis order setting unit 616.
[0095] The display method switching unit 1220 is an interface for switching between a full display, which displays information about all components of the component order of interest, and a high-influence display, which displays only the components with high influence among the components of the component order of interest. In Fig. 12, the full display is selected. When the high-influence display is selected, the user is prompted to input the number of components to be displayed, and information about the number of components corresponding to the input is displayed in the component plot comparison display unit 1240.
[0096] FIG. 13 is a diagram showing an example of a selection instruction screen in which the "Highest Influence Display" is selected. The selection instruction screen 1300 shown in FIG. 13 displays information about components corresponding to a set value in descending order of influence. The set value is determined, for example, based on the value input to the display method switching unit 1220 and the component influence information in the component data management table 900. Because components with a high influence have a significant effect on the predicted value, displaying only components with a high influence can improve the user's analysis efficiency. Note that the selection instruction screen 1300 may also be provided with a sorting function that displays information about components with a higher influence at the top. Furthermore, the display format is not limited to these examples, as long as it displays information about components, such as evaluation information, in a format according to influence.
[0097] The order level influence display section 1230 is a display section that visualizes the order level influence of the component data management table 900 in a bar graph, and displays the order level influence up to the analysis order input in the analysis order setting section 616.
[0098] The component plot comparison display section 1240 is a display section that displays a list of the processing results of the component trend analysis processing in the form of a dependency plot. The figure shows an example in which the processing results of the component trend analysis processing are two-dimensionally arranged in an n x n grid with dependency plots of both first- and second-order components. The dependency plots on the diagonal line show the first-order components (main effects), and the other dependencies show the second-order components (interaction effects) due to the explanatory variables shown on the vertical and horizontal axes.
[0099] The component plot comparison display section 1240 includes a component plot 1241 , match determination information 1242 , a detailed comparison display section 1243 , and an import component selection section 1244 .
[0100] The component plot 1241 is a dependency plot of the target component of the order of interest included in the component information 121. The color of the graph frame of the component plot 1241 may differ depending on whether or not validation data 102 matching the trend of the target component has been detected. Whether or not it has been detected can be easily determined.
[0101] The match determination information 1242 is legend information indicating the correspondence relationship of the degree of match between each component of the prediction target data and each component of each verification data 102, and in this embodiment indicates any of "match," "mismatch," "both," and "no information." For example, for each component, the match determination information 1242 indicates "match" when the characteristics of the prediction target data 11 match the characteristics of all the verification data 12, indicates "mismatch" when the characteristics of all the verification data 12 do not match, indicates "both" when the characteristics of the verification data 12 include both those that match and those that do not match, and indicates "no information" when there is no component corresponding to the verification data 12.
[0102] This allows the user to, for example, analyze the cause of the "mismatch" or "no information" component when its influence is large, or to consider whether the characteristics of the "no information" component are appropriate, thereby conducting additional investigative experiments as necessary. In this way, the presentation of the match determination information 1242 can support the user's decision-making regarding their actions when creating a prediction formula.
[0103] The detailed comparison display section 1243 is a button for presenting in detail the trend comparison information 1100 of the component of interest. When the detailed comparison display section 1243 is operated, a detailed presentation screen, which is a user screen for presenting the detailed trend comparison information 1100 of the component of interest, is displayed.
[0104] Fig. 14 is a diagram showing an example of a detailed presentation screen. The detailed presentation screen 1400 shown in Fig. 14 includes a target component display section 1410, a prediction target data analysis result display section 1420, a verification data analysis result display section 1430, an apply button 1440, and a back button 1450.
[0105] The target component display section 1410 is a display section that presents detailed target components. In the example of Fig. 14, information on the first-order component F1(x1) of the explanatory variable x1 is displayed.
[0106] The prediction target data analysis result display unit 1420 is a display unit that displays the dependency plot of the detailed target components, the influence of the components, the trend (detailed trend), and comments of the prediction target data 101. The user can add comments by operating the edit button 1421.
[0107] The verification data analysis result display unit 1430 is a display unit that has a match result display unit 1431 that displays examples of components in the verification data 102 whose trends match those of the prediction target data 101 for the detailed target components of each verification data 102, and a mismatch result display unit 1435 that displays examples of components whose trends do not match, and presents a plot 1432 and analysis result information 1433 for each example.
[0108] The plot 1432 is a dependency plot corresponding to the detailed target component of the verification data. The analysis result information 1433 includes the influence, trend (detailed trend), correlation, match determination result, dataset name, dataset ID, and comment of the detailed target component of the verification data 102.
[0109] Both the match result display section 1431 and the mismatch result display section 1435 have an edit button 1434. By operating the edit button 1434, the user can edit the comment and correct the match determination result.
[0110] The match determination result includes uncertainty because it is calculated by comparing the trends of the characteristics of the target component between the prediction target data and the verification data in the trend comparison unit 250. For this reason, providing an interface that allows the user to correct the match determination result as described above can help obtain a prediction formula with more appropriate supporting information.
[0111] The apply button 1440 is a button for applying the edited content edited with the edit button 1434. When the apply button 1440 is operated, for example, if the match determination result is corrected, the correction result is reflected in the selection instruction screen 1200 and the trend comparison information 1100. The back button 1450 is a button for returning to the selection instruction screen 1200.
[0112] Returning to the explanation of Fig. 12, the component to be imported selection section 1244 is an interface for inputting component designation information that designates the components to be reflected in the prediction formula among the components displayed in the component plot comparison display section 1240. Note that, since components at symmetrical positions among the components arranged in a grid pattern are the same component, when one component is selected, the other component is automatically selected as well.
[0113] The prediction formula creation execution trigger 1250 is a button for starting a prediction formula creation process that creates a prediction formula based on the component selected in the component to be taken-in selection section 1244 .
[0114] Returning to the explanation of Fig. 5, the prediction formula search unit 150 performs a prediction formula search process to search for partial prediction formulas for each prediction formula target component indicated by the selected component information 142, based on the selected component information 142 and the search function template table 400. The prediction formula search unit 150 outputs the partial prediction formulas to the prediction formula creation unit 160 as partial prediction formula information 151 indicating the partial prediction formulas (step S542).
[0115] The prediction formula search process is a process in which each prediction formula target component of the component information 121 selected by the selected component information 142 is fitted to each function template in the search function template table 400, and a function that fits well is calculated as a partial prediction formula.
[0116] Here, the index of goodness of fit is the sum of squared differences, which indicates the magnitude of the error. Below, the second-order component F 1,2 The process of calculating the partial prediction formula will be described in detail using (x1, x2) as an example.
[0117] In the prediction formula search process, the prediction formula search unit 150 1,2 (x1, x2) is a function G that depends on the explanatory variables x1 and x2 respectively. k (x1) and G m (x2), and the component F as shown in equation (6) 1,2 The error L between (x1, x2) and its product k,m Evaluate. L k,m =(F 1,2 (x1,x2)―G k (x1)*G m (x2)) 2 (6)
[0118] Function G k and G m are the kth and mth function templates in the search function template table 400, respectively, and L k,m represents the magnitude of the error when applying these function templates. Therefore, the error L k,m For example, when k=1 and m=1, the error L 1,1 is calculated as shown in equation (7). L 1,1 =(F 1,2 (x1,x2)―(a1*x1+b1)*(a2*x2+b2)) 2 (7)
[0119] Here, a1, b1, a2, and b2 are coefficients (parameters), and ideally, values that minimize the value on the right side of equation (7) are applied. However, if it is difficult to calculate ideal coefficients, random values may be substituted into coefficients a1, b1, a2, and b2 to calculate the value on the right side a predetermined number of times, and the coefficient that gives the smallest value among the calculated values may be calculated. In this case, coefficient values can be obtained even for combinations of complex functions.
[0120] In this way, the error L is calculated for all combinations of function templates in the search function template table 400, and the function of the combination that minimizes the error L is searched for, whereby the second-order component F1,2 It is possible to obtain a prediction formula corresponding to the above. Prediction formulas for third-order and higher-order components can be obtained in the same way.
[0121] As shown in equation (8), the prediction formula creation unit 160 calculates the partial prediction formula G indicated in the partial prediction formula information 151 by using the prediction formula H generated up to that point. k By adding to the prediction formula, the prediction formula H k+1 and the prediction formula H k+1 The prediction formula information 161 indicating the above is output to the residual generating unit 170 (step S543). H k+1 (X)=H k (X)+G(X) (8)
[0122] In equation (8), G(X) is the sum of the partial prediction equations for each component calculated in step S542. k is a function that indicates the prediction formula obtained by the kth update, and its initial value H0 is zero.
[0123] As shown in equation (9), the residual generation unit 170 calculates the residuals by dividing the objective variable Y of the prediction target data 101 by the prediction formula H indicated in the prediction formula information 161. k+1 The difference between (X) is calculated as a prediction residual, and the prediction residual is used as a new objective variable Y k+1 to the predictor creation unit 110 (step S544). Y k+1 (X)=Y(X)―H k+1 (X) (9)
[0124] In equation (9), the objective variable Y is the objective variable of the prediction target data 101, and Y k+1 is the response variable updated by the k+1th residual generation process.
[0125] When step S544 is completed, the new response variable data set Y k+1The process of step S511 is executed using the above formula. In this way, the components whose validity has been confirmed are gradually incorporated into the prediction formula, and machine learning is performed on the residual of the prediction formula for the dependent variable, which contributes to the discovery of small rules hidden in rules with large influences.
[0126] Thereafter, when it is determined in step S512 that the process is to be ended (step S512: Yes), the prediction formula creation unit 160 creates the latest prediction formula H k+1 is output as prediction formula 162. Furthermore, for each component included in the prediction formula, component selection unit 140 extracts, as validity support information 1500, analysis results for which the match determination information in trend comparison information 1100 is "match," and outputs validity support information 1500 as auxiliary information 143 that supports the validity of each component of the prediction formula (step S530).
[0127] Fig. 15 is a diagram showing an example of validity supporting information 1500. The validity supporting information 1500 shown in Fig. 15 is obtained by extracting information for which the match determination information in field 1150 is "match" from the trend comparison information 1100 shown in Fig. 11, and adding a field 1510 for storing comments entered on the details presentation screen 1400.
[0128] This allows the user to objectively explain to a third party the extent to which each component of the obtained prediction formula matches with which validation data examples, thereby giving the obtained prediction formula objective validity.
[0129] As described above, according to this embodiment, the predictor creation unit 110 creates a target predictor based on the prediction target data 11 and a verification predictor based on the verification data 12. The component decomposition unit 120 decomposes the target predictor into multiple first components corresponding to each combination of first explanatory variables included in the prediction target data 11, and the component decomposition unit 230 decomposes the verification predictor into multiple first components corresponding to each combination of second explanatory variables included in the verification data 12. The validity analysis unit 130 generates validity analysis information 131 that evaluates the degree of agreement between each corresponding first component and second component. The prediction formula estimation unit (the prediction formula search unit 150 and the prediction formula creation unit 160) estimates the prediction formula used in prediction by the target predictor based on the selected components selected in accordance with the validity analysis information 131.
[0130] Therefore, by using verification data 12 similar to the prediction target data 11, it is possible to provide validity analysis information 131 that can determine the validity of each component of the prediction formula. This makes it possible to determine the validity of the prediction formula used in prediction by the predictor.
[0131] The above-described embodiments of the present disclosure are merely illustrative examples of the present disclosure, and are not intended to limit the scope of the present disclosure to these embodiments alone. Those skilled in the art may implement the present disclosure in various other forms without departing from the scope of the present disclosure. [Explanation of symbols]
[0132] 10: Prediction formula creation support system 100: Data reading unit 110: Predictor creation unit 120: Component decomposition unit 130: Validity analysis unit 140: Component selection unit, 150: Prediction formula search unit, 160: Prediction formula creation unit 170: Residual generation unit 210: Trend analysis unit 220: Predictor creation unit 230: Component decomposition unit 240: Trend analysis unit 250: Trend comparison unit
Claims
1. A predictor creation support system for supporting the creation of a predictor, comprising: a predictor generating unit that generates a first predictor based on a first data set and a second predictor based on a second data set; a component decomposition unit that decomposes the first predictor into a plurality of first components corresponding to each combination of first explanatory variables included in the first data set, and decomposes the second predictor into a plurality of second components corresponding to each combination of second explanatory variables included in the second data set; an evaluation unit that generates evaluation information that evaluates the degree of coincidence between the first component and the second component for each of the first component and the second component that correspond to each other; a prediction formula estimation unit that estimates a prediction formula used for prediction by the first predictor, based on a selected component that is the first component selected in accordance with the evaluation information.
2. The predictor creation support system according to claim 1 , further comprising a component selection unit that presents the evaluation information and selects the first component designated in accordance with the evaluation information as the selected component.
3. The predictor creation support system according to claim 1 , wherein the evaluation unit determines trends in the characteristics of the first component and the second component, and generates the evaluation information based on the trends.
4. The predictor creation support system according to claim 3 , wherein the evaluation unit generates the evaluation information indicating whether or not the first component and the second component have the same tendency in their characteristics.
5. 4. The predictor creation support system according to claim 3, wherein the evaluation unit performs parameter fitting on each of the first component and the second component using a plurality of functions prepared in advance to obtain component functions representing each of the first component and the second component, and obtains a tendency of the characteristic based on the component functions.
6. The predictor creation support system according to claim 1 , wherein the evaluation unit generates the evaluation information based on a correlation coefficient between the first component and the second component.
7. 2. The predictor creation support system according to claim 1, wherein the component decomposition unit decomposes the predictor into the first component and the second component based on a third data set having a third explanatory variable whose domain corresponds to a domain of the first explanatory variable and a domain of the second explanatory variable.
8. 2. The predictor creation support system according to claim 1, wherein the predictor creation unit receives designation information that designates a variable corresponding to the first explanatory variable from variables included in the second data set, and sets the variable designated by the designation information as the second explanatory variable.
9. the evaluation unit calculates an influence of each first component on a predicted value by the first predictor; The predictor creation support system according to claim 2 , wherein the component selection unit presents the evaluation information in a display format according to the degree of influence.
10. A predictor creation support method using a predictor creation support system that supports the creation of a predictor, comprising: creating a first predictor based on the first data set and a second predictor based on the second data set; decomposing the first predictor into a plurality of first components corresponding to each combination of first explanatory variables included in the first dataset, and decomposing the second predictor into a plurality of second components corresponding to each combination of second explanatory variables included in the second dataset; generating evaluation information that evaluates the degree of coincidence between the first component and the second component for each of the first component and the second component that correspond to each other; a prediction formula used for prediction by the first predictor based on a selected component, which is the first component selected in accordance with the evaluation information;
Citation Information
Patent Citations
Method and device for restoring rule, and method and device for discovering law of qualitative conditional number
JP2002109508A
Analysis system and analysis method
JP2021092914A