Data processing device, data processing method, and data processing program

The data processing device uses a reinforcement learning-based deep learning model to iteratively generate and optimize mathematical formulas, addressing the accuracy limitations of existing methods and improving prediction accuracy in symbolic regression.

JP7734570B2Active Publication Date: 2025-09-05HITACHI LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2021193852
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-11-30
Publication Date
2025-09-05
Estimated Expiration
2041-11-30

AI Technical Summary

Technical Problem

Existing methods for symbolic regression, such as those using evolutionary algorithms, simulated annealing, or Tabu search, are less accurate compared to deep learning, and there are limitations on the form and length of mathematical formulas generated by reinforcement learning-based approaches.

Method used

A data processing device employing a reinforcement learning-based deep learning model that includes a storage unit, modulation unit, and generation unit to iteratively generate and optimize mathematical formulas by plotting patient data in a coordinate space, using a modulation function to improve prediction accuracy.

Benefits of technology

Enhances analytical accuracy by optimizing the formula to improve the prediction accuracy of dependent variables through reinforcement learning, enabling the determination of an optimal formula.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007734570000003
    Figure 0007734570000003
  • Figure 0007734570000004
    Figure 0007734570000004
  • Figure 0007734570000005
    Figure 0007734570000005
Patent Text Reader

Abstract

To improve an analysis accuracy.SOLUTION: A data processing apparatus includes: a storage unit that stores an analysis target data group including respective variables in a variable group and a value of an objective variable per analysis target and an element group in which the variable group and each of one or more modulation method(s) for modulating the variable group and the variables are set as elements; a modulation unit that, when the element selected from the element group is acquired, plans a modulation function that modulates the value of the variable included in the acquired element based on an action history which is a history of the acquired element and modulates the value of the variable per the analysis target based on the modulation function; and a generation unit that generates image data which gives a point of coordinates which are values of the modulation result and the objective variable to a coordinate space which is defined by a first axis corresponding to a result of modulation by the modulation unit and a second axis corresponding to the objective variable per the analysis target.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a data processing device, a data processing method, and a data processing program for processing data. [Background technology]

[0002] Symbolic regression is the process of searching a formula space consisting of a set of variables and operations to find the optimal formula that represents the target variable. Symbolic regression allows us to obtain a model that represents the target variable in an interpretable form, a formula consisting of a set of operations of finite length.

[0003] The construction of models that are composed of operations that are understandable to humans and are expressed as mathematical formulas of a length that is understandable to humans is in demand in all fields that use mathematical models, such as science and engineering, medicine, economics, etc. Symbolic regression using machine learning automates the creation of mathematical models in these fields, contributing to the advancement of academic disciplines.

[0004] Patent Document 1 discloses an apparatus and method for generating and developing standard form equations that represent the characteristics of a given system. In this apparatus and method, the static and dynamic behavior of a nonlinear electrical circuit can be modeled, and the search for standard form equations can use evolutionary algorithms, simulated annealing, and tabu search.

[0005] Patent Document 2 discloses a data processing device that facilitates the analysis of a data group based on a combination of multiple elements. This data processing device includes a storage unit that stores a data group to be analyzed, each having a factor and a response variable for each analysis target, a first modulation unit that modulates a first factor for each analysis target and outputs a first modulation result, a second modulation unit that modulates a second factor for each analysis target and outputs a second modulation result, and a generation unit that assigns, for each analysis target, coordinate points that are the first modulation result from the first modulation unit and the second modulation result from the second modulation unit in a coordinate space defined by a first axis corresponding to the first factor and a second axis corresponding to the second factor, and generates first image data in which information related to the response variable of the analysis target that corresponds to the coordinate points is assigned to the coordinate points. [Prior art documents] [Patent documents]

[0006] [Patent Document 1] U.S. Patent Application Publication No. 2017 / 0208548 [Patent Document 2] Patent Publication No. 2021-43626 Summary of the Invention [Problem to be solved by the invention]

[0007] Patent Document 1 presents a method for finding an optimal formula in symbolic regression using an evolutionary algorithm, simulated annealing, or Tabu search, but these methods are generally considered to be less accurate than methods using deep learning for regression problems. Therefore, it is considered that the possibility of obtaining an optimal formula is lower than with deep learning.

[0008] The method of Patent Document 2 performs symbolic regression using reinforcement learning based on a deep learning model, but there are limitations on the form and length of the mathematical formula.

[0009] An object of the present invention is to improve analytical accuracy. [Means for solving the problem]

[0010] A data processing device according to one aspect of the invention disclosed in the present application includes: a storage unit that stores an analysis target data group having a value of each variable of a variable group and a value of a response variable for each analysis target; and an element group having elements each of the variable group and one or more modulation methods for modulating the variables; a modulation unit that, when an element selected from the element group is acquired, designs a modulation function for modulating the value of the variable included in the acquired element based on a behavior history that is a history of the acquired element, and modulates the value of the variable for each analysis target based on the modulation function; and a generation unit that generates image data for each analysis target, in a coordinate space defined by a first axis corresponding to the modulation result by the modulation unit and a second axis corresponding to the response variable, with coordinate points that are the modulation result and the value of the response variable assigned to it. when the image data is generated by the generation unit, the modulation unit newly selects the element from the element group based on the image data to update the behavioral history, plans the modulation function based on the updated behavioral history, and modulates the value of the variable for each of the analysis targets based on the modulation function, and the generation unit repeatedly generates the image data defined in the same coordinate space each time the modulation result is repeatedly output by the modulation unit. It is characterized by: [Effects of the Invention]

[0011] The present invention aims to improve analytical accuracy according to a representative embodiment. Problems, configurations, and effects other than those described above will become apparent from the following description of the examples. [Brief explanation of the drawings]

[0012] [Figure 1] FIG. 1 is a diagram illustrating an example of analysis of a data group according to the first embodiment. [Figure 2] FIG. 2 is a block diagram illustrating an example of the hardware configuration of the data processing device. [Figure 3] FIG. 3 is an explanatory diagram of an example of the analysis target DB according to the first embodiment. [Figure 4] FIG. 4 is an explanatory diagram illustrating an example of the pattern table. [Figure 5] FIG. 5 is a block diagram showing an example of the circuit configuration of the image processing circuit. [Figure 6] FIG. 6 is an explanatory diagram illustrating an example of behavior history data. [Figure 7]FIG. 7 is a block diagram illustrating an example of the configuration of the controller illustrated in FIG. [Figure 8] FIG. 8 is an explanatory diagram of an example of an input / output screen displayed on an output device of the data processing device according to the first embodiment. [Figure 9] FIG. 9 is a flowchart showing a detailed example of the processing procedure of image data generation processing by the modulation unit and the image generator. [Figure 10] FIG. 10 is a flowchart illustrating an example of the analysis support processing procedure. [Figure 11] FIG. 11 is an explanatory diagram showing an example of a one-dimensional array. [Figure 12] FIG. 12 is a diagram illustrating an example of the analysis target DB according to the second embodiment. [Figure 13] FIG. 13 is an explanatory diagram of an example of an input / output screen displayed on an output device of the data processing device according to the second embodiment. DETAILED DESCRIPTION OF THE INVENTION [Example]

