KR102415220B1 - Time series data processing device and operating method thereof - Google Patents
Time series data processing device and operating method thereof Download PDFInfo
- Publication number
- KR102415220B1 KR102415220B1 KR1020180147862A KR20180147862A KR102415220B1 KR 102415220 B1 KR102415220 B1 KR 102415220B1 KR 1020180147862 A KR1020180147862 A KR 1020180147862A KR 20180147862 A KR20180147862 A KR 20180147862A KR 102415220 B1 KR102415220 B1 KR 102415220B1
- Authority
- KR
- South Korea
- Prior art keywords
- time
- data
- time series
- series data
- generating
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Processing (AREA)
Abstract
본 발명은 시계열 데이터 처리 장치 및 이의 동작 방법에 관한 것이다. 본 발명의 실시예에 따른 시계열 데이터 처리 장치는 네트워크 인터페이스, 전처리부, 및 데이터 분석부, 및 프로세서를 포함한다. 네트워크 인터페이스는 시계열 데이터 및 예측 시간을 수신한다. 전처리부는 시계열 데이터를 전처리하고, 예측 시간에 기초하여 시계열 데이터의 복수의 시간들 각각에 대응되는 시차 데이터를 생성한다. 데이터 분석부는 전처리된 시계열 데이터 및 시차 데이터에 기초하여, 예측 시간에 대응되는 결과 데이터를 생성한다. 본 발명에 따르면, 시계열 데이터의 불규칙한 시간 간격을 보정함으로써 예측 결과의 정확성 및 신뢰성을 향상시킬 수 있다.The present invention relates to a time series data processing apparatus and an operating method thereof. A time series data processing apparatus according to an embodiment of the present invention includes a network interface, a preprocessor, a data analysis unit, and a processor. The network interface receives time series data and predicted times. The preprocessor preprocesses the time series data and generates disparity data corresponding to each of a plurality of times of the time series data based on the predicted time. The data analysis unit generates result data corresponding to the predicted time based on the preprocessed time series data and disparity data. According to the present invention, accuracy and reliability of prediction results can be improved by correcting irregular time intervals of time series data.
Description
본 발명은 시계열 데이터의 처리 및 이를 위한 예측 모델의 구축에 관한 것으로, 좀 더 구체적으로 시계열 데이터 처리 장치 및 예측 모델을 학습 또는 이용하는 시계열 데이터 처리 장치의 동작 방법에 관한 것이다.The present invention relates to the processing of time series data and the construction of a prediction model therefor, and more particularly, to a time series data processing apparatus and an operating method of the time series data processing apparatus learning or using the prediction model.
의료 기술을 비롯한 각종 기술의 발달은 인간의 생활 수준을 향상시키고, 인간의 수명을 늘리고 있다. 다만, 기술 발달에 따른, 생활 양식의 변화와 잘못된 식습관 등은 다양한 질병 등을 유발시키고 있다. 건강한 삶을 영위하기 위하여, 현재의 질병을 치료하는 것에서 나아가 미래의 건강 상태를 예측하기 위한 요구가 제기되고 있다. 시간의 흐름에 따른 시계열 의료 데이터의 추이를 분석함으로써, 미래 시점의 건강 상태를 예측하는 방안이 제기되고 있다.BACKGROUND ART The development of various technologies, including medical technology, is improving the standard of living of humans and extending the lifespan of humans. However, changes in lifestyle and wrong eating habits due to technological development are causing various diseases. In order to lead a healthy life, there is a demand for predicting future health conditions in addition to treating current diseases. By analyzing the trend of time series medical data according to the passage of time, a method of predicting a health status at a future point in time has been proposed.
산업 기술과 정보 통신 기술의 발달은 상당한 규모의 정보 및 데이터를 생성하게 만들고 있다. 최근에는, 이러한 수많은 정보 및 데이터를 이용하여, 컴퓨터와 같은 전자 장치를 학습시켜, 다양한 서비스를 제공하는 인공 지능과 같은 기술이 대두되고 있다. 특히, 미래의 건강 상태를 예측하기 위하여, 다양한 시계열 의료 데이터를 이용한 예측 모델을 구축하는 방안이 제기되고 있다. 예를 들어, 시계열 의료 데이터는 사용자의 불규칙한 방문에 따라 불규칙한 시간 간격을 갖는 점에서, 다른 분야에서 수집되는 데이터와 차이점을 갖는다. 따라서, 미래의 건강 상태를 예측하기 위하여, 시계열 의료 데이터를 효과적으로 처리하고 분석하기 위한 요구가 제기되고 있다.The development of industrial technology and information and communication technology is creating a significant amount of information and data. Recently, a technology such as artificial intelligence that provides various services by learning an electronic device such as a computer by using such a large amount of information and data has emerged. In particular, in order to predict a future health state, a method of constructing a predictive model using various time series medical data has been proposed. For example, time series medical data differs from data collected in other fields in that it has irregular time intervals according to irregular visits of users. Accordingly, there is a demand for effectively processing and analyzing time-series medical data in order to predict future health conditions.
본 발명은 불규칙한 시간 간격을 갖는 시계열 데이터에 의한 예측 결과의 정확성 및 신뢰성을 향상시키는 시계열 데이터 처리 장치 및 이의 동작 방법을 제공할 수 있다.The present invention may provide a time series data processing apparatus and an operating method thereof for improving the accuracy and reliability of prediction results based on time series data having irregular time intervals.
본 발명의 실시예에 따른 시계열 데이터 처리 장치는 네트워크 인터페이스, 전처리부, 데이터 분석부, 및 프로세서를 포함한다. 네트워크 인터페이스는 시계열 데이터 및 예측 시간을 수신한다. 전처리부는 시계열 데이터를 전처리하고, 예측 시간에 기초하여 시계열 데이터의 복수의 시간들 각각에 대응되는 시차 데이터를 생성한다. 데이터 분석부는 전처리된 시계열 데이터 및 시차 데이터에 기초하여 예측 시간에 대응되는 결과 데이터를 생성한다. 프로세서는 전처리부 및 데이터 분석부를 제어한다.A time series data processing apparatus according to an embodiment of the present invention includes a network interface, a preprocessor, a data analysis unit, and a processor. The network interface receives time series data and predicted times. The preprocessor preprocesses the time series data and generates disparity data corresponding to each of a plurality of times of the time series data based on the predicted time. The data analyzer generates result data corresponding to the predicted time based on the preprocessed time series data and the disparity data. The processor controls the preprocessor and the data analysis unit.
일례로, 전처리부는 복수의 시간들 중 최초 시간과 예측 시간의 차이에 기초하여 시계열 데이터의 복수의 기준 시간들을 계산하고, 복수의 기준 시간들과 복수의 시간들 사이의 차이에 기초하여 시차 데이터를 생성할 수 있다. 복수의 기준 시간들 사이의 시간 간격은 서로 동일할 수 있다. For example, the preprocessor calculates a plurality of reference times of the time series data based on the difference between the initial time and the predicted time among the plurality of times, and calculates the time difference data based on the difference between the plurality of reference times and the plurality of times. can create Time intervals between the plurality of reference times may be equal to each other.
일례로, 전처리부는 데이터 추출기, 시간 간격 계산기, 및 데이터 보간기를 포함할 수 있다. 데이터 추출기는 시계열 데이터에서 정상 시계열 데이터를 추출할 수 있다. 시간 간격 계산기는 예측 시간 및 정상 시계열 데이터의 복수의 시간들에 기초하여, 시차 데이터를 생성할 수 있다. 데이터 보간기는 정상 시계열 데이터에 포함된 특징들에 대한 결측 값을 보간할 수 있다.As an example, the preprocessor may include a data extractor, a time interval calculator, and a data interpolator. The data extractor may extract normal time series data from time series data. The time interval calculator may generate disparity data based on the predicted time and the plurality of times of the normal time series data. The data interpolator may interpolate missing values for features included in the normal time series data.
일례로, 데이터 분석부는 전처리된 시계열 데이터 및 시차 데이터를 입력 받는 예측 모델에 의하여, 전처리된 시계열 데이터에 대응되는 가중치를 생성하고, 가중치에 기초하여 결과 데이터를 계산할 수 있다. For example, the data analyzer may generate a weight corresponding to the preprocessed time series data by a prediction model receiving the preprocessed time series data and the disparity data, and calculate the result data based on the weight.
일례로, 예측 모델은 전처리된 시계열 데이터를 복수의 시간들에 대응되는 복수의 벡터 값들로 변환하는 제1 레이어, 복수의 시간들에 대응되는 시차 데이터의 값들 및 복수의 벡터 값들을 모델링하여, 복수의 벡터 값들에 대응되는 복수의 가중치들을 생성하고, 복수의 가중치들을 복수의 벡터 값들에 적용하여, 분석 값을 생성하는 제2 레이어, 및 복수의 시간들 중 최종 시간에 대응되는 벡터 값 및 분석 값에 기초하여, 결과 데이터를 생성하는 제3 레이어를 포함할 수 있다.As an example, the predictive model is a first layer that converts preprocessed time series data into a plurality of vector values corresponding to a plurality of times, values of disparity data corresponding to a plurality of times, and a plurality of vector values, A second layer that generates a plurality of weights corresponding to vector values of , and applies the plurality of weights to the plurality of vector values to generate an analysis value, and a vector value and analysis value corresponding to a final time among the plurality of times Based on the , a third layer generating result data may be included.
일례로, 예측 모델은 전처리된 시계열 데이터를 복수의 시간들에 대응되는 복수의 벡터 값들로 변환하는 제1 레이어, 시차 데이터를 모델링하여 복수의 벡터 값들에 대응되는 복수의 시간 보정 값들을 생성하는 제2 레이어, 복수의 벡터 값들 및 복수의 시간 보정 값들에 기초하여 복수의 벡터 값들에 대응되는 복수의 가중치들을 생성하는 제3 레이어, 및 복수의 가중치들 및 상기 복수의 벡터 값들에 기초하여 결과 데이터를 생성하는 제4 레이어를 포함할 수 있다.For example, the predictive model includes a first layer that converts preprocessed time series data into a plurality of vector values corresponding to a plurality of times, and a first layer that models disparity data to generate a plurality of time correction values corresponding to a plurality of
본 발명의 실시예에 따른 시계열 데이터 처리 장치의 동작 방법은 복수의 시간들에 대응되는 시계열 데이터를 획득하는 단계, 설정된 예측 시간으로부터 생성된 복수의 기준 시간들과 복수의 시간들 사이의 차이에 기초하여 시차 데이터를 생성하는 단계, 및 시계열 데이터 및 시차 데이터에 기초하여 예측 모델을 학습하는 단계를 포함할 수 있다. 예측 시간은 복수의 시간들 중 최종 시간을 포함할 수 있다.A method of operating a time series data processing apparatus according to an embodiment of the present invention includes obtaining time series data corresponding to a plurality of times, based on a difference between a plurality of reference times and a plurality of times generated from a set prediction time to generate disparity data, and learning a predictive model based on time series data and disparity data. The prediction time may include a last time among a plurality of times.
본 발명의 실시예에 따른 시계열 데이터 처리 장치의 동작 방법은 복수의 시간들에 대응되는 시계열 데이터를 획득하는 단계, 복수의 시간들 이후의 예측 시간을 획득하는 단계, 예측 시간 및 복수의 시간들 중 적어도 하나 사이의 시간 간격에 기초하여, 복수의 시간들 각각에 대응되는 시차 데이터를 생성하는 단계, 및 시계열 데이터 및 시차 데이터에 기초하여, 예측 시간에 대응되는 결과 데이터를 생성하는 단계를 포함할 수 있다.A method of operating a time series data processing apparatus according to an embodiment of the present invention includes obtaining time series data corresponding to a plurality of times, obtaining a predicted time after a plurality of times, a predicted time and a plurality of times based on the time interval between at least one, generating disparity data corresponding to each of a plurality of times, and generating result data corresponding to the predicted time based on the time series data and disparity data. have.
본 발명의 실시예에 따른 시계열 데이터 처리 장치 및 이의 동작 방법은 예측 시간을 고려하여 시계열 데이터의 불규칙한 시간 간격을 보정함으로써, 원하는 시간의 예측 결과를 생성할 수 있고, 예측 결과의 정확성 및 신뢰성을 향상시킬 수 있다.A time series data processing apparatus and an operating method thereof according to an embodiment of the present invention can generate a prediction result of a desired time by correcting an irregular time interval of the time series data in consideration of the prediction time, and improve the accuracy and reliability of the prediction result can do it
또한, 본 발명의 실시예에 따른 시계열 데이터 처리 장치 및 이의 동작 방법은 시계열 데이터의 불규칙한 시간 간격을 보정하는 어텐션 매커니즘(attention mechanism) 기반의 예측 모델을 구축함으로써, 예측 결과의 정확성 및 신뢰성을 향상시킬 수 있다.In addition, the time series data processing apparatus and the method of operation thereof according to an embodiment of the present invention build a prediction model based on an attention mechanism that corrects irregular time intervals of time series data, thereby improving the accuracy and reliability of the prediction result. can
도 1은 본 발명의 실시예에 따른 건강 상태 예측 시스템을 도시한 도면이다.
도 2는 도 1의 시계열 의료 데이터 처리 장치의 예시적인 블록도이다.
도 3은 도 2의 전처리부의 예시적인 블록도이다.
도 4는 도 3의 시간 간격 계산기에서 시차 데이터를 생성하는 과정을 설명하기 위한 도면이다.
도 5는 도 2의 데이터 분석부의 예시적인 블록도이다.
도 6은 도 5에서 학습된 예측 모델의 예시적인 도면이다.
도 7은 도 5에서 학습된 예측 모델의 예시적인 도면이다.
도 8은 도 1의 시계열 의료 데이터 처리 장치에 의한 예측 모델을 학습하는 방법의 순서도이다.
도 9는 도 1의 시계열 의료 데이터 처리 장치에 의한 미래 건강 상태를 예측하는 방법의 순서도이다.
도 10은 도 9의 S230 단계를 구체화한 순서도이다.1 is a diagram illustrating a health state prediction system according to an embodiment of the present invention.
FIG. 2 is an exemplary block diagram of the time-series medical data processing apparatus of FIG. 1 .
3 is an exemplary block diagram of the preprocessor of FIG. 2 .
FIG. 4 is a view for explaining a process of generating disparity data in the time interval calculator of FIG. 3 .
FIG. 5 is an exemplary block diagram of the data analysis unit of FIG. 2 .
6 is an exemplary diagram of a predictive model trained in FIG. 5 .
7 is an exemplary diagram of a predictive model trained in FIG. 5 .
8 is a flowchart of a method for learning a predictive model by the time series medical data processing apparatus of FIG. 1 .
9 is a flowchart of a method of predicting a future health state by the time-series medical data processing apparatus of FIG. 1 .
10 is a flowchart illustrating step S230 of FIG. 9 .
아래에서는, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재된다. 아래에서는, 불규칙한 시간 간격을 갖는 시계열 데이터의 대표적인 예시로, 의료 데이터가 언급되고 있다. 다만, 이에 제한되지 않고, 본 발명의 기술적 사상이 불규칙한 시간 간격을 갖는 다양한 시계열 데이터를 처리하는 장치에 적용될 수 있음이 이해될 것이다.Hereinafter, embodiments of the present invention will be described clearly and in detail to the extent that those skilled in the art can easily practice the present invention. Below, medical data is mentioned as a representative example of time series data having irregular time intervals. However, the present invention is not limited thereto, and it will be understood that the technical spirit of the present invention may be applied to an apparatus for processing various time series data having irregular time intervals.
도 1은 본 발명의 실시예에 따른 건강 상태 예측 시스템을 도시한 도면이다. 도 1을 참조하면, 건강 상태 예측 시스템(100)은 단말기(110), 의료 데이터베이스(120), 시계열 의료 데이터 처리 장치(130), 전처리 모델 데이터베이스(140), 예측 모델 데이터 베이스(150), 및 네트워크(160)를 포함한다. 1 is a diagram illustrating a health state prediction system according to an embodiment of the present invention. Referring to FIG. 1 , the health
단말기(110)는 사용자로부터 시계열 데이터를 수집하여 시계열 의료 데이터 처리 장치(130)에 제공한다. 시계열 데이터는 전자 의무 기록(Electronic Medical Record, EMR)과 같이, 의료 기관에서 진단, 치료, 또는 투약 처방 등에 의하여 생성된 사용자의 건강 상태를 나타내는 시계열 의료 데이터를 포함할 수 있다. 시계열 데이터는 진단, 치료, 또는 투약 처방 등을 위하여 의료 기관에 방문할 때 생성될 수 있다. 시계열 데이터는 의료 기관의 방문에 따라, 시계열적으로 나열된 데이터일 수 있다. 시계열 데이터는 진단, 치료, 또는 투약 처방된 특징에 기초하여 생성된 복수의 특징들을 포함할 수 있다. 예를 들어, 특징은 혈압과 같은 검사로 측정된 데이터 또는 동맥 경화와 같은 질환의 정도를 나타내는 데이터를 포함할 수 있다.The
단말기(110)는 사용자로부터 예측 시간 데이터를 입력받아 시계열 의료 데이터 처리 장치(130)에 더 제공할 수 있다. 예측 시간 데이터는 사용자가 원하는 미래 건강 상태의 예측 시간에 대한 정보를 포함할 수 있다. 예측 시간 데이터를 통하여, 시계열 의료 데이터 처리 장치(130)는 사용자가 원하는 예측 시간에 대한 결과를 분석할 수 있고, 예측 시간 데이터를 시계열 데이터의 불규칙한 시간 간격을 보정하는데 사용할 수 있다.The
단말기(110)는 스마트폰, 데스크탑, 랩탑, 웨어러블 장치 등 사용자로부터 시계열 데이터를 입력 받을 수 있는 다양한 전자 장치 중 하나일 수 있다. 단말기(110)는 네트워크(160)를 통하여 시계열 데이터를 전송하도록 통신 모듈 또는 네트워크 인터페이스를 포함할 수 있다. 도 1은 하나의 단말기(110)를 도시하였으나, 이에 제한되지 않고, 복수의 단말기들로부터 시계열 데이터가 시계열 의료 데이터 처리 장치(130)에 제공될 수 있다.The
의료 데이터베이스(120)는 다양한 사용자들에 대한 의료 데이터가 통합 관리되도록 구성된다. 예를 들어, 의료 데이터베이스(120)는 공공기관, 병원, 사용자 등으로부터 의료 데이터를 제공 받을 수 있다. 의료 데이터베이스(120)는 서버 또는 저장 매체에 구현될 수 있다. 의료 데이터는 의료 데이터베이스(120)에 시계열적으로 관리되고, 그룹핑되어 저장될 수 있다. 의료 데이터베이스(120)는 네트워크(160)를 통하여 시계열 의료 데이터 처리 장치(130)에 주기적으로 시계열 데이터를 제공할 수 있다.The
시계열 의료 데이터 처리 장치(130)는 의료 데이터베이스(120) (또는 단말기(110))로부터 수신된 시계열 데이터를 통하여 학습 모델을 구축할 수 있다. 예를 들어, 학습 모델은 시계열 데이터를 바탕으로 미래 건강 상태를 예측하기 위한 예측 모델을 포함할 수 있다. 예를 들어, 학습 모델은 시계열 데이터를 전처리하기 위한 전처리 모델을 포함할 수 있다. 시계열 의료 데이터 처리 장치(130)는 의료 데이터베이스(120)로부터 수신된 시계열 데이터를 학습하여, 학습 모델을 생성할 수 있다.The time series medical
시계열 의료 데이터 처리 장치(130)는 구축된 학습 모델에 기초하여 단말기(110) 또는 의료 데이터베이스(120)로부터 수신된 시계열 데이터를 처리할 수 있다. 시계열 의료 데이터 처리 장치(130)는 학습 결과 구축된 전처리 모델에 기초하여 시계열 의료 데이터를 전처리할 수 있다. 시계열 의료 데이터 처리 장치(130)는 학습 결과 구축된 예측 모델에 기초하여 전처리된 시계열 데이터를 분석할 수 있다. 분석 결과, 시계열 의료 데이터 처리 장치(130)는 예측 시간에 대응되는 결과 데이터(의료 데이터)를 계산할 수 있다.The time series medical
시계열 의료 데이터 처리 장치(130)는 단말기(110)로부터 수신된 예측 시간 데이터에 기초하여, 시계열 데이터의 불규칙한 시간 간격을 보정할 수 있다. 시계열 의료 데이터 처리 장치(130)는 예측 시간 데이터에 기초하여, 이상적인 시간 간격을 갖는 복수의 기준 시간들을 계산할 수 있다. 시계열 의료 데이터 처리 장치(130)는 복수의 기준 시간들과 시계열 데이터의 복수의 실제 시간들을 비교함으로써, 시차 데이터를 생성할 수 있다. 시차 데이터는 시계열 데이터와 함께 결과 데이터를 계산하는데 이용될 수 있다. 시차 데이터의 생성 및 활용의 구체적인 내용은 후술된다.The time series medical
시계열 의료 데이터 처리 장치(130)는 계산된 결과 데이터에 기초하여, 예측 시간에 대응되는 사용자의 미래 건강 상태를 예측할 수 있다. 예측된 미래 건강 상태는 단말기(110)의 요청에 따라, 네트워크(160)를 통하여 단말기(110)에 제공될 수 있다. 다만, 이에 제한되지 않고, 시계열 의료 데이터 처리 장치(130)는 예측 모델에 기초하여 미래 방문 데이터를 예측하고, 별도의 전자 장치에서, 해당 사용자의 미래 건강 상태를 예측할 수 있다. The time series medical
전처리 모델 데이터베이스(140)는 시계열 의료 데이터 처리 장치(130)에서 학습되어 생성된 전처리 모델이 통합 관리되도록 구성된다. 전처리 모델 데이터베이스(140)는 별도의 서버 또는 저장 매체에 구현될 수 있다. 다만, 이에 제한되지 않고, 전처리 모델은 시계열 의료 데이터 처리 장치(130) 내부의 프로세서에 의하여 관리되고, 시계열 의료 데이터 처리 장치(130) 내부의 스토리지 등에 의하여 저장될 수 있다. 예를 들어, 전처리 모델은 시계열 데이터에서 정상 시계열 데이터와 비정상 시계열 데이터를 판단하여, 정상 시계열 데이터를 추출하기 위한 모델을 포함할 수 있다. 예를 들어, 전처리 모델은 시계열 데이터에 포함된 특징들에 대한 결측 값(missing value)을 보간하기 위한 모델을 포함할 수 있다.The
예측 모델 데이터베이스(150)는 시계열 의료 데이터 처리 장치(130)에서 학습되어 생성된 예측 모델이 통합 관리되도록 구성된다. 예측 모델 데이터베이스(150)는 별도의 서버 또는 저장 매체에 구현될 수 있다. 다만, 이에 제한되지 않고, 예측 모델은 시계열 의료 데이터 처리 장치(130) 내부에서 통합 관리될 수 있다. 예측 모델은 전처리된 시계열 데이터를 분석하여 예측 시점에 대응되는 결과 데이터를 생성하기 위한 모델을 포함할 수 있다. 이러한 예측 모델의 구체적인 예시는 후술된다.The
네트워크(160)는 단말기(110), 의료 데이터베이스(120), 및 시계열 의료 데이터 처리 장치(130) 사이의 데이터 통신이 수행되도록 구성될 수 있다. 단말기(110), 의료 데이터베이스(120), 및 시계열 의료 데이터 처리 장치(130)는 네트워크(160)를 통하여 유선 또는 무선으로 데이터를 주고 받을 수 있다.The
도 2는 도 1의 시계열 의료 데이터 처리 장치의 예시적인 블록도이다. 도 2의 블록도는 시계열 데이터를 전처리하고, 분석하기 위한 예시적인 구성으로 이해될 것이고, 시계열 의료 데이터 처리 장치의 구조가 이에 제한되지 않을 것이다. 도 2를 참조하면, 시계열 의료 데이터 처리 장치(130)는 네트워크 인터페이스(131), 프로세서(132), 메모리(133), 스토리지(136), 및 버스(137)를 포함할 수 있다. 예시적으로, 시계열 의료 데이터 처리 장치(130)는 서버로 구현될 수 있으나, 이에 제한되지 않는다.FIG. 2 is an exemplary block diagram of the time-series medical data processing apparatus of FIG. 1 . The block diagram of FIG. 2 will be understood as an exemplary configuration for preprocessing and analyzing time series data, and the structure of the time series medical data processing apparatus will not be limited thereto. Referring to FIG. 2 , the time series medical
네트워크 인터페이스(131)는 도 1의 네트워크(160)를 통하여 단말기(110) 또는 의료 데이터베이스(120)로부터 제공되는 시계열 데이터를 입력 받도록 구성된다. 네트워크 인터페이스(131)는 도 1의 단말기(110)로부터 제공되는 예측 시간 (데이터)을 입력 받도록 구성된다. 네트워크 인터페이스(131)는 수신된 시계열 데이터 및 예측 시간을 버스(137)를 통하여 프로세서(132), 메모리(133) 또는 스토리지(136)에 제공할 수 있다. 또한, 네트워크 인터페이스(131)는 수신된 시계열 데이터 및 예측 시간에 응답하여 예측된 미래 건강 상태의 결과 데이터를 도 1의 네트워크(160)를 통하여 단말기(110) 등에 제공하도록 구성될 수 있다.The
프로세서(132)는 시계열 의료 데이터 처리 장치(130)의 중앙 처리 장치로의 기능을 수행할 수 있다. 프로세서(132)는 시계열 의료 데이터 처리 장치(130)의 전처리 및 데이터 분석 등을 구현하기 위하여 요구되는 제어 동작 및 연산 동작을 수행할 수 있다. 예를 들어, 프로세서(132)의 제어에 따라, 네트워크 인터페이스(131)는 시계열 데이터 및 예측 시간을 외부로부터 수신할 수 있다. 프로세서(132)의 제어에 따라, 예측 모델을 생성하기 위한 연산 동작이 수행될 수 있고, 예측 모델을 이용하여 결과 데이터가 계산될 수 있다. 프로세서(132)는 메모리(133)의 연산 공간을 활용하여 동작할 수 있고, 스토리지(136)로부터 운영체제를 구동하기 위한 파일들 및 어플리케이션의 실행 파일들을 읽을 수 있다. 프로세서(132)는 운영 체제 및 다양한 어플리케이션들을 실행할 수 있다.The
메모리(133)는 프로세서(132)에 의하여 처리되거나 처리될 예정인 데이터 및 프로세스 코드들을 저장할 수 있다. 예를 들어, 메모리(133)는 네트워크 인터페이스(131)로부터 제공된 시계열 데이터, 예측 시간 데이터, 시계열 데이터의 전처리 동작을 수행하기 위한 정보들, 시계열 데이터의 불규칙한 시간 간격을 보정하기 위한 정보들, 결과 데이터의 연산을 위한 정보들, 및 예측 모델을 구축하기 위한 정보들을 저장할 수 있다. 메모리(133)는 시계열 의료 데이터 처리 장치(130)의 주기억 장치로 이용될 수 있다. 메모리(133)는 DRAM (Dynamic RAM), SRAM (Static RAM), PRAM (Phase-change RAM), MRAM (Magnetic RAM), FeRAM (Ferroelectric RAM), RRAM (Resistive RAM) 등을 포함할 수 있다.The
메모리(133)는 전처리부(134) 및 데이터 분석부(135)를 포함할 수 있다. 전처리부(134) 및 데이터 분석부(135)는 메모리(133)의 연산 공간의 일부일 수 있다. 이 경우, 전처리부(134) 및 데이터 분석부(135)는 펌웨어 또는 소프트웨어로 구현될 수 있다. 예를 들어, 펌웨어는 스토리지(136)에 저장되고, 펌웨어를 실행 시에 메모리(133)에 로딩될 수 있다. 프로세서(132)는 메모리(133)에 로딩된 펌웨어를 실행할 수 있다. 전처리부(134)는 프로세서(132)의 제어 하에 시계열 데이터를 전처리하고, 예측 시간 데이터 및 시계열 데이터에서 나열된 실제 시간들에 기초하여 시차 데이터를 생성하도록 동작될 수 있다. 데이터 분석부(135)는 프로세서(132)의 제어 하에 전처리된 시계열 데이터를 분석하여 예측 모델을 구축하도록 동작될 수 있다. 데이터 분석부(135)는 프로세서(132)의 제어 하에 전처리된 시차 데이터를 반영하여 시계열 데이터를 분석하고, 결과 데이터를 생성하도록 동작될 수 있다.The
도 2에 도시된 바와 달리, 전처리부(134) 및 데이터 분석부(135)는 시계열 데이터를 전처리하고, 시차 데이터를 생성하고, 시차 데이터를 반영하여 시계열 데이터를 분석하기 위한 별도의 하드웨어로 구현될 수 있다. 예를 들어, 전처리부(134) 및 데이터 분석부(135)는 인공 신경망을 통한 학습을 수행하여 학습 모델을 구축하기 위한 뉴로모픽 칩 등으로 구현되거나, FPGA(Field Programmable Gate Aray) 또는 ASIC(Application Specific Integrated Circuit)와 같은 전용 논리 회로 등으로 구현될 수 있다. 예를 들어, 전처리부(134)는 전용 논리 회로로 구현되고, 데이터 분석부(135)는 예측 모델을 구축하기 위한 별도의 서버로 구현될 수 있다.2, the
전처리부(134)는 프로세서(132)의 제어에 따라, 시계열 데이터를 전처리할 수 있다. 예를 들어, 전처리부(134)는 시계열 데이터에서 오타와 같은 비정상 데이터를 제거하고, 정상 시계열 데이터를 추출할 수 있다. 전처리부(134)는 정상 시계열 데이터에 대응되는 복수의 시간들 및 예측 시간에 기초하여, 복수의 기준 시간들을 생성하고, 복수의 기준 시간들에 기초하여, 시차 데이터를 생성할 수 있다. 전처리부(134)는 정상 시계열 데이터에 포함된 특징들에 대한 결측 값을 보간할 수 있다. 전처리부(134)에 대한 구체적인 내용은 후술된다.The
데이터 분석부(135)는 프로세서(132)의 제어에 따라, 예측 모델을 이용하여 전처리된 시계열 데이터를 분석할 수 있다. 예를 들어, 데이터 분석부(135)는 시차 데이터를 반영하여 전처리된 시계열 데이터를 분석할 수 있다. 시차 데이터는 시계열 데이터의 불규칙한 시간 간격을 보정하는데 이용된다. 데이터 분석부(135)는 전처리된 시계열 데이터의 분석에 기초하여, 예측 시간에 대응되는 결과 데이터를 예측할 수 있다. 결과 데이터는 예측 시간에 대응되는 전자 의무 기록의 예측 값일 수 있다. 또한, 결과 데이터를 생성하기 위하여, 예측 모델은 학습될 수 있다. 데이터 분석부(135)에 대한 구체적인 내용은 후술된다.The
스토리지(136)는 운영 체제 또는 어플리케이션들에 의해 장기적인 저장을 목적으로 생성되는 데이터, 운영 체제를 구동하기 위한 파일, 또는 어플리케이션들의 실행 파일 등을 저장할 수 있다. 예를 들어, 스토리지(136)는 전처리부(134) 및 데이터 분석부(135)의 실행을 위한 파일들을 저장할 수 있다. 스토리지(136)는 시계열 의료 데이터 처리 장치(130)의 보조 기억 장치로 이용될 수 있다. 스토리지(136)는 플래시 메모리, PRAM (Phase-change RAM), MRAM (Magnetic RAM), FeRAM (Ferroelectric RAM), RRAM (Resistive RAM) 등을 포함할 수 있다.The
버스(137)는 시계열 의료 데이터 처리 장치(130)의 구성 요소들 사이에서 통신 경로를 제공할 수 있다. 네트워크 인터페이스(131), 프로세서(132), 메모리(133), 및 스토리지(136) 는 버스(137)를 통해 서로 데이터를 교환할 수 있다. 버스(137)는 시계열 의료 데이터 처리 장치(130)에서 이용되는 다양한 유형의 통신 포맷을 지원하도록 구성될 수 있다.The
도 3은 도 2의 전처리부의 예시적인 블록도이다. 도 3의 블록도는 시계열 데이터(TSD)를 전처리하고, 시차 데이터(DD)를 생성하기 위한 예시적인 구성으로 이해될 것이고, 전처리부(134)의 구조가 이에 제한되지 않을 것이다. 도 3을 참조하면, 전처리부(134)는 데이터 추출기(134_1), 시간 간격 계산기(134_2), 및 데이터 보간기(134_3)를 포함할 수 있다. 도 2에서 설명된 바와 같이, 데이터 추출기(134_1), 시간 간격 계산기(134_2), 및 데이터 보간기(134_3)는 도 2의 메모리(133)의 연산 공간의 일부일 수 있고, 펌웨어 또는 소프트웨어로 구현될 수 있다. 또는, 데이터 추출기(134_1), 시간 간격 계산기(134_2), 및 데이터 보간기(134_3)는 FPGA 또는 ASIC와 같은 전용 논리 회로 또는 뉴로모픽 칩 등으로 구현될 수 있다3 is an exemplary block diagram of the preprocessor of FIG. 2 . The block diagram of FIG. 3 will be understood as an exemplary configuration for preprocessing the time series data TSD and generating the disparity data DD, and the structure of the
데이터 추출기(134_1)는 시계열 데이터(TSD)에서 정상 시계열 데이터를 추출할 수 있다. 데이터 추출기(134_1)는 도 2의 네트워크 인터페이스(131)를 통하여 수신된 시계열 데이터(TSD)에서 비정상 데이터를 검출할 수 있다. 비정상 데이터는 시계열 데이터(TSD)에 포함된 특징들에서 나타날 수 없는 값을 가질 수 있다. 예를 들어, 데이터 값이 특정된 특징에 대응되는 타입(예를 들어, 범주 형식(Categorical type)의 정보(-, +, ++ 등) 또는 수치 형식의 정보)이 아니거나, 데이터 값이 특정된 특징에 존재할 수 없는 범주, 수치, 또는 차원인 경우, 데이터 추출기(134_1)는 해당 특징을 비정상 데이터로 판단할 수 있다. The data extractor 134_1 may extract normal time series data from the time series data TSD. The data extractor 134_1 may detect abnormal data from the time series data TSD received through the
데이터 추출기(134_1)는 검출된 비정상 데이터를 제거함으로써, 정상 시계열 데이터를 추출할 수 있다. 다만, 이에 제한되지 않고, 데이터 추출기(134_1)는 검출된 비정상 데이터의 에러를 정정함으로써, 비정상 데이터를 정상 데이터로 변환할 수 있다. 데이터 추출기(134_1)는 뉴럴 네트워크 모델과 같이, 기계 학습이 가능한 전처리 모델을 통하여 정상 시계열 데이터를 추출할 수 있다. 또는, 데이터 추출기(134_1)는 비정상 데이터를 검출하기 위한 기준 데이터와의 비교를 통하여 정상 시계열 데이터를 추출할 수 있다.The data extractor 134_1 may extract the normal time series data by removing the detected abnormal data. However, the present invention is not limited thereto, and the data extractor 134_1 may convert the abnormal data into normal data by correcting an error of the detected abnormal data. The data extractor 134_1 may extract normal time series data through a preprocessing model capable of machine learning, such as a neural network model. Alternatively, the data extractor 134_1 may extract normal time series data through comparison with reference data for detecting abnormal data.
시간 간격 계산기(134_2)는 예측 시간 데이터(PTD)에 기초하여, 정상 시계열 데이터의 복수의 시간들 각각에 대응되는 시차 데이터(DD)를 생성할 수 있다. 도 3에서, 시간 간격 계산기(134_2)는 데이터 추출기(134_1)를 통하여 예측 시간 데이터(PTD)를 수신하는 것으로 도시되나, 시간 간격 계산기(134_2)는 네트워크 인터페이스(131)를 통하여 직접 예측 시간 데이터(PTD)를 수신할 수 있다. 시간 간격 계산기(134_2)는 복수의 시간들 중 최초 시간과 예측 시간 사이의 차이에 기초하여, 복수의 기준 시간들을 계산할 수 있다. 시간 간격 계산기(134_2)는 복수의 기준 시간들과 이에 대응되는 정상 시계열 데이터의 복수의 시간들 사이의 차이에 기초하여, 시차 데이터(DD)를 생성할 수 있다. 복수의 기준 시간들 및 시차 데이터(DD)에 대한 구체적인 내용은 도 4에서 후술된다.The time interval calculator 134_2 may generate disparity data DD corresponding to each of a plurality of times of the normal time series data based on the predicted time data PTD. In FIG. 3 , the time interval calculator 134_2 is shown to receive the predicted time data PTD through the data extractor 134_1 , but the time interval calculator 134_2 directly receives the predicted time data (PTD) through the
시간 간격 계산기(134_2)는 예측 모델을 학습할 때, 예측 시간 데이터(PTD)를 수신하지 않을 수 있다. 이 경우, 시간 간격 계산기(134_2)는 기설정된 예측 시간에 기초하여, 시차 데이터(DD)를 생성할 수 있다. 기설정된 예측 시간은 정상 시계열 데이터의 복수의 시간들 중 최종 시간일 수 있다. 즉, 시간 간격 계산기(134_2)는 복수의 시간들 중 최초 시간과 최종 시간 사이의 차이에 기초하여, 복수의 기준 시간들을 계산할 수 있다. 다만, 이에 제한되지 않고, 기설정된 예측 시간은 예측 모델의 학습의 효율성 향상을 위하여, 특정된 시간 또는 가변적인 시간일 수 있다.The time interval calculator 134_2 may not receive the prediction time data PTD when learning the prediction model. In this case, the time interval calculator 134_2 may generate disparity data DD based on a preset prediction time. The preset prediction time may be a final time among a plurality of times of normal time series data. That is, the time interval calculator 134_2 may calculate a plurality of reference times based on a difference between the first time and the last time among the plurality of times. However, the present invention is not limited thereto, and the preset prediction time may be a specific time or a variable time in order to improve the learning efficiency of the prediction model.
데이터 보간기(134_3)는 정상 시계열 데이터에 포함된 특징들에 대한 결측 값을 보간할 수 있다. 시계열 데이터에 포함된 복수의 특징들 중 특정 시간에 대응되는 특징 값은 존재하지 않을 수 있다. 예를 들어, 전자 의무 기록과 같은 시계열 의료 데이터에 대하여, 사용자는 의료 기관에 방문시에 동일한 진단, 처방, 또는 검사를 받지 않을 수 있다. 사용자의 회복 경과 등에 따라, 특정 진단, 처방, 또는 검사가 생략되거나 추가될 수 있다. 또는, 사용자가 특정 진단, 처방, 또는 검사가 수행되었으나, 전자 의무 기록에 실수로 특징 값이 누락될 수 있다. 데이터 보간기(134_3)는 이러한 결측 값을 생성할 수 있다.The data interpolator 134_3 may interpolate missing values for features included in the normal time series data. Among the plurality of features included in the time series data, a feature value corresponding to a specific time may not exist. For example, for time series medical data such as an electronic medical record, a user may not receive the same diagnosis, prescription, or examination when visiting a medical institution. Depending on the user's recovery progress, etc., a specific diagnosis, prescription, or test may be omitted or added. Alternatively, the user may have performed a specific diagnosis, prescription, or examination, but a feature value may be mistakenly omitted from the electronic medical record. The data interpolator 134_3 may generate such a missing value.
데이터 보간기(134_3)는 통계적인 방식으로 결측 값을 보간할 수 있다. 예를 들어, 데이터 보간기(134_3)는 결측 값과 인접한 시간의 특징 값을 결측 값으로 결정하거나, 결측된 특징에 대응되는 다른 값들의 평균 값을 결측 값으로 결정할 수 있다. 또는, 데이터 보간기(134_3)는 뉴럴 네트워크 모델과 같이, 기계 학습이 가능한 전처리 모델을 통하여 결측 값을 보간할 수 있다. 다만, 이에 제한되지 않고, 결측 값이 존재하는 경우, 기설정된 값으로 결측 값을 결정할 수 있다. 결측 값의 보간 결과, 최종적으로 전처리된 시계열 데이터(TMD)가 생성되며, 전처리된 시계열 데이터(TMD)는 데이터 분석부(135)의 예측 모델에 입력될 수 있다. 경우에 따라, 데이터 보간기(134_3)는 시차 데이터(DD)를 보간하여 출력할 수 있으나, 도 3과 달리, 시차 데이터(DD)는 데이터 보간기(134_3)를 경유하지 않고 출력될 수 있다.The data interpolator 134_3 may interpolate missing values in a statistical manner. For example, the data interpolator 134_3 may determine a feature value at a time adjacent to the missing value as the missing value, or determine an average value of other values corresponding to the missing feature as the missing value. Alternatively, the data interpolator 134_3 may interpolate missing values through a preprocessing model capable of machine learning, such as a neural network model. However, the present invention is not limited thereto, and when a missing value exists, the missing value may be determined as a preset value. As a result of interpolation of the missing values, finally preprocessed time series data TMD is generated, and the preprocessed time series data TMD may be input to a predictive model of the
도 3에 설명되지 않은 다양한 전처리 동작이 전처리부(134)에서 수행될 수 있다. 예를 들어, 전처리부(134)는 시계열 데이터(TSD)에 포함된 특징들을 동일한 타입을 갖도록 변환할 수 있다. 전처리부(134)는 시계열 데이터(TSD) 또는 예측 시간 데이터(PTD)의 차원을 변환하거나, 정규화할 수 있다. 전처리부(134)에서 출력되는 전처리된 시계열 데이터(TMD) 및 시차 데이터(DD)는 다양한 전처리 동작이 모두 수행되어, 데이터 분석부(135)에 입력되는 데이터로 이해될 것이다. Various pre-processing operations not described in FIG. 3 may be performed by the
도 3에서, 전처리된 시계열 데이터(TMD)와 시차 데이터(DD)는 분리되어 출력되는 것으로 도시되나, 전처리된 시계열 데이터(TMD)에 시차 데이터(DD)가 포함되어 출력될 수 있다. 예를 들어, 전처리된 시계열 데이터(TMD)의 제1 시간에 대응되는 제1 데이터는 제1 시차 데이터를 포함하고, 제2 시간에 대응되는 제2 데이터는 제2 시차 데이터를 포함할 수 있다. In FIG. 3 , the preprocessed time series data TMD and the disparity data DD are shown to be output separately, but the disparity data DD may be included in the preprocessed time series data TMD and may be output. For example, first data corresponding to the first time of the preprocessed time series data TMD may include first disparity data, and second data corresponding to the second time may include second disparity data.
도 4는 도 3의 시간 간격 계산기에서 시차 데이터를 생성하는 과정을 설명하기 위한 도면이다. 도 4의 가로축은 시간으로 정의된다. 도 4를 참조하면, 시계열 데이터는 제1 내지 제n 시간들(V1~Vn)에 대응되는 데이터가 그룹화된 것일 수 있다. 설명의 편의상, 시계열 데이터는 제1 내지 제n 시간들(V1~Vn)에 대응되는 제1 내지 제n 데이터를 포함하는 것으로 가정한다. 제n+1 시간(Vn+1)은 제n 시간(Vn) 이후의 시간을 나타내며, 상술된 예측 시간에 대응된다.FIG. 4 is a diagram for explaining a process of generating disparity data in the time interval calculator of FIG. 3 . The horizontal axis of FIG. 4 is defined as time. Referring to FIG. 4 , time series data may be grouped data corresponding to first to nth times V1 to Vn. For convenience of description, it is assumed that the time series data includes first to nth data corresponding to the first to nth times V1 to Vn. The n+1th time (Vn+1) indicates a time after the nth time (Vn) and corresponds to the above-described predicted time.
제1 내지 제n 시간들(V1~Vn)은 진단, 치료, 또는 투약 처방 등을 위하여 의료 기관에 실제 방문한 시간에 대응될 수 있다. 예를 들어, 제1 내지 제n 시간들(V1~Vn)은 사용자가 병원에 방문하여, 혈액 등을 채취한 시간, 또는 의사에 의하여 진단, 치료, 또는 투약 처방을 받은 시간일 수 있다. 상술한 바와 같이, 제1 내지 제n 시간들(V1~Vn) 사이의 시간 간격은 불규칙할 수 있다. 또한, 제n 시간(Vn)과 제n+1 시간(Vn+1) 사이의 시간 간격은 제1 내지 제n 시간들(V1~Vn) 사이의 시간 간격과 연관성을 갖지 않는다. 제1 내지 제n 시간 간격들(r1~rn)은 제1 내지 제n+1 시간들(V1~Vn+1) 중 서로 인접한 시간들 사이의 간격으로 정의된다. 예를 들어, 제1 시간(V1)과 제2 시간(V2) 사이의 간격은 제1 시간 간격(r1)으로 정의된다.The first to nth times V1 to Vn may correspond to times of actual visits to a medical institution for diagnosis, treatment, or medication prescription. For example, the first to nth times V1 to Vn may be a time when a user visits a hospital and collects blood, or a time when a diagnosis, treatment, or medication prescription is received by a doctor. As described above, a time interval between the first to nth times V1 to Vn may be irregular. Also, the time interval between the nth time Vn and the n+1th time Vn+1 has no correlation with the time interval between the first to nth times V1 to Vn. The first to n-th time intervals r1 to rn are defined as intervals between adjacent times among the first to n+1 times V1 to Vn+1. For example, the interval between the first time V1 and the second time V2 is defined as the first time interval r1.
제1 내지 제n+1 기준 시간들(t1~tn+1)은 시차 데이터(DD)를 생성하기 위하여, 도 3의 시간 간격 계산기(134_2)에서 계산된 시간들일 수 있다. 시간 간격 계산기(134_2)는 시계열 데이터의 최초 시간인 제1 시간(V1)과 예측 시간인 제n+1 시간(Vn+1)의 차이에 기초하여 제1 내지 제n+1 기준 시간들(t1~tn+1)을 설정할 수 있다. 제1 기준 시간(t1)은 제1 시간(V1)과 동일할 수 있고, 제n+1 기준 시간(tn+1)은 제n+1 시간(Vn+1)과 동일할 수 있다. 제1 내지 제n 기준 시간 간격들(i1~in)은 제1 내지 제n+1 기준 시간들(t1~tn+1) 중 서로 인접한 시간들 사이의 간격으로 정의된다. 예를 들어, 제1 기준 시간(t1)과 제2 기준 시간(t2) 사이의 간격은 제1 기준 시간 간격(i1)으로 정의된다. 제1 내지 제n 기준 시간 간격들(i1~in)은 서로 동일할 수 있다.The first to n+1th reference times t1 to tn+1 may be times calculated by the time interval calculator 134_2 of FIG. 3 to generate the disparity data DD. The time interval calculator 134_2 calculates the first to n+1th reference times t1 based on the difference between the first time V1 which is the initial time of the time series data and the n+1th time Vn+1 which is the predicted time. ~tn+1) can be set. The first reference time t1 may be the same as the first time V1, and the n+1th reference time tn+1 may be the same as the n+1th
제1 내지 제n 차이 값들(d1~dn)은 시차 데이터(DD)에 포함된 데이터 값일 수 있다. 제1 내지 제n 차이 값들(d1~dn)은 제1 내지 제n 시간들(V1~Vn)과 이에 대응되는 제1 내지 제n 기준 시간들(t1~tn) 사이의 차이일 수 있다. 예를 들어, 제2 차이 값(d2)은 제2 시간(V2)과 제2 기준 시간(t2)의 차이일 수 있다. 제1 내지 제n 차이 값들(d1~dn) 각각은 수학식 1과 같이 계산될 수 있다.The first to nth difference values d1 to dn may be data values included in the disparity data DD. The first to nth difference values d1 to dn may be differences between the first to nth times V1 to Vn and the corresponding first to nth reference times t1 to tn. For example, the second difference value d2 may be a difference between the second time V2 and the second reference time t2. Each of the first to nth difference values d1 to dn may be calculated as in
수학식 1을 참조하면, k는 인덱스, N은 총 방문 회수와 같은 시계열 데이터에 대응되는 시간들의 개수, rn은 n번째 시간 간격, dk는 k번째 차이 값으로 정의된다. 제1 내지 제n 차이 값들(d1~dn)은 이상적인 시간 간격의 추이(우변의 좌항)와 실제의 시간 간격의 추이(우변의 우항)의 차이를 나타내는 값일 수 있다. 수학식 1의 시그마를 통하여, 제1 내지 제n 차이 값들(d1~dn) 각각은 이전의 방문에 따른 시간들의 추이를 모두 반영한 결과 값임을 나타낸다. 제1 내지 제n 차이 값들(d1~dn)은 시계열 데이터의 불규칙한 시간 간격을 보정하고, 시간적인 추이에 따른 시계열 데이터의 가중치를 결정하기 위하여 생성될 수 있다.Referring to
도 5는 도 2의 데이터 분석부의 예시적인 블록도이다. 도 5의 블록도는 전처리된 시계열 데이터(TMD) 및 시차 데이터(DD)를 이용하여, 예측 시간에 대응되는 결과 데이터(RD)를 생성하기 위한 예시적인 구성으로 이해될 것이고, 데이터 분석부(135)의 구조가 이에 제한되지 않을 것이다. 도 5를 참조하면, 데이터 분석부(135)는 예측 모델 관리기(135_1) 및 건강 예측기(135_2)를 포함할 수 있다. 도 2에서 설명된 바와 같이, 예측 모델 관리기(135_1) 및 건강 예측기(135_2)는 도 2의 메모리(133)의 연산 공간의 일부일 수 있고, 펌웨어 또는 소프트웨어로 구현될 수 있다. 또는, 예측 모델 관리기(135_1) 및 건강 예측기(135_2)는 FPGA 또는 ASIC와 같은 전용 논리 회로 또는 뉴로모픽 칩 등으로 구현될 수 있다.FIG. 5 is an exemplary block diagram of the data analysis unit of FIG. 2 . The block diagram of FIG. 5 will be understood as an exemplary configuration for generating the result data RD corresponding to the predicted time using the preprocessed time series data TMD and the disparity data DD, and the data analysis unit 135 ) will not be limited thereto. Referring to FIG. 5 , the
예측 모델 관리기(135_1)는 프로세서(132)의 제어에 따라, 예측 시간에 대응되는 결과 데이터를 생성하기 위한 예측 모델을 관리할 수 있다. 예측 모델 관리기(135_1)는 예측 모델을 학습시키고, 학습된 예측 모델을 스토리지(136) 또는 도 1의 예측 모델 데이터베이스(150)와 같은 별도의 서버나 저장 매체에 전달할 수 있다. 예측 모델을 학습하거나 예측 모델을 통하여 미래의 건강 상태를 예측할 때, 예측 모델 관리기(135_1)는 스토리지(136) 또는 예측 모델 데이터베이스(150)에 저장된 예측 모델이 예측 모델 관리기(135_1)에 로딩될 수 있다.The prediction model manager 135_1 may manage a prediction model for generating result data corresponding to a prediction time under the control of the
예측 모델을 학습하기 위하여, 예측 모델 관리기(135_1)는 전처리된 시계열 데이터(TMD) 및 시차 데이터(DD)를 입력 받을 수 있다. 여기에서, 전처리된 시계열 데이터(TMD)는 도 1의 의료 데이터베이스(120)에 저장된 다양한 환자들에 대한 시계열 의료 데이터를 포함할 수 있다. 여기에서, 시차 데이터(DD)는 시계열 데이터의 최초 시간 및 최종 시간 사이의 차이에 기초하여 생성될 수 있다. 예측 모델 관리기(135_1)는 전처리된 시계열 데이터(TMD)의 불규칙한 시간 간격을 시차 데이터(DD)로 보정하여 학습 결과 데이터를 생성할 수 있다. 학습 결과 데이터는 예상되는 결과 데이터, 예를 들어 최종 시간에 대응되는 시계열 데이터와 비교될 수 있고, 비교 결과에 기초하여 예측 모델에 설정된 가중치가 조절될 수 있다. 여기에서, 가중치는 전처리된 시계열 데이터(TMD)에 부여되는 가중치 및 시차 데이터(DD)에 부여되는 가중치를 포함할 수 있다.In order to learn the predictive model, the predictive model manager 135_1 may receive preprocessed time series data TMD and disparity data DD. Here, the preprocessed time series data TMD may include time series medical data for various patients stored in the
건강 예측기(135_2)는 프로세서(132)의 제어에 따라, 예측 모델 관리기(135_1)에서 학습된 예측 모델을 이용하여, 예측 시간에 대응되는 미래 건강 상태를 예측할 수 있다. 미래 건강 상태를 예측하기 위하여, 건강 예측기(135_2)는 예측 모델 관리기(135_1)로부터 예측 모델이 저장된 경로를 전달 받을 수 있다. 예측 모델은 전처리된 시계열 데이터(TMD) 및 시차 데이터(DD)를 입력 받을 수 있다. 여기에서, 전처리된 시계열 데이터(TMD)는 사용자(환자)에 대한 시계열 의료 데이터를 포함할 수 있다. 여기에서, 시차 데이터(DD)는 시계열 데이터의 최초 시간 및 수신된 예측 시간 사이의 차이에 기초하여 생성될 수 있다. 건강 예측기(135_2)는 예측 모델을 통하여, 전처리된 시계열 데이터(TMD)의 불규칙한 시간 간격을 보정하여 예측 시간에 대응되는 결과 데이터(RD)를 생성할 수 있다.The health predictor 135_2 may predict a future health state corresponding to a predicted time by using the predictive model learned by the predictive model manager 135_1 under the control of the
도 6은 도 5에서 학습된 예측 모델의 예시적인 도면이다. 도 6은 예측 모델(PM1)의 예시적인 구성으로 이해될 것이고, 본 발명의 실시예는 도 6에 제한되지 않는다. 도 6을 참조하면, 예측 모델(PM1)은 제1 내지 제4 레이어들(L1~L4)을 포함할 수 있다. 예측 모델(PM1)은 도 5의 데이터 분석부(135)에서 생성 및 학습될 수 있다. 예측 모델(PM1)은 전처리된 시계열 데이터(TMD)를 수신할 것이나, 아래에서 설명의 편의상 시계열 데이터로 지칭될 것이다.6 is an exemplary diagram of a predictive model trained in FIG. 5 . 6 will be understood as an exemplary configuration of the predictive model PM1, and the embodiment of the present invention is not limited to FIG. Referring to FIG. 6 , the prediction model PM1 may include first to fourth layers L1 to L4 . The predictive model PM1 may be generated and learned by the data analyzer 135 of FIG. 5 . The predictive model PM1 will receive the preprocessed time series data TMD, but will be referred to as time series data for convenience of description below.
제1 레이어(L1)는 시간의 순서에 따라 시계열 데이터를 수신하여 벡터화할 수 있다. 시계열 데이터는 제1 내지 제n 시간들에 대응되는 제1 내지 제n 데이터(TMD1~TMDn)를 포함할 수 있다. 제1 내지 제n 데이터(TMD1~TMDn)는 순차적으로 입력될 수 있다. 예를 들어, 제1 데이터(TMD1)가 제1 레이어(L1)에 의하여 벡터화된 후, 제2 데이터(TMD2)가 제1 레이어(L1)에 의하여 벡터화될 수 있다. 제1 레이어(L1)는 제1 내지 제n 데이터(TMD1~TMDn)을 제1 내지 제n 벡터 값들(h1~hn)로 변환할 수 있다.The first layer L1 may receive and vectorize time series data according to the order of time. The time series data may include first to n-th data TMD1 to TMDn corresponding to the first to n-th times. The first to nth data TMD1 to TMDn may be sequentially input. For example, after the first data TMD1 is vectorized by the first layer L1 , the second data TMD2 may be vectorized by the first layer L1 . The first layer L1 may convert the first to n-th data TMD1 to TMDn into first to n-th vector values h1 to hn.
제1 레이어(L1)는 이전에 생성된 벡터 값에 기초하여, 다음의 벡터 값을 생성하는 순환 신경망으로 구현될 수 있다. 예를 들어, 제1 레이어(L1)는 제1 벡터 값(h1)을 반영하여 제2 데이터(TMD2)를 제2 벡터 값(h2)으로 변환할 수 있다. 예시적으로, 제1 레이어(L1)는 LSTM(Long-Short Term Memory), GRU(Gated Recurrent Unit), ARIMA(Auto-regressive Integrated Moving Average), 또는 선형 회귀(Linear Regression) 모델로 구현될 수 있다.The first layer L1 may be implemented as a recurrent neural network that generates a next vector value based on a previously generated vector value. For example, the first layer L1 may convert the second data TMD2 into the second vector value h2 by reflecting the first vector value h1 . For example, the first layer L1 may be implemented as a Long-Short Term Memory (LSTM), a Gated Recurrent Unit (GRU), an Auto-regressive Integrated Moving Average (ARIMA), or a Linear Regression model. .
제2 레이어(L2)는 시간의 순서에 따라 시차 데이터를 수신하여 모델링할 수 있다. 시차 데이터는 제1 내지 제n 시간들에 대응되는 제1 내지 제n 시차 데이터(DD1~DDn)를 포함할 수 있다. 제1 내지 제n 데이터(TMD1~TMDn)와 마찬가지로, 제1 내지 제n 시차 데이터(DD1~DDn)는 순차적으로 입력될 수 있다. 제1 내지 제n 시차 데이터(DD1~DDn)는 제1 내지 제n 시간 보정 값들(T1~Tn)로 모델링될 수 있다. 제1 내지 제n 시차 데이터(DD1~DDn)는 예시적으로 수학식 2와 같이 모델링될 수 있다.The second layer L2 may receive and model the disparity data according to the order of time. The disparity data may include first to n-th disparity data DD1 to DDn corresponding to the first to n-th times. Like the first to n-th data TMD1 to TMDn, the first to n-th disparity data DD1 to DDn may be sequentially input. The first to n-th disparity data DD1 to DDn may be modeled as first to n-th time correction values T1 to Tn. The first to nth disparity data DD1 to DDn may be modeled as
수학식 2를 참조하면, dd는 시차 데이터의 값, WT는 시차 데이터에 대응되는 가중치 (매트릭스), b는 인덕티브 바이어스(inductive bias), T는 시간 보정 값으로 정의된다. 시차 데이터는 tanh와 같은 비선형 함수를 이용하여 모델링될 수 있다.Referring to
제3 레이어(L3)는 시간의 순서에 따라 벡터 값 및 시간 보정 값을 수신하여 가중치를 생성할 수 있다. 여기에서, 가중치는 결과 데이터(RD)를 생성하기 위하여, 벡터 값에 부여되는 최종 가중치를 나타낼 수 있다. 제3 레이어(L3)는 어텐션 메커니즘(attention mechanism)으로 구현되는 어텐션 레이어를 포함할 수 있다. 제3 레이어(L3)는 제1 내지 제n 시간 보정 값들(T1~Tn)을 제1 내지 제n 벡터 값들(h1~hn)에 반영하여 불규칙한 시간 간격을 보정함으로써, 제1 내지 제n 가중치들(o1~on)을 생성할 수 있다. 제1 내지 제n 가중치들(o1~on)은 예시적으로 수학식 3과 같이 어텐션 메커니즘을 이용하고 불규칙한 시간 간격을 보정할 수 있다.The third layer L3 may generate a weight by receiving a vector value and a time correction value according to an order of time. Here, the weight may indicate a final weight applied to the vector value in order to generate the result data RD. The third layer L3 may include an attention layer implemented as an attention mechanism. The third layer L3 applies the first to n-th time correction values T1 to Tn to the first to n-th vector values h1 to hn to correct the irregular time interval, thereby forming the first to n-th weights. (o1~on) can be created. The first to nth weights o1 to on may exemplarily use an attention mechanism as in Equation 3 and correct irregular time intervals.
수학식 3을 참조하면, h는 벡터 값, We는 벡터 값에 대응되는 가중치 (매트릭스), Ue는 가중치 벡터, T는 시간 보정 값, o는 벡터 값에 부여하기 위하여 생성되는 (최종) 가중치로 정의된다. 벡터 값은 tanh와 같은 비선형 함수를 이용하여 모델링될 수 있다. 모델링된 벡터 값은 불규칙한 시간 간격을 보정하도록 시간 보정 값과 함께 softmax 함수에 입력될 수 있다. 제1 내지 제n 가중치들(o1~on)은 softmax 함수의 계산에 의하여 생성될 수 있다.Referring to Equation 3, h is a vector value, W e is a weight (matrix) corresponding to the vector value, U e is a weight vector, T is a time correction value, o is a vector value generated (final) defined as weights. Vector values can be modeled using non-linear functions such as tanh. The modeled vector values can be input into the softmax function along with the time correction values to correct for irregular time intervals. The first to nth weights o1 to on may be generated by calculation of the softmax function.
제3 레이어(L3)는 제1 내지 제n 가중치들(o1~on)을 제1 내지 제n 벡터 값들(h1~hn)에 부여할 수 있다. 예를 들어, 제1 벡터 값(h1)과 제1 가중치(o1)는 곱하여질 수 있다. 가중치의 크기에 의존하여, 벡터 값이 결과 데이터(RD)에 영향을 미치는 정도가 결정될 수 있다. 예를 들어, 가중치의 크기가 클수록, 가중치에 대응되는 데이터 또는 벡터 값은 결과 데이터(RD)를 생성하는데 유의미한 정보일 수 있다. 도 6과 달리, 제3 레이어(L3)는 가중치가 부여된 제1 내지 제n 벡터 값들(o1h1~onhn)을 모두 분석하여 생성된 하나의 분석 값을 제4 레이어(L4)에 출력할 수 있다. 예를 들어, 분석 값은 가중치가 부여된 제1 내지 제n 벡터 값들(o1h1~onhn)의 합에 기초하여 생성될 수 있다.The third layer L3 may assign the first to n-th weights o1 to on to the first to n-th vector values h1 to hn. For example, the first vector value h1 and the first weight o1 may be multiplied. Depending on the size of the weight, the degree to which the vector value affects the result data RD may be determined. For example, as the size of the weight increases, data or a vector value corresponding to the weight may be meaningful information in generating the result data RD. Unlike FIG. 6 , the third layer L3 may output one analysis value generated by analyzing all of the weighted first to nth vector values o1h1 to onhn to the fourth layer L4 . . For example, the analysis value may be generated based on the sum of weighted first to nth vector values o1h1 to onhn.
제4 레이어(L4)는 가중치가 부여된 제1 내지 제n 벡터 값들(o1h1~onhn)에 기초하여 결과 데이터(RD)를 계산할 수 있다. 결과 데이터(RD)는 예측 시간에 대응되는 제n+1 데이터(TMDn+1)일 수 있다. 제n+1 데이터(TMDn+1)는 예측 시간에 대응되는 전자 의무 기록의 예측 데이터일 수 있다. 제4 레이어(L4)는 제1 레이어(L1)와 같은 순환 신경망으로 구현될 수 있다. 예를 들어, 제4 레이어(L4)는 가중치가 부여된 제1 내지 제n 벡터 값들(o1h1~onhn)을 순차적으로 처리하여, 이전의 벡터 값을 반영한 데이터를 순차적으로 생성할 수 있다. 순차적인 처리 결과, 제4 레이어(L4)는 가중치가 부여된 제1 내지 제n 벡터 값들(o1h1~onhn) 모두를 반영한 결과 데이터(RD)를 생성할 수 있다. 다만, 이에 제한되지 않고, 제4 레이어(L4)는 예시적으로 행렬 곱셈 연산 등을 수행하여 결과 데이터(RD)를 출력하는 것과 같이 다양한 방식으로 구현될 수 있다. The fourth layer L4 may calculate the result data RD based on the weighted first to nth vector values o1h1 to onhn. The result data RD may be the n+1th data TMDn+1 corresponding to the prediction time. The n+1th data TMDn+1 may be prediction data of the electronic medical record corresponding to the predicted time. The fourth layer L4 may be implemented with the same recurrent neural network as the first layer L1 . For example, the fourth layer L4 may sequentially process the weighted first to nth vector values o1h1 to onhn to sequentially generate data reflecting the previous vector value. As a result of the sequential processing, the fourth layer L4 may generate result data RD reflecting all of the weighted first to n-th vector values o1h1 to onhn. However, the present invention is not limited thereto, and the fourth layer L4 may be implemented in various ways, for example, by performing a matrix multiplication operation and the like to output the result data RD.
도 7은 도 5에서 학습된 예측 모델의 예시적인 도면이다. 도 7은 예측 모델(PM2)의 예시적인 구성으로 이해될 것이고, 본 발명의 실시예는 도 7에 제한되지 않는다. 도 7을 참조하면, 예측 모델(PM2)은 입력 레이어(Li), 어텐션 레이어(La), 및 출력 레이어(Lo)를 포함할 수 있다. 예측 모델(PM2)은 도 5의 데이터 분석부(135)에서 생성 및 학습될 수 있다.7 is an exemplary diagram of a predictive model trained in FIG. 5 . 7 will be understood as an exemplary configuration of the predictive model PM2, and the embodiment of the present invention is not limited to FIG. Referring to FIG. 7 , the prediction model PM2 may include an input layer Li, an attention layer La, and an output layer Lo. The predictive model PM2 may be generated and learned by the data analyzer 135 of FIG. 5 .
입력 레이어(Li)는 순차적으로 제1 내지 제n 데이터(TMD1~TMDn)를 벡터화할 수 있다. 입력 레이어(Li)는 도 6의 제1 레이어(L1)와 같이, 제1 내지 제n 데이터(TMD1~TMDn)을 제1 내지 제n 벡터 값들(h1~hn)로 변환할 수 있다. 입력 레이어(Li)는 이전에 생성된 벡터 값에 기초하여 다음의 벡터 값을 생성하는 순환 신경망으로 구현될 수 있다.The input layer Li may sequentially vectorize the first to n-th data TMD1 to TMDn. Like the first layer L1 of FIG. 6 , the input layer Li may convert the first to n-th data TMD1 to TMDn into first to n-th vector values h1 to hn. The input layer Li may be implemented as a recurrent neural network that generates a next vector value based on a previously generated vector value.
어텐션 레이어(La)는 어텐션 메커니즘에 따라 제1 내지 제n 벡터 값들(h1~hn) 및 제1 내지 제n 차이 값들(d1~dn)을 순차적으로 모델링하고, 이를 종합하여 제1 내지 제n 가중치들(o1~on)을 생성할 수 있다. 제1 내지 제n 차이 값들(d1~dn)은 도 4에서 상술된 바와 같이, 시차 데이터에 포함된 데이터 값들을 나타낼 수 있다. 예시적으로, 어텐션 레이어(La)는 제1 내지 제n 벡터 값들(h1~hn) 및 제1 내지 제n 차이 값들(d1~dn)을 수학식 2 및 수학식 3과 같이, tanh 함수를 이용하여 모델링할 수 있다. 이후, 어텐션 레이어(La)는 수학식 3과 같이, softmax 함수를 적용하여, 불규칙한 시간 간격이 보정된 제1 내지 제n 가중치들(o1~on)을 생성할 수 있다. 제1 내지 제n 가중치들(o1~on)은 제1 내지 제n 벡터 값들(h1~hn)에 부여되고, 서로 합산될 수 있다. 그 결과, 분석 값(CC)이 생성될 수 있다.The attention layer La sequentially models the first to n-th vector values h1 to hn and the first to n-th difference values d1 to dn according to the attention mechanism, and synthesizes the first to n-th weights. You can create fields (o1~on). The first to nth difference values d1 to dn may represent data values included in disparity data, as described above with reference to FIG. 4 . Exemplarily, the attention layer La uses the tanh function for the first to nth vector values h1 to hn and the first to nth difference values d1 to dn as in
출력 레이어(Lo)는 분석 값(CC) 및 제n 벡터 값(hn)에 기초하여, 예측 시간에 대응되는 결과 데이터(RD)를 생성할 수 있다. 결과 데이터(RD)는 예측 시간에 대응되는 제n+1 데이터(TMDn+1)일 수 있고, 전자 의무 기록의 예측 데이터일 수 있다. 출력 레이어(Lo)는 입력 레이어(Li)와 같이, 이전에 생성된 벡터 값인 제n 벡터 값에 기초하여, 다음의 벡터 값에 대응되는 결과 데이터(RD)를 생성할 수 있다.The output layer Lo may generate result data RD corresponding to the prediction time based on the analysis value CC and the n-th vector value hn. The result data RD may be the n+1-th data TMDn+1 corresponding to the prediction time, or may be the prediction data of the electronic medical record. Like the input layer Li, the output layer Lo may generate result data RD corresponding to the next vector value based on an n-th vector value that is a previously generated vector value.
도 8은 도 1의 시계열 의료 데이터 처리 장치에 의한 예측 모델을 학습하는 방법의 순서도이다. 도 8을 참조하면, 예측 모델을 학습하는 방법은 도 2의 시계열 의료 데이터 처리 장치(130)의 프로세서(132)에 의하여 실행될 수 있다. 도 8의 각 단계들은 프로세서(132)의 제어 하에, 전처리부(134) 및 데이터 분석부(135)에서 처리될 수 있다. 설명의 편의상 도 2의 도면 부호를 참조하여, 도 8이 설명된다.FIG. 8 is a flowchart of a method of learning a predictive model by the time series medical data processing apparatus of FIG. 1 . Referring to FIG. 8 , the method of learning the predictive model may be executed by the
S110 단계에서, 시계열 데이터는 네트워크 인터페이스(131)를 통하여 획득된다. 시계열 데이터는 도 1의 의료 데이터베이스(120) 또는 단말기(110)로부터 제공될 수 있다. 학습된 예측 모델을 이용하여 미래의 건강 상태를 예측할 때와 달리, 네트워크 인터페이스(131)는 별도의 예측 시간 데이터를 수신하지 않을 수 있다.In step S110 , time series data is acquired through the
S120 단계에서, 시계열 데이터의 전처리가 수행된다. S120 단계는 프로세서(132)의 제어 하에, 전처리부(134)에서 수행될 수 있다. 전처리부(134)는 S121 내지 S123 단계를 수행할 수 있다.In step S120, preprocessing of the time series data is performed. Step S120 may be performed by the
S121 단계에서, 전처리부(134)는 정상 시계열 데이터를 추출할 수 있다. 예시적으로, 전처리부(134)는 시계열 데이터에서 노이즈 등에 의하여 손상되거나, 해당 특징에서 나타날 수 없는 잘못된 값으로 기록된 비정상 시계열 데이터를 제거하거나 정상 시계열 데이터로 보정할 수 있다.In step S121 , the
S122 단계에서, 전처리부(134)는 시차 데이터를 생성한다. 학습 단계에서, 별도의 예측 시간을 수신하지 않으므로, 시차 데이터는 기설정된 예측 시간을 이용하거나, 수신된 시계열 데이터의 최종 시간을 예측 시간으로 설정함으로써 생성될 수 있다. 예를 들어, 전처리부(134)는 시계열 데이터의 최초 시간과 최종 시간 사이에 일정한 시간 간격을 갖는 기준 시간들을 계산할 수 있다. 전처리부(134)는 기준 시간들과 실제 시계열 데이터의 시간들의 차이에 기초하여, 시차 데이터를 생성할 수 있다.In step S122 , the
S123 단계에서, 전처리부(134)는 정상 시계열 데이터를 보간할 수 있다. 예시적으로, 전처리부(134)는 정상 시계열 데이터에 포함된 특징들 중 특정 시간에 존재하지 않는 결측 값들을 보간할 수 있다. 예시적으로, 결측 값은 평균 값 또는 인접한 특징 값 등을 활용하는 통계적인 방식으로 보간되거나, 전처리 모델과 같은 기계 학습을 통하여, 보간될 수 있다.In step S123 , the
S130 단계에서, 데이터 분석부(135)는 전처리된 시계열 데이터 및 시차 데이터에 기초하여, 예측 모델을 학습한다. 데이터 분석부(135)는 전처리된 시계열 데이터의 불규칙한 시간 간격을 시차 데이터로 보정함으로써, 학습 결과 데이터를 생성할 수 있다. 학습 결과 데이터는 예상되는 결과 데이터, 예를 들어 최종 시간에 대응되는 시계열 데이터와 비교될 수 있다. 비교 결과에 기초하여 예측 모델에 설정된 가중치가 조절됨으로써, 예측 모델이 학습될 수 있다. 예측 모델을 다양한 표본들에 대한 시계열 데이터를 이용하여 학습될 수 있다.In step S130 , the
도 9는 도 1의 시계열 의료 데이터 처리 장치에 의한 미래 건강 상태를 예측하는 방법의 순서도이다. 도 9를 참조하면, 미래 건강 상태를 예측하는 방법은 도 2의 시계열 의료 데이터 처리 장치(130)의 프로세서(132)에 의하여 실행될 수 있다. 도 8의 각 단계들은 프로세서(132)의 제어 하에, 전처리부(134) 및 데이터 분석부(135)에서 처리될 수 있다. 설명의 편의상 도 2의 도면 부호를 참조하여, 도 9가 설명된다.9 is a flowchart of a method of predicting a future health state by the time-series medical data processing apparatus of FIG. 1 . Referring to FIG. 9 , a method of predicting a future health state may be executed by the
S210 단계에서, 네트워크 인터페이스(131)를 통하여, 데이터가 수집된다. S211 단계에서, 미래 건강 상태를 예측하고자 하는 사용자에 대한 시계열 데이터가 네트워크 인터페이스(131)를 통하여 획득된다. 또한, S212 단계에서, 예측 시간 데이터가 네트워크 인터페이스(131)를 통하여 더 획득된다. 예측 시간은 미래 건강 상태를 예측하고자 하는 시점일 수 있다.In step S210 , data is collected through the
S220 단계에서, 시계열 데이터의 전처리가 수행된다. S221 단계 및 S223 단계는 도 8의 S121 단계 및 S123 단계에 대응되며, 실질적으로 동일한 동작이 수행될 수 있다. S222 단계에서, 전처리부(134)는 예측 시간 데이터에 기초하여 시차 데이터를 생성한다. 예를 들어, 전처리부(134)는 시계열 데이터의 최초 시간과 예측 시간 사이에 일정한 시간 간격을 갖는 기준 시간들을 계산할 수 있다. 전처리부(134)는 기준 시간들과 실제 시계열 데이터의 시간들의 차이에 기초하여, 시차 데이터를 생성할 수 있다.In step S220, pre-processing of the time series data is performed. Steps S221 and S223 correspond to steps S121 and S123 of FIG. 8 , and substantially the same operation may be performed. In step S222 , the
S230 단계에서, 데이터 분석부(135)는 전처리된 시계열 데이터 및 시차 데이터에 기초하여, 예측 시간에 대응되는 미래 건강 상태를 예측한다. 데이터 분석부(135)는 전처리된 시계열 데이터의 불규칙한 시간 간격을 시차 데이터로 보정함으로써, 시계열 데이터의 시간들 각각에 대응되는 가중치를 생성할 수 있다. 데이터 분석부(135)는 생성된 가중치에 기초하여, 예측 시간에 대응되는 결과 데이터를 생성할 수 있다.In step S230 , the
도 10은 도 9의 S230 단계를 구체화한 순서도이다. 도 10을 참조하면, 예측 모델을 이용하여 예측 시간에 대응되는 미래 건강 상태를 예측하는 방법이 수행된다. 미래 건강 상태의 결과를 예측하는 방법은 도 2의 시계열 의료 데이터 처리 장치(130)의 프로세서(132)에 의하여 실행될 수 있다. 도 10의 각 단계들은 데이터 분석부(135)에 의하여 학습된 예측 모델에서 수행될 수 있다. 설명의 편의상 도 6의 도면 부호를 참조하여, 도 10이 설명된다.10 is a flowchart illustrating step S230 of FIG. 9 . Referring to FIG. 10 , a method of predicting a future health state corresponding to a prediction time using a prediction model is performed. The method of predicting a result of a future health state may be executed by the
S231 단계에서, 데이터 분석부(135)는 전처리된 시계열 데이터를 벡터화한다. S231 단계는 제1 레이어(L1)에서 수행될 수 있다. 제1 레이어(L1)는 시간의 순서에 따라 시계열 데이터를 수신하여 벡터 값으로 변환할 수 있다. 제1 레이어(L1)는 이전에 생성된 벡터 값에 기초하여, 다음의 벡터 값을 생성할 수 있다.In step S231, the
S232 단계에서, 데이터 분석부(135)는 시차 데이터에 기초하여 시계열 데이터의 불규칙한 시간 간격을 보정할 수 있다. S232 단계는 제3 레이어(L3)에서 수행될 수 있다. S232 단계 이전에, 제2 레이어(L2)는 시차 데이터를 상술된 수학식 3과 같이 모델링 할 수 있다. 예를 들어, 제3 레이어(L3)는 상술된 수학식 2와 같이, 벡터 값을 모델링하고, 모델링된 벡터 값과 모델링된 시차 데이터에 어텐션 메커니즘을 적용할 수 있다.In step S232 , the
S233 단계에서, 데이터 분석부(135)는 모델링된 벡터 값과 모델링된 시차 데이터에 어텐션 메커니즘을 적용함으로써, 벡터 값에 부여되는 가중치를 생성할 수 있다. S233 단계는 제3 레이어(L3)에서 수행될 수 있다. 예를 들어, 모델링된 벡터 값 및 모델링된 시차 데이터에 softmax 함수가 적용될 수 있다. 가중치는 결과 데이터를 생성하는데 이용되는 벡터 값의 중요도와 연관될 수 있다.In step S233 , the
S234 단계에서, 데이터 분석부(135)는 예측 시간에 대응되는 결과 데이터를 생성한다. S234 단계는 제4 레이어(L4)에서 수행될 수 있다. 예를 들어, S234 단계에서 생성된 가중치는 벡터 값에 부여될 수 있다. 벡터 값 및 가중치는 전처리된 시계열 데이터에 대응되는 시간들의 개수만큼 생성될 수 있고, 가중치가 부여된 벡터 값들 전체가 반영되어 결과 데이터가 생성될 수 있다.In step S234 , the
위에서 설명한 내용은 본 발명을 실시하기 위한 구체적인 예들이다. 본 발명에는 위에서 설명한 실시 예들뿐만 아니라, 단순하게 설계 변경하거나 용이하게 변경할 수 있는 실시 예들도 포함될 것이다. 또한, 본 발명에는 상술한 실시 예들을 이용하여 앞으로 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다.The contents described above are specific examples for carrying out the present invention. The present invention will include not only the above-described embodiments, but also simple design changes or easily changeable embodiments. In addition, the present invention will include techniques that can be easily modified and implemented in the future using the above-described embodiments.
100: 건강 상태 예측 시스템
130: 시계열 의료 데이터 처리 장치
134: 전처리부
135: 데이터 분석부100: health condition prediction system
130: time series medical data processing unit
134: preprocessor
135: data analysis unit
Claims (20)
상기 시계열 데이터를 전처리하고, 상기 예측 시간에 기초하여 상기 시계열 데이터의 복수의 시간들 각각에 대응되는 시차 데이터를 생성하는 전처리부;
상기 전처리된 시계열 데이터 및 상기 시차 데이터에 기초하여, 상기 예측 시간에 대응되는 결과 데이터를 생성하는 데이터 분석부; 및
상기 전처리부 및 상기 데이터 분석부를 제어하는 프로세서를 포함하는 시계열 데이터 처리 장치.a network interface for receiving time series data and predicted times;
a preprocessing unit preprocessing the time series data and generating disparity data corresponding to each of a plurality of times of the time series data based on the predicted time;
a data analysis unit generating result data corresponding to the predicted time based on the preprocessed time series data and the disparity data; and
A time series data processing apparatus comprising a processor controlling the preprocessor and the data analysis unit.
상기 전처리부는,
상기 복수의 시간들 중 최초 시간과 상기 예측 시간의 차이에 기초하여, 상기 시계열 데이터의 복수의 기준 시간들을 계산하고, 상기 복수의 기준 시간들과 상기 복수의 시간들 사이의 차이에 기초하여, 상기 시차 데이터를 생성하는 시계열 데이터 처리 장치.According to claim 1,
The preprocessor is
Calculate a plurality of reference times of the time series data based on a difference between an initial time of the plurality of times and the predicted time, and based on a difference between the plurality of reference times and the plurality of times, A time series data processing unit that generates disparity data.
상기 복수의 기준 시간들 사이의 시간 간격은 서로 동일한 시계열 데이터 처리 장치.3. The method of claim 2,
A time series data processing apparatus in which time intervals between the plurality of reference times are equal to each other.
상기 시계열 데이터는 제1 시간에 대응되는 제1 데이터, 상기 제1 시간 이후의 제2 시간에 대응되는 제2 데이터, 및 상기 제2 시간 이후의 제3 시간에 대응되는 제3 데이터를 포함하고,
상기 전처리부는,
상기 예측 시간에 기초하여 상기 제1 내지 제3 데이터에 대응되는 제1 내지 제3 기준 시간들을 계산하고, 상기 제1 시간과 상기 제1 기준 시간의 차이에 기초하여 제1 시차 데이터를 생성하고, 상기 제2 시간과 상기 제2 기준 시간 사이의 차이에 기초하여 제2 시차 데이터를 생성하고, 상기 제3 시간과 상기 제3 기준 시간 사이의 차이에 기초하여 제3 시차 데이터를 생성하는 시계열 데이터 처리 장치.According to claim 1,
The time series data includes first data corresponding to a first time, second data corresponding to a second time after the first time, and third data corresponding to a third time after the second time,
The preprocessor is
calculating first to third reference times corresponding to the first to third data based on the predicted time, and generating first disparity data based on a difference between the first time and the first reference time, Time series data processing for generating second disparity data based on a difference between the second time and the second reference time, and generating third disparity data based on the difference between the third time and the third reference time Device.
상기 제1 시간과 상기 제2 시간의 차이는 상기 제2 시간과 상기 제3 시간의 차이와 다르고, 상기 제1 기준 시간과 상기 제2 기준 시간의 차이는 상기 제2 기준 시간과 상기 제3 기준 시간의 차이와 동일한 시계열 데이터 처리 장치.5. The method of claim 4,
The difference between the first time and the second time is different from the difference between the second time and the third time, and the difference between the first reference time and the second reference time is the second reference time and the third reference time. A time series data processing unit equal to the difference in time.
상기 전처리부는,
상기 시계열 데이터에서 정상 시계열 데이터를 추출하는 데이터 추출기;
상기 예측 시간 및 상기 정상 시계열 데이터의 복수의 시간들에 기초하여, 상기 시차 데이터를 생성하는 시간 간격 계산기; 및
상기 정상 시계열 데이터에 포함된 특징들에 대한 결측 값을 보간하는 데이터 보간기를 포함하는 시계열 데이터 처리 장치.According to claim 1,
The preprocessor is
a data extractor for extracting normal time series data from the time series data;
a time interval calculator that generates the disparity data based on the predicted time and a plurality of times of the normal time series data; and
and a data interpolator for interpolating missing values for features included in the normal time series data.
상기 데이터 분석부는,
상기 전처리된 시계열 데이터 및 상기 시차 데이터를 입력 받는 예측 모델에 의하여, 상기 전처리된 시계열 데이터에 대응되는 가중치를 생성하고, 상기 가중치에 기초하여 상기 결과 데이터를 계산하는 시계열 데이터 처리 장치.According to claim 1,
The data analysis unit,
A time series data processing apparatus for generating a weight corresponding to the preprocessed time series data by a prediction model receiving the preprocessed time series data and the disparity data, and calculating the result data based on the weights.
상기 예측 모델은,
상기 전처리된 시계열 데이터를 상기 복수의 시간들에 대응되는 복수의 벡터 값들로 변환하는 제1 레이어;
상기 복수의 시간들에 대응되는 상기 시차 데이터의 값들 및 상기 복수의 벡터 값들을 모델링하여, 상기 복수의 벡터 값들에 대응되는 복수의 가중치들을 생성하고, 상기 복수의 가중치들을 상기 복수의 벡터 값들에 적용하여, 분석 값을 생성하는 제2 레이어; 및
상기 복수의 시간들 중 최종 시간에 대응되는 벡터 값 및 상기 분석 값에 기초하여, 상기 결과 데이터를 생성하는 제3 레이어를 포함하는 시계열 데이터 처리 장치.8. The method of claim 7,
The predictive model is
a first layer converting the preprocessed time series data into a plurality of vector values corresponding to the plurality of times;
By modeling the values of the disparity data corresponding to the plurality of times and the plurality of vector values, a plurality of weights corresponding to the plurality of vector values are generated, and the plurality of weights are applied to the plurality of vector values. a second layer to generate an analysis value; and
and a third layer generating the result data based on a vector value corresponding to a final time among the plurality of times and the analysis value.
상기 예측 모델은,
상기 전처리된 시계열 데이터를 상기 복수의 시간들에 대응되는 복수의 벡터 값들로 변환하는 제1 레이어;
상기 시차 데이터를 모델링하여, 상기 복수의 벡터 값들에 대응되는 복수의 시간 보정 값들을 생성하는 제2 레이어;
상기 복수의 벡터 값들 및 상기 복수의 시간 보정 값들에 기초하여, 상기 복수의 벡터 값들에 대응되는 복수의 가중치들을 생성하는 제3 레이어; 및
상기 복수의 가중치들 및 상기 복수의 벡터 값들에 기초하여, 상기 결과 데이터를 생성하는 제4 레이어를 포함하는 시계열 데이터 처리 장치.8. The method of claim 7,
The predictive model is
a first layer converting the preprocessed time series data into a plurality of vector values corresponding to the plurality of times;
a second layer that models the disparity data to generate a plurality of time correction values corresponding to the plurality of vector values;
a third layer generating a plurality of weights corresponding to the plurality of vector values based on the plurality of vector values and the plurality of time correction values; and
and a fourth layer generating the result data based on the plurality of weights and the plurality of vector values.
상기 시계열 데이터는 상기 복수의 시간들에 대응되는 복수의 전자 의무 기록들을 포함하는 시계열 데이터 처리 장치.According to claim 1,
The time series data is a time series data processing apparatus including a plurality of electronic medical records corresponding to the plurality of times.
복수의 시간들에 대응되는 시계열 데이터를 획득하는 단계;
설정된 예측 시간으로부터 생성된 복수의 기준 시간들과 상기 복수의 시간들 사이의 차이에 기초하여, 시차 데이터를 생성하는 단계; 및
상기 시계열 데이터 및 상기 시차 데이터에 기초하여, 예측 모델을 학습하는 단계를 포함하는 방법.A method of operating a time series data processing apparatus performed by a processor, the method comprising:
obtaining time series data corresponding to a plurality of times;
generating disparity data based on a plurality of reference times generated from a set prediction time and a difference between the plurality of times; and
and learning a predictive model based on the time series data and the disparity data.
상기 예측 시간은 상기 복수의 시간들 중 최종 시간을 포함하는 방법.12. The method of claim 11,
wherein the predicted time includes a last time of the plurality of times.
상기 시차 데이터를 생성하는 단계는,
상기 예측 시간과 상기 복수의 시간들 중 최초 시간의 차이에 기초하여, 일정한 시간 간격을 갖는 상기 복수의 기준 시간들을 계산하는 단계를 포함하는 방법.12. The method of claim 11,
The step of generating the disparity data includes:
and calculating the plurality of reference times having a constant time interval based on a difference between the predicted time and an initial time among the plurality of times.
상기 예측 모델을 학습하는 단계는,
상기 시계열 데이터의 시간 간격을 상기 시차 데이터로 보정하여 상기 예측 시간에 대응되는 학습 결과 데이터를 생성하는 단계를 포함하는 방법.12. The method of claim 11,
Learning the predictive model comprises:
and generating learning result data corresponding to the predicted time by correcting the time interval of the time series data with the disparity data.
상기 학습 결과 데이터를 생성하는 단계는,
상기 시계열 데이터를 벡터화하여, 복수의 시간들에 대응되는 복수의 벡터 값들을 생성하는 단계;
상기 시차 데이터를 모델링하여, 상기 복수의 벡터 값들에 대응되는 복수의 시간 보정 값들을 생성하는 단계;
상기 복수의 벡터 값들 및 상기 복수의 시간 보정 값들에 기초하여, 상기 복수의 벡터 값들에 대응되는 복수의 가중치들을 생성하는 단계; 및
상기 복수의 가중치들 및 상기 복수의 벡터 값들에 기초하여, 상기 학습 결과 데이터를 계산하는 단계를 포함하는 방법.15. The method of claim 14,
The step of generating the learning result data comprises:
generating a plurality of vector values corresponding to a plurality of times by vectorizing the time series data;
generating a plurality of time correction values corresponding to the plurality of vector values by modeling the disparity data;
generating a plurality of weights corresponding to the plurality of vector values based on the plurality of vector values and the plurality of time correction values; and
and calculating the learning result data based on the plurality of weights and the plurality of vector values.
복수의 시간들에 대응되는 시계열 데이터를 획득하는 단계;
상기 복수의 시간들 이후의 예측 시간을 획득하는 단계;
상기 예측 시간 및 상기 복수의 시간들 중 적어도 하나 사이의 시간 간격에 기초하여, 상기 복수의 시간들 각각에 대응되는 시차 데이터를 생성하는 단계; 및
상기 시계열 데이터 및 상기 시차 데이터에 기초하여, 상기 예측 시간에 대응되는 결과 데이터를 생성하는 단계를 포함하는 방법.A method of operating a time series data processing apparatus performed by a processor, the method comprising:
obtaining time series data corresponding to a plurality of times;
obtaining a predicted time after the plurality of times;
generating disparity data corresponding to each of the plurality of times based on the predicted time and a time interval between at least one of the plurality of times; and
and generating result data corresponding to the predicted time based on the time series data and the disparity data.
상기 시계열 데이터를 획득하는 단계 이후에, 상기 시계열 데이터를 전처리하는 단계를 더 포함하고,
상기 시계열 데이터를 전처리하는 단계는,
상기 시계열 데이터에서 정상 시계열 데이터를 추출하는 단계; 및
상기 정상 시계열 데이터에 포함된 특징들에 대한 결측 값을 보간하는 단계를 포함하는 단계를 포함하는 방법.17. The method of claim 16,
After obtaining the time series data, further comprising the step of pre-processing the time series data,
The pre-processing of the time series data comprises:
extracting normal time series data from the time series data; and
and interpolating missing values for features included in the stationary time series data.
상기 결과 데이터를 생성하는 단계는,
상기 시계열 데이터를 상기 복수의 시간들에 대응되는 복수의 벡터 값들로 변환하는 단계;
상기 복수의 시간들에 대응되는 상기 시차 데이터의 값들을 모델링하여, 복수의 시간 보정 값들을 생성하는 단계;
상기 복수의 벡터 값들 및 상기 복수의 시간 보정 값들에 기초하여, 상기 복수의 벡터 값들에 대응되는 복수의 가중치들을 생성하는 단계를 포함하는 단계; 및
상기 복수의 가중치들을 상기 복수의 벡터 값들에 적용하는 단계를 포함하는 방법.17. The method of claim 16,
The step of generating the result data includes:
converting the time series data into a plurality of vector values corresponding to the plurality of times;
generating a plurality of time correction values by modeling the values of the disparity data corresponding to the plurality of times;
generating a plurality of weights corresponding to the plurality of vector values based on the plurality of vector values and the plurality of time correction values; and
and applying the plurality of weights to the plurality of vector values.
상기 시계열 데이터는 제1 시간에 대응되는 제1 데이터 및 상기 제1 시간 이후의 제2 시간에 대응되는 제2 데이터를 포함하고,
상기 결과 데이터를 생성하는 단계는,
상기 제1 데이터를 제1 벡터 값으로 변환하는 단계;
상기 제1 시간에 대응되는 제1 시차 데이터를 제1 시간 보정 값으로 모델링하는 단계;
상기 제1 시간 보정 값을 상기 제1 벡터 값에 반영하여, 제1 가중치를 생성하는 단계;
상기 제1 벡터 값에 기초하여, 상기 제2 데이터를 제2 벡터 값으로 변환하는 단계;
상기 제2 시간에 대응되는 제2 시차 데이터를 제2 시간 보정 값으로 모델링하는 단계; 및
상기 제2 시간 보정 값을 및 상기 제2 벡터 값에 반영하여, 제2 가중치를 생성하는 단계를 포함하는 방법.17. The method of claim 16,
The time series data includes first data corresponding to a first time and second data corresponding to a second time after the first time,
The step of generating the result data includes:
converting the first data into a first vector value;
modeling the first disparity data corresponding to the first time as a first time correction value;
generating a first weight by reflecting the first time correction value to the first vector value;
converting the second data into a second vector value based on the first vector value;
modeling second disparity data corresponding to the second time as a second time correction value; and
and generating a second weight by reflecting the second time correction value and the second vector value.
상기 결과 데이터를 생성하는 단계는,
상기 제1 벡터 값에 상기 제1 가중치를 부여하여 제1 분석 값을 생성하는 단계;
상기 제2 벡터 값에 상기 제2 가중치를 부여하여 제2 분석 값을 생성하는 단계; 및
상기 제2 벡터 값, 상기 제1 분석 값, 및 상기 제2 분석 값에 기초하여, 상기 결과 데이터를 출력하는 단계를 더 포함하는 방법.
20. The method of claim 19,
The step of generating the result data includes:
generating a first analysis value by giving the first weight to the first vector value;
generating a second analysis value by giving the second weight to the second vector value; and
The method further comprising outputting the result data based on the second vector value, the first analysis value, and the second analysis value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180147862A KR102415220B1 (en) | 2018-11-26 | 2018-11-26 | Time series data processing device and operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180147862A KR102415220B1 (en) | 2018-11-26 | 2018-11-26 | Time series data processing device and operating method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200061968A KR20200061968A (en) | 2020-06-03 |
KR102415220B1 true KR102415220B1 (en) | 2022-07-01 |
Family
ID=71087458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180147862A KR102415220B1 (en) | 2018-11-26 | 2018-11-26 | Time series data processing device and operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102415220B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102481497B1 (en) | 2020-12-18 | 2022-12-23 | 숭실대학교 산학협력단 | Method for detecting machine failure using a convolutional neural network model, recording medium and device for performing the method |
KR102574244B1 (en) * | 2021-02-10 | 2023-09-06 | 주식회사 티라유텍 | A method and apparatus for generating future demand forecast data based on attention mechanism |
KR20230017113A (en) | 2021-07-27 | 2023-02-03 | 경북대학교 산학협력단 | Method and apparatus for analyzing time series data based on time delayed plot, and recording media recorded program realizing the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101856170B1 (en) | 2017-09-20 | 2018-05-10 | 주식회사 모비젠 | Apparatus for predicting error generation time of system based on time-series data and method thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140107714A (en) * | 2013-02-25 | 2014-09-05 | 한국전자통신연구원 | Health management system and method for providing health information thereof |
KR101940807B1 (en) * | 2015-11-23 | 2019-01-23 | 한국전자통신연구원 | Apparatus and method for predicting future health |
KR20170061222A (en) * | 2015-11-25 | 2017-06-05 | 한국전자통신연구원 | The method for prediction health data value through generation of health data pattern and the apparatus thereof |
-
2018
- 2018-11-26 KR KR1020180147862A patent/KR102415220B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101856170B1 (en) | 2017-09-20 | 2018-05-10 | 주식회사 모비젠 | Apparatus for predicting error generation time of system based on time-series data and method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20200061968A (en) | 2020-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102501530B1 (en) | Time series data processing device and operating method thereof | |
KR102216689B1 (en) | Method and system for visualizing classification result of deep neural network for prediction of disease prognosis through time series medical data | |
KR102460442B1 (en) | Time series data processing device, health predicting system including the same, and method for operating time series data processing device | |
KR102501525B1 (en) | Time series data processing device and operating method thereof | |
KR102415220B1 (en) | Time series data processing device and operating method thereof | |
US20190180882A1 (en) | Device and method of processing multi-dimensional time series medical data | |
KR102532909B1 (en) | Apparatus and method of processing multi-dimensional time series medical data | |
KR20190101043A (en) | A joint learning framework for active feature acquisition and classification | |
US20200111575A1 (en) | Producing a multidimensional space data structure to perform survival analysis | |
JP2023538188A (en) | Robust prediction system for irregular time series in dialysis medical records | |
US20210174229A1 (en) | Device for ensembling data received from prediction devices and operating method thereof | |
US11972443B2 (en) | Prediction model preparation and use for socioeconomic data and missing value prediction | |
Turgut et al. | A framework proposal for machine learning-driven agent-based models through a case study analysis | |
JP2020042645A (en) | Time series data analysis apparatus, time series data analysis method, and time series data analysis program | |
US11651289B2 (en) | System to identify and explore relevant predictive analytics tasks of clinical value and calibrate predictive model outputs to a prescribed minimum level of predictive accuracy | |
US20210319341A1 (en) | Device for processing time series data having irregular time interval and operating method thereof | |
US20220343160A1 (en) | Time series data processing device configured to process time series data with irregularity | |
JP2021149423A (en) | Prediction apparatus, prediction method, and prediction program for patient state | |
KR102557001B1 (en) | Device for ensembling data received from prediction devices and operating method thereof | |
US11941513B2 (en) | Device for ensembling data received from prediction devices and operating method thereof | |
KR20190092217A (en) | Device for ensembling data and operating method thereof | |
CN111276248B (en) | State determination system and electronic device | |
Gadewadikar et al. | A methodology for parameter estimation in system dynamics models using artificial intelligence | |
US20220207297A1 (en) | Device for processing unbalanced data and operation method thereof | |
US20220359082A1 (en) | Health state prediction system including ensemble prediction model and operation method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |