The present invention relates to a data analysis apparatus, a data analysis method, and a data analysis program.
In order for a person to freely move his/her body, locomotive organs made up of bones, joints, muscles and nerves need to function normally. Locomotive syndrome (“locomo”) refers to a condition in which one or more locomotive organs are impaired and movement functions such as standing, walking, running, and sitting are declined. When such a decline in the movement functions progresses, a trouble occurs even in a daily life. It is said that locomotor disorders that require a hospital treatment usually occur after an age of 50, and locomotor disorders in the elder lead to a risk of needing support or care. Since the locomotor disorders progress gradually, a need for prevention, early detection, and appropriate coping of the locomo is recognized. Patent Literature 1 discloses a walking mode analysis apparatus that measures a walking state of a measurement subject, calculates feature amount data from a measurement result, and analyzes a walking mode of the measurement subject using calculated feature amount data and an analysis model.
In Patent Literature 2, in constructing a prediction model, candidates for preprocessing of input data, a data learning method based on a hyperparameter, and the like are set in advance, and a pipeline capable of constructing a prediction model with higher prediction accuracy is selected from combinations (referred to as pipelines) of these candidates. A search is performed using sample data extracted at a predetermined ratio from learning data so that time required for a search for the pipeline does not increase even when the number of candidates increases, the extraction ratio of the sample data is increased as long as processing time does not exceed a time limit, and a combination in which the prediction accuracy of the prediction model is high is searched for.
A decline in movement functions of a person is represented as a gait disorder. It is effective to know a walking state of the person, which promotes early detection and remission of the locomo, and to inform a subject in an easy-to-understand manner. From a viewpoint of prevention or early detection of a locomotor disorder, it is desirable that the analysis apparatus as disclosed in Patent Literature 1 is provided not only in a medical institution but also in a fitness gym or the like, and even a measurement subject who is unaware of the locomotor disorder can easily be aware of his/her walking state.
However, the more precisely and accurately a walking mode is analyzed, the more enormous the number of feature amount data used for analysis is, and time required for calculation of the feature amount data and the analysis using the feature amount data also increases. When it takes a long waiting time to obtain an analysis result, the waiting time may be avoided by the measurement subject who is unaware of a locomotor disorder. In particular, when the analysis apparatus is provided in a place close to the measurement subject, it is desirable to calculate the feature amount data and analyze the walking state by a personal computer (PC) or the like that is generally used, and it cannot be assumed that a computer with particularly high computing capability is used.
Patent Literature 2 discloses shortening a search time for pipeline selection for construction of a prediction model, and does not refer to time required for analysis using the prediction model.
A data analysis apparatus according to an embodiment of the invention performs data analysis using an ensemble model that makes an inference by integrating inferences by first to n-th models. The data analysis apparatus includes: a processor; a memory; a storage; and a data analysis program read into the memory and executed by the processor. The storage stores model data in which first to n-th model groups each including one or more models are registered, an i-th model (1≤i≤n) constituting the ensemble model is selected from an i-th model group of the model data, at least one model group of the first to n-th model groups includes a plurality of models, and the data analysis program includes: an ensemble model creation processing unit configured to present, from the respective first to n-th model groups, options of the first to n-th models capable of constituting the ensemble model satisfying a performance requirement for data analysis and a constraint requirement for time required for the data analysis; and an ensemble analysis processing unit configured to receive selection of the presented options of the first to n-th models and make an inference by the ensemble model using the selected first to n-th models.
In an analysis using an ensemble model, prediction accuracy and an analysis time of the ensemble model are harmonized.
Other technical problems and novel characteristics will be apparent from the description and the accompanying drawings.
The data analysis apparatus 100 includes a central processing unit (CPU) 101, an input interface (I/F) 102, an output I/F 103, a memory 104, a storage 105, and an I/O port 106, which are connected by an internal bus 107. The data analysis apparatus 100 is an information processing apparatus that can be implemented by a general-purpose computer. The input I/F 102 is connected to an input device such as a keyboard or a mouse, and the output I/F 103 is connected to a display or a printer to implement a graphical user interface (GUI) for an operator. The storage 105 usually includes a nonvolatile memory such as a HDD, a SSD, a ROM, or a flash memory, and stores a program to be executed by the data analysis apparatus 100, data to be processed by the program, and the like. The memory 104 includes a random access memory (RAM), and temporarily stores the program, data necessary for executing the program, and the like according to a command of the CPU 101. The CPU 101 executes the program loaded from the storage 105 to the memory 104.
The data analysis apparatus 100 issues a collection command of sensing data to the sensor 111. The sensor 111 senses the walking of the measurement subject in response to the command and transmits a measurement result to the data analysis apparatus 100. A distance sensor based on a time of flight (TOF) method can be used as the sensor 111. In order to capture the walking mode of the measurement subject, it is necessary to measure a movement (trajectory) in a three-dimensional space of a measurement point (joint or the like) of a body of the measurement subject during walking, and the distance sensor has an advantage that coordinates of the measurement point in the three-dimensional space can be directly obtained. The sensor 111 is not limited to the distance sensor and may be a video camera and perform an image analysis from a video obtained by imaging a measurer during walking by the video camera. A sensor such as an acceleration sensor, an angle sensor, or a gyro sensor may be used. It is also possible to use a plurality of types of sensors.
In the present embodiment, the walking mode is analyzed using an ensemble model. The ensemble model is a model that integrates inferences by a plurality of models (weak recognizers) into one inference.
It is assumed that the models that constitute the ensemble model 300 and output the healthy degree, the abnormality degree 1, and the abnormality degree 2 are selected from respective model groups, and at least one of the model groups includes a plurality of models. In the example of
Accordingly, in order to adapt the data analysis system 110 to a measurement subject group having different performances required by data analysis and different constraints allowed by data analysis, an administrator of the data analysis system 110 activates the analysis setting processing unit 206 and registers analysis setting data 213 and domain knowledge data 217 (see
A processing flow in which a measurer 610 analyzes a walking mode of a measurement subject 620 by a PC 600 that is the data analysis apparatus 100 will be described with reference to
When the measurement subject 620 makes a measurement request to the measurer 610 (S600), the measurer 610 performs a measurement start operation on the user input-output processing unit 201 (S601). First, the user input-output processing unit 201 issues a measurement start request to the data measurement processing unit 202 (S602). The data measurement processing unit 202 measures the walking of the measurement subject 620 using the sensor 111 (S603), and stores obtained measurement data in the storage 105 (S604).
The measurement data 211 is a trajectory of a measurement point of the measurement subject in the three-dimensional space, and (X, Y, Z) coordinates 2114 of each measurement point for each time indicated by a time stamp 2113 are stored. As the measurement point, a joint or the like that affects the walking mode is set. A data ID 2111 is an ID assigned to each record included in the measurement data 211, and a measurement ID 2112 is an ID assigned to each measurement request of the measurement subject 620.
When the measurement of the walking of the measurement subject 620 ends, the user input-output processing unit 201 issues a feature amount calculation request to the feature amount calculation processing unit 203 (S605). The feature amount calculation processing unit 203 receives inputs of selected feature amount data 216 for specifying a feature amount to be used for the ensemble model and the measurement data 211 of the measurement subject 620 (S606, 607), calculates feature amount data 212 specified by the selected feature amount data 216, and stores the obtained feature amount data in the storage 105 (S608).
When the calculation of the feature amount selected by the selected feature amount data 216 ends, the user input-output processing unit 201 issues an analysis request to the ensemble analysis processing unit 205 (S610). The ensemble analysis processing unit 205 receives inputs of ensemble model data 218 and the feature amount data 212 (S611, S612), performs analysis using the ensemble model, stores prediction result data 214 (for example, in the example of
Before executing the processing flow of
An analyst 1000 performs a model evaluation start operation on the user input-output processing unit 201 (S1001). First, the user input-output processing unit 201 issues a feature amount calculation request to the feature amount calculation processing unit 203 (S1002). The feature amount calculation processing unit 203 receives inputs of the measurement data 211 stored in the storage 105 (S1003), and calculates total feature amount data 220 (S1004). Any measurement data may be used as the measurement data 211, and for example, measurement data used for learning a model may be used. The total feature amount data 220 includes all feature amounts used by a model (weak recognizer) that is an option of the ensemble model to be evaluated. When the total feature amount data 220 is calculated, the user input-output processing unit 201 issues a model evaluation request to the model evaluation unit 204 (S1005). The model evaluation unit 204 receives an input of the total feature amount data 220 (S1006), executes evaluation of each model, and stores model data 215 including an evaluation result in the storage 105 (S1007).
A model ID 2151 is an ID for specifying each of the models (weak recognizers) constituting the ensemble model. An algorithm used in each model is stored in an algorithm 2152, an object variable (for example, healthy walking, abnormal walking 1, and abnormal walking 2 in the example of
The analyst 1000 performs an ensemble model creation operation on the user input-output processing unit 201 (S1201). The user input-output processing unit 201 issues an ensemble model creation request to the ensemble model creation processing unit 207 (S1202). The ensemble model creation processing unit 207 receives inputs of the analysis setting data 213, the measurement data 211, the model data 215, and the domain knowledge data 217 stored in the storage 105 (S1203 to S1206), creates the ensemble model data 218 for specifying the models constituting the ensemble model satisfying the predetermined performance requirements and constraint requirements and the selected feature amount data 216 for specifying a feature amount required to be calculated for the ensemble model, and stores the ensemble model data 218 and the selected feature amount data 216 in the storage 105 (S1207 to S1208).
Subsequently, a candidate model (weak recognizer) to be used for the ensemble model is selected (S1302). The candidate model to be used for the ensemble model is selected based on the processing speed 2155 and the performance index 2156 stored in the model data 215. In the selection, a candidate model is selected so that a performance index specified as a performance requirement is highest. In this case, a plurality of candidates may be selected.
Subsequently, for the ensemble model to which the selected candidate model (weak recognizer) is applied, performance and an analysis time of an actual machine are evaluated (S1303). In performance evaluation, the performance index specified as the performance requirement is calculated. The evaluated analysis time includes time required to calculate the feature amount data from the measurement data and time required to perform analysis by the ensemble model from the feature amount data. A calculation time of the feature amount data is time required to calculate a feature amount necessary for analysis by the ensemble model constituted by the candidate model. Since the processing speed 2155 stored in the model data 215 is not limited to the processing speed evaluated by the PC 600, it is possible to estimate a more accurate time required for the analysis by the ensemble model by the PC 600 performing the analysis from the actual measurement data 211. The measurement data used for an analysis time evaluation may be the measurement data used for learning the model, measurement data measured by the PC 600 in the past, or any measurement data.
When the analysis time evaluation by the actual machine (S1303) satisfies the time constraint 2135 (see
When the analysis time evaluation by the actual machine (S1303) does not satisfy the time constraint 2135 of the analysis target (no in S1304), a model candidate is selected so that the performance index specified as the performance requirement is as high as possible based on a deviation between the performance index specified as the performance requirement, the analysis time evaluated in S1303, and the time constraint as the constraint requirement (S1305).
At this time, a model candidate is selected so that the feature amount to be calculated is limited based on the deviation between the importance degree of the feature amount, the analysis time evaluated in S1303, and the time constraint that is the constraint requirement (S1306). As the importance degree of the feature amount, both an importance degree in an analysis algorithm and an importance degree in a description of an analysis result to the measurement subject are considered. The importance degree in an analysis algorithm can be determined from the binary data of the model data 2154, and the importance degree in a description of an analysis result to the measurement subject can be determined from the domain knowledge data 217. Regarding at least one model constituting the ensemble model, by omitting the calculation of the feature amount having a small influence on the analysis result or the description thereof (this state is referred to as an “input constrained state”), it is possible to expect that the time required for the calculation of the feature amount is reduced while preventing the decline of the performance as much as possible. Also in S1305 and S1306, a plurality of candidates may be selected.
The performance and the analysis time of the actual machine are evaluated again (S1303) based on the selected model candidate and a feature amount candidate, and the selection and the ensemble model evaluation by the actual machine are repeated while changing a combination of models (weak recognizers) constituting the ensemble model and the selection of the feature amount until the model candidate and the feature amount candidate satisfying the time constraint are obtained.
While the invention made by the present inventor has been specifically described based on the embodiment, the invention is not limited thereto, and various modifications may be made without departing from the scope of the invention. In the embodiment, a walking mode analysis apparatus that analyzes the walking mode of the measurement subject has been described as an example, and the invention is widely applicable to an apparatus, a system, a method, and a program that perform data analysis using an ensemble model.
Number | Date | Country | Kind |
---|---|---|---|
2019-132543 | Jul 2019 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2020/024353 | 6/22/2020 | WO | 00 |