[0013] Hereinafter, the data processing device according to the first embodiment will be described. Data Processing Methods, and Data Processing An example of the program will be described with reference to the accompanying drawings. In Example 1, the data group to be analyzed is, for example, a combination of the values ​​of each variable in a variable group, which is 100 types of patient information including weight and height, for each of 50 diabetic patients, and the value of a response variable indicating the progression of the disease state one year later. The number of patients and the number of types of patient information are merely examples.

[0014] <Example of analysis> 1 is an explanatory diagram illustrating an example of analysis of a data group according to the first embodiment. A data processing device 100 includes a mathematical formula generating AI (Artificial Intelligence) 101 and a regressor 102. The mathematical formula generating AI 101 is, for example, a reinforcement learning type CNN (Convolutional Neural Network) that generates a mathematical formula 111. The mathematical formula 111 is a modulation function that modulates a variable group to make a target variable interpretable by a predetermined operator.

[0015] The regressor (regression model) 102 is an AI that inputs coordinate values ​​on a coordinate space 110 spanned by the X axis and the Y axis, and outputs the prediction accuracy as a reward to the formula planning AI 101. The user 103 of the data processing device 100 may be, for example, a doctor, a scholar, or a researcher, or may be a business that provides analysis services using the data processing device 100.

[0016] (1) The user 103 selects a set of data to be analyzed from the analysis target DB 104, which stores a set of data to be analyzed for each patient, and loads it into the formula planning AI 101. The data to be analyzed is, for example, a combination of the values ​​of each variable (patient information) of the set of variables, which are the above-mentioned 100 types of features of the patient, and the objective variable.

[0017] (2) The formula planning AI 101 selects a variable or a modulation method for modulating a variable from the element group 105. For example, the formula planning AI 101 selects "x1" as a variable from the element group 105, or selects "+" as a modulation method from the element group 105. A modulation method is an operator with a variable as an operand, or an indicator indicating the end of an operation.

[0018] The formula planning AI 101 creates an X-axis formula 111 that defines the coordinate space 110 based on the history of the variables or modulation methods selected in (2). Then, the formula planning AI 101 substitutes the formula specified by the history of the selected variables or modulation methods into the X-axis formula 111, calculates the X-coordinate value by substituting the values ​​of 100 types of patient information that are the patient's features into the formula 111, and plots the value of the patient's objective variable in the coordinate space 110 as the Y-coordinate value on the Y-axis that defines the coordinate space 110.

[0019] That is, in reinforcement learning, the scene seen by the formula planning AI 101 (the state representing the result of the action) is plotted in a coordinate space 110, with the value of the patient's objective variable as the Y-axis value and the calculated value of the formula 111 currently calculated by the formula planning AI 101 as the X-axis value. The calculation of the X-coordinate value and the Y-coordinate value is performed for each patient. The coordinate values ​​plotted in the coordinate space 110 are referred to as "patient data."

[0020] (3) The data processing device 100 inputs the X-axis coordinate value of the patient data into the regressor 102 .

[0021] (4) The regression unit 102 calculates a linear regression equation representing the objective variable from the X-axis coordinate value of the patient data, calculates its prediction accuracy, and outputs the calculated prediction accuracy to the formula planning AI 101 as a reward in reinforcement learning.

[0022] (5) Furthermore, apart from (3), the data processing device 100 inputs the image data I, which is the coordinate space 110 in which the patient data is plotted, into the formula planning AI 101.

[0023] (6) Using the reward input in (4), the mathematical formula planning AI 101 executes a convolution operation by reinforcement learning CNN on the image data I in the coordinate space 110, and selects the next variable and modulation method from the element group 105. After this, the data processing device 100 repeatedly executes (2) to (6).

[0024] In this way, the formula planning AI 101 repeatedly plans the formula 111 while referring to the image data I, and the user can obtain the formula 111 that defines a new variable that is highly linearly correlated with the dependent variable. That is, reinforcement learning based on a deep learning model enables the search for a formula to represent the dependent variable and the determination of an optimal formula. Therefore, by optimizing the formula, the prediction accuracy of the dependent variable can be improved.

[0025] <Example of hardware configuration of data processing device 100> 2 is a block diagram showing an example of the hardware configuration of the data processing device 100. The data processing device 100 has a processor 201, a storage device 202, an input device 203, an output device 204, a communication interface (communication IF) 205, and an image processing circuit 207. The processor 201, the storage device 202, the input device 203, the output device 204, the communication IF 205, and the image processing circuit 207 are connected by a bus 206.

[0026] The processor 201 controls the data processing device 100. The storage device 202 serves as a working area for the processor 201. The storage device 202 is a non-transitory or temporary recording medium that stores various programs, data, and a DB to be analyzed. Examples of the storage device 202 include a ROM (Read Only Memory), a RAM (Random Access Memory), an HDD (Hard Disk Drive), and a flash memory. The input device 203 inputs data. Examples of the input device 203 include a keyboard, a mouse, a touch panel, a numeric keypad, and a scanner. The output device 204 outputs data. Examples of the output device 204 include a display and a printer. The communication IF 205 connects to a network and transmits and receives data.

[0027] The image processing circuit 207 is a circuit configuration that executes image processing. The image processing circuit 207 executes the processes (1) to (6) shown in FIG. 1 by referring to a pattern table 208. The pattern table 208 is stored, for example, in a storage area (not shown) in the image processing circuit 207. Note that although the image processing circuit 207 is realized by a circuit configuration, it may also be realized by having the processor 201 execute a program stored in the storage device 202.

[0028] <Analysis target DB104> 3 is an explanatory diagram illustrating an example of the analysis target DB 104 according to Example 1. The analysis target DB 104 has, as fields, a patient ID 301, a target variable 302, and a variable set 303. A combination of values ​​of each field in the same row becomes analysis target data for one patient.

[0029] The patient ID 301 is identification information for distinguishing a patient, who is an example of a patient to be analyzed, from other patients, and the value of the patient ID 301 is expressed, for example, as a number between 1 and 50. The objective variable 302 indicates a value indicating the progression of the patient's condition one year later. The variable set 303 is a collection of, for example, 100 types of variables. Each variable in the variable set 303 indicates patient information. For example, when the patient ID 301 of the variable "x1" in the variable set 303 is "1," the value is "1.94." In other words, each entry in the analysis target DB 104 indicates the progression of the patient's condition one year later, as identified by the variable set 303.

[0030] <Pattern Table 208> 4 is an explanatory diagram showing an example of the pattern table 208. The pattern table 208 is a table that defines the element group 105 used by the formula planning AI 101 to plan the formula 111 and generate a control signal for plotting coordinate values ​​in the coordinate space 110. The contents of the pattern table 208 are set in advance.

[0031] The pattern table 208 has fields for an element number 401 and an element 402 corresponding to the element number 401. The element number 401 is identification information that uniquely identifies a selection subject that selects the corresponding element 402 (x1, x2, log, +, End, etc.). The element 402 includes each variable in the variable set 303, an operator whose operand is the value of the variable, and an indicator that indicates the end of the operation. The operators include unary operators and polynomial operators. The unary operators include, for example, trigonometric functions (sin function, cos function, tan function), exponential functions, and logarithmic functions. The polynomial operators include, for example, the four arithmetic operators.

[0032] <Configuration example of image processing circuit 207> 5 is a block diagram showing an example of the circuit configuration of the image processing circuit 207. The image processing circuit 207 includes a data memory 500, a modulation unit 510, an image generator 520, an evaluator 530, a controller 540, and a pattern table 208.

[0033] All entries of the analysis target DB 104, that is, the analysis target data of each patient and the behavior history, which is the history of the variables or modulation methods selected in the modulation unit 510, are written from the storage device 202 to the data memory 500.

[0034] The modulation unit 510 forms part of the formula planning AI 101 shown in Figure 1. The modulation unit 510 sets the variables or modulation methods in the formula 111. The modulation unit 510 includes a data load modulator 511 and a data save modulator 512.

[0035] The data load modulator 511 acquires an element 402 (variable or modulation method) included in the control signal a(t) output from the controller 540 at time step t (t is an integer satisfying 0≦t≦T, where t=0 is the initial value and T is an integer that is the maximum value of t, for example, T=30). The control signal a(t) includes an element 402 selected randomly at time step t. The control signal a(t) will be described later in step S1003 of FIG. 10. The data load modulator 511 may also accept a selection of a variable or modulation method selected by the user.

[0036] The data load modulator 511 adds the acquired variables or modulation methods to the column of time step t of the behavior history data stored in the data memory 500.

[0037] 6 is an explanatory diagram showing an example of behavior history data. The behavior history data 600 has time steps 602 and behavior history 601 at the time steps 602. The behavior history data 600 is sequence data that stores the behavior history 601 with time steps 602 of t=0, 1, 2, ... as columns, and the initial value of the behavior history 601 is blank. In the example shown in FIG. 6, the data load modulator 511 acquires a variable or modulation method from the control signal a(t=8) by the modulation unit 510 at the latest time step 602, which in this example is t=8, and adds the acquired variable or modulation method to the behavior history 601 at t=8.

[0038] The data load modulator 511 obtains the formula 111 by reading the sequence data of this behavioral history 601 in a specific mathematical notation, for example, reverse Polish notation. The data load modulator 511 calculates a vector having the X-axis coordinate values ​​of all patients when the values ​​of the variable group 303 in the patient's data to be analyzed are applied to the variables constituting the formula 111.

[0039] The data load modulator 511 may use a mathematical notation other than reverse Polish notation, such as infix notation or Polish notation. The vector value obtained by applying the values ​​of the variable set 303 in the analysis data of all patients to the mathematical formula 111 is set as the signal x'. For example, if the sequence data of the behavioral history 601 is "x1, x2, +, x3, -", the mathematical formula 111 obtained by reading the sequence data in reverse Polish notation is "x1 + x2 - x3", and the signal x' becomes a vector with an X-axis coordinate value of x' = x1 + x2 - x3 for all patients.

[0040] There are cases where the behavior history 601 cannot be converted into a meaningful mathematical formula by the data load modulator 511. Specifically, for example, the cases can be divided into two: a case where the sequence data of the behavior history 601 is composed of only one or more variables, and no meaningful mathematical formula can be obtained no matter what variables or modulation methods are selected in the subsequent time steps (Case A); and a case where the sequence data of the behavior history 601 is composed of only one or more modulation methods, and a meaningful mathematical formula can be obtained by selecting appropriate variables or modulation methods in the subsequent time steps (Case B).

[0041] This case can be distinguished, for example, when generating a formula using reverse Polish notation, by determining whether meaningful variables are obtained when filling in the blank spaces of the future time step behavior, i.e., behavior history 601, one by one, starting from the oldest time step, with a certain variable (e.g., variable x1) or when filling in a certain binary operator (e.g., +) one by one, starting from the oldest time step.

[0042] In Case A, no useful formula is obtained, indicating an action that produces a broken formula. To do this, let us assume that the signal x' for all patients is a sufficiently large number, say 10 to the power of 100.

[0043] In case B, it is considered that a useful formula is not temporarily available at the current time step, so the data load modulator 511 generates a signal x' based on formula 111 at the previous time step t-1.

[0044] 6, the data load modulator 511 selects a variable or modulation method according to the control signal a(t=8) from the modulation unit 510 at the latest time step 602, which in this example is t=8, updates the behavior history 601 at t=8 by adding the selected variable or modulation method, and generates formula 111 based on the updated behavior history 601. The signal x' is generated by substituting the value of the variable set 303 into this formula.

[0045] Specifically, for example, the signal x' based on the behavior history data 600 in FIG. 6 is expressed by the formula 111(x2 / x1+x2 / x1 2 ) are substituted with the values ​​of x1 and x2 in the variable set 303 for each patient ID 301, resulting in data (100 / 1.94+100 / 1.94 / 1.94, ... 57 / 1.58+57 / 1.58 / 1.58, 43 / 1.55+43 / 1.55 / 1.55).

[0046] The data save modulator 512 saves the signal x′ obtained by the data load modulator 511 , the updated behavior history 601 , and the formula 111 in the data memory 500 and outputs them to the image generator 520 .

[0047] Furthermore, the modulation unit 510 sets the stop signal K(t) to K(t)=1 when the behavior history 601 has been completely filled by the data load modulator 511, when "End" is selected as the modulation method, or when the data load modulator 511 determines that the behavior history 601 falls under the above case A, and otherwise sets K(t)=0. The stop signal K(t) is a signal for determining whether to reset the behavior history 601. When K(t)=1, the behavior history 601 and the time step 602 are reset to their initial values, and when K(t)=0, the behavior history 601 and the time step 602 are continued to be retained.

[0048] The image generator 520 constitutes a part of the formula planning AI 101 shown in Fig. 1. The image generator 520 acquires the signal x' output from the modulation unit 510 and the objective variable 302 in the data to be analyzed stored in the data memory 500. The signal x' is a set of coordinate values ​​(one-dimensional vector) calculated for each case from the formula 111. The image generator 520 plots the coordinate values, with the value of the signal x' as the X-axis value and the value of the objective variable 302 as the Y-axis value, in the coordinate space 110, thereby rendering the patient data as pixels constituting the image data I in the coordinate space 110.

[0049] The evaluator 530 includes the regressor 102 shown in Fig. 1. The evaluator 530 receives the signal x' output from the modulation unit 510 and the response variable 302 from the data memory 500. The evaluator 530 calculates a statistic r(t) for the time step t according to the type of the response variable 302.

[0050] Specifically, for example, the evaluator 530 executes the regressor 102 to calculate a statistic r(t) indicating the prediction accuracy of predicting the value of the objective variable 302 of the patient. The statistic r(t) corresponds to a reward in reinforcement learning, and is the evaluation result of the selection of the formula 111. The statistic r(t) is, for example, the coefficient of determination R 2That is, the evaluator 530 evaluates the selection of the signal x', which is the modulation result, based on Equation 111 obtained by selecting the signal x'.

[0051] The evaluator 530 includes the regressor 102 and a logistic regression, a linear regression, a neural network, or gradient boosting as a regression calculation unit. The evaluator 530 stores the statistics r(t) in the data memory 500 and outputs the statistics r(t) to the controller 540.

[0052] The controller 540 constitutes a part of the formula planning AI 101 shown in Figure 1. The controller 540 is a reinforcement learning CNN. The controller 540 acquires image data I at time step t (hereinafter referred to as image data I(t)) generated by the image generator. The controller 540 also acquires statistics r(t) from the evaluator 530 as a reward for reinforcement learning.

[0053] Then, the controller 540 controls the modulation unit 510. Specifically, for example, when image data I(t) is input from the image generator 520, the controller 540 generates a control signal a(t) that controls the modulation unit 510, and controls the generation of image data I(t+1) at the next time step (t+1).

[0054] <Configuration of controller 540> Fig. 7 is a block diagram showing an example of the configuration of the controller 540 shown in Fig. 5. The controller 540 includes a network unit 700, a replay memory 720, and a learning parameter update unit 730. The network unit 700 includes a Q* network 701, a Q network 702, and a random unit 703.

[0055] The Q* network 701 and the Q network 702 are identically configured action-value functions that learn a control signal a(t), which is an action that maximizes value. In this case, value is an index value that represents the degree of correlation between the objective variable 302 and a new variable obtained from the mathematical formula 111 ultimately generated in the image data I(t) by taking the action defined by the control signal a(t) (by formulating the mathematical formula 111).

[0056] That is, the Q network 702 and the Q* network 701 select the maximum value among the values ​​of each element 402 in the element group 105 in the pattern table 208 when a certain action (control signal a(t)) is taken in a certain state (image data I(t)).

[0057] Specifically, for example, the Q* network 701 is a deep reinforcement learning DQN (Deep Q-Network) that takes image data I(t) as input and outputs a one-dimensional array indicating the value of each element 402 (variable or modulation method) in the control signal a(t) based on the learning parameter θ*.

[0058] The Q network 702 is a deep reinforcement learning DQN with the same configuration as the Q* network 701, and uses the learning parameter θ to determine the value of the element 402 (variable or modulation method) that is the source of the generation of the image data I(t). The Q* network 701 selects the action with the highest value of the image data I(t) determined by the Q network 702, i.e., the element 402 in the pattern table 208.

[0059] The random unit 703 outputs a random value between 0 and 1, which serves as a threshold for determining whether to select an action randomly or based on the Q* network 701. The learning parameter update unit 730 has a gradient calculation unit 731. The learning parameter update unit 730 calculates a gradient g that takes into account the statistic r(t) as a reward using the gradient calculation unit 731, and updates the learning parameter θ by adding the gradient g to the learning parameter θ.

[0060] The replay memory 720 stores data pack D(t). The data pack D(t) includes statistics r(t), image data I(t), I(t+1), control signal a(t), and stop signal K(t) at time step t. The data pack D(t) specifies whether to reset the action history 601 and time step t (stop signal K(t)) when an action (control signal a(t)) is taken in the state (image data I(t)) at time step t.

[0061] A specific example of the configuration of the Q* network 701 will be described below. Here, the configuration of the Q* network 701 will be described using an example in which 84×84 pixel color image data I(t) is input.

[0062] The first layer is a convolutional network (kernel: 8x8 pixels, stride: 4, activation function: ReLU). The second layer is a convolutional network (kernel: 4x4 pixels, stride: 2, activation function: ReLU). The third layer is a fully connected network (number of neurons: 256, activation function: ReLU). The output layer is also a fully connected network, which outputs a one-dimensional array z(t) corresponding to the element sequence of the pattern table 208 as an output signal.

[0063] The one-dimensional array z(t) has values ​​that correspond one-to-one to each element 402 of the pattern table 208. That is, the one-dimensional array z(t) is an array having values ​​corresponding to 109 elements 402 (see FIG. 11).

[0064] <Example of input / output screen> 8 is an explanatory diagram illustrating an example of an input / output screen displayed on the output device 204 of the data processing device 100 according to the first embodiment. The input / output screen 800 includes a load button 810, a start button 820, a mathematical expression length input area 830, a unary operator input area 840, a polynomial operator input area 850, a target scale input area 860, an image display area 870, and a mathematical expression display area 880.

[0065] The load button 810 is a button for loading entries of the analysis target DB 104 into the data memory 500 when pressed. The start button 820 is a button for starting image generation when pressed.

[0066] The upper limit of the length of the mathematical formula to be generated is input in the mathematical formula length input field 830. If the mathematical formula length input field 830 is blank, the default maximum mathematical formula length (30 in this example) is automatically set.

[0067] The unary operator input area 840 allows for the additional input of a unary operator, which is one of the modulation methods in the data load modulator 511. As unary operators that can be additionally input in the unary operator input area 840, for example, hyperbolic functions and constant multiplication functions that are not registered in the pattern table 208 can be additionally input. If no additional input is made, unary operators registered in the pattern table 208 (for example, sin function, cos function, tan function, exponential function, logarithmic function) are applied.

[0068] The polynomial operator input area 850 allows for the additional input of a polynomial operator, which is one of the modulation methods in the data load modulator 511. For example, a max function or min function that is not registered in the pattern table 208 can be additionally input as a polynomial operator. If no additional input is made, the polynomial operators (+, -, ×, / ) registered in the pattern table 208 are applied.

[0069] The target scale input area 860 includes a statistic input area 861 and a target value input area 862. The type of statistic to be calculated by the learning parameter update unit 730 can be input in the statistic input area 861. Specifically, for example, a statistic for determining the quality of regression, such as the coefficient of determination R2, can be selected. The target value input area 862 can be input for the statistic input in the statistic input area 861 (for example, "0.8" in FIG. 8).

[0070] Image display area 870 displays image data I generated by image generator 520. Mathematical formula display area 880 displays mathematical formula 111.

[0071] The input / output screen 800 is displayed, for example, on a display, which is an example of the output device 204 of the data processing device 100. The input / output screen 800 may also be displayed on a display of another computer that is communicatively connected to the communication IF 205 by transmitting information about the input / output screen 800 from the communication IF 205 of the data processing device 100 to the other computer.

[0072] <Image data generation process> 9 is a flowchart showing a detailed example of the processing procedure for generating image data by the modulation unit 510 and the image generator 520. First, the data load modulator 511 in the modulation unit 510 executes processing (step S901). Specifically, for example, the data load modulator 511 selects one divisor x1 from the set of variables 303 stored in the data memory 500 in response to a control signal a(t+1) from the controller 540.

[0073] The data save modulator 512 calculates the formula 111 according to the action history data 600 updated by the control signal a(t+1), outputs the signal x', and stores it in the data memory 500 and also outputs it to the image generator 520 (step S903).

[0074] The image generator 520 plots the patient data in the coordinate space 110 based on the signal x' output from the modulation unit 510 and the value of the response variable 302 stored in the data memory 500, and generates image data I(t+1) (step S90 4 ).

[0075] <Example of analysis processing procedure> 10 is a flowchart showing an example of the analysis processing procedure. It is assumed that before the processing starts, the entries of the analysis target DB 104 are loaded into the data memory 500 by pressing the load button 810 on the input / output screen 800 in FIG.

[0076] [S1001] The data processing device 100 performs initialization (step S1001). Specifically, for example, the data processing device 100 sets the calculation step m to m=1. The data processing device 100 also initializes the learning parameter θ* of the Q* network 701 with a random weight. The data processing device 100 also initializes the learning parameter θ of the Q network 702 with a random weight.

[0077] [S1002] The data processing device 100 initializes the controller 540 (step S1002). Specifically, for example, the data processing device 100 sets all columns of the behavior history 601 in the behavior history data 600 to blank, sets the time step t to t=0, and sets the image data I(t=0) to blank.

[0078] [S1003] The controller 540 determines the control signal a(t) for time step t (step S1003). Specifically, for example, the random unit 703 outputs a random number. If the random number output by the random unit 703 is equal to or greater than e (for example, e=0.5), the controller 540 randomly selects one element 402 from the pattern table 208 and determines the control signal a(t) based on the selected element 402. For example, if the element 402 randomly selected from the pattern table 208 is " / " corresponding to the value "104" of the element number 401, the controller 540 determines " / " as the control signal a(t).

[0079] On the other hand, if the random number value output by the random unit 703 is less than e, the controller 540 inputs the image data I(t) to the Q* network 701 in the network unit 700, and calculates the one-dimensional array z(t).

[0080] <1-dimensional array z(t)> 11 is an explanatory diagram showing an example of a one-dimensional array z(t). The one-dimensional array z(t) corresponds to the 109 element groups 105 in the pattern table 208 and is an array of 109 numerical values ​​arranged in the order of element numbers 401. The magnitude of the numerical value indicates the action value of the element 402.

[0081] The controller 540 selects one element 402 in the pattern table 208 that corresponds to the element 402 with the maximum value in the one-dimensional array z(t), and sets this as the control signal a(t). For example, in FIG. 11, the maximum value of the action value is "0.9," which corresponds to the value "103" of the element number 401. In the pattern table 208, the element 402 that corresponds to the value "103" of the element number 401 is "*." The controller 540 sets the control signal a(t) in FIG. 7 to "*," which corresponds to the maximum value. In this way, by selecting the element 402 with the maximum action value, a control signal a(t) with a higher value can be selected, and the controller 540 can take a more appropriate action.

[0082] [S1004] 10, the evaluator 530 calculates the statistic r(t) for the time step t (step S1004). Specifically, for example, the evaluator 530 calculates the statistic r(t) based on the signal x' output from the modulation unit 510 and the value of the objective variable 302 loaded from the data memory 500.

[0083] More specifically, the evaluator 530 predicts the value of the objective variable 302 for each patient and calculates the statistic r(t) by executing the regressor 102. The evaluator 530 stores the statistic r(t) in the data memory 500 and outputs it to the controller 540.

[0084] [S1005] Next, the data processing device 100 executes the image data generation process at time step t+1 (hereinafter referred to as image data I(t+1) generation process) shown in Fig. 9 (step S1005). The image data I(t+1) generation process (step S1005) generates image data I(t+1) from the image generator 520 by providing the control signal a(t) determined in step S1004 to the modulation unit 510.

[0085] [S1006] Next, the network unit 700 stores a data pack D(t) in the replay memory 720, which is a set of data including the statistic r(t), the behavior history 601 at time step t, the image data I(t), the image data I(t+1), and the stop signal K(t) (step S1006).

[0086] Specifically, for example, when the time step t is t=0, the image data I(0) generated in step S1002 and the image data I(1) generated in step S1005 are included in the data pack D(0).

[0087] When the time step t is t=1, the image data I(1) generated in step S1005 when t=0 and the image data I(2) generated in step S1005 are included in the data pack D(1).

[0088] From t=2 onwards, at time step t, the image data I((t-1)+1) generated in step S1005 at t=t-1 and the image data I(t+1) generated in step S1005 are included in the data pack D(t).

[0089] [S1007] If K(t)=0 (step S1007: Yes), the behavior history 601 for time step t is retained, so the time step t is updated as t=t+1 and the process returns to step S1003. On the other hand, if K(t)=1 (step S1007: No), the process proceeds to step S1008.

[0090] [S1008] The learning parameter update unit 730 randomly loads J data packs D(1), ..., D(j), ..., D(J) (j = 1, ..., J) (hereinafter referred to as data pack group Ds) from the replay memory 720, and updates the teacher signal y(j) using the following equation (1) (step S1008). In the first embodiment, the upper limit of J is set to 100, for example.

[0091]

number

[0092] In the above formula (1), γ is a discount rate, and in Example 1, γ = 0.998. The calculation process maxQ(I(j+1);θ) in the above formula (1) is a process of inputting image data I(j+1) to the Q network 702 in the network unit 700, and outputting the maximum value, i.e., the maximum action value, from the one-dimensional array z(j) calculated by the Q network 702 using the learning parameter θ. "j+1" is the time step following time step t = j. For example, if the one-dimensional array z(t) in FIG. 11 is the one-dimensional array z(j), the calculation process maxQ(I(j+1);θ) outputs the value "0.9" corresponding to the value "103" of element number 401 as the maximum action value.

[0093] [S1009] Next, the learning parameter update unit 730 executes the learning calculation (step S1009). Specifically, for example, the gradient calculation unit 731 outputs a gradient g for the learning parameter θ using the following equation (2), and updates the learning parameter θ by adding the gradient g to the learning parameter θ.

[0094]

number

[0095] The gradient g is the second term on the right-hand side of the above equation (2). As a result, the Q network 702 can generate a control signal a(t) that indicates behavior that improves the prediction accuracy of the statistic r(t), i.e., the objective variable 302, using the updated learning parameter θ that takes into account the statistic r(t), which is the reward.

[0096] Furthermore, in the learning calculation (step S1009), the learning parameter update unit 730 overwrites the learning parameter θ* of the Q* network 701 with the updated learning parameter θ of the Q network 702. That is, the learning parameter θ* becomes the same value as the updated learning parameter θ. This enables the Q* network 701 to identify an action that is expected to increase the prediction accuracy of the action value, i.e., the objective variable 302.

[0097] [S1010] Next, if the statistic r(t) is below the target value input in the target value input area 862 and the calculation step m is less than the predetermined number M (step S1010: Yes), the data processing device 100 returns to step S1002 and updates the calculation step m to m=m+1 in order to continue the analysis by the data processing device 100. In the first embodiment, M=1 million.

[0098] On the other hand, if the statistical quantity r(t) is equal to or greater than the target value input in the target value input area 862, or if the calculation step m reaches a predetermined number M (step S1010: No), the data processing device 100 proceeds to step S1011.

[0099] [S1011] Next, the data processing device 100 stores in the storage device 202 from the data memory 500 the data pack D(k) of the time step k in which the statistic r(k) is equal to or greater than the target value, among the data pack group Ds (step S1011). If there is no data pack D(k) of the time step k in which the statistic r(k) is equal to or greater than the target value, the data pack D(k) is not stored in the storage device 202. Furthermore, if there is no data pack D(k) of the time step k in which the statistic r(k) is equal to or greater than the target value, the data processing device 100 may store in the storage device 202 the data pack D(k) of the time step k in which the statistic r(k) is maximum, among the data pack group Ds.

[0100] [S1012] Next, the data processing device 100 displays the analysis results (step S1012). Specifically, for example, the data processing device 100 loads the data pack D(k) stored in the storage device 202, causes the modulation unit 510 to generate a mathematical formula using the behavior history 601 in the data pack D(k), and displays the generated mathematical formula 111 in the mathematical formula display area 880.

[0101] Furthermore, the data processing device 100 displays the image data I(k) and statistics r(k) in the data pack D(k) in the image display area 870. If the data pack D(k) is not stored in the storage device 202, the data processing device 100 may display an analysis result indicating that the analysis failed. This completes the series of processes (step S1013).

[0102] As described above, according to the first embodiment, a new variable that is linearly correlated with the objective variable can be automatically obtained in the form of a mathematical formula composed of the variable group 303 and operators. This makes it possible to improve the prediction accuracy of the objective variable 302. [Example]

[0103] Example 2 is an example in which the objective variable 302 in Example 1 is a categorical variable. In Example 2, the differences from Example 1 will be mainly described, and therefore the same components as those in Example 1 will be assigned the same reference numerals and descriptions thereof will be omitted.

[0104] <Analysis target DB104> FIG. 12 is a diagram illustrating the analysis target DB according to the second embodiment. 1200 FIG. 12 is an explanatory diagram showing an example of the analysis target DB 1200. Instead of the objective variable 302, the analysis target DB 1200 has an objective variable 1202, which is a categorical variable, as a field. The objective variable 1202 stores a binary variable indicating whether or not the condition of each patient has worsened. The value of the objective variable 1202 is "1" indicating worsening, and "0" indicating no worsening.

[0105] <Example of input / output screen> 13 is an explanatory diagram illustrating an example of an input / output screen displayed on the output device 204 of the data processing device 100 according to the second embodiment. Since the objective variable 1202 is a categorical variable, for example, AUC (Area Under the Curve) can be selected as the statistic r in the statistics input area 861 on the input / output screen 1300. Furthermore, a target accuracy can be input as a target value of the statistic input in the statistics input area 861 in the target value input area 862 (for example, "0.90" in FIG. 13).

[0106] Image display area 870 displays image data I generated by image generator 520. Because objective variable 1202 is a categorical variable, in image data I, the patient data group is classified into a worsening condition group 1301 in which the objective variable 1202 has a value of "1" (worsening), and a non-worsening condition group 1302 in which the objective variable 1202 has a value of "0" (non-worsening).

[0107] In this way, also in the second embodiment, the formula planning AI 101 repeatedly plans the formula 111 while referring to the image data I, so that the user can obtain the formula 111 that defines a new variable that is highly linearly correlated with the objective variable. That is, reinforcement learning based on a deep learning model is used to enable the search for a formula to represent the objective variable and the determination of an optimal formula. Therefore, according to the second embodiment, the classification accuracy of the patient data group can be improved.

[0108] Furthermore, in Examples 1 and 2, patient information of diabetic patients is used as the data to be analyzed, but the data to be analyzed is not limited to such biological information and can also be applied to, for example, stocks. For example, the analysis target may be a company's stock, the patient ID 301 may be the stock ID, and the variable set 303 may be company information such as the company's net profit, number of employees, and sales. In Example 1, the objective variable 302 may be the stock price of the stock. In Example 2, the objective variable 302 (quantitative variable) may be the rise or fall of the stock, or whether it can be purchased.

[0109] As described above, according to the first and second embodiments, the analytical accuracy can be improved.

[0110] The data processing device 100 according to the first and second embodiments can also be configured as follows (1) to (8).

[0111] (1) For example, the data processing device 100 has a memory unit, a modulation unit 510, and an image generator 520. The analysis target DB 104, which is an example of the memory unit, stores an analysis target data group (analysis target DB 104) having a variable set 303 and target variables 302, 1202 for each analysis target, and the pattern table 208 stores an element group 105 in which each of the variable set 303 and one or more modulation methods for modulating the variables is an element 402 indicating the behavior of the controller 540.

[0112] When an element 402 selected from the element group 105 is acquired, the modulation unit 510 formulates a formula 111 as a modulation function that modulates the value of the variable in the acquired element 402 based on the behavioral history 601, which is the history of the acquired element 402, and modulates the value of the variable for each analysis target based on the formula 111.

[0113] The image generator 520 generates image data I for each analysis object in a coordinate space 110 defined by the X-axis and Y-axis, with the modulation result (signal x') from the modulation unit 510 and the value of the objective variable 302 assigned as coordinate points (patient data) on the X-axis and Y-axis, respectively.

[0114] (2) In addition, in the above (1), the data processing device 100 has a controller 540. The controller 540 generates a control signal a(t) that selects an element 402 from the element group 105 of the pattern table 208 based on the behavior history 601, and controls the modulation unit 510 based on the control signal a(t).

[0115] This allows the controller 540 to formulate a mathematical formula 111 and output coordinate values ​​(patient data) based on the behavioral history 601. The image generator 520 can plot the coordinate values ​​(patient data) in the coordinate space 110 to generate image data I(t).

[0116] (3) In addition, in the above (2), when image data I(t) is generated by image generator 520, controller 540 may select element 402 from element group 105 and generate a new control signal a(t).

[0117] This allows the image generator 520 to generate image data I(t+1) that reflects the action taken by the control signal a(t), and the controller 540 can take the next action in the state of this image data I(t+1).

[0118] (4) Also, in the above (3), the controller 540 may input the image data I(t+1) to the Q* network 701, which outputs a one-dimensional array z(t) indicating the value of taking an action corresponding to each element 402 in the pattern table 208 in a state defined by the image data I(t+1) based on the learning parameter θ*, generate a control signal a(t) (e.g., "*") corresponding to a specific value (e.g., 0.9) from the one-dimensional array z(t) indicating the value of each element 402 output from the Q* network 701, and control the modulation unit 510 based on the control signal a(t).

[0119] This allows the image generator 520 to generate image data I(t+1) that reflects a specific value of action based on the control signal a(t), and the controller 540 can take the next action in the state of such image data I(t+1).

[0120] (5) In the above (4), the specific value may be the value that indicates the maximum value in the one-dimensional array z(t) that indicates the value of each element 402 in the pattern table 208.

[0121] This allows the image generator 520 to generate image data I(t+1) that reflects the action with the greatest value due to the control signal a(t), and the controller 540 can take the next action in the state of such image data I(t+1).

[0122] (6) Also, in (4) above, the data processing device 100 has a replay memory 720 that stores the data pack group Ds, and an evaluator 530 that evaluates the mathematical expression 111 based on the modulation result (signal x') and the value of the objective variable 302.

[0123] The controller 540 has a Q-network 702 that outputs a one-dimensional array z(t) indicating the value of each element in the pattern table 208 in a state defined by the image data based on the learning parameter θ. The controller 540 may calculate the value of the action as a teacher signal y(j) by adding, as a reward, a statistic r(j), which is the evaluation result of Formula 111 by the evaluator 530, to a second output result when the image data I(j+1) is input to the Q-network 702, update the learning parameter θ based on the teacher signal y(j) and the first output result when the image data I(j) is input to the Q-network 702, and update the learning parameter θ* using the updated learning parameter θ.

[0124] This allows optimization of the Q* network 701, and enables identification of more valuable elements from the one-dimensional array z(t) output by the Q* network 701. Therefore, the devised formula 111 enables highly accurate identification of patient data groups and regression analysis.

[0125] (7) In addition, in the above (1), the data processing device 100 has an evaluator 530 and an output unit (output device 204 or communication IF 205). The evaluator 530 evaluates the formula 111 based on the modulation result (a value obtained by substituting the numerical values ​​of a group of variables of the patient data into the designed formula 111) (signal x') and the value of the objective variable 302. The output unit may output the image data I(j) in a displayable manner when the statistic r(j), which is the evaluation result of the formula 111 by the evaluator 530, is equal to or greater than the target value input in the target value input area 862, for example.

[0126] This allows the data processing device 100 to narrow down the mathematical expressions 111 that the user 103 needs.

[0127] The present invention is not limited to the above-described embodiments, and includes various modifications and equivalent configurations within the spirit and scope of the appended claims. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to configurations including all of the described configurations. Furthermore, part of the configuration of one embodiment may be replaced with the configuration of another embodiment. Furthermore, the configuration of another embodiment may be added to the configuration of one embodiment. Furthermore, part of the configuration of each embodiment may be added to, deleted from, or replaced with other configurations.

[0128] Furthermore, the aforementioned configurations, functions, processing units, processing means, etc. may be realized in part or in whole in hardware, for example by designing them as integrated circuits, or may be realized in software by a processor interpreting and executing a program that realizes each function.

[0129] Information such as programs, tables, and files that realize each function can be stored in storage devices such as memory, hard disks, and SSDs (Solid State Drives), or on recording media such as IC (Integrated Circuit) cards, SD cards, and DVDs (Digital Versatile Discs).

[0130] In addition, the control lines and information lines shown are those that are considered necessary for the explanation, and do not necessarily show all the control lines and information lines that are necessary for implementation. In reality, it can be considered that almost all components are interconnected. [Explanation of symbols]

[0131] 100 Data processing device 102 Regressor 104, 1200 Analysis target DB 110 Coordinate Space 111 Formulas 201 processor 202 Storage Devices 204 Output Devices 207 Image processing circuit 208 Pattern Table 302 Objective variable 303 Nameset 304 Modulation Method 500 data memory 510 Modulation Unit 511 Data Load Modulator 512 Data Save Modulator 520 Image Generator 530 Evaluator 540 Controller 602 Activity History 700 Network Unit 701 Q*Network 702 Q Network 730 Learning Parameter Update Unit 731 Gradient Calculation Unit 800, 1300 Input / Output Screen a control signal I Image data

Claims

1. a storage unit that stores an analysis target data group having values ​​of each variable of a variable group and a value of a target variable for each analysis target, and an element group having elements each of the variable group and one or more modulation methods for modulating the variable; a modulation unit that, when the element selected from the element group is acquired, designs a modulation function for modulating the value of the variable included in the acquired element based on a behavior history that is a history of the acquired element, and modulates the value of the variable for each analysis target based on the modulation function; a generation unit that generates image data in a coordinate space defined by a first axis corresponding to the modulation result by the modulation unit and a second axis corresponding to the objective variable, in which coordinate points that are the modulation result and the objective variable value are assigned for each analysis target; When the image data is generated by the generation unit, the modulation unit selects a new element from the element group based on the image data to update the behavior history, plans the modulation function based on the updated behavior history, and modulates the value of the variable for each analysis target based on the modulation function; the generation unit repeatedly generates the image data defined in the same coordinate space each time the modulation result is repeatedly output by the modulation unit. A data processing device characterized by:

2. 2. The data processing device according to claim 1, a control unit that generates a control signal for selecting the element from the group of elements based on the behavior history, and controls the modulation unit based on the control signal; A data processing device comprising:

3. 3. A data processing device according to claim 2, When the image data is generated by the generation unit, the control unit selects the element from the element group and newly generates the control signal. A data processing device characterized by:

4. 4. A data processing device according to claim 3, the control unit inputs the image data into a first action-value function that defines the image data as a first state and the group of elements as a first action, and outputs a value of the first action in the first state based on a first learning parameter; selects a specific element from the group of elements that corresponds to a specific value among the values ​​of each element output from the first action-value function; newly generates the control signal including the selected specific element, and controls the modulation unit. A data processing device characterized by:

5. 5. A data processing device according to claim 4, The specific value is a value that indicates the maximum value among the values ​​of the respective elements. A data processing device characterized by:

6. 5. A data processing device according to claim 4, a storage unit that stores the image data by the generation unit; an evaluation unit that evaluates the modulation function based on the modulation result and the value of the response variable, the control unit selects a combination of first image data and second image data in time series accumulated from the accumulation unit, sets the image data as a second state and the group of elements as a second action, inputs the second image data into a second action value function that outputs a value of the second action in the second state based on a second learning parameter, calculates a value of the first action as a teacher signal by adding, as a reward, a result of evaluation of the modulation function by the evaluation unit to a second output result from the second action value function, updates the second learning parameter based on the teacher signal and a first output result that is output when the first image data is input to the second action value function, and updates the first learning parameter with the updated second learning parameter. A data processing device characterized by:

7. 2. The data processing device according to claim 1, an evaluation unit that evaluates the modulation function based on the modulation result and the value of the objective variable; an output unit that outputs the image data in a displayable manner when the evaluation result of the modulation function by the evaluation unit is equal to or greater than a target value; A data processing device comprising:

8. 7. A data processing device according to claim 6, the response variable is a quantitative variable, the evaluation unit generates a regression model that regresses the coordinate value of the first axis corresponding to the modulation result with the objective variable, and outputs accuracy of the regression model as an evaluation result of the modulation function. A data processing device characterized by:

9. 7. A data processing device according to claim 6, the objective variable is information for classifying the analysis target data group, The evaluation unit generates an identification model that identifies the coordinate value of the first axis corresponding to the modulation result using the objective variable, and outputs accuracy of the identification model as an evaluation result of the modulation function. A data processing device characterized by:

10. A data processing method executed by a data processing device having a processor that executes a program and a storage device that stores the program, comprising: the data processing device is capable of accessing an analysis target data group having values ​​of each variable of a variable group and a target variable value for each analysis target, and an element group having elements each of the variable group and one or more modulation methods for modulating the variable; The processor: When the element selected from the element group is acquired, a modulation function is developed to modulate the value of the variable included in the acquired element based on a behavior history, which is a history of the acquired element, and a modulation process is performed to modulate the value of the variable for each analysis target based on the modulation function. a generation process for generating image data in which coordinate points that are the modulation results and the values ​​of the objective variables are assigned for each analysis target in a coordinate space defined by a first axis corresponding to the modulation results of the modulation process and a second axis corresponding to the objective variable; In the modulation process, when the image data is generated by the generation process, the processor newly selects the element from the element group based on the image data to update the behavior history, plans the modulation function based on the updated behavior history, and modulates the value of the variable for each of the analysis targets based on the modulation function; In the generation process, the processor generates the image data defined in the same coordinate space each time the modulation result is repeatedly output by the modulation process. A data processing method comprising:

11. A processor that can access an analysis target data group having a value of each variable of a variable group and a value of a target variable for each analysis target, and an element group having elements each of the variable group and one or more modulation methods for modulating the variable, When the element selected from the element group is acquired, a modulation function is developed to modulate the value of the variable included in the acquired element based on a behavior history, which is a history of the acquired element, and a modulation process is performed to modulate the value of the variable for each analysis target based on the modulation function. a generation process for generating image data in which coordinate points that are the modulation results and the values ​​of the objective variables are assigned for each analysis target in a coordinate space defined by a first axis corresponding to the modulation results of the modulation process and a second axis corresponding to the objective variable; In the modulation process, when the image data is generated by the generation process, the processor is caused to execute a process of selecting a new element from the element group based on the image data to update the behavior history, formulating the modulation function based on the updated behavior history, and modulating the value of the variable for each analysis target based on the modulation function; In the generation process, the processor executes a process of generating the image data defined in the same coordinate space each time the modulation result is repeatedly output by the modulation process. A data processing program characterized by:

Citation Information

Patent Citations

  • Diagnostic method for cerebral infarction

    JP1993176932A

  • Dangerous action prediction device, prediction model generation device, and program for dangerous action prediction

    JP2019194807A

  • Data processing device, data processing method, and data processing program

    JP2021043626A

  • Portable Device Control Method and Device

    US20170208548A1

  • Pharmaceutical process system for creating and analyzing information

    WO1997044752A1