KR102557001B1 - Device for ensembling data received from prediction devices and operating method thereof - Google Patents

Device for ensembling data received from prediction devices and operating method thereof Download PDF

Info

Publication number
KR102557001B1
KR102557001B1 KR1020190124616A KR20190124616A KR102557001B1 KR 102557001 B1 KR102557001 B1 KR 102557001B1 KR 1020190124616 A KR1020190124616 A KR 1020190124616A KR 20190124616 A KR20190124616 A KR 20190124616A KR 102557001 B1 KR102557001 B1 KR 102557001B1
Authority
KR
South Korea
Prior art keywords
prediction
item
result
weight
weights
Prior art date
Application number
KR1020190124616A
Other languages
Korean (ko)
Other versions
KR20200069212A (en
Inventor
임명은
최재훈
한영웅
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to US16/699,060 priority Critical patent/US11941513B2/en
Publication of KR20200069212A publication Critical patent/KR20200069212A/en
Application granted granted Critical
Publication of KR102557001B1 publication Critical patent/KR102557001B1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

Abstract

본 발명은 예측 장치들로부터 수신된 데이터를 앙상블하는 장치 및 이의 동작 방법에 관한 것이다. 본 발명의 실시예에 따른 장치는 데이터 관리기, 학습기, 및 예측기를 포함한다. 데이터 관리기는 제1 예측 장치로부터 제1 장치 예측 결과를 수신하고, 제2 예측 장치로부터 제2 장치 예측 결과를 수신한다. 학습기는 제1 장치 예측 결과 및 제2 장치 예측 결과에 기초하여, 제1 항목 가중치들, 제2 항목 가중치들, 제1 장치 가중치, 및 제2 장치 가중치를 생성하기 위한 예측 모델의 가중치 그룹을 조절할 수 있다. 제1 항목 가중치들은 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하고, 제2 항목 가중치들은 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존한다. 제1 장치 가중치는 제1 예측 장치에 대응되고, 제2 장치 가중치는 제2 예측 장치에 대응된다. 예측기는 가중치 제1 및 제2 항목 가중치들 및 제1 및 제2 장치 가중치들에 기초하여 제1 및 제2 장치 예측 결과들의 앙상블 결과를 생성한다.The present invention relates to an apparatus for ensembling data received from prediction apparatuses and an operating method thereof. An apparatus according to an embodiment of the present invention includes a data manager, a learner, and a predictor. The data manager receives a first device prediction result from the first prediction device, and receives a second device prediction result from the second prediction device. The learner adjusts the weight group of the prediction model for generating first item weights, second item weights, first device weights, and second device weights based on the first device prediction result and the second device prediction result. can The first item weights depend on the first item values of the first and second device prediction results, and the second item weights depend on the second item values of the first and second device prediction results. The first device weight corresponds to the first prediction device, and the second device weight corresponds to the second prediction device. The predictor produces an ensemble result of first and second device prediction results based on the weighted first and second item weights and the first and second device weights.

Figure R1020190124616
Figure R1020190124616

Description

예측 장치들로부터 수신된 데이터를 앙상블하는 장치 및 이의 동작 방법{DEVICE FOR ENSEMBLING DATA RECEIVED FROM PREDICTION DEVICES AND OPERATING METHOD THEREOF}Apparatus for ensembling data received from predictive devices and method for operating the same

본 발명은 데이터의 처리에 관한 것으로, 좀 더 구체적으로 예측 장치들로부터 수신된 데이터를 앙상블하는 장치 및 이의 동작 방법에 관한 것이다.The present invention relates to data processing, and more particularly, to an apparatus for ensembling data received from prediction apparatuses and an operating method thereof.

건강한 삶을 영위하기 위하여, 현재의 질병을 치료하는 것에서 나아가 미래의 건강 상태를 예측하기 위한 요구가 제기되고 있다. 미래의 건강 상태를 예측하기 위하여, 빅데이터를 분석하여 질병을 진단하거나 미래의 질병 위험도를 예측하고자 하는 수요가 증가하고 있다. 산업 기술과 정보 통신 기술의 발달은 빅데이터의 구축을 지원하고 있다. 그리고, 이러한 빅데이터를 이용하여, 컴퓨터와 같은 전자 장치를 학습시켜, 다양한 서비스를 제공하는 인공 지능과 같은 기술이 대두되고 있다. 특히, 미래의 건강 상태를 예측하기 위하여, 다양한 의료 데이터 또는 건강 데이터 등을 이용한 학습 모델을 구축하는 방안이 제안되고 있다. In order to lead a healthy life, there is a demand for predicting future health conditions in addition to treating current diseases. In order to predict future health conditions, demand for diagnosing diseases or predicting future disease risks by analyzing big data is increasing. The development of industrial technology and information and communication technology is supporting the construction of big data. In addition, technologies such as artificial intelligence that provide various services by learning electronic devices such as computers using such big data are emerging. In particular, in order to predict future health conditions, a method of constructing a learning model using various medical data or health data has been proposed.

정확한 예측을 위해서는 데이터의 규모가 클수록 유리하지만, 윤리적 문제, 법적 문제, 개인 프라이버시 문제 등 다양한 원인으로, 다양한 의료 기관들끼리의 데이터 공유가 어려울 수 있다. 이로 인하여, 하나로 통합된 의료 데이터의 빅데이터 구축은 사실상 어려운 실정이다. 이러한 의료 데이터 특유의 문제점에 대한 방안으로, 다양한 의료 기관들에서 개별적으로 구축된 데이터로 개별 예측 모델을 학습하고, 이들의 예측 결과를 환자의 미래 건강 상태의 예측에 활용하는 방안이 모색되고 있다.For accurate prediction, the larger the size of the data, the better. However, due to various reasons such as ethical issues, legal issues, and personal privacy issues, it can be difficult to share data among various medical institutions. Due to this, it is practically difficult to build big data of integrated medical data. As a solution to this problem unique to medical data, a method of learning individual predictive models with data individually constructed in various medical institutions and using these prediction results to predict the future health state of patients is being sought.

Bhatia et al., “Predictive Model for Parkinson's Disease through Naive Bayes Classification”, 2017 Bhatia et al., “Predictive Model for Parkinson's Disease through Naive Bayes Classification”, 2017 Belciug, “Machine learning solutions in computer-aided medical diagnosis”, 2016 Belciug, “Machine learning solutions in computer-aided medical diagnosis”, 2016

본 발명은 미래의 건강 상태 예측의 신뢰성, 정확성, 및 효율성을 확보할 수 있도록, 복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치 및 이의 동작 방법을 제공할 수 있다.The present invention may provide an apparatus for ensembling data received from a plurality of prediction apparatuses and an operating method thereof to ensure reliability, accuracy, and efficiency of future health condition prediction.

본 발명의 실시예에 따른 복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치는, 데이터 관리기 및 학습기를 포함한다. 데이터 관리기는 원시 학습 데이터를 제1 예측 장치 및 제2 예측 장치에 제공하고, 제1 예측 장치로부터 원시 학습 데이터에 대응되는 제1 장치 예측 결과를 수신하고, 제2 예측 장치로부터 원시 학습 데이터에 대응되는 제2 장치 예측 결과를 수신한다. 학습기는 제1 장치 예측 결과 및 제2 장치 예측 결과에 기초하여, 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하는 제1 항목 가중치들, 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존하는 제2 항목 가중치들, 제1 예측 장치에 대응되는 제1 장치 가중치, 및 제2 예측 장치에 대응되는 제2 장치 가중치를 생성하기 위한 예측 모델의 가중치 그룹을 조절한다. 가중치 그룹은 제1 항목 가중치들을 생성하기 위한 제1 파라미터, 제2 항목 가중치들을 생성하기 위한 제2 파라미터, 및 제1 및 제2 장치 가중치들을 생성하기 위한 제3 파라미터를 포함한다.An apparatus for ensembling data received from a plurality of prediction apparatuses according to an embodiment of the present invention includes a data manager and a learner. The data manager provides the raw training data to the first prediction device and the second prediction device, receives the first device prediction result corresponding to the raw training data from the first prediction device, and corresponds to the raw training data from the second prediction device. Receive a second device prediction result that is The learner determines first item weights depending on first item values of the first and second device prediction results and second values of the first and second device prediction results, based on the first device prediction result and the second device prediction result. A weight group of a predictive model for generating second item weights depending on item values, a first device weight corresponding to the first prediction device, and a second device weight corresponding to the second prediction device are adjusted. The weight group includes a first parameter for generating first item weights, a second parameter for generating second item weights, and a third parameter for generating first and second device weights.

일례로, 학습기는 항목 가중치 계산기, 장치 가중치 계산기, 가중치 적용기, 및 가중치 제어기를 포함할 수 있다. 항목 가중치 계산기는 제1 항목 값들 및 제1 파라미터에 기초하여 제1 항목 가중치들을 계산하고, 제2 항목 값들 및 제2 파라미터에 기초하여 제2 항목 가중치들을 계산할 수 있다. 장치 가중치 계산기는 제1 및 제2 장치 예측 결과들 및 제3 파라미터에 기초하여 제1 및 제2 장치 가중치들을 계산할 수 있다. 가중치 적용기는 제1 장치 예측 결과에 제1 및 제2 항목 가중치들 및 제1 장치 가중치를 적용하여 제1 결과를 생성하고, 제2 장치 예측 결과에 제1 및 제2 항목 가중치들 및 제2 장치 가중치를 적용하여 제2 결과를 생성할 수 있다. 가중치 제어기는 제1 및 제2 결과들에 기초하여, 제1 파라미터, 제2 파라미터, 및 제3 파라미터를 조절할 수 있다.In one example, a learner may include an item weight calculator, a device weight calculator, a weight applicator, and a weight controller. The item weight calculator may calculate first item weights based on the first item values and the first parameter, and calculate second item weights based on the second item values and the second parameter. The device weight calculator may calculate first and second device weights based on the first and second device prediction results and the third parameter. The weight applicator generates a first result by applying the first and second item weights and the first device weight to the first device prediction result, and the first and second item weights and the second device weight to the second device prediction result. A second result may be generated by applying a weight. The weight controller may adjust the first parameter, the second parameter, and the third parameter based on the first and second results.

일레로, 학습기는 제1 및 제2 장치 예측 결과들의 제1 항목 값들을 그룹화하여 항목 가중치 계산기로 출력하고, 제1 및 제2 장치 예측 결과들의 제2 항목 값들을 그룹화하여 항목 가중치 계산기로 출력하는 항목 분류기를 더 포함할 수 있다.In other words, the learner groups first item values of the first and second device prediction results and outputs them to the item weight calculator, and groups second item values of the first and second device prediction results and outputs them to the item weight calculator. It may further include an item classifier.

일례로, 가중치 그룹은 제1 결과 또는 제2 결과와 동일한 차원을 갖는 앙상블 결과를 생성하기 위한 제4 파라미터를 더 포함할 수 있다. 학습기는 제1 및 제2 결과들 및 제4 파라미터에 기초하여, 앙상블 결과를 생성하는 결과 계산기를 더 포함할 수 있다. 가중치 제어기는 앙상블 결과에 기초하여 제1 내지 제4 파라미터들을 조절할 수 있다. 가중치 제어기는 앙상블 결과가 기설정된 비교 결과로부터 기준 오차 이내일 때까지 제1 내지 제4 파라미터들을 조절할 수 있다.For example, the weight group may further include a fourth parameter for generating an ensemble result having the same dimension as the first result or the second result. The learner may further include a result calculator generating an ensemble result based on the first and second results and the fourth parameter. The weight controller may adjust the first to fourth parameters based on the ensemble result. The weight controller may adjust the first to fourth parameters until the ensemble result is within a standard error from the preset comparison result.

일례로, 학습기는 항목 가중치 계산기, 항목 가중치 적용기, 장치 가중치 계산기, 장치 가중치 적용기, 및 가중치 제어기를 포함할 수 있다. 항목 가중치 계산기는 제1 항목 값들 및 제1 파라미터에 기초하여 제1 항목 가중치들을 계산하고, 제2 항목 값들 및 제2 파라미터에 기초하여 제2 항목 가중치들을 계산할 수 있다. 항목 가중치 적용기는 제1 항목 값들에 상기 제1 항목 가중치들을 적용하고, 제2 항목 값들에 제2 항목 가중치들을 적용하여 중간 결과를 생성할 수 있다. 장치 가중치 계산기는 중간 결과 및 제3 파라미터에 기초하여 제1 및 제2 장치 가중치들을 계산할 수 있다. 장치 가중치 적용기는 중간 결과 중 제1 장치 예측 결과에 대응되는 값에 제1 장치 가중치를 적용하여 제1 결과를 생성하고, 중간 결과 중 제2 장치 예측 결과에 대응되는 값에 제2 장치 가중치를 적용하여 제2 결과를 생성할 수 있다. 가중치 제어기는 제1 및 제2 결과들에 기초하여, 제1 파라미터, 제2 파라미터, 및 제3 파라미터를 조절할 수 있다.In one example, the learner may include an item weight calculator, an item weight applicator, a device weight calculator, a device weight applicator, and a weight controller. The item weight calculator may calculate first item weights based on the first item values and the first parameter, and calculate second item weights based on the second item values and the second parameter. An item weight applicator may apply the first item weights to first item values and second item weights to second item values to generate an intermediate result. The device weight calculator can calculate first and second device weights based on the intermediate result and the third parameter. The device weight applicator generates a first result by applying a first device weight to a value corresponding to a first device prediction result among intermediate results, and applies a second device weight to a value corresponding to a second device prediction result among intermediate results. to generate a second result. The weight controller may adjust the first parameter, the second parameter, and the third parameter based on the first and second results.

일례로, 가중치 그룹은 제1 결과 또는 제2 결과와 동일한 차원을 갖는 앙상블 결과를 생성하기 위한 제4 파라미터를 더 포함할 수 있다. 학습기는 제1 및 제2 결과들 및 제4 파라미터에 기초하여, 앙상블 결과를 생성하는 결과 계산기를 더 포함할 수 있다. 가중치 제어기는 앙상블 결과에 기초하여 제1 내지 제4 파라미터들을 조절할 수 있다. For example, the weight group may further include a fourth parameter for generating an ensemble result having the same dimension as the first result or the second result. The learner may further include a result calculator generating an ensemble result based on the first and second results and the fourth parameter. The weight controller may adjust the first to fourth parameters based on the ensemble result.

일례로, 데이터 관리기는 제1 예측 장치로부터 제1 장치 예측 결과를 생성하기 위한 제1 예측 모델의 제1 상태 정보를 더 수신하고, 제2 예측 장치로부터 제2 장치 예측 결과를 생성하기 위한 제2 예측 모델의 제2 상태 정보를 더 수신할 수 있다. 학습기는 제1 상태 정보 및 제2 상태 정보에 더 기초하여 가중치 그룹을 조절할 수 있다. 일례로, 데이터 관리기 또는 학습기는, 제1 상태 정보의 차원을 제1 예측 결과의 차원과 동일하게 변환하고, 제2 상태 정보의 차원을 제2 예측 결과의 차원과 동일하게 변환할 수 있다.As an example, the data manager further receives first state information of the first prediction model for generating the first device prediction result from the first prediction device, and second prediction device for generating the second device prediction result from the second prediction device. Second state information of the predictive model may be further received. The learner may adjust the weight group further based on the first state information and the second state information. For example, the data manager or learner may convert the dimension of the first state information to be the same as the dimension of the first prediction result, and convert the dimension of the second state information to be the same as the dimension of the second prediction result.

일례로, 데이터 관리기는 제1 예측 장치로부터 제1 장치 예측 결과를 생성하기 위한 제1 상태 정보를 더 수신할 수 있다. 데이터 관리기 또는 학습기는, 제2 장치 예측 결과에 기초하여 제2 예측 장치에 대응되는 제2 상태 정보를 생성할 수 있다. 학습기는 제1 상태 정보 및 제2 상태 정보에 더 기초하여 가중치 그룹을 조절할 수 있다. 일례로, 데이터 관리기 또는 학습기는, 제1 상태 정보에 기초하여 제1 장치 예측 결과에 대응되는 제1 마스크 정보를 생성하고, 제2 상태 정보에 기초하여 제2 장치 예측 결과에 대응되는 제2 마스크 정보를 생성할 수 있다. 학습기는 제1 마스크 정보 및 제2 마스크 정보에 더 기초하여 가중치 그룹을 조절할 수 있다.For example, the data manager may further receive first state information for generating a first device prediction result from the first prediction device. The data manager or learner may generate second state information corresponding to the second prediction device based on the prediction result of the second device. The learner may adjust the weight group further based on the first state information and the second state information. For example, the data manager or learner generates first mask information corresponding to the first device prediction result based on the first state information, and generates a second mask corresponding to the second device prediction result based on the second state information. information can be generated. The learner may adjust the weight group further based on the first mask information and the second mask information.

일례로, 데이터 관리기는 제1 예측 장치로부터 제1 장치 예측 결과를 생성하기 위한 상태 정보를 더 수신할 수 있다. 학습기는 상태 정보 및 제1 장치 예측 결과에 기초하여 제1 중간 항목 가중치들을 계산하고, 제2 장치 예측 결과에 기초하여 제2 중간 항목 가중치들을 계산하고, 제1 및 제2 중간 항목 가중치들을 병합하여 제1 및 제2 항목 가중치들을 생성할 수 있다.For example, the data manager may further receive status information for generating the first device prediction result from the first prediction device. The learner calculates first intermediate item weights based on the state information and the first device prediction result, calculates second intermediate item weights based on the second device prediction result, and merges the first and second intermediate item weights to First and second item weights may be created.

본 발명의 실시예에 따른 복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치는, 데이터 관리기 및 예측기를 포함한다. 데이터 관리기는 시계열 데이터를 제1 예측 장치 및 제2 예측 장치에 제공하고, 제1 예측 장치로부터 시계열 데이터에 대응되는 제1 장치 예측 결과를 수신하고, 제2 예측 장치로부터 시계열 데이터에 대응되는 제2 장치 예측 결과를 수신한다. 예측기는 제1 장치 예측 결과 및 제2 장치 예측 결과에 기초하여, 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하는 제1 항목 가중치들, 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존하는 제2 항목 가중치들, 제1 예측 장치에 대응되는 제1 장치 가중치, 및 제2 예측 장치에 대응되는 제2 장치 가중치를 생성한다. 예측기는 제1 및 제2 항목 가중치들 및 제1 및 제2 장치 가중치들에 기초하여 제1 및 제2 장치 예측 결과들의 앙상블 결과를 생성한다.An apparatus for ensembling data received from a plurality of prediction apparatuses according to an embodiment of the present invention includes a data manager and a predictor. The data manager provides time series data to the first prediction device and the second prediction device, receives a first device prediction result corresponding to the time series data from the first prediction device, and receives a second prediction device corresponding to the time series data from the second prediction device. Receive device prediction results. The predictor is based on the first device prediction result and the second device prediction result, the first item weights depending on the first item values of the first and second device prediction results, and the second item weights of the first and second device prediction results. Second item weights depending on the item values, a first device weight corresponding to the first prediction device, and a second device weight corresponding to the second prediction device are generated. A predictor produces an ensemble result of first and second device prediction results based on the first and second item weights and the first and second device weights.

일례로, 상기 장치는 제1 항목 가중치들을 생성하기 위한 제1 파라미터, 제2 항목 가중치들을 생성하기 위한 제2 파라미터, 및 제1 및 제2 장치 가중치들을 생성하기 위한 제3 파라미터를 포함하는 예측 모델의 가중치 그룹이 저장되는 스토리지를 더 포함할 수 있다. 예측기는 제1 항목 값들 및 제1 파라미터에 기초하여 제1 항목 가중치들을 계산하고, 제2 항목 값들 및 제2 파라미터에 기초하여 제2 항목 가중치들을 계산하고, 제1 및 제2 장치 예측 결과들 및 제3 파라미터에 기초하여 제1 및 제2 장치 가중치들을 계산할 수 있다.In one example, the device predicts a model including a first parameter for generating first item weights, a second parameter for generating second item weights, and a third parameter for generating first and second device weights. It may further include a storage in which weight groups of are stored. The predictor calculates first item weights based on the first item values and the first parameter, calculates second item weights based on the second item values and the second parameter, and obtains first and second device prediction results and Calculate first and second device weights based on the third parameter.

일례로, 예측기는 전처리기, 항목 가중치 계산기, 및 장치 가중치 계산기를 포함할 수 있다. 전처리기는 제1 및 제2 장치 예측 결과들의 제1 및 제2 항목 값들을 전처리할 수 있다. 항목 가중치 계산기는 전처리된 제1 항목 값들에 기초하여 제1 항목 가중치들을 계산하고, 전처리된 제2 항목 값들에 기초하여 제2 항목 가중치들을 계산할 수 있다. 장치 가중치 계산기는 전처리된 제1 및 제2 장치 예측 결과들에 기초하여 제1 및 제2 장치 가중치들을 계산할 수 있다.In one example, a predictor may include a preprocessor, an item weight calculator, and a device weight calculator. The preprocessor may preprocess first and second item values of the first and second device prediction results. The item weight calculator may calculate first item weights based on the preprocessed first item values and calculate second item weights based on the preprocessed second item values. The device weight calculator may calculate first and second device weights based on the preprocessed first and second device prediction results.

일례로, 예측기는 전처리기, 항목 가중치 계산기, 항목 가중치 적용기, 장치 가중치 적용기, 및 결과 계산기를 포함할 수 있다. 전처리기는 제1 및 제2 장치 예측 결과들의 제1 및 제2 항목 값들을 전처리할 수 있다. 항목 가중치 계산기는 전처리된 제1 항목 값들에 기초하여 제1 항목 가중치들을 계산하고, 전처리된 제2 항목 값들에 기초하여 제2 항목 가중치들을 계산할 수 있다. 항목 가중치 적용기는 전처리된 제1 항목 값들에 제1 항목 가중치들을 적용하고, 전처리된 제2 항목 값들에 제2 항목 가중치들을 적용하여 중간 결과를 생성할 수 있다. 장치 가중치 계산기는 중간 결과에 기초하여 제1 및 제2 장치 가중치들을 계산할 수 있다. 장치 가중치 적용기는 중간 결과 중 제1 장치 예측 결과에 대응되는 값에 제1 장치 가중치를 적용하여 제1 결과를 생성하고, 중간 결과 중 제2 장치 예측 결과에 대응되는 값에 제2 장치 가중치를 적용하여 제2 결과를 생성할 수 있다. 결과 계산기는 제1 및 제2 결과들에 기초하여 제1 결과 또는 제2 결과와 동일한 차원을 갖는 앙상블 결과를 생성할 수 있다.In one example, a predictor may include a preprocessor, an item weight calculator, an item weight applicator, a device weight applicator, and an outcome calculator. The preprocessor may preprocess first and second item values of the first and second device prediction results. The item weight calculator may calculate first item weights based on the preprocessed first item values and calculate second item weights based on the preprocessed second item values. The item weight applicator may generate an intermediate result by applying first item weights to preprocessed first item values and applying second item weights to preprocessed second item values. The device weight calculator may calculate first and second device weights based on the intermediate result. The device weight applicator generates a first result by applying a first device weight to a value corresponding to a first device prediction result among intermediate results, and applies a second device weight to a value corresponding to a second device prediction result among intermediate results. to generate a second result. The result calculator may generate an ensemble result having the same dimension as the first result or the second result based on the first and second results.

일례로, 데이터 관리기는 제1 예측 장치로부터 제1 장치 예측 결과를 생성하기 위한 제1 예측 모델의 제1 상태 정보를 더 수신하고, 제2 예측 장치로부터 제2 장치 예측 결과를 생성하기 위한 제2 예측 모델의 제2 상태 정보를 더 수신할 수 있다. 예측기는 제1 상태 정보 및 제2 상태 정보에 더 기초하여 앙상블 결과를 생성할 수 있다.As an example, the data manager further receives first state information of the first prediction model for generating the first device prediction result from the first prediction device, and second prediction device for generating the second device prediction result from the second prediction device. Second state information of the predictive model may be further received. The predictor may generate an ensemble result further based on the first state information and the second state information.

본 발명의 실시예에 따른 복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치의 동작 방법은, 시계열 데이터 및 예측 요청을 제1 예측 장치 및 제2 예측 장치에 제공하는 단계, 제1 예측 장치로부터 예측 요청에 응답한 시계열 데이터의 제1 장치 예측 결과를 수신하는 단계, 제2 예측 장치로부터 예측 요청에 응답한 시계열 데이터의 제2 장치 예측 결과를 수신하는 단계, 제1 및 제2 장치 예측 결과들을 전처리하는 단계, 전처리된 제1 및 제2 장치 예측 결과들에 기초하여, 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하는 제1 항목 가중치들을 생성하는 단계, 전처리된 제1 및 제2 장치 예측 결과들에 기초하여, 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존하는 제2 항목 가중치들을 생성하는 단계, 전처리된 제1 및 제2 장치 예측 결과들에 기초하여, 제1 예측 장치에 대응되는 제1 장치 가중치 및 제2 예측 장치에 대응되는 제2 장치 가중치를 생성하는 단계, 전처리된 제1 장치 예측 결과에 제1 및 제2 항목 가중치들 및 제1 장치 가중치를 적용하여 제1 결과를 생성하는 단계, 전처리된 제2 장치 예측 결과에 제1 및 제2 항목 가중치들 및 제2 장치 가중치를 적용하여 제2 결과를 생성하는 단계, 및 제1 결과 및 제2 결과에 기초하여 앙상블 결과를 생성하는 단계를 포함한다.A method of operating a device for ensembling data received from a plurality of prediction devices according to an embodiment of the present invention includes providing time-series data and a prediction request to a first prediction device and a second prediction device; Receiving a first device prediction result of time series data in response to the prediction request; Receiving a second device prediction result of time series data in response to the prediction request from a second prediction device; preprocessing, based on the preprocessed first and second device prediction results, generating first item weights dependent on first item values of the first and second device prediction results; generating second item weights depending on second item values of the first and second device prediction results, based on the second device prediction results; and based on the preprocessed first and second device prediction results, Generating a first device weight corresponding to 1 prediction device and a second device weight corresponding to a second prediction device, applying first and second item weights and the first device weight to the preprocessed first device prediction result. generating a first result, generating a second result by applying the first and second item weights and the second device weight to the preprocessed second device prediction result, and generating a second result in the first and second results and generating an ensemble result based on the method.

일례로, 상기 방법은 앙상블 결과에 기초하여, 제1 및 제2 항목 가중치들 및 제1 및 제2 장치 가중치들을 생성하기 위한 파라미터를 조절하는 단계를 더 포함할 수 있다.In one example, the method may further include adjusting parameters for generating first and second item weights and first and second device weights based on the ensemble result.

일례로, 제1 결과를 생성하는 단계는, 전처리된 제1 장치 예측 결과의 제1 항목 값, 제1 항목 가중치들 중 제1 장치 예측 결과에 대응되는 제1 항목 가중치, 및 제1 장치 가중치를 곱하는 단계, 및 전처리된 제1 장치 예측 결과의 제2 항목 값, 제2 항목 가중치들 중 제1 장치 예측 결과에 대응되는 제2 항목 가중치, 및 제1 장치 가중치를 곱하는 단계를 포함할 수 있다. 일례로, 제2 결과를 생성하는 단계는, 전처리된 제2 장치 예측 결과의 제1 항목 값, 제1 항목 가중치들 중 제2 장치 예측 결과에 대응되는 제1 항목 가중치, 및 제2 장치 가중치를 곱하는 단계, 및 전처리된 제2 장치 예측 결과의 제2 항목 값, 제2 항목 가중치들 중 제2 장치 예측 결과에 대응되는 제2 항목 가중치, 및 제2 장치 가중치를 곱하는 단계를 포함할 수 있다.For example, generating the first result may include a first item value of the preprocessed first device prediction result, a first item weight corresponding to the first device prediction result among first item weights, and a first device weight. and multiplying the second item value of the preprocessed first device prediction result, the second item weight corresponding to the first device prediction result among the second item weights, and the first device weight. For example, generating the second result may include a first item value of the preprocessed second device prediction result, a first item weight corresponding to the second device prediction result, and a second device weight among first item weights. and multiplying the second item value of the preprocessed second device prediction result, the second item weight corresponding to the second device prediction result among the second item weights, and the second device weight.

본 발명의 실시예에 따르면, 장치별 예측 결과들 각각의 항목 값들 및 장치 자체에 관한 가중치들을 종합적으로 고려하도록 예측 모델을 구축함으로써, 장치별 예측 결과들의 앙상블 결과의 정확성 및 신뢰성이 향상될 수 있다.According to an embodiment of the present invention, the accuracy and reliability of an ensemble result of prediction results for each device can be improved by constructing a prediction model to comprehensively consider item values of each prediction result for each device and weights related to the device itself. .

또한, 본 발명의 실시예에 따르면, 장치별 예측 모델들에 의한 상태 정보 및 장치 별 상태 정보의 불균형을 더 고려함으로써, 장치별 예측 결과들의 앙상블 결과의 정확성 및 신뢰성이 향상될 수 있다.In addition, according to an embodiment of the present invention, the accuracy and reliability of the ensemble result of the prediction results for each device may be improved by further considering the imbalance of the state information based on the prediction models for each device and the state information for each device.

도 1은 본 발명의 실시예에 따른 건강 상태 예측 시스템을 도시한 도면이다.
도 2는 도 1의 앙상블 예측 장치의 예시적인 블록도이다.
도 3은 도 2의 데이터 관리기의 동작을 설명하기 위한 예시적인 도면이다.
도 4는 도 2의 학습기의 예시적인 블록도이다.
도 5는 도 4의 학습기를 구체화한 도면이다.
도 6은 도 4 및 도 5의 항목 가중치 계산기의 예시적인 계층 구조를 도시한 도면이다.
도 7은 도 4 및 도 5의 장치 가중치 계산기의 예시적인 계층 구조를 도시한 도면이다.
도 8은 도 4 및 도 5의 결과 계산기의 예시적인 계층 구조를 도시한 도면이다.
도 9는 도 4의 학습기의 예시적인 블록도이다.
도 10은 도 9의 학습기를 구체화한 도면이다.
도 11은 도 2의 예측기의 예시적인 블록도이다.
도 12는 도 2의 예측기의 예시적인 블록도이다.
도 13은 도 2의 데이터 관리기의 동작을 설명하기 위한 예시적인 도면이다.
도 14a 및 도 14b는 도 13의 상태 정보를 설명하기 위한 도면이다.
도 15는 도 13의 데이터 관리기의 예시적인 계층 구조를 도시한 도면이다.
도 16은 도 13의 데이터 관리기의 예시적인 계층 구조를 도시한 도면이다.
도 17은 도 2의 학습기의 예시적인 블록도이다.
도 18은 도 17의 항목 가중치 계산기의 예시적인 계층 구조를 도시한 도면이다.
도 19는 도 2의 예측기의 예시적인 블록도이다.
도 20은 도 1의 앙상블 예측 장치의 예시적인 블록도이다.
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 ensemble prediction apparatus of FIG. 1 .
FIG. 3 is an exemplary diagram for explaining the operation of the data manager of FIG. 2 .
Figure 4 is an exemplary block diagram of the learner of Figure 2;
5 is a diagram embodying the learner of FIG. 4 .
6 is a diagram illustrating an exemplary hierarchical structure of the item weight calculator of FIGS. 4 and 5;
7 is a diagram illustrating an exemplary hierarchical structure of the device weight calculator of FIGS. 4 and 5;
8 is a diagram illustrating an exemplary hierarchical structure of the result calculator of FIGS. 4 and 5;
9 is an exemplary block diagram of the learner of FIG. 4;
10 is a diagram embodying the learner of FIG. 9 .
11 is an exemplary block diagram of the predictor of FIG. 2;
12 is an exemplary block diagram of the predictor of FIG. 2;
FIG. 13 is an exemplary diagram for explaining the operation of the data manager of FIG. 2 .
14A and 14B are diagrams for explaining state information of FIG. 13 .
FIG. 15 is a diagram illustrating an exemplary hierarchical structure of the data manager of FIG. 13;
FIG. 16 is a diagram illustrating an exemplary hierarchical structure of the data manager of FIG. 13;
17 is an exemplary block diagram of the learner of FIG. 2;
FIG. 18 is a diagram illustrating an exemplary hierarchical structure of the item weight calculator of FIG. 17;
19 is an exemplary block diagram of the predictor of FIG. 2;
FIG. 20 is an exemplary block diagram of the ensemble prediction apparatus of FIG. 1 .

아래에서는, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재된다.In the following, embodiments of the present invention are described clearly and in detail to the extent that a person skilled in the art can easily practice the present invention.

도 1은 본 발명의 실시예에 따른 건강 상태 예측 시스템을 도시한 도면이다. 도 1을 참조하면, 건강 상태 예측 시스템(1000)은 제1 내지 제n 예측 장치들(101~10n), 단말기(200), 앙상블 예측 장치(300), 및 네트워크(400)를 포함한다. 설명의 편의상, 예측 장치들(101~10n)의 개수가 n개인 것으로 도시하였으나, 건강 예측 장치들의 개수는 제한되지 않는다.1 is a diagram illustrating a health state prediction system according to an embodiment of the present invention. Referring to FIG. 1 , a health state prediction system 1000 includes first to nth prediction devices 101 to 10n, a terminal 200, an ensemble prediction device 300, and a network 400. For convenience of description, it is illustrated that the number of prediction devices 101 to 10n is n, but the number of health prediction devices is not limited.

제1 내지 제n 예측 장치들(101~10n) 각각은 개별적으로 구축된 예측 모델에 기초하여 사용자의 건강 상태를 예측할 수 있다. 여기에서, 예측 모델은 시계열 의료 데이터를 이용하여, 미래 시점의 건강 상태를 예측하기 위하여 모델화된 구조일 수 있다. 제1 내지 제n 예측 장치들(101~10n) 각각은 제1 내지 제n 학습 데이터(11~1n)를 이용하여 예측 모델을 생성하고 학습할 수 있다. Each of the first to n-th prediction devices 101 to 10n may predict the user's health condition based on an individually constructed prediction model. Here, the predictive model may be a structure modeled to predict a health state at a future point in time using time-series medical data. Each of the first to nth prediction devices 101 to 10n may generate and learn a predictive model using the first to nth learning data 11 to 1n.

제1 내지 제n 예측 장치들(101~10n) 각각은 서로 다른 의료 기관 또는 공공 기관에 제공될 수 있다. 제1 내지 제n 학습 데이터(11~1n)는 기관들 각각의 예측 모델 생성 및 학습을 위하여, 개별적으로 데이터베이스화될 수 있다. 서로 다른 의료 기관 또는 공공 기관은 개별적으로 예측 모델을 학습하고, 이러한 학습에 따라 구축된 예측 모델에 사용자의 시계열 의료 데이터를 적용하여, 사용자의 미래 시점에 대한 건강 상태를 예측할 수 있다.Each of the first to nth prediction devices 101 to 10n may be provided to different medical institutions or public institutions. The 1st to nth learning data 11 to 1n may be individually databased for generating and learning predictive models of each institution. Different medical institutions or public institutions can individually learn prediction models and apply user time-series medical data to the prediction models built according to such learning to predict the user's health condition at a future point in time.

제1 내지 제n 예측 장치들(101~10n) 각각은 네트워크(400)를 통하여, 앙상블 예측 장치(300)로부터 원시 학습 데이터(31)의 적어도 일부를 수신할 수 있다. 여기에서, 원시 학습 데이터(31)는 앙상블 예측 장치(300)에 구축된 예측 모델(33)을 학습하기 위한 시계열 의료 데이터를 포함할 수 있다. Each of the first to nth prediction devices 101 to 10n may receive at least a portion of the raw training data 31 from the ensemble prediction device 300 through the network 400 . Here, the raw training data 31 may include time-series medical data for learning the prediction model 33 built in the ensemble prediction apparatus 300 .

제1 내지 제n 예측 장치들(101~10n)은 각각 원시 학습 데이터(31)를 구축된 예측 모델에 적용하여 제1 내지 제n 장치 예측 결과들을 생성할 수 있다. 여기에서, 제1 내지 제n 장치 예측 결과들은 원시 학습 데이터(31)에 제1 내지 제n 예측 장치들(101~10n) 각각이 미래 건강 상태를 예측한 결과 데이터로 이해될 수 있다. 제1 내지 제n 장치 예측 결과들은 네트워크(400)를 통하여, 앙상블 예측 장치(300)로 제공될 수 있다.The first to nth prediction devices 101 to 10n may generate first to nth device prediction results by applying the raw training data 31 to the built prediction model, respectively. Here, the first to nth device prediction results may be understood as result data obtained by predicting a future health state of each of the first to nth prediction devices 101 to 10n in the raw learning data 31 . The first to nth device prediction results may be provided to the ensemble prediction device 300 through the network 400 .

제1 내지 제n 장치 예측 결과들은 서로 다른 예측 모델에 기초하여 생성되므로, 서로 다른 데이터 값을 가질 수 있다. 제1 내지 제n 예측 장치들(101~10n) 각각은 서로 다른 시계열 의료 데이터, 즉 서로 다른 제1 내지 제n 학습 데이터(11~1n)을 기반으로 예측 모델을 학습 및 구축하기 때문이다. 윤리적 문제, 법적 문제, 개인 프라이버시 문제 등, 의료 데이터의 민감한 특성으로 인하여, 의료 기관 별로 데이터를 공유하기 어렵고, 빅데이터화가 어렵다. 따라서, 제1 내지 제n 예측 장치들(101~10n)이 개별적으로 예측 모델을 구축하되, 앙상블 예측 장치(300)에서 제1 내지 제n 예측 장치들(101~10n)로부터 원시 학습 데이터(31)의 예측 결과들을 앙상블함으로써, 다양한 데이터 학습이 고려된 미래 건강 예측이 가능할 수 있다.Since the first to nth device prediction results are generated based on different prediction models, they may have different data values. This is because each of the first to nth prediction devices 101 to 10n learns and builds a predictive model based on different time-series medical data, that is, different first to nth learning data 11 to 1n. Due to the sensitive nature of medical data, such as ethical issues, legal issues, and personal privacy issues, it is difficult to share data by medical institution and it is difficult to make big data. Therefore, while the first to nth prediction devices 101 to 10n build prediction models individually, the raw learning data 31 from the first to nth prediction devices 101 to 10n in the ensemble prediction device 300 ), it is possible to predict future health considering various data learning.

제1 내지 제n 예측 장치들(101~10n)은 서로 다른 예측 모델에 기초하여 시계열 데이터(TD)를 분석한다. 의료 데이터의 민감성으로 인하여 데이터의 공유 및 교환이 어려운 환경에서, 의료 기관 또는 병원들은 내부적으로 구축된 데이터베이스로부터 미래 건강 상태를 예측하기 위한 예측 모델을 학습한다. 의료 환경 특성 상, 시계열 의료 데이터는 특정 의료 기관에 편중될 수 있다. 특정 질환의 전문 병원은 특정 질환에 편중된 의료 데이터를 수집하게 될 수 있다. 이에 따라, 의료 기관들에 따라 구축된 예측 모델의 정확도는 질환 특이적으로 편중될 수 있다. 이러한 상황에서, 본 발명의 건강 상태 예측 시스템(1000)은 서로 다른 방식으로 구축된 예측 모델들을 이용하여 결과들을 생성하고, 이를 앙상블함으로써, 협진과 같은 효과를 가질 수 있다.The first to nth prediction devices 101 to 10n analyze the time series data TD based on different prediction models. In an environment where it is difficult to share and exchange data due to the sensitivity of medical data, medical institutions or hospitals learn a predictive model for predicting future health conditions from an internally built database. Due to the nature of the medical environment, time-series medical data may be biased toward a specific medical institution. Hospitals specializing in specific diseases may end up collecting medical data that is biased towards specific diseases. Accordingly, the accuracy of a predictive model built according to medical institutions may be biased in a disease-specific manner. In this situation, the health state prediction system 1000 of the present invention generates results using prediction models constructed in different ways and ensembles them, thereby having an effect similar to that of collaboration.

단말기(200)는 환자(들)의 미래 건강 예측 또는 예측 모델(33)의 학습을 위한 요청 신호를 제공할 수 있다. 단말기(200)는 스마트폰, 데스크탑, 랩탑, 웨어러블 장치 등 요청 신호를 제공할 수 있는 전자 장치일 수 있다. 예를 들어, 단말기(200)는 네트워크(400)를 통하여, 앙상블 예측 장치(300)에 요청 신호를 제공할 수 있다. 이 경우, 앙상블 예측 장치(300)의 예측 모델(33)이 학습될 수 있다. 또는, 제1 내지 제n 예측 장치들(101~10n) 및 앙상블 예측 장치(300)에 의하여 사용자의 건강 상태가 진단되거나, 미래 건강 상태가 예측될 수 있다. The terminal 200 may provide a request signal for prediction of future health of the patient(s) or learning of the prediction model 33 . The terminal 200 may be an electronic device capable of providing a request signal, such as a smart phone, a desktop computer, a laptop computer, or a wearable device. For example, the terminal 200 may provide a request signal to the ensemble prediction device 300 through the network 400 . In this case, the prediction model 33 of the ensemble prediction device 300 may be learned. Alternatively, the user's health state may be diagnosed or a future health state may be predicted by the first to nth prediction devices 101 to 10n and the ensemble prediction device 300 .

앙상블 예측 장치(300)는 제1 내지 제n 장치 예측 결과들을 이용하여 예측 모델(33)을 학습한다. 여기에서, 예측 모델(33)은 상술한 바와 같이, 제1 내지 제n 예측 장치들(101~10n) 각각이 건강 상태를 예측한 장치 예측 결과들을 앙상블하여, 미래 건강 상태를 최종 예측하기 위하여 모델화된 구조일 수 있다. 앙상블 예측 장치(300)는 원시 학습 데이터(31)의 적어도 일부를 예측 요청과 함께 제1 내지 제n 예측 장치들(101~10n)로 송신할 수 있다. 앙상블 예측 장치(300)는 예측 요청에 응답하여 제1 내지 제n 예측 장치들(101~10n) 각각이 시계열 의료 데이터를 예측한 결과인 제1 내지 제n 장치 예측 결과들을 수신할 수 있다. 앙상블 예측 장치(300)는 제1 내지 제n 장치 예측 결과들을 통합하여 앙상블 학습 데이터(32)를 생성할 수 있다. 앙상블 예측 장치(130)는 앙상블 학습 데이터(32)에 기초하여 예측 모델(33)을 학습한다.The ensemble prediction device 300 learns the prediction model 33 using the first to n th device prediction results. Here, the predictive model 33 is modeled to finally predict the future health state by ensembling device prediction results obtained by each of the first to nth prediction devices 101 to 10n predicting the health state, as described above. structure may be The ensemble prediction device 300 may transmit at least a part of the raw training data 31 to the first to n-th prediction devices 101 to 10n together with a prediction request. In response to the prediction request, the ensemble prediction device 300 may receive first to nth device prediction results, which are results obtained by each of the first to nth prediction devices 101 to 10n predicting the time-series medical data. The ensemble prediction device 300 may generate ensemble learning data 32 by integrating the first to nth device prediction results. The ensemble prediction device 130 learns the prediction model 33 based on the ensemble learning data 32 .

원시 학습 데이터(31)는 진단, 치료, 검사, 또는 투약 처방 등에 의하여 생성된 사용자의 건강 상태를 나타내는 시계열 의료 데이터를 포함할 수 있다. 예시적으로, 시계열 의료 데이터는 EMR(Electronic Medical Record) 데이터 또는 PHR(Personal Health Record) 데이터일 수 있다. 원시 학습 데이터(31)는 앙상블 예측 장치(300)가 구현된 기관에서 수집된 시계열 의료 데이터를 포함할 수 있다. 원시 학습 데이터(31)는 앙상블 예측 장치(300)에서 통합 관리될 수 있다. 원시 학습 데이터(31)는 앙상블 예측 장치(300)의 서버 또는 저장 매체에 데이터베이스화될 수 있다.The raw learning data 31 may include time-series medical data representing a user's health condition generated by diagnosis, treatment, examination, or medication prescription. For example, the time-series medical data may be electronic medical record (EMR) data or personal health record (PHR) data. The raw learning data 31 may include time-series medical data collected from an institution where the ensemble prediction apparatus 300 is implemented. The raw training data 31 may be integrated and managed by the ensemble prediction device 300 . The raw learning data 31 may be databased in a server or storage medium of the ensemble prediction device 300 .

앙상블 학습 데이터(32)는 제1 내지 제n 장치 예측 결과들을 포함할 수 있다. 예측 모델(33)을 학습하기 위하여, 앙상블 학습 데이터(32)는 제1 내지 제n 장치 예측 결과들을 생성한 제1 내지 제n 예측 장치들(101~10n)의 식별 정보를 포함할 수 있다. 후술될 장치 가중치를 생성하는데 식별 정보가 사용될 수 있다. 앙상블 학습 데이터(32)는 앙상블 예측 장치(300)에서 통합 관리될 수 있다. 앙상블 학습 데이터(32)는 앙상블 예측 장치(300)의 서버 또는 저장 매체에 데이터베이스화될 수 있다.The ensemble learning data 32 may include first through nth device prediction results. In order to learn the predictive model 33, the ensemble learning data 32 may include identification information of the first to nth prediction devices 101 to 10n that generated the first to nth device prediction results. Identification information may be used to generate device weights described below. The ensemble learning data 32 may be integrated and managed by the ensemble prediction device 300 . The ensemble learning data 32 may be databased in a server of the ensemble prediction device 300 or a storage medium.

예측 모델(33)은 제1 내지 제n 예측 장치들(101~10n)로부터 생성된 장치별 예측 결과들(제1 내지 제n 장치 예측 결과들)을 앙상블하기 위한 앙상블 모델로 이해될 수 있다. 앙상블 모델은 단순히 예측 결과들을 병합하는 것이 아니라, 제1 내지 제n 장치 예측 결과들과 동일한 차원을 갖도록, 제1 내지 제n 장치 예측 결과들을 처리하기 위한 구조일 수 있다. 예측 모델(33)은 이러한 처리를 위한 인공 신경망이 구현되도록 가중치 그룹으로 관리될 수 있다. 가중치 그룹은 앙상블 예측 장치(300)의 서버 또는 저장 매체에 데이터베이스화될 수 있다. 가중치 그룹에 대한 구체적인 내용은 후술된다. 그리고, 앙상블 예측 장치(300)가 예측 모델(33)을 학습하고, 학습된 예측 모델(33)을 이용하여 앙상블 결과를 생성하는 구체적인 내용은 후술된다.The prediction model 33 may be understood as an ensemble model for ensembling device-specific prediction results (first to n-th device prediction results) generated from the first to n-th prediction devices 101 to 10n. The ensemble model may not simply merge the prediction results, but may be a structure for processing the first to n th device prediction results so as to have the same dimension as the first to n th device prediction results. The predictive model 33 can be managed in groups of weights so that an artificial neural network for such processing is implemented. The weight group may be databased in a server of the ensemble predictor 300 or a storage medium. Details of the weight group will be described later. Details of how the ensemble prediction device 300 learns the prediction model 33 and generates an ensemble result using the learned prediction model 33 will be described later.

네트워크(400)는 제1 내지 제n 예측 장치들(101~10n), 단말기(200), 및 앙상블 예측 장치(300) 사이의 데이터 통신이 수행되도록 구성될 수 있다. 제1 내지 제n 예측 장치들(101~10n), 단말기(200), 및 앙상블 예측 장치(300)는 네트워크(400)를 통하여, 유선 또는 무선으로 데이터를 주고 받을 수 있다. The network 400 may be configured such that data communication is performed between the first to nth prediction devices 101 to 10n, the terminal 200, and the ensemble prediction device 300. The first to n-th prediction devices 101 to 10n, the terminal 200, and the ensemble prediction device 300 may transmit and receive data through the network 400 by wire or wirelessly.

도 2는 도 1의 앙상블 예측 장치의 예시적인 블록도이다. 도 2의 앙상블 예측 장치(300)는 도 1의 제1 내지 제n 예측 장치들(101~10n)로부터 수신된 장치별 예측 결과들을 분석하여 앙상블 결과를 생성하기 위한 예측 모델(33)을 학습하거나, 앙상블 결과를 생성하기 위한 예시적인 구성으로 이해될 것이다. 도 2를 참조하면, 앙상블 예측 장치(300)는 데이터 관리기(310), 학습기(320), 및 예측기(330)를 포함한다.FIG. 2 is an exemplary block diagram of the ensemble prediction apparatus of FIG. 1 . The ensemble prediction device 300 of FIG. 2 analyzes the prediction results for each device received from the first to n-th prediction devices 101 to 10n of FIG. 1 to learn a prediction model 33 for generating an ensemble result, or , will be understood as an exemplary configuration for generating an ensemble result. Referring to FIG. 2 , the ensemble prediction apparatus 300 includes a data manager 310, a learner 320, and a predictor 330.

데이터 관리기(310), 학습기(320), 및 예측기(330)는 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 일례로, 소프트웨어 (또는 펌웨어)는 앙상블 예측 장치(300)에 포함되는 메모리(미도시)에 로딩되어, 프로세서(미도시)에 의하여 실행될 수 있다. 일례로, 데이터 관리기(310), 학습기(320), 및 예측기(330)는 FPGA(Field Programmable Gate Aray) 또는 ASIC(Application Specific Integrated Circuit)와 같은 전용 논리 회로 등의 하드웨어로 구현될 수 있다.Data manager 310, learner 320, and predictor 330 may be implemented in hardware, firmware, software, or a combination thereof. For example, software (or firmware) may be loaded into a memory (not shown) included in the ensemble prediction device 300 and executed by a processor (not shown). For example, the data manager 310, the learner 320, and the predictor 330 may be implemented in hardware such as a dedicated logic circuit such as a Field Programmable Gate Array (FPGA) or Application Specific Integrated Circuit (ASIC).

데이터 관리기(310)는 원시 학습 데이터(31) 및 앙상블 학습 데이터(32)를 관리할 수 있다. 예측 모델(33)을 학습하기 위하여, 데이터 관리기(310)는 원시 학습 데이터(31)에 포함된 시계열 데이터를 도 1의 제1 내지 제n 예측 장치들(101~10n)로 제공할 수 있다. 데이터 관리기(310)는 예측 요청과 함께 시계열 데이터를 제1 내지 제n 예측 장치들(101~10n)로 출력할 수 있다. 이 경우, 제1 내지 제n 예측 장치들(101~10n)은 예측 요청에 응답하여, 개별적으로 구현된 예측 모델을 이용하여 시계열 데이터에 대한 제1 내지 제n 장치 예측 결과들을 생성할 수 있다. 제1 내지 제n 장치 예측 결과들 각각은 시계열 의료 데이터를 이용하여 판단된 미래 건강 상태의 예측 결과일 수 있다.The data manager 310 may manage raw training data 31 and ensemble training data 32 . In order to learn the prediction model 33, the data manager 310 may provide time-series data included in the raw training data 31 to the first to n-th prediction devices 101 to 10n of FIG. 1 . The data manager 310 may output time-series data together with a prediction request to the first to n-th prediction devices 101 to 10n. In this case, the first to nth prediction devices 101 to 10n may generate first to nth device prediction results for time-series data using individually implemented prediction models in response to a prediction request. Each of the first to nth device prediction results may be a prediction result of a future health state determined using time-series medical data.

데이터 관리기(310)는 제1 내지 제n 예측 장치들(101~10n)로부터 제1 내지 제n 예측 결과들을 수신할 수 있다. 제1 내지 제n 예측 결과들은 앙상블 학습 데이터(32)로 병합되어 관리될 수 있다. 여기에서, 병합은 제1 내지 제n 예측 결과들 고유의 정보들을 변형시키지 않고, 식별 정보 등을 부가하여 결과들을 그룹화한 것으로 이해될 수 있다.The data manager 310 may receive the first to nth prediction results from the first to nth prediction devices 101 to 10n. The first to nth prediction results may be merged into ensemble learning data 32 and managed. Here, merging may be understood as grouping results by adding identification information and the like without modifying information specific to the first through n-th prediction results.

학습기(320)는 앙상블 학습 데이터(32)에 기초하여, 예측 모델(33)을 학습할 수 있다. 예측 모델(33)은 장치별 예측 결과들을 분석하여 미래의 최종 예측 결과인 앙상블 결과를 계산하기 위한 분석 모델을 포함할 수 있다. 예측 모델(33)은 인공 신경망(artificial neural network) 또는 딥러닝 기계 학습을 통하여 구축될 수 있다. The learner 320 may learn the prediction model 33 based on the ensemble learning data 32 . The prediction model 33 may include an analysis model for calculating an ensemble result that is a final prediction result in the future by analyzing prediction results for each device. The prediction model 33 may be built through an artificial neural network or deep learning machine learning.

학습기(320)는 앙상블 학습 데이터(32)를 학습에 적합한 데이터로 전처리할 수 있다. 일례로, 전처리는 앙상블 학습 데이터(32)를 특정 수치 범위 (일례로, 0에서 1까지의 범위)로 변환하는 정규화 동작, 또는 수치화를 위한 인코딩 동작 등을 포함할 수 있다. The learner 320 may preprocess the ensemble learning data 32 into data suitable for learning. For example, the preprocessing may include a normalization operation for converting the ensemble learning data 32 into a specific numerical range (eg, a range from 0 to 1), or an encoding operation for digitization.

학습기(320)는 전처리된 앙상블 학습 데이터를 분석하여 예측 모델(33)의 가중치 그룹을 생성 및 조절할 수 있다. 가중치 그룹은 예측 모델(33)의 인공 신경망 구조 또는 신경망에 포함된 모든 파라미터들의 집합일 수 있다. 학습기(320)는 전처리된 앙상블 학습 데이터의 분석을 통하여 앙상블 결과를 생성할 수 있다. 학습기(320)는 생성된 앙상블 결과가 기대되는 비교 결과를 갖도록 (또는, 비교 결과로부터 기준 오차 이내이도록), 예측 모델(33)의 가중치 그룹을 조절할 수 있다. 비교 결과는 실측 값일 수 있고, 앙상블 예측 장치(300)에 기설정될 수 있다. 조절된 가중치 그룹은 예측 모델(33)에 반영되어 앙상블 예측 장치(300)에 의하여 관리될 수 있다.The learner 320 may generate and adjust weight groups of the prediction model 33 by analyzing the preprocessed ensemble learning data. The weight group may be an artificial neural network structure of the predictive model 33 or a set of all parameters included in the neural network. The learner 320 may generate an ensemble result by analyzing the preprocessed ensemble learning data. The learner 320 may adjust the weight groups of the prediction model 33 so that the generated ensemble result has an expected comparison result (or within a standard error from the comparison result). The comparison result may be a measured value and may be preset in the ensemble predictor 300 . The adjusted weight group may be reflected in the prediction model 33 and managed by the ensemble prediction apparatus 300 .

예측기(330)는 학습기(320)로부터 학습된 예측 모델(33) 및 가중치 그룹에 기초하여, 특정 사용자에 대응되는 장치 예측 결과들을 분석하고, 앙상블 결과를 생성할 수 있다. 데이터 관리기(310)가 예측 요청과 함께 특정 사용자의 시계열 데이터(타겟 데이터)를 제1 내지 제n 예측 장치들(101~10n)을 제공할 수 있다. 제1 내지 제n 예측 장치들(101~10n)은 예측 요청에 응답하여, 제1 내지 제n 장치 예측 결과들을 생성할 수 있다. 예측기(330)는 제1 내지 제n 장치 예측 결과들을 전처리하고, 예측 모델(33)의 가중치 그룹을 통하여 분석할 수 있다. 그리고, 앙상블 결과는 도 1의 단말기(200) 등에 제공될 수 있다.The predictor 330 may analyze device prediction results corresponding to a specific user based on the prediction model 33 learned from the learner 320 and the weight group, and generate an ensemble result. The data manager 310 may provide time-series data (target data) of a specific user to the first to n-th prediction devices 101 to 10n together with a prediction request. The first to nth prediction devices 101 to 10n may generate first to nth device prediction results in response to a prediction request. The predictor 330 may preprocess the prediction results of the first to nth devices and analyze them through weight groups of the prediction model 33 . Then, the ensemble result may be provided to the terminal 200 of FIG. 1 or the like.

도 3은 도 2의 데이터 관리기의 동작을 설명하기 위한 예시적인 도면이다. 도 3을 참조하면, 데이터 관리기(310)는 시계열 데이터(TD)를 수신한다. 예측 모델(33)의 학습 동작에서, 시계열 데이터(TD)는 서버(미도시) 또는 스토리지(미도시)에서 관리되는 원시 학습 데이터(31)의 적어도 일부일 수 있다. 학습된 예측 모델(33)을 이용한 미래 상태의 예측 동작에서, 시계열 데이터(TD)는 도 1의 단말기(200)로부터 제공되거나, 앙상블 예측 장치(300)에 의하여 생성 또는 수집될 수 있다.FIG. 3 is an exemplary diagram for explaining the operation of the data manager of FIG. 2 . Referring to FIG. 3 , the data manager 310 receives time series data TD. In the learning operation of the predictive model 33, the time series data TD may be at least a part of raw training data 31 managed in a server (not shown) or storage (not shown). In the prediction operation of the future state using the learned prediction model 33, the time-series data TD may be provided from the terminal 200 of FIG. 1 or generated or collected by the ensemble prediction device 300.

시계열 데이터(TD)는 시간의 흐름에 따라 기록된, 시간적 순서를 갖는 데이터 집합일 수 있다. 시계열 데이터(TD)는 시계열적으로 나열된 복수의 시간들 각각에 대응되는 적어도 하나의 특징들(F1~Fa)을 포함할 수 있다. 일례로, 시계열 데이터(TD)는 전자 의무 기록(Electronic Medical Record, EMR)과 같이, 의료 기관에서 진단, 치료, 또는 투약 처방 등에 의하여 생성된 사용자의 건강 상태를 나타내는 시계열 의료 데이터를 포함할 수 있다. 특징들(F1~Fa)은 진단, 검사, 또는 처방된 항목들 각각의 값들을 나타낼 수 있다. 일례로, 항목은 혈압, 혈당, 콜레스테롤 수치, 또는 몸무게 등 다양한 건강 지표를 나타낼 수 있다. 설명의 명확성을 위하여, 시계열 의료 데이터가 예시적으로 설명되었으나, 시계열 데이터(TD)의 종류는 이에 제한되지 않고, 시계열 데이터(TD)는 엔터테인먼트, 리테일, 스마트 매니지먼트 등 다양한 분야에서 생성 및 수집될 수 있다.The time series data (TD) may be a data set having a chronological order recorded according to the lapse of time. The time series data TD may include at least one feature F1 to Fa corresponding to each of a plurality of times arranged in time series. For example, the time-series data TD may include time-series medical data representing the user's health condition generated by diagnosis, treatment, or medication prescription at a medical institution, such as an Electronic Medical Record (EMR). . The features (F1 to Fa) may indicate values of each of diagnosis, examination, or prescribed items. For example, the item may represent various health indicators such as blood pressure, blood sugar, cholesterol level, or weight. For clarity of explanation, time series medical data has been described as an example, but the type of time series data (TD) is not limited thereto, and time series data (TD) can be generated and collected in various fields such as entertainment, retail, and smart management. there is.

데이터 관리기(310)는 예측 요청과 함께 시계열 데이터(TD)를 제1 내지 제n 예측 장치들(101~10n)로 제공할 수 있다. 제1 내지 제n 예측 장치들(101~10n)은 예측 요청에 응답하여, 개별적으로 구축된 예측 모델을 이용하여 시계열 데이터(TD)를 분석할 수 있다. 분석 결과, 제1 내지 제n 예측 장치들(101~10n)은 각각 제1 내지 제n 장치 예측 결과들(PD1~PDn)을 생성할 수 있다. 제1 내지 제n 장치 예측 결과들(PD1~PDn)은 특정 미래 시점에 대한 건강 상태를 나타낼 수 있다. The data manager 310 may provide the time-series data TD to the first to n-th prediction devices 101 to 10n together with a prediction request. The first to n-th prediction devices 101 to 10n may analyze the time series data TD using individually constructed prediction models in response to a prediction request. As a result of the analysis, the first to nth prediction devices 101 to 10n may generate the first to nth device prediction results PD1 to PDn, respectively. The first to nth device prediction results PD1 to PDn may indicate a health state for a specific future time point.

제1 내지 제n 장치 예측 결과들(PD1~PDn) 각각은 특정 미래 시점에 대한 항목 값들(P11~Pb1, P12~Pb2, P1n~Pbn)을 포함할 수 있다. 항목 값들은 미래 시점에 대한 건강 지표를 나타내는 값들일 수 있으며, 일례로, 혈압, 콜레스테롤 수치, 또는 몸무게 등의 예측 값들, 진단/질병 코드, 레이블 등을 포함할 수 있다. 시계열 데이터(TD)의 항목들의 개수와 제1 내지 제n 장치 예측 결과들(PD1~PDn) 각각의 항목들의 개수는 같거나 다를 수 있다. 일례로, 시계열 데이터(TD)는 a개의 특징들을 포함하고, 제1 내지 제n 장치 예측 결과들(PD1~PDn) 각각은 b개의 항목 값들을 포함할 수 있다.Each of the first to nth device prediction results PD1 to PDn may include item values P11 to Pb1, P12 to Pb2, and P1n to Pbn for a specific future time point. The item values may be values representing health indicators at a future point in time, and may include, for example, predictive values such as blood pressure, cholesterol level, or weight, diagnosis/disease codes, labels, and the like. The number of items of the time series data TD and the number of items of each of the first to n th device prediction results PD1 to PDn may be the same or different. For example, the time series data TD may include a number of features, and each of the first to n th device prediction results PD1 to PDn may include b item values.

데이터 관리기(310)는 제1 내지 제n 장치 예측 결과들(PD1~PDn)을 수신하고, 병합할 수 있다. 데이터 관리기(310)는 제1 내지 제n 장치 예측 결과들(PD1~PDn)에 각각 제1 내지 제n 식별 정보(I1~In)를 부가하여 그룹화한 병합 데이터(MLD)를 생성할 수 있다. 제1 내지 제n 식별 정보(I1~In)는 제1 내지 제n 장치 예측 결과들(PD1~PDn) 각각이 생성된 예측 장치들 구분하기 위한 정보일 수 있다. 제1 내지 제n 식별 정보(I1~In)는 후술하겠으나, 예측 모델(33)을 학습하거나 이용할 때, 장치마다 다른 가중치(장치 가중치)가 사용될 수 있고, 장치 가중치는 제1 내지 제n 식별 정보(I1~In)에 기초하여 제1 내지 제n 장치 예측 결과들(PD1~PDn)에 적용될 수 있다.The data manager 310 may receive and merge the first to n th device prediction results PD1 to PDn. The data manager 310 may generate grouped merged data MLD by adding the first to nth identification information I1 to In to the first to nth device prediction results PD1 to PDn, respectively. The first to nth identification information (I1 to In) may be information for distinguishing prediction devices from which the first to nth device prediction results (PD1 to PDn) are respectively generated. Although the first to nth identification information (I1 to In) will be described later, when learning or using the predictive model 33, different weights (device weights) may be used for each device, and the device weights are the first to nth identification information Based on (I1 to In), it may be applied to the first to nth device prediction results PD1 to PDn.

예측 모델(33)의 학습 동작에서, 병합 데이터(MLD)는 서버(미도시) 또는 스토리지(미도시)에서 관리되는 앙상블 학습 데이터(32)에 포함될 수 있고, 도 2의 학습기(320)에 제공될 수 있다. 학습된 예측 모델(33)을 이용한 미래 상태의 예측 동작에서, 병합 데이터(MLD)는 도 2의 예측기(330)에 제공될 수 있다.In the learning operation of the predictive model 33, the merged data MLD may be included in the ensemble learning data 32 managed in a server (not shown) or a storage (not shown) and provided to the learner 320 of FIG. It can be. In a prediction operation of a future state using the learned prediction model 33 , the merged data MLD may be provided to the predictor 330 of FIG. 2 .

도 4는 도 2의 학습기의 예시적인 블록도이다. 도 4의 학습기(320_1)는 복수의 예측 장치들로부터 수신된 예측 결과들에 기초하여 예측 모델(33)을 학습하고 가중치 그룹을 결정하는 예시적인 구성으로 이해될 것이다. 학습기(320_1)는 전처리기(321_1), 항목 분류기(322_1), 항목 가중치 계산기(323_1), 장치 가중치 계산기(324_1), 가중치 적용기(325_1), 결과 계산기(326_1), 및 가중치 제어기(327_1)를 포함할 수 있다. 상술한 바와 같이, 학습기(320_1)에 포함된 각 구성들은 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다.Figure 4 is an exemplary block diagram of the learner of Figure 2; The learner 320_1 of FIG. 4 will be understood as an exemplary configuration for learning the prediction model 33 and determining a weight group based on prediction results received from a plurality of prediction devices. The learner 320_1 includes a preprocessor 321_1, an item classifier 322_1, an item weight calculator 323_1, a device weight calculator 324_1, a weight applicator 325_1, a result calculator 326_1, and a weight controller 327_1. can include As described above, each component included in the learner 320_1 may be implemented as hardware, firmware, software, or a combination thereof.

전처리기(321_1)는 앙상블 학습 데이터(32)를 학습에 적합한 데이터로 전처리할 수 있다. 상술한 바와 같이, 앙상블 학습 데이터(32)는 복수의 예측 장치들로부터 수신된 장치 예측 결과들을 포함할 수 있다. 일례로, 전처리기(321_1)는 장치 예측 결과들의 항목 값들을 특정 수치 범위 (일례로, 0에서 1까지의 범위)로 변환할 수 있다. 일례로, 전처리기(321_1)는 항목 값들이 비수치 형식인 경우, 수치 형식으로 변환할 수 있다. 비수치 형식은 코드 형식 또는 범주 형식(Categorical type) (예를 들어, L3011, E2014, K3095 등)을 포함할 수 있다. 예를 들어, EMR 데이터는 특정 질환, 처방, 또는 검사에 따라 약속된 데이터 형식을 가질 수 있고, 장치 예측 결과들은 수치 형식과 비수치 형식이 혼재된 값들을 가질 수 있다. 전처리기(321_1)는 비수치 형식의 값들을 수치화하고 (예를 들어, 0010, 1001, 1101 등), 특정 수치 범위로 정규화할 수 있다.The preprocessor 321_1 may preprocess the ensemble learning data 32 into data suitable for learning. As described above, the ensemble learning data 32 may include device prediction results received from a plurality of prediction devices. For example, the preprocessor 321_1 may convert item values of device prediction results into a specific numerical range (eg, a range from 0 to 1). As an example, the preprocessor 321_1 may convert item values into numeric formats when they are in non-numerical formats. Non-numerical types may include code types or categorical types (eg, L3011, E2014, K3095, etc.). For example, EMR data may have a data format promised according to a specific disease, prescription, or examination, and device prediction results may have values in a mixture of numerical and non-numerical formats. The preprocessor 321_1 may digitize non-numeric values (eg, 0010, 1001, 1101, etc.) and normalize them to a specific numerical range.

전처리기(321_1)는 장치 예측 결과들을 예측 모델(33) 학습에 적합한 형태로 변형시킬 뿐, 항목 값들이 나타내는 고유의 특징 정보 자체를 알 수 없도록 변경하는 것은 아니다. 따라서, 이하에서 설명의 편의상, 전처리된 장치 예측 결과들이 장치 예측 결과로 일관되게 진술될 수 있음이 이해될 것이다. 이하에서, 특별히 조건을 지정하지 않는 한, 장치 예측 결과는 전처리된 장치 예측 결과를 포함하는 개념일 것이다. 전처리 동작은 예시적인 것으로, 복수의 예측 장치들로부터 수신된 예측 결과들이 예측 모델(33) 학습에 적합한 경우, 별도의 전처리 과정이 없을 수도 있다.The preprocessor 321_1 only transforms the device prediction results into a form suitable for learning the predictive model 33, and does not change the unique feature information itself represented by item values so that it is unknown. Accordingly, it will be appreciated that, for convenience of description below, preprocessed device prediction results may be consistently stated as device prediction results. Hereinafter, unless conditions are specifically specified, a device prediction result will be a concept including a preprocessed device prediction result. The pre-processing operation is exemplary, and if the prediction results received from the plurality of prediction devices are suitable for learning the predictive model 33, there may be no separate pre-processing process.

항목 분류기(322_1)는 전처리된 앙상블 학습 데이터를 항목별로 분리하고, 그룹화할 수 있다. 도 3에 도시된 바와 같이, 장치 예측 결과는 복수의 항목 값들을 포함한다. 항목 분류기(322_1)는 동일한 항목을 갖는 값들을 그룹화할 수 있다. 일례로, 항목 분류기(322_1)는 도 3의 제1 장치 예측 결과(PD1)의 제1 항목 값(P11), 제2 장치 예측 결과(PD2)의 제1 항목 값(P12), 및 제n 장치 예측 결과(PDn)의 제1 항목 값(P1n)을 하나의 그룹으로 분류할 수 있다. 분리된 항목 값들은 항목 가중치 계산기(323_1)에 입력된다.The item classifier 322_1 may separate and group the preprocessed ensemble learning data by item. As shown in FIG. 3, the device prediction result includes a plurality of item values. The item classifier 322_1 may group values having the same item. For example, the item classifier 322_1 includes the first item value P11 of the first device prediction result PD1 of FIG. 3 , the first item value P12 of the second device prediction result PD2 , and the n-th device. The first item value P1n of the prediction result PDn may be classified into one group. The separated item values are input to the item weight calculator 323_1.

항목 가중치 계산기(323_1)는 항목 분류기(322_1)로부터 그룹화된 항목 값들을 분석한다. 항목 가중치 계산기(323_1)는 그룹들마다 분리하여 항목 값들을 분석할 수 있다. 항목 가중치 계산기(323_1)는 항목 가중치를 생성하기 위한 예측 모델(33)의 파라미터들(항목 파라미터)에 기초하여 항목 값들에 각각 대응되는 항목 가중치들을 생성할 수 있다. 이러한 항목 파라미터는 가중치 그룹에 포함된다. 도 3과 같이, 항목 값들의 개수가 bXn개인 경우, 항목 가중치들의 개수는 bXn개일 수 있다. The item weight calculator 323_1 analyzes the grouped item values from the item classifier 322_1. The item weight calculator 323_1 may separate and analyze item values for each group. The item weight calculator 323_1 may generate item weights respectively corresponding to item values based on parameters (item parameters) of the prediction model 33 for generating item weights. These item parameters are included in weight groups. As shown in FIG. 3 , when the number of item values is bXn, the number of item weights may be bXn.

항목 가중치들은 항목 값들의 크기에 의존한다. 항목 가중치는 미래 건강 상태를 예측하기 위한 항목 값들 각각의 중요도를 판단하는 지표로 이해될 수 있다. 항목 가중치는 특정 항목의 앙상블 결과에 관여하는 예측 장치(기관)의 중요도를 의미하며, 항목들 각각의 지역적(local) 중요도로 이해될 수 있다. 예시적으로, 항목 가중치 계산기(323_1)는 어텐션 메커니즘(attention mechanism)을 이용하여, 앙상블 결과가 특정된 예측 장치에서 생성된 항목에 주목하도록 항목 가중치들을 생성할 수 있다.Item weights depend on the magnitude of the item values. The item weight may be understood as an indicator for determining the importance of each item value for predicting a future health state. The item weight means the importance of a prediction device (organization) involved in the ensemble result of a specific item, and can be understood as the local importance of each item. Illustratively, the item weight calculator 323_1 may generate item weights by using an attention mechanism so as to pay attention to an item generated by a prediction device in which an ensemble result is specified.

장치 가중치 계산기(324_1)는 장치 예측 결과들에 기초하여, 예측 장치들의 특성을 분석한다. 장치 가중치 계산기(324_1)는 장치 가중치를 생성하기 위한 예측 모델(33)의 파라미터들(장치 파라미터)에 기초하여 예측 장치들에 각각 대응되는 장치 가중치들을 생성할 수 있다. 이러한 장치 파라미터는 가중치 그룹에 포함된다. 도 3과 같이, 예측 장치들의 개수가 n개인 경우, 항목 가중치들의 개수는 n개일 수 있다. The device weight calculator 324_1 analyzes characteristics of prediction devices based on device prediction results. The device weight calculator 324_1 may generate device weights respectively corresponding to prediction devices based on parameters (device parameters) of the predictive model 33 for generating device weights. These device parameters are included in weight groups. As shown in FIG. 3 , when the number of prediction devices is n, the number of item weights may be n.

장치 가중치는 장치 예측 결과들 자체의 정확성 또는 신뢰성과 관련한 예측 장치(기관)의 전역적(global) 중요도를 판단하는 지표로 이해될 수 있다. 예시적으로, 장치 가중치 계산기(324_1)는 어텐션 메커니즘(attention mechanism)을 이용하여, 앙상블 결과가 특정된 예측 장치에 주목하도록 장치 가중치들을 생성할 수 있다.The device weight may be understood as an index for determining the global importance of a prediction device (organization) in relation to the accuracy or reliability of device prediction results themselves. Illustratively, the device weight calculator 324_1 may generate device weights so as to pay attention to a prediction device in which an ensemble result is specified using an attention mechanism.

가중치 적용기(325_1)는 항목 가중치들 및 장치 가중치들을 장치 예측 결과들에 적용할 수 있다. 적용 결과, 가중치 적용기(325_1)는 예측 장치들 각각의 전반적인 신뢰성 및 예측 장치들 각각의 특정 분야(항목)의 신뢰성 모두를 반영한 학습 결과를 생성할 수 있다. 예를 들어, 가중치 적용기(325_1)는 제1 예측 장치의 제1 항목 값에, 해당 제1 항목 값에 대응되는 항목 가중치(제1 항목 가중치) 및 제1 예측 장치에 대응되는 장치 가중치(제1 장치 가중치)를 곱할 수 있다. 예를 들어, 가중치 적용기(325_1)는 제2 예측 장치의 제1 항목 값에, 해당 제1 항목 값에 대응되는 항목 가중치(제2 항목 가중치) 및 제2 예측 장치에 대응되는 장치 가중치(제2 장치 가중치)를 곱할 수 있다. 예를 들어, 가중치 적용기(325_1)는 제1 예측 장치의 제2 항목 값에, 해당 제2 항목 값에 대응되는 항목 가중치(제3 항목 가중치) 및 제1 장치 가중치를 곱할 수 있다.The weight applicator 325_1 may apply item weights and device weights to device prediction results. As a result of application, the weight applicator 325_1 may generate a learning result reflecting both the overall reliability of each prediction device and the reliability of a specific field (item) of each prediction device. For example, the weight applicator 325_1 applies an item weight (first item weight) corresponding to the first item value to a first item value of the first prediction device and a device weight (first item weight) corresponding to the first prediction device. 1 device weight). For example, the weight applicator 325_1 applies an item weight (second item weight) corresponding to the first item value to a first item value of the second prediction device and a device weight (second item weight) corresponding to the second prediction device. 2 device weight). For example, the weight applicator 325_1 may multiply the second item value of the first prediction device by an item weight (third item weight) corresponding to the corresponding second item value and a first device weight.

결과 계산기(326_1)는 가중치 적용기(325_1)로부터 생성된 학습 결과에 기초하여, 앙상블 결과를 생성할 수 있다. 학습 결과는 장치 예측 결과들에 포함된 항목 값들에 항목 가중치 및 장치 가중치를 적용한 결과이다. 따라서, 학습 결과는 장치 예측 결과들 모두를 병합한 크기의 차원을 가질 수 있다. 결과 계산기(326_1)는 하나의 장치 예측 결과와 같은 차원을 갖는 앙상블 결과를 생성할 수 있다. 결과 계산기(326_1)는 예측 모델(33)의 파라미터들(앙상블 파라미터)에 기초하여 앙상블 결과를 생성할 수 있다. 이러한 앙상블 파라미터는 가중치 그룹에 포함된다. 앙상블 결과에 포함된 항목 값들의 개수는 하나의 장치 예측 결과에 포함된 항목 값들의 개수와 같을 수 있다.The result calculator 326_1 may generate an ensemble result based on the learning result generated by the weight applicator 325_1. The learning result is a result of applying item weights and device weights to item values included in device prediction results. Accordingly, the learning result may have a dimension of the size of merging all of the device prediction results. The result calculator 326_1 may generate an ensemble result having the same dimension as one device prediction result. The result calculator 326_1 may generate an ensemble result based on parameters (ensemble parameters) of the predictive model 33 . These ensemble parameters are included in weight groups. The number of item values included in the ensemble result may be the same as the number of item values included in one device prediction result.

가중치 제어기(327_1)는 앙상블 결과에 기초하여, 가중치 그룹에 포함된 파라미터들을 조절할 수 있다. 여기에서 파라미터들은 상술된 항목 파라미터, 장치 파라미터, 및 앙상블 파라미터를 포함한다. 가중치 제어기(327_1)는 앙상블 결과가 원하는 실제 결과인 비교 결과에 대응되는지 판단할 수 있다. 가중치 제어기(327_1)는 앙상블 결과가 비교 결과에 도달하도록, 항목 파라미터, 장치 파라미터, 및 앙상블 파라미터를 조절할 수 있다. 조절된 항목 파라미터에 기초하여, 항목 가중치 계산기(323_1)는 항목 가중치를 반복적으로 생성할 수 있다. 조절된 장치 파라미터에 기초하여, 장치 가중치 계산기(324_1)는 장치 가중치를 반복적으로 생성할 수 있다. 조절된 앙상블 파라미터에 기초하여, 결과 계산기(326_1)는 앙상블 결과를 반복적으로 생성할 수 있다. 이러한 반복 동작은 앙상블 결과가 비교 결과로부터 기준 오차 이내일 때까지 수행될 수 있다.The weight controller 327_1 may adjust parameters included in the weight group based on the ensemble result. The parameters here include the above-mentioned item parameters, device parameters, and ensemble parameters. The weight controller 327_1 may determine whether the ensemble result corresponds to a comparison result, which is a desired actual result. The weight controller 327_1 may adjust item parameters, device parameters, and ensemble parameters so that the ensemble result reaches the comparison result. Based on the adjusted item parameters, the item weight calculator 323_1 may repeatedly generate item weights. Based on the adjusted device parameters, device weight calculator 324_1 may iteratively generate device weights. Based on the adjusted ensemble parameters, the result calculator 326_1 may repeatedly generate ensemble results. This iterative operation may be performed until the ensemble result is within a standard error from the comparison result.

도 5는 도 4의 학습기를 구체화한 도면이다. 도 5를 참조하면, 학습기(320_1)는 전처리기(321_1), 항목 분류기(322_1), 항목 가중치 계산기(323_1), 장치 가중치 계산기(324_1), 가중치 적용기(325_1), 결과 계산기(326_1), 및 가중치 제어기(327_1)를 포함할 수 있다. 5 is a diagram embodying the learner of FIG. 4 . Referring to FIG. 5, the learner 320_1 includes a preprocessor 321_1, an item classifier 322_1, an item weight calculator 323_1, a device weight calculator 324_1, a weight applicator 325_1, a result calculator 326_1, and a weight controller 327_1.

학습기(320_1)는 도 3에서 설명된 병합 데이터(MLD)를 수신한다. 병합 데이터(MLD)는 장치 예측 결과들(PD1, PD2)을 포함하며, 설명의 편의상 2개의 예측 장치들로부터 제1 및 제2 장치 예측 결과들(PD1, PD2)이 생성된 것으로 가정한다. 제1 장치 예측 결과(PD1)는 제1 항목에 대응되는 제1 항목 값(P11) 및 제2 항목에 대응되는 제2 항목 값(P21)을 포함하고, 제2 장치 예측 결과(PD2)는 제1 항목에 대응되는 제3 항목 값(P12) 및 제2 항목에 대응되는 제4 항목 값(P22)을 포함한다. 설명의 편의상 제1 및 제2 장치 예측 결과들(PD1, PD2)은 제1 항목 및 제2 항목에 대응되는 값들을 포함하는 것으로 가정한다. 병합 데이터(MLD)는 제1 예측 장치 및 제2 예측 장치를 구별하기 위한 제1 및 제2 식별 정보(I1, I2)를 더 포함할 수 있다.The learner 320_1 receives the merged data MLD described in FIG. 3 . The merged data MLD includes device prediction results PD1 and PD2, and for convenience of explanation, it is assumed that the first and second device prediction results PD1 and PD2 are generated from two prediction devices. The first device prediction result PD1 includes a first item value P11 corresponding to the first item and a second item value P21 corresponding to the second item, and the second device prediction result PD2 is A third item value P12 corresponding to item 1 and a fourth item value P22 corresponding to item 2 are included. For convenience of explanation, it is assumed that the first and second device prediction results PD1 and PD2 include values corresponding to the first item and the second item. The merged data MLD may further include first and second identification information I1 and I2 for distinguishing the first prediction device and the second prediction device.

전처리기(321_1)는 병합 데이터(MLD)를 전처리하여 전처리 데이터(PLD)를 생성할 수 있다. 전처리기(321_1)는 병합 데이터(MLD)의 비수치 형식 값들을 수치 형식으로 변환하고, 제1 내지 제4 항목 값들(P11, P21, P12, P22)을 특정 수치 범위로 변환할 수 있다. 설명의 편의상, 전처리된 제1 내지 제4 항목 값들(E11, E21, E12, E22)도 이하에서 제1 내지 제4 항목 값들로 지칭된다.The preprocessor 321_1 may generate preprocessed data PLD by preprocessing the merged data MLD. The preprocessor 321_1 may convert non-numerical format values of the merged data MLD into numerical formats, and convert the first to fourth item values P11, P21, P12, and P22 into a specific numerical range. For convenience of explanation, the preprocessed first to fourth item values E11, E21, E12, and E22 are also referred to as first to fourth item values below.

항목 분류기(322_1)는 전처리 데이터(PLD)를 항목별로 그룹화할 수 있다. 그 결과, 제1 항목에 대응되는 제1 항목 값(E11) 및 제3 항목 값(E12)은 제1 그룹(G1)으로 그룹화될 수 있다. 제2 항목에 대응되는 제2 항목 값(E21) 및 제4 항목 값(E22)은 제2 그룹(G2)으로 그룹화될 수 있다.The item classifier 322_1 may group the preprocessed data PLD by item. As a result, the first item value E11 and the third item value E12 corresponding to the first item may be grouped into a first group G1. The second item value E21 and the fourth item value E22 corresponding to the second item may be grouped into a second group G2.

항목 가중치 계산기(323_1)는 제1 그룹(G1)에 기초하여, 제1 항목에 대한 제1 그룹 가중치(AD1)를 생성할 수 있다. 항목 가중치 계산기(323_1)는 제2 그룹(G2)에 기초하여, 제2 항목에 대한 제2 그룹 가중치(AD2)를 생성할 수 있다. 제1 그룹 가중치(AD1)는 제1 항목 값(E11)에 대응되는 제1 항목 가중치(A11) 및 제3 항목 값(E12)에 대응되는 제3 항목 가중치(A12)를 포함할 수 있다. 제2 그룹 가중치(AD2)는 제2 항목 값(E21)에 대응되는 제2 항목 가중치(A21) 및 제4 항목 값(E22)에 대응되는 제4 항목 가중치(A22)를 포함할 수 있다.The item weight calculator 323_1 may generate a first group weight AD1 for the first item based on the first group G1. The item weight calculator 323_1 may generate a second group weight AD2 for the second item based on the second group G2. The first group weight AD1 may include a first item weight A11 corresponding to the first item value E11 and a third item weight A12 corresponding to the third item value E12. The second group weight AD2 may include a second item weight A21 corresponding to the second item value E21 and a fourth item weight A22 corresponding to the fourth item value E22.

항목 가중치 계산기(323_1)는 어텐션 매커니즘을 이용하여, 앙상블 결과가 특정 항목에서는 특정된 예측 장치의 항목 값에 주목하도록 항목 가중치들(A11, A21, A12, A22)을 생성할 수 있다. 구체적으로, 항목 가중치 계산기(323_1)는 인공 신경망을 통하여 제1 그룹(G1) 및 제2 그룹(G2)을 분리하여 항목 값들을 분석할 수 있다. 인공 신경망은 가중치(Wa) 및 바이어스(ba)에 기초하여, 제1 그룹(G1) 또는 제2 그룹(G2)을 분석할 수 있다. 가중치(Wa) 및 바이어스(ba)는 상술된 예측 모델(33)의 가중치 그룹에 포함되고, 항목 파라미터에 대응된다. The item weight calculator 323_1 may generate item weights A11, A21, A12, and A22 so that the ensemble result pays attention to the item value of the prediction device specified in a specific item by using the attention mechanism. Specifically, the item weight calculator 323_1 may analyze item values by separating the first group G1 and the second group G2 through an artificial neural network. The artificial neural network may analyze the first group G1 or the second group G2 based on the weight Wa and the bias ba. The weight Wa and the bias ba are included in the weight group of the above-described predictive model 33, and correspond to item parameters.

항목 가중치 계산기(323_1)는 제1 그룹(G1) 및 제2 그룹(G2) 각각을 softmax 함수에 적용함으로써, 제1 그룹 가중치(AD1) 및 제2 그룹 가중치(AD2)를 생성할 수 있다. 이 경우, 해당 함수에 가중치(Wa) 및 바이어스(ba)가 적용될 수 있다. 일례로, 항목 가중치 계산기(323_1)는 AD1=softmax(tanh(Wa*G1+ba)) 및 AD2=softmax(tanh(Wa*G2+ba)) 수식을 계산함으로써, 제1 그룹 가중치(AD1) 및 제2 그룹 가중치(AD2)를 생성할 수 있다. 여기에서, 제1 그룹(G1)을 분석하기 위한 가중치(Wa) 및 바이어스(ba)는 제2 그룹(G2)을 분석하기 위한 가중치(Wa) 및 바이어스(ba)와 다를 수 있다.The item weight calculator 323_1 may generate a first group weight AD1 and a second group weight AD2 by applying each of the first group G1 and the second group G2 to the softmax function. In this case, a weight (Wa) and a bias (ba) may be applied to the corresponding function. For example, the item weight calculator 323_1 calculates formulas AD1=softmax(tanh(Wa*G1+ba)) and AD2=softmax(tanh(Wa*G2+ba)), thereby calculating the first group weight AD1 and A second group weight AD2 may be generated. Here, the weight Wa and bias ba for analyzing the first group G1 may be different from the weight Wa and bias ba for analyzing the second group G2.

장치 가중치 계산기(324_1)는 전처리 데이터(PLD)에 기초하여 장치 가중치(BD)를 생성할 수 있다. 장치 가중치(BD)는 제1 예측 장치 (또는 제1 장치 예측 결과(PD1, ED1))에 대응되는 제1 장치 가중치(B1) 및 제2 예측 장치 (또는 제2 장치 예측 결과(PD2, ED2))에 대응되는 제2 장치 가중치(B2)를 포함할 수 있다.The device weight calculator 324_1 may generate the device weight BD based on the pre-processed data PLD. The device weight (BD) is a first device weight (B1) corresponding to the first prediction device (or the first device prediction result (PD1, ED1)) and the second prediction device (or the second device prediction result (PD2, ED2)) ) may include a second device weight B2 corresponding to.

장치 가중치 계산기(324_1)는 어텐션 매커니즘을 이용하여, 앙상블 결과가 전반적으로 특정 장치 예측 결과에 주목하도록 장치 가중치들(B1, B2)을 생성할 수 있다. 구체적으로, 장치 가중치 계산기(324_1)는 인공 신경망을 통하여 항목 값들을 분석할 수 있다. 인공 신경망은 가중치(Wb) 및 바이어스(bb)에 기초하여, 전처리 데이터(PLD)를 분석할 수 있다. 가중치(Wb) 및 바이어스(bb)는 상술된 예측 모델(33)의 가중치 그룹에 포함되고, 장치 파라미터에 대응된다.The device weight calculator 324_1 may generate device weights B1 and B2 so that the ensemble result generally pays attention to a specific device prediction result by using an attention mechanism. Specifically, the device weight calculator 324_1 may analyze item values through an artificial neural network. The artificial neural network may analyze the preprocessing data PLD based on the weight Wb and the bias bb. The weight Wb and the bias bb are included in the weight group of the above-described predictive model 33, and correspond to device parameters.

장치 가중치 계산기(324_1)는 전처리 데이터(ED)를 softmax 함수에 적용함으로써, 장치 가중치(BD)를 생성할 수 있다. 이 경우, 해당 함수에 가중치(Wb) 및 바이어스(bb)가 적용될 수 있다. 일례로, 장치 가중치 계산기(324_1)는 BD=softmax(tanh(Wb*PLD+bb)) 수식을 계산함으로써, 장치 가중치(BD)를 생성할 수 있다.The device weight calculator 324_1 may generate the device weight BD by applying the preprocessed data ED to the softmax function. In this case, a weight (Wb) and a bias (bb) may be applied to the corresponding function. For example, the device weight calculator 324_1 may generate the device weight BD by calculating the formula BD=softmax(tanh(Wb*PLD+bb)).

가중치 적용기(325_1)는 그룹 가중치들(AD1, AD2) 및 장치 가중치(BD)를 전처리 데이터(PLD)에 적용할 수 있다. 적용 결과, 가중치 적용기(325_1)는 예측 장치들 각각의 장치 예측 결과의 전반적인 신뢰성 및 예측 장치들 각각의 장치 예측 결과의 특정 분야 (항목)의 신뢰성 모두를 반영한 학습 결과(YD)를 생성할 수 있다. 학습 결과(YD)는 제1 내지 제4 항목 값들(E11, E21, E12, E22)에 각각 대응되는 제1 내지 제4 결과들(Y11, Y21, Y12, Y22)을 포함할 수 있다.The weight applicator 325_1 may apply the group weights AD1 and AD2 and the device weight BD to the preprocessed data PLD. As a result of the application, the weight applicator 325_1 may generate a learning result (YD) reflecting both the overall reliability of the device prediction result of each of the prediction devices and the reliability of a specific field (item) of the device prediction result of each of the prediction devices. there is. The learning result YD may include first to fourth results Y11, Y21, Y12, and Y22 respectively corresponding to the first to fourth item values E11, E21, E12, and E22.

일례로, 제1 결과(Y11)는 제1 항목 값(E11)에 제1 항목 가중치(A11) 및 제1 장치 가중치(B1)을 곱한 결과일 수 있다. 제2 결과(Y21)는 제2 항목 값(E21)에 제2 항목 가중치(A21) 및 제1 장치 가중치(B1)를 곱한 결과일 수 있다. 제3 결과(Y12)는 제3 항목 값(E12)에 제3 항목 가중치(A12) 및 제2 장치 가중치(B2)를 곱한 결과일 수 있다. 제4 결과(Y22)는 제4 항목 값(E22)에 제4 항목 가중치(A22) 및 제2 장치 가중치(B2)를 곱한 결과일 수 있다. For example, the first result Y11 may be a result of multiplying the first item value E11 by the first item weight A11 and the first device weight B1. The second result Y21 may be a result of multiplying the second item value E21 by the second item weight A21 and the first device weight B1. The third result Y12 may be a result of multiplying the third item value E12 by the third item weight A12 and the second device weight B2. The fourth result Y22 may be a result of multiplying the fourth item value E22 by the fourth item weight A22 and the second device weight B2.

결과 계산기(326_1)는 학습 결과(YD)에 기초하여, 앙상블 결과(RD)를 생성할 수 있다. 앙상블 결과(RD)는 제1 항목에 대응되는 제1 예측 결과(R1) 및 제2 항목에 대응되는 제2 예측 결과(R2)를 포함할 수 있다. 결과 계산기(326_1)는 앙상블 결과(RD)가 제1 항목에 대응되는 값의 개수가 하나이고, 제2 항목에 대응되는 값의 개수가 하나이도록 학습 결과(YD)의 차원을 축소할 수 있다.The result calculator 326_1 may generate an ensemble result RD based on the learning result YD. The ensemble result RD may include a first prediction result R1 corresponding to the first item and a second prediction result R2 corresponding to the second item. The result calculator 326_1 may reduce the dimension of the learning result YD so that the ensemble result RD has one value corresponding to the first item and one value corresponding to the second item.

결과 계산기(326_1)는 인공 신경망을 통하여 학습 결과(YD)를 분석할 수 있다. 인공 신경망은 가중치(Wr) 및 바이어스(br)에 기초하여, 학습 결과(YD)를 분석할 수 있다. 가중치(Wr) 및 바이어스(br)는 상술된 예측 모델(33)의 가중치 그룹에 포함되고, 앙상블 파라미터에 대응된다. 인공 신경망의 레이어는 학습 결과(YD)에 기초하여 입력된 데이터에 가중치(Wr)를 곱하고, 곱셈 결과에 바이어스(br)를 더하여 데이터를 출력할 수 있다.The result calculator 326_1 may analyze the learning result YD through an artificial neural network. The artificial neural network may analyze the learning result (YD) based on the weight (Wr) and the bias (br). The weight Wr and the bias br are included in the weight group of the above-described predictive model 33 and correspond to ensemble parameters. The layer of the artificial neural network may output data by multiplying input data by a weight value (Wr) based on the learning result (YD) and adding a bias (br) to the multiplication result.

가중치 제어기(327_1)는 앙상블 결과(RD)와 비교 결과(CD)를 비교하여, 가중치 그룹에 포함된 파라미터들(Wa, ba, Wb, bb, Wr, br)을 조절할 수 있다. 비교 결과(CD)는 제1 항목에 대응되는 제1 값(C1) 및 제2 항목에 대응되는 제2 값(C2)을 포함할 수 있다. 일례로, 비교 결과(CD)는 실측 값일 수 있다. 가중치 제어기(327_1)는 앙상블 결과(RD)가 비교 결과에 도달하도록, 파라미터들(Wa, ba, Wb, bb, Wr, br)을 조절할 수 있다. 조절된 파라미터들(Wa, ba, Wb, bb, Wr, br)에 기초하여, 전처리 데이터(PLD)는 반복적으로 분석될 수 있다.The weight controller 327_1 may adjust parameters (Wa, ba, Wb, bb, Wr, br) included in the weight group by comparing the ensemble result (RD) with the comparison result (CD). The comparison result CD may include a first value C1 corresponding to the first item and a second value C2 corresponding to the second item. As an example, the comparison result (CD) may be a measured value. The weight controller 327_1 may adjust the parameters Wa, ba, Wb, bb, Wr, and br so that the ensemble result RD reaches the comparison result. Based on the adjusted parameters (Wa, ba, Wb, bb, Wr, br), the pre-processing data (PLD) can be repeatedly analyzed.

도 6은 도 4 및 도 5의 항목 가중치 계산기의 예시적인 계층 구조를 도시한 도면이다. 도 6은 항목 가중치 계산기(323_1)의 인공 신경망 구조를 예시적으로 도시한다. 인공 신경망은 상술된 예측 모델(33)의 적어도 일부일 수 있다. 상술한 바와 같이, 항목 가중치 계산기(323_1)는 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 도 6을 참조하면, 항목 가중치 계산기(323_1)의 인공 신경망은 제1 및 제2 입력 레이어들(LI1, LI2), 제1 및 제2 임베딩 레이어들(LE1, LE2), 제1 및 제2 어텐션 레이어들(LA1, LA2), 및 제1 및 제2 출력 레이어들(LO1, LO2)을 포함할 수 있다.6 is a diagram illustrating an exemplary hierarchical structure of the item weight calculator of FIGS. 4 and 5; 6 illustrates an artificial neural network structure of the item weight calculator 323_1 as an example. The artificial neural network may be at least part of the predictive model 33 described above. As described above, the item weight calculator 323_1 may be implemented in hardware, firmware, software, or a combination thereof. Referring to FIG. 6 , the artificial neural network of the item weight calculator 323_1 includes first and second input layers LI1 and LI2, first and second embedding layers LE1 and LE2, and first and second attention Layers LA1 and LA2 and first and second output layers LO1 and LO2 may be included.

제1 입력 레이어(LI1)는 제1 항목 값들(E11~E1n)을 수신한다. 제1 항목 값들(E11~E1n)은 도 5에서 설명된 항목 분류기(322_1)에 의하여 제1 그룹(G1)으로 그룹화될 수 있다. 제2 입력 레이어(LI2)는 제2 항목 값들(E21~E2n)을 수신한다. 제2 항목 값들(E21~E2n)은 도 5에서 설명된 항목 분류기(322_1)에 의하여 제2 그룹(G2)으로 그룹화될 수 있다. 제1 그룹(G1)과 제2 그룹(G2)은 서로 상관되지 않고, 항목 가중치 계산기(323_1)에 의하여 분석될 수 있다.The first input layer LI1 receives first item values E11 to E1n. The first item values E11 to E1n may be grouped into a first group G1 by the item classifier 322_1 described in FIG. 5 . The second input layer LI2 receives second item values E21 to E2n. The second item values E21 to E2n may be grouped into a second group G2 by the item classifier 322_1 described in FIG. 5 . The first group G1 and the second group G2 are not correlated with each other and can be analyzed by the item weight calculator 323_1.

제1 임베딩 레이어(LE1)는 제1 항목 값들(E11~E1n) 사이의 관계를 고려하여, 제1 어텐션 레이어(LA1)에 중간 결과를 출력할 수 있다. 제1 항목 값들(E11~E1n) 각각은 서로 다른 예측 장치들로부터 생성된다. 제1 임베딩 레이어(LE1)는 도 5에서 설명된 항목 파라미터(Wa, ba)의 일부를 제1 항목 값들(E11~E1n)에 적용함으로써, 제1 항목 값들(E11~E1n) 사이의 관계를 계산할 수 있다. 제1 임베딩 레이어(LE1)는 복수의 레이어들을 포함할 수 있다. 레이어들 각각의 출력이 y이고 입력이 x인 경우, 레이어들 각각은 y=wa*x+ba를 계산할 수 있다. 항목 파라미터(Wa, ba)는 레이어들 사이의 연결 또는 네트워크를 나타낼 수 있다. 레이어들 각각은 완전 연결 네트워크(Fully-connected network), 순환 신경망(Recurrent neural network), 및 LSTM(Long short term memory) 등 다양한 방식의 인공 신경망으로 구현될 수 있다. 마찬가지로, 제2 임베딩 레이어(LE2)는 제2 항목 값들(E21~E2n) 사이의 관계를 고려하여, 제2 어텐션 레이어(LA2)에 중간 결과를 출력할 수 있다.The first embedding layer LE1 may output an intermediate result to the first attention layer LA1 by considering the relationship between the first item values E11 to E1n. Each of the first item values E11 to E1n is generated from different prediction devices. The first embedding layer LE1 calculates the relationship between the first item values E11 to E1n by applying some of the item parameters Wa and ba described in FIG. 5 to the first item values E11 to E1n. can The first embedding layer LE1 may include a plurality of layers. When the output of each of the layers is y and the input is x, each of the layers may calculate y=wa*x+ba. The item parameters (Wa, ba) may represent connections or networks between layers. Each of the layers may be implemented as an artificial neural network in various ways, such as a fully-connected network, a recurrent neural network, and a long short term memory (LSTM). Similarly, the second embedding layer LE2 may output an intermediate result to the second attention layer LA2 in consideration of the relationship between the second item values E21 to E2n.

제1 어텐션 레이어(LA1)는 제1 임베딩 레이어(LE1)로부터 출력된 중간 결과를 분석하여 제1 항목에 대한 제1 항목 가중치들(A11~A1n)을 계산할 수 있다. 제1 어텐션 레이어(LA1)는 어텐션 메커니즘(attention mechanism)을 이용하여, 특정된 예측 장치에서 생성된 항목에 주목하도록 제1 항목 가중치들(A11~A1n)을 계산할 수 있다. 도 5에서 설명한 바와 같이, 제1 어텐션 레이어(LA1)는 중간 결과에 항목 파라미터(Wa, ba)의 일부 및 softmax 함수를 적용할 수 있다. 마찬가지로, 제2 어텐션 레이어(LA2)는 제2 임베딩 레이어(LE2)로부터 출력된 중간 결과를 분석하여 제2 항목에 대한 제2 항목 가중치들(A21~A2n)을 계산할 수 있다.The first attention layer LA1 may analyze the intermediate result output from the first embedding layer LE1 to calculate first item weights A11 to A1n for the first item. The first attention layer LA1 may calculate first item weights A11 to A1n by using an attention mechanism so as to pay attention to items generated by the specified prediction device. As described in FIG. 5 , the first attention layer LA1 may apply a softmax function and some of the item parameters Wa and ba to the intermediate result. Similarly, the second attention layer LA2 may calculate the second item weights A21 to A2n for the second item by analyzing the intermediate result output from the second embedding layer LE2.

제1 출력 레이어(LO1)는 제1 어텐션 레이어(LA1)에 의하여 계산된 제1 항목 가중치들(A11~A1n)을 정렬하고, 제1 항목 가중치들(A11~A1n)를 도 4 및 도 5의 가중치 적용기(325_1)로 출력할 수 있다. 제2 출력 레이어(LO2)는 제2 어텐션 레이어(LA2)에 의하여 계산된 제2 항목 가중치들(A21~A2n)을 정렬하고, 제2 항목 가중치들(A21~A2n)를 도 4 및 도 5의 가중치 적용기(325_1)로 출력할 수 있다.The first output layer LO1 arranges the first item weights A11 to A1n calculated by the first attention layer LA1, and sets the first item weights A11 to A1n as shown in FIGS. 4 and 5. It can be output to the weight applicator 325_1. The second output layer LO2 arranges the second item weights A21 to A2n calculated by the second attention layer LA2, and sets the second item weights A21 to A2n as shown in FIGS. 4 and 5. It can be output to the weight applicator 325_1.

도 7은 도 4 및 도 5의 장치 가중치 계산기의 예시적인 계층 구조를 도시한 도면이다. 도 7은 장치 가중치 계산기(324_1)의 인공 신경망 구조를 예시적으로 도시한다. 인공 신경망은 상술된 예측 모델(33)의 적어도 일부일 수 있다. 상술한 바와 같이, 장치 가중치 계산기(324_1)는 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 도 7을 참조하면, 장치 가중치 계산기(324_1)의 인공 신경망은 입력 레이어(LI), 임베딩 레이어(LE), 어텐션 레이어(LA), 및 출력 레이어(LO)를 포함할 수 있다.7 is a diagram illustrating an exemplary hierarchical structure of the device weight calculator of FIGS. 4 and 5; 7 illustrates an artificial neural network structure of the device weight calculator 324_1 by way of example. The artificial neural network may be at least part of the predictive model 33 described above. As described above, the device weight calculator 324_1 may be implemented in hardware, firmware, software, or a combination thereof. Referring to FIG. 7 , the artificial neural network of the device weight calculator 324_1 may include an input layer LI, an embedding layer LE, an attention layer LA, and an output layer LO.

입력 레이어(LI)는 장치 예측 결과들(ED1~EDn)을 수신한다. 장치 예측 결과들(ED1~EDn) 각각은 서로 다른 예측 장치들로부터 생성된다. 장치 예측 결과들(ED1~EDn) 각각은 항목 값들을 포함한다. 즉, 장치 예측 결과들(ED1~EDn)의 항목 값들 전체가 서로 상관되어 장치 가중치 계산기(324_1)에 의하여 분석될 수 있다.The input layer LI receives device prediction results ED1 to EDn. Each of the device prediction results ED1 to EDn is generated from different prediction devices. Each of the device prediction results ED1 to EDn includes item values. That is, all item values of the device prediction results ED1 to EDn may be correlated with each other and analyzed by the device weight calculator 324_1.

임베딩 레이어(LE)는 예측 장치들 사이의 관계를 고려하여, 어텐션 레이어(LA)에 중간 결과를 출력할 수 있다. 임베딩 레이어(LE)는 도 5에서 설명된 장치 파라미터(Wb, bb)의 일부를 장치 예측 결과들(ED1~EDn)에 적용함으로써, 장치 예측 결과들(ED1~EDn) 사이의 관계를 계산할 수 있다. 임베딩 레이어(LE)는 복수의 레이어들을 포함할 수 있다. 레이어들 각각의 출력이 y이고 입력이 x인 경우, 레이어들 각각은 y=wb*x+bb를 계산할 수 있다. 장치 파라미터(Wb, bb)는 레이어들 사이의 연결 또는 네트워크를 나타낼 수 있다. 레이어들 각각은 완전 연결 네트워크(Fully-connected network), 순환 신경망(Recurrent neural network), 및 LSTM(Long short term memory) 등 다양한 방식의 인공 신경망으로 구현될 수 있다.The embedding layer LE may output an intermediate result to the attention layer LA in consideration of the relationship between prediction devices. The embedding layer LE may calculate a relationship between the device prediction results ED1 to EDn by applying some of the device parameters Wb and bb described in FIG. 5 to the device prediction results ED1 to EDn. . The embedding layer LE may include a plurality of layers. When the output of each of the layers is y and the input is x, each of the layers can calculate y=wb*x+bb. The device parameters (Wb, bb) may represent connections or networks between layers. Each of the layers may be implemented as an artificial neural network in various ways, such as a fully-connected network, a recurrent neural network, and a long short term memory (LSTM).

어텐션 레이어(LA)는 임베딩 레이어(LE)로부터 출력된 중간 결과를 분석하여 예측 장치들에 각각 대응되는 장치 가중치들(B1~Bn)을 계산할 수 있다. 어텐션 레이어(LA)는 어텐션 메커니즘(attention mechanism)을 이용하여, 특정된 장치 예측 결과에 주목하도록 장치 가중치들(B1~Bn)을 계산할 수 있다. 도 5에서 설명한 바와 같이, 어텐션 레이어(LA)는 중간 결과에 장치 파라미터(Wb, bb)의 일부 및 softmax 함수를 적용할 수 있다. 출력 레이어(LO)는 계산된 장치 가중치들(B1~Bn)을 정렬하고, 장치 가중치들(B1~Bn)을 도 4 및 도 5의 가중치 적용기(325_1)로 출력할 수 있다. The attention layer LA may analyze the intermediate result output from the embedding layer LE to calculate device weights B1 to Bn respectively corresponding to the prediction devices. The attention layer LA may calculate device weights B1 to Bn to pay attention to a specific device prediction result by using an attention mechanism. As described in FIG. 5, the attention layer (LA) may apply some of the device parameters (Wb, bb) and the softmax function to the intermediate result. The output layer LO may align the calculated device weights B1 to Bn and output the device weights B1 to Bn to the weight applicator 325_1 of FIGS. 4 and 5 .

도 8은 도 4 및 도 5의 결과 계산기의 예시적인 계층 구조를 도시한 도면이다. 도 8은 결과 계산기(326_1)의 인공 신경망 구조를 예시적으로 도시한다. 인공 신경망은 상술된 예측 모델(33)의 적어도 일부일 수 있다. 상술한 바와 같이, 결과 계산기(326_1)는 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 도 8을 참조하면, 결과 계산기(326_1)의 인공 신경망은 입력 레이어(LI), 예측 레이어(LP), 및 출력 레이어(LO)를 포함할 수 있다.8 is a diagram illustrating an exemplary hierarchical structure of the result calculator of FIGS. 4 and 5; 8 shows an artificial neural network structure of the result calculator 326_1 as an example. The artificial neural network may be at least part of the predictive model 33 described above. As described above, the result calculator 326_1 may be implemented in hardware, firmware, software, or a combination thereof. Referring to FIG. 8 , the artificial neural network of the result calculator 326_1 may include an input layer LI, a prediction layer LP, and an output layer LO.

입력 레이어(LI)는 장치 예측 결과들에 항목 가중치들 및 장치 가중치들이 적용된 학습 결과들(Y1~Yn)을 수신한다. 학습 결과들(Y1~Yn) 각각은 서로 다른 예측 장치들에 대응된다. 학습 결과들(Y1~Yn) 각각은 서로 다른 항목 가중치들이 적용되고, 동일한 장치 가중치가 적용된 결과들을 포함한다. 이러한 결과들 각각은 서로 다른 항목들에 대응된다. 학습 결과들(Y1~Yn) 전체는 서로 상관되어 결과 계산기(326_1)에 의하여 분석될 수 있다.The input layer LI receives learning results Y1 to Yn in which item weights and device weights are applied to device prediction results. Each of the learning results Y1 to Yn corresponds to different prediction devices. Each of the learning results Y1 to Yn includes results to which different item weights are applied and the same device weight is applied. Each of these results corresponds to different items. All of the learning results Y1 to Yn may be correlated with each other and analyzed by the result calculator 326_1.

예측 레이어(LP)는 학습 결과들(Y1~Yn) 사이의 상관 관계를 계산할 수 있다. 예측 레이어(LP)는 도 5에서 설명된 앙상블 파라미터(Wr, br)를 학습 결과들(Y1~Yn)에 적용함으로써, 학습 결과들(Y1~Yn) 사이의 상관 관계를 계산할 수 있다. 예측 레이어(LP)는 복수의 레이어들을 포함할 수 있다. 앙상블 파라미터(Wr, br)는 레이어들 사이의 연결 또는 네트워크를 나타낼 수 있다. 레이어들 각각은 완전 연결 네트워크(Fully-connected network), 순환 신경망(Recurrent neural network), 및 LSTM(Long short term memory) 등 다양한 방식의 인공 신경망으로 구현될 수 있다.The prediction layer LP may calculate a correlation between the learning results Y1 to Yn. The prediction layer LP may calculate a correlation between the learning results Y1 to Yn by applying the ensemble parameters Wr and br described in FIG. 5 to the learning results Y1 to Yn. The prediction layer LP may include a plurality of layers. The ensemble parameters (Wr, br) may represent connections or networks between layers. Each of the layers may be implemented as an artificial neural network in various ways, such as a fully-connected network, a recurrent neural network, and a long short term memory (LSTM).

예측 레이어(LP)는 학습 결과들(Y1~Yn) 중 하나의 학습 결과의 차원과 같은 앙상블 결과(R1~Rb)를 생성하도록 구현될 수 있다. 학습 결과들(Y1~Yn)은 n개의 장치 및 b개의 항목들에 의한 nXb 차원의 값들을 가질 수 있다. 예측 레이어(LP)는 항목들의 개수의 값들을 갖는 앙상블 결과(R1~Rb)를 계산할 수 있다. 출력 레이어(LO)는 계산된 앙상블 결과(R1~Rb)를 정렬하고, 앙상블 결과(R1~Rb)를 도 4 및 도 5의 가중치 제어기(327_1)로 출력할 수 있다.The prediction layer LP may be implemented to generate ensemble results R1 to Rb having the same dimension as one of the learning results Y1 to Yn. The learning results (Y1 to Yn) may have nXb-dimensional values by n devices and b items. The prediction layer LP may calculate ensemble results R1 to Rb having values of the number of items. The output layer LO may align the calculated ensemble results R1 to Rb and output the ensemble results R1 to Rb to the weight controller 327_1 of FIGS. 4 and 5 .

도 9는 도 4의 학습기의 예시적인 블록도이다. 도 9의 학습기(320_2)는 복수의 예측 장치들로부터 수신된 예측 결과들에 기초하여 예측 모델(33)을 학습하고 가중치 그룹을 결정하는 예시적인 구성으로 이해될 것이다. 학습기(320_2)는 전처리기(321_2), 항목 분류기(322_2), 항목 가중치 계산기(323_2), 항목 가중치 적용기(324_2), 장치 가중치 계산기(325_5), 장치 가중치 적용기(326_2), 결과 계산기(327_2), 및 가중치 제어기(328_2)를 포함할 수 있다. 상술한 바와 같이, 학습기(320_2)에 포함된 각 구성들은 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다.9 is an exemplary block diagram of the learner of FIG. 4; The learner 320_2 of FIG. 9 will be understood as an exemplary configuration for learning the prediction model 33 and determining a weight group based on prediction results received from a plurality of prediction devices. The learner 320_2 includes a preprocessor 321_2, an item classifier 322_2, an item weight calculator 323_2, an item weight applicator 324_2, a device weight calculator 325_5, a device weight applicator 326_2, and a result calculator ( 327_2), and a weight controller 328_2. As described above, each component included in the learner 320_2 may be implemented as hardware, firmware, software, or a combination thereof.

전처리기(321_2)는 앙상블 학습 데이터(32)를 학습에 적합한 데이터로 전처리할 수 있다. 전처리기(321_2)는 도 4의 전처리기(321_1)와 실질적으로 동일하게 동작할 수 있다.The preprocessor 321_2 may preprocess the ensemble learning data 32 into data suitable for learning. The preprocessor 321_2 may operate substantially the same as the preprocessor 321_1 of FIG. 4 .

항목 분류기(322_2)는 전처리된 앙상블 학습 데이터를 항목별로 분리하고, 그룹화할 수 있다. 항목 가중치 계산기(323_2)는 항목 분류기(322_2)로부터 그룹화된 항목 값들을 분석한다. 항목 가중치 계산기(323_2)는 항목 가중치를 생성하기 위한 예측 모델(33)의 파라미터들(항목 파라미터)에 기초하여 항목 값들에 각각 대응되는 항목 가중치들을 생성할 수 있다. 항목 분류기(322_2) 및 항목 가중치 계산기(323_2)는 도 4의 항목 분류기(322_1) 및 항목 가중치 계산기(323_1)와 실질적으로 동일하게 동작할 수 있다.The item classifier 322_2 may separate and group the preprocessed ensemble learning data by item. The item weight calculator 323_2 analyzes the grouped item values from the item classifier 322_2. The item weight calculator 323_2 may generate item weights respectively corresponding to item values based on parameters (item parameters) of the prediction model 33 for generating item weights. The item classifier 322_2 and the item weight calculator 323_2 may operate substantially the same as the item classifier 322_1 and the item weight calculator 323_1 of FIG. 4 .

항목 가중치 적용기(324_2)는 항목 가중치들을 장치 예측 결과들에 적용할 수 있다. 도 4의 가중치 적용기(325_1)와 달리, 항목 가중치 적용기(324_2)는 장치 가중치들을 장치 예측 결과들에 적용하지 않는다. 항목 가중치들의 적용 결과, 항목 가중치 적용기(324_2)는 예측 장치들 각각의 특정 분야(항목)의 신뢰성을 반영한 제1 학습 결과를 생성할 수 있다.The item weight applicator 324_2 may apply the item weights to the device prediction results. Unlike the weight applicator 325_1 of FIG. 4, the item weight applicator 324_2 does not apply device weights to device prediction results. As a result of applying the item weights, the item weight applicator 324_2 may generate a first learning result reflecting reliability of a specific field (item) of each predictive device.

장치 가중치 계산기(325_2)는 항목 가중치들이 적용된 장치 예측 결과들, 즉 제1 학습 결과에 기초하여, 예측 장치들의 특성을 분석한다. 장치 가중치 계산기(325_2)는 장치 가중치를 생성하기 위한 예측 모델(33)의 파라미터들(장치 파라미터)에 기초하여 예측 장치들에 각각 대응되는 장치 가중치들을 생성할 수 있다.The device weight calculator 325_2 analyzes characteristics of predictive devices based on device prediction results to which item weights are applied, that is, a first learning result. The device weight calculator 325_2 may generate device weights respectively corresponding to prediction devices based on parameters (device parameters) of the predictive model 33 for generating device weights.

장치 가중치 적용기(326_2)는 장치 가중치들을 제1 학습 결과에 적용할 수 있다. 적용 결과, 장치 가중치 적용기(326_2)는 예측 장치들 각각의 전반적인 신뢰성을 반영한 제2 학습 결과를 생성할 수 있다.The device weight applicator 326_2 may apply the device weights to the first learning result. As a result of application, the device weight applicator 326_2 may generate a second learning result reflecting the overall reliability of each prediction device.

결과 계산기(327_2)는 제2 학습 결과에 기초하여, 앙상블 결과를 생성할 수 있다. 결과 계산기(327_2)는 예측 모델(33)의 파라미터들(앙상블 파라미터)에 기초하여 앙상블 결과를 생성할 수 있다. 가중치 제어기(328_2)는 앙상블 결과에 기초하여, 가중치 그룹에 포함된 파라미터들을 조절할 수 있다. 여기에서 파라미터들은 상술된 항목 파라미터, 장치 파라미터, 및 앙상블 파라미터를 포함한다. 결과 계산기(327_2) 및 가중치 제어기(328_2)는 도 4의 결과 계산기(326_1) 및 가중치 제어기(327_1)와 실질적으로 동일하게 동작할 수 있다.The result calculator 327_2 may generate an ensemble result based on the second learning result. The result calculator 327_2 may generate an ensemble result based on parameters (ensemble parameters) of the predictive model 33 . The weight controller 328_2 may adjust parameters included in the weight group based on the ensemble result. The parameters here include the above-mentioned item parameters, device parameters, and ensemble parameters. The result calculator 327_2 and the weight controller 328_2 may operate substantially the same as the result calculator 326_1 and the weight controller 327_1 of FIG. 4 .

도 10은 도 9의 학습기를 구체화한 도면이다. 도 10을 참조하면, 학습기(320_2)는 전처리기(321_2), 항목 분류기(322_2), 항목 가중치 계산기(323_2), 항목 가중치 적용기(324_2), 장치 가중치 계산기(325_5), 장치 가중치 적용기(326_2), 결과 계산기(327_2), 및 가중치 제어기(328_2)를 포함할 수 있다. 설명의 편의상, 도 5의 학습기(320_1)와의 차이점을 기준으로 도 10이 설명된다.10 is a diagram embodying the learner of FIG. 9 . Referring to FIG. 10, a learner 320_2 includes a preprocessor 321_2, an item classifier 322_2, an item weight calculator 323_2, an item weight applicator 324_2, a device weight calculator 325_5, and a device weight applicator ( 326_2), a result calculator 327_2, and a weight controller 328_2. For convenience of explanation, FIG. 10 will be described based on differences from the learner 320_1 of FIG. 5 .

학습기(320_2)는 도 3에서 설명된 병합 데이터(MLD)를 수신한다. 병합 데이터(MLD)는 예시적으로 제1 및 제2 장치 예측 결과들(PD1, PD2)을 포함할 수 있다. 제1 장치 예측 결과(PD1)는 제1 항목에 대응되는 제1 항목 값(P11) 및 제2 항목에 대응되는 제2 항목 값(P21)을 포함하고, 제2 장치 예측 결과(PD2)는 제1 항목에 대응되는 제3 항목 값(P12) 및 제2 항목에 대응되는 제4 항목 값(P22)을 포함할 수 있다. 병합 데이터(MLD)는 제1 예측 장치 및 제2 예측 장치를 구별하기 위한 제1 및 제2 식별 정보(I1, I2)를 더 포함할 수 있다.The learner 320_2 receives the merged data MLD described in FIG. 3 . The merged data MLD may exemplarily include first and second device prediction results PD1 and PD2. The first device prediction result PD1 includes a first item value P11 corresponding to the first item and a second item value P21 corresponding to the second item, and the second device prediction result PD2 is A third item value P12 corresponding to item 1 and a fourth item value P22 corresponding to the second item may be included. The merged data MLD may further include first and second identification information I1 and I2 for distinguishing the first prediction device and the second prediction device.

전처리기(321_2)는 병합 데이터(MLD)를 전처리하여 전처리 데이터(PLD)를 생성할 수 있다. 항목 분류기(322_2)는 전처리 데이터(PLD)를 항목별로 그룹화할 수 있다. 그 결과, 제1 항목에 대응되는 제1 항목 값(E11) 및 제3 항목 값(E12)은 제1 그룹(G1)으로 그룹화될 수 있다. 제2 항목에 대응되는 제2 항목 값(E21) 및 제4 항목 값(E22)은 제2 그룹(G2)으로 그룹화될 수 있다.The preprocessor 321_2 may generate preprocessed data PLD by preprocessing the merged data MLD. The item classifier 322_2 may group the preprocessed data PLD by item. As a result, the first item value E11 and the third item value E12 corresponding to the first item may be grouped into a first group G1. The second item value E21 and the fourth item value E22 corresponding to the second item may be grouped into a second group G2.

항목 가중치 계산기(323_2)는 제1 그룹(G1)에 기초하여, 제1 항목에 대한 제1 그룹 가중치(AD1)를 생성할 수 있다. 항목 가중치 계산기(323_1)는 제2 그룹(G2)에 기초하여, 제2 항목에 대한 제2 그룹 가중치(AD2)를 생성할 수 있다. 제1 그룹 가중치(AD1)는 제1 항목 값(E11)에 대응되는 제1 항목 가중치(A11) 및 제3 항목 값(E12)에 대응되는 제3 항목 가중치(A12)를 포함할 수 있다. 제2 그룹 가중치(AD2)는 제2 항목 값(E21)에 대응되는 제2 항목 가중치(A21) 및 제4 항목 값(E22)에 대응되는 제4 항목 가중치(A22)를 포함할 수 있다. 항목 가중치 계산기(323_2)는 가중치(Wa) 및 바이어스(ba)를 포함하는 항목 파라미터에 기초하여, 항목 가중치들(A11, A21, A12, A22)을 생성할 수 있다. 항목 가중치 계산기(323_2)는 도 6의 인공 신경망을 이용하여 항목 가중치들(A11, A21, A12, A22)을 생성할 수 있다.The item weight calculator 323_2 may generate a first group weight AD1 for the first item based on the first group G1. The item weight calculator 323_1 may generate a second group weight AD2 for the second item based on the second group G2. The first group weight AD1 may include a first item weight A11 corresponding to the first item value E11 and a third item weight A12 corresponding to the third item value E12. The second group weight AD2 may include a second item weight A21 corresponding to the second item value E21 and a fourth item weight A22 corresponding to the fourth item value E22. The item weight calculator 323_2 may generate item weights A11, A21, A12, and A22 based on item parameters including weight Wa and bias ba. The item weight calculator 323_2 may generate item weights A11, A21, A12, and A22 using the artificial neural network of FIG. 6 .

항목 가중치 적용기(324_2)는 항목 가중치들(A11, A21, A12, A22)을 전처리 데이터(PLD)에 적용할 수 있다. 적용 결과, 제1 학습 결과(YD)가 생성될 수 있다. 제1 학습 결과(YD)는 제1 내지 제4 항목 값들(E11, E21, E12, E22)에 각각 대응되는 제1 내지 제4 결과들(Y11, Y21, Y12, Y22)을 포함할 수 있다. 제1 결과(Y11)는 제1 항목 값(E11)에 제1 항목 가중치(A11)를 곱한 결과일 수 있다. 제2 결과(Y21)는 제2 항목 값(E21)에 제2 항목 가중치(A21)를 곱한 결과일 수 있다. 제3 결과(Y12)는 제3 항목 값(E12)에 제3 항목 가중치(A12)를 곱한 결과일 수 있다. 제4 결과(Y22)는 제4 항목 값(E22)에 제4 항목 가중치(A22)를 곱한 결과일 수 있다.The item weight applicator 324_2 may apply the item weights A11, A21, A12, and A22 to the preprocessed data PLD. As a result of the application, a first learning result (YD) may be generated. The first learning result YD may include first to fourth results Y11, Y21, Y12, and Y22 respectively corresponding to the first to fourth item values E11, E21, E12, and E22. The first result Y11 may be a result of multiplying the first item value E11 by the first item weight A11. The second result Y21 may be a result of multiplying the second item value E21 by the second item weight A21. The third result Y12 may be a result of multiplying the third item value E12 by the third item weight A12. The fourth result Y22 may be a result of multiplying the fourth item value E22 by the fourth item weight A22.

장치 가중치 계산기(325_2)는 제1 학습 결과(YD)에 기초하여 장치 가중치(BD)를 생성할 수 있다. 장치 가중치(BD)는 제1 예측 장치에 대응되는 제1 장치 가중치(B1) 및 제2 예측 장치에 대응되는 제2 장치 가중치(B2)를 포함할 수 있다. 장치 가중치 계산기(325_2)는 가중치(Wb) 및 바이어스(bb)를 포함하는 장치 파라미터에 기초하여, 장치 가중치(BD)를 생성할 수 있다. 장치 가중치 계산기(325_2)는 도 7의 인공 신경망을 이용하여 장치 가중치(BD)를 생성할 수 있다.The device weight calculator 325_2 may generate the device weight BD based on the first learning result YD. The device weight BD may include a first device weight B1 corresponding to the first prediction device and a second device weight B2 corresponding to the second prediction device. The device weight calculator 325_2 may generate the device weight BD based on device parameters including the weight Wb and the bias bb. The device weight calculator 325_2 may generate the device weight BD using the artificial neural network of FIG. 7 .

장치 가중치 적용기(326_2)는 장치 가중치(BD)를 제1 학습 결과(YD)에 적용할 수 있다. 적용 결과, 제2 학습 결과(ZD)가 생성될 수 있다. 제2 학습 결과(ZD)는 제1 내지 제4 항목 값들(E11, E21, E12, E22)에 각각 대응되는 제1 내지 제4 결과들(Z11, Z21, Z12, Z22)을 포함할 수 있다. 제1 결과(Z11)는 제1 결과(Y11)에 제1 장치 가중치(B1)를 곱한 결과일 수 있다. 제2 결과(Z21)는 제2 결과(Y21)에 제1 장치 가중치(B1)를 곱한 결과일 수 있다. 제3 결과(Z12)는 제3 결과(Y12)에 제2 장치 가중치(B2)를 곱한 결과일 수 있다. 제4 결과(Z22)는 제4 결과(Y22)에 제2 장치 가중치(B2)를 곱한 결과일 수 있다.The device weight applicator 326_2 may apply the device weight BD to the first learning result YD. As a result of the application, a second learning result ZD may be generated. The second learning result ZD may include the first to fourth results Z11, Z21, Z12, and Z22 respectively corresponding to the first to fourth item values E11, E21, E12, and E22. The first result Z11 may be a result obtained by multiplying the first result Y11 by the first device weight B1. The second result Z21 may be a result of multiplying the second result Y21 by the first device weight B1. The third result Z12 may be a result of multiplying the third result Y12 by the second device weight B2. The fourth result Z22 may be a result of multiplying the fourth result Y22 by the second device weight B2.

결과 계산기(327_2)는 제2 학습 결과(ZD)에 기초하여, 앙상블 결과(RD)를 생성할 수 있다. 앙상블 결과(RD)는 제1 항목에 대응되는 제1 예측 결과(R1) 및 제2 항목에 대응되는 제2 예측 결과(R2)를 포함할 수 있다. 결과 계산기(327_2)는 가중치(Wr) 및 바이어스(br)를 포함하는 앙상블 파라미터에 기초하여, 제2 학습 결과(ZD)를 분석하고, 앙상블 결과(RD)를 생성할 수 있다. 결과 계산기(327_2)는 도 8의 인공 신경망을 이용하여 앙상블 결과(RD)를 생성할 수 있다.The result calculator 327_2 may generate an ensemble result RD based on the second learning result ZD. The ensemble result RD may include a first prediction result R1 corresponding to the first item and a second prediction result R2 corresponding to the second item. The result calculator 327_2 may analyze the second learning result ZD based on the ensemble parameter including the weight Wr and the bias br, and generate an ensemble result RD. The result calculator 327_2 may generate an ensemble result RD using the artificial neural network of FIG. 8 .

가중치 제어기(328_2)는 앙상블 결과(RD)와 비교 결과(CD)를 비교하여, 가중치 그룹에 포함된 파라미터들(Wa, ba, Wb, bb, Wr, br)을 조절할 수 있다. 비교 결과(CD)는 제1 항목에 대응되는 제1 값(C1) 및 제2 항목에 대응되는 제2 값(C2)을 포함할 수 있다.The weight controller 328_2 may adjust the parameters Wa, ba, Wb, bb, Wr, and br included in the weight group by comparing the ensemble result RD with the comparison result CD. The comparison result CD may include a first value C1 corresponding to the first item and a second value C2 corresponding to the second item.

도 11은 도 2의 예측기의 예시적인 블록도이다. 도 11의 예측기(330_1)는 학습된 예측 모델(33) 및 가중치 그룹에 기초하여, 복수의 예측 장치들로부터 수신된 예측 결과들의 앙상블 결과를 생성하는 예시적인 구성으로 이해될 것이다. 예측기(330_1)는 전처리기(331_1), 항목 분류기(332_1), 항목 가중치 계산기(333_1), 장치 가중치 계산기(334_1), 가중치 적용기(335_1), 및 결과 계산기(336_1)를 포함할 수 있다. 상술한 바와 같이, 예측기(330_1)에 포함된 각 구성들은 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 11 is an exemplary block diagram of the predictor of FIG. 2; The predictor 330_1 of FIG. 11 will be understood as an exemplary configuration that generates an ensemble result of prediction results received from a plurality of prediction devices based on the learned prediction model 33 and the weight group. The predictor 330_1 may include a preprocessor 331_1, an item classifier 332_1, an item weight calculator 333_1, a device weight calculator 334_1, a weight applicator 335_1, and a result calculator 336_1. As described above, each component included in the predictor 330_1 may be implemented in hardware, firmware, software, or a combination thereof.

예측기(330_1)는 학습된 예측 모델(33)에 기초하여 병합 데이터(MLD)를 분석하고, 앙상블 결과(RD)를 생성한다. 전처리기(331_1), 항목 분류기(332_1), 항목 가중치 계산기(333_1), 장치 가중치 계산기(334_1), 가중치 적용기(335_1), 및 결과 계산기(336_1)는 도 4의 전처리기(321_1), 항목 분류기(322_1), 항목 가중치 계산기(323_1), 장치 가중치 계산기(324_1), 가중치 적용기(325_1), 및 결과 계산기(326_1)와 실질적으로 동일한 동작을 수행할 수 있다. 그리고, 도 6, 도 7, 및 도 8의 인공 신경망 구조는 각각 항목 가중치 계산기(333_1), 장치 가중치 계산기(334_1), 및 결과 계산기(336_1)에 적용될 수 있다.The predictor 330_1 analyzes the merged data MLD based on the learned prediction model 33 and generates an ensemble result RD. The preprocessor 331_1, item classifier 332_1, item weight calculator 333_1, device weight calculator 334_1, weight applicator 335_1, and result calculator 336_1 are preprocessor 321_1 of FIG. Substantially the same operation as the classifier 322_1, item weight calculator 323_1, device weight calculator 324_1, weight applicator 325_1, and result calculator 326_1 may be performed. Also, the artificial neural network structures of FIGS. 6, 7, and 8 may be applied to the item weight calculator 333_1, the device weight calculator 334_1, and the result calculator 336_1, respectively.

도 12는 도 2의 예측기의 예시적인 블록도이다. 도 12의 예측기(330_2)는 학습된 예측 모델(33) 및 가중치 그룹에 기초하여, 복수의 예측 장치들로부터 수신된 예측 결과들의 앙상블 결과를 생성하는 예시적인 구성으로 이해될 것이다. 예측기(330_2)는 전처리기(331_2), 항목 분류기(332_2), 항목 가중치 계산기(333_2), 항목 가중치 적용기(334_2), 장치 가중치 계산기(335_2), 장치 가중치 적용기(336_2), 및 결과 계산기(337_2)를 포함할 수 있다. 상술한 바와 같이, 예측기(330_2)에 포함된 각 구성들은 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다.12 is an exemplary block diagram of the predictor of FIG. 2; The predictor 330_2 of FIG. 12 will be understood as an exemplary configuration that generates an ensemble result of prediction results received from a plurality of prediction devices based on the learned prediction model 33 and the weight group. The predictor 330_2 includes a preprocessor 331_2, an item classifier 332_2, an item weight calculator 333_2, an item weighter 334_2, a device weight calculator 335_2, a device weighter 336_2, and a result calculator. (337_2) may be included. As described above, each component included in the predictor 330_2 may be implemented as hardware, firmware, software, or a combination thereof.

예측기(330_1)는 학습된 예측 모델(33)에 기초하여 병합 데이터(MLD)를 분석하고, 앙상블 결과(RD)를 생성한다. 전처리기(331_2), 항목 분류기(332_2), 항목 가중치 계산기(333_2), 항목 가중치 적용기(334_2), 장치 가중치 계산기(335_2), 장치 가중치 적용기(336_2), 및 결과 계산기(337_2)는 도 9의 전처리기(321_2), 항목 분류기(322_2), 항목 가중치 계산기(323_2), 항목 가중치 적용기(324_2), 장치 가중치 계산기(325_5), 장치 가중치 적용기(326_2), 및 결과 계산기(327_2)와 실질적으로 동일한 동작을 수행할 수 있다. 그리고, 도 6, 도 7, 및 도 8의 인공 신경망 구조는 각각 항목 가중치 계산기(333_2), 장치 가중치 계산기(335_2), 및 결과 계산기(337_2)에 적용될 수 있다.The predictor 330_1 analyzes the merged data MLD based on the learned prediction model 33 and generates an ensemble result RD. The preprocessor 331_2, item classifier 332_2, item weight calculator 333_2, item weighter 334_2, device weight calculator 335_2, device weighter 336_2, and result calculator 337_2 are shown in FIG. 9's preprocessor (321_2), item classifier (322_2), item weight calculator (323_2), item weighter (324_2), device weight calculator (325_5), device weighter (326_2), and result calculator (327_2) and can perform substantially the same operation. In addition, the artificial neural network structures of FIGS. 6, 7, and 8 may be applied to the item weight calculator 333_2, the device weight calculator 335_2, and the result calculator 337_2, respectively.

도 13은 도 2의 데이터 관리기의 동작을 설명하기 위한 예시적인 도면이다. 도 13을 참조하면, 데이터 관리기(1310)는 도 3에서 설명한 바와 같이, 시계열 데이터(TD)를 수신한다. 데이터 관리기(310)는 예측 요청과 함께 시계열 데이터(TD)를 제1 내지 제n 예측 장치들(1101~110n)로 제공할 수 있다. 제1 내지 제n 예측 장치들(1101~110n)은 예측 요청에 응답하여, 개별적으로 구축된 예측 모델을 이용하여 시계열 데이터(TD)를 분석할 수 있다. 분석 결과, 제1 내지 제n 예측 장치들(1101~110n)은 각각 제1 내지 제n 장치 예측 결과들(PD1~PDn)을 생성할 수 있다.FIG. 13 is an exemplary diagram for explaining the operation of the data manager of FIG. 2 . Referring to FIG. 13 , the data manager 1310 receives time series data TD as described in FIG. 3 . The data manager 310 may provide the time-series data TD to the first to n-th prediction devices 1101 to 110n together with a prediction request. The first to nth prediction devices 1101 to 110n may analyze the time series data TD by using individually constructed prediction models in response to a prediction request. As a result of the analysis, the first to nth prediction devices 1101 to 110n may respectively generate the first to nth device prediction results PD1 to PDn.

제1 내지 제n 예측 장치들(1101~110n)은 각각 제1 내지 제n 장치 예측 결과들(PD1~PDn) 및 제1 내지 제n 상태 정보(SD1~SDn)를 데이터 관리기(1310)로 출력할 수 있다. 제1 내지 제n 상태 정보(SD1~SDn)는 제1 내지 제n 장치 예측 결과들(PD1~PDn)을 계산하기 위한 중간 과정에서 생성된 중간 결과 값들을 포함할 수 있다. 예를 들어, 제1 예측 장치(1101)의 예측 모델은 인공 신경망으로 구현될 수 있다. 인공 신경망은 복수의 레이어들을 포함할 수 있고, 출력 레이어가 제1 장치 예측 결과(PD1)를 출력하기 이전에, 중간 레이어에서 계산된 데이터 값들의 적어도 일부가 제1 상태 정보(SD1)에 포함될 수 있다. 이러한 제1 상태 정보(SD1)는 제1 장치 예측 결과(PD1)의 계산 근거인 노드들에 대한 정보를 포함하므로, 앙상블 결과의 정확도가 향상될 수 있다.The first to nth prediction devices 1101 to 110n output the first to nth device prediction results PD1 to PDn and the first to nth state information SD1 to SDn to the data manager 1310, respectively. can do. The first to nth state information SD1 to SDn may include intermediate result values generated in an intermediate process for calculating the first to nth device prediction results PD1 to PDn. For example, the prediction model of the first prediction device 1101 may be implemented as an artificial neural network. The artificial neural network may include a plurality of layers, and before the output layer outputs the first device prediction result PD1, at least some of the data values calculated in the middle layer may be included in the first state information SD1. there is. Since the first state information SD1 includes information on nodes that are the basis for calculating the first device prediction result PD1, the accuracy of the ensemble result can be improved.

데이터 관리기(1310)는 제1 내지 제n 장치 예측 결과들(PD1~PDn) 및 제1 내지 제n 상태 정보(SD1~SDn)를 병합하여, 병합 데이터(MLD)를 생성할 수 있다. 일례로, 병합 데이터(MLD)는 1 내지 제n 장치 예측 결과들(PD1~PDn), 제1 내지 제n 상태 정보(SD1~SDn), 및 제1 내지 제n 식별 정보(I1~In)가 그룹화된 세트일 수 있다. 병합 데이터(MLD)는 예측 모델(33)의 학습 또는 학습된 예측 모델(33)을 이용한 미래 건강 상태의 예측을 위하여 사용될 수 있다.The data manager 1310 may merge the first to nth device prediction results PD1 to PDn and the first to nth state information SD1 to SDn to generate merged data MLD. For example, the merged data MLD includes first to nth device prediction results PD1 to PDn, first to nth state information SD1 to SDn, and first to nth identification information I1 to In. It can be a grouped set. The merged data MLD may be used for learning of the predictive model 33 or prediction of a future health state using the learned predictive model 33 .

도 13에 도시된 바와 달리, 데이터 관리기(1310)는 제1 내지 제n 장치 예측 결과들(PD1~PDn) 대신에, 제1 내지 제n 상태 정보(SD1~SDn)를 수신할 수 있다. 이 경우, 병합 데이터(MLD)는 제1 내지 제n 상태 정보(SD1~SDn)를 포함하고, 제1 내지 제n 상태 정보(SD1~SDn)가 예측 모델(33)의 학습 또는 미래 건강 상태의 예측을 위하여 사용될 수 있다.Unlike shown in FIG. 13 , the data manager 1310 may receive the first to nth state information SD1 to SDn instead of the first to nth device prediction results PD1 to PDn. In this case, the merged data MLD includes first to nth state information SD1 to SDn, and the first to nth state information SD1 to SDn is used for learning of the prediction model 33 or future health state. can be used for prediction.

도 14a 및 도 14b는 도 13의 상태 정보를 설명하기 위한 도면이다. 도 14a 및 도 14b는 도 13의 제1 내지 제n 예측 장치들(1101~110n) 중 어느 하나에 구축된 예측 모델의 인공 신경망을 예시적으로 도시한다.14A and 14B are diagrams for explaining state information of FIG. 13 . 14A and 14B exemplarily illustrate an artificial neural network of a predictive model built in any one of the first to nth prediction devices 1101 to 110n of FIG. 13 .

도 14a를 참조하면, 인공 신경망은 순환 신경망(Recurrent neural network, RNN) 또는 LSTM(Long short term memory) 등으로 구현될 수 있다. 이 경우, 하나의 레이어가 시간의 흐름에 따라 시계열 데이터(TD)를 수신할 수 있다. 일례로, t-1 시간에 대응되는 시계열 데이터(TD(t-1))가 RNN 레이어에 입력되고, t-1 시간에 대응되는 예측 결과 값(PD(t-1))이 출력될 수 있다. 시계열적 분석을 위하여, t-1 시간에 대응되는 상태 정보(SD(t-1))가 t 시간에 대응되는 예측 결과 값(PD(t))을 생성하는데 사용될 수 있다. RNN 레이어는 t 시간에 대응되는 시계열 데이터(TD(t)) 및 t-1 시간에 대응되는 상태 정보(SD(t-1))에 기초하여 t 시간에 대응되는 예측 결과 값(PD(t))을 계산할 수 있다. 또한, RNN 레이어는 t+1 시간에 대응되는 시계열 데이터(TD(t+1)) 및 t 시간에 대응되는 상태 정보(SD(t))에 기초하여 t+1 시간에 대응되는 예측 결과 값(PD(t+1))을 계산할 수 있다. 상태 정보(SD(t-1), SD(t), SD(t+1))의 적어도 일부는 도 13의 상태 정보에 포함될 수 있다.Referring to FIG. 14A , the artificial neural network may be implemented as a recurrent neural network (RNN) or long short term memory (LSTM). In this case, one layer may receive time series data (TD) according to the lapse of time. For example, time series data (TD(t-1)) corresponding to time t-1 may be input to the RNN layer, and a predicted result value (PD(t-1)) corresponding to time t-1 may be output. . For time-series analysis, state information (SD(t-1)) corresponding to time t-1 may be used to generate a predicted result value (PD(t)) corresponding to time t. The RNN layer generates a prediction result value (PD(t)) corresponding to time t based on time series data (TD(t)) corresponding to time t and state information (SD(t-1)) corresponding to time t-1 ) can be calculated. In addition, the RNN layer generates a prediction result value ( corresponding to time t + 1 ) based on time series data (TD (t + 1)) corresponding to time t + 1 and state information (SD (t)) corresponding to time t. PD(t+1)) can be calculated. At least a part of the state information (SD(t−1), SD(t), SD(t+1)) may be included in the state information of FIG. 13 .

도 14b를 참조하면, 인공 신경망은 피드포워드 네트워크(Feedforward Network) 등으로 구현될 수 있다. 이 경우, 인공 신경망은 복수의 레이어들(LI, L1, L2, LO)을 포함할 수 있다. 일례로, 시계열 데이터(TD)가 입력 레이어(LI), 제1 레이어(L1), 제2 레이어(L2), 및 출력 레이어(LO)를 통하여 전파될 수 있다. 시계열 데이터(TD)는 레이어들 사이의 연결로 나타나는 가중치들에 의하여 제1 상태 정보(SD1), 제2 상태 정보(SD2), 및 예측 결과(PD)로 변형될 수 있다. 제1 상태 정보(SD1) 및 제2 상태 정보(SD2)는 각각 제1 레이어(L1) 및 제2 레이어(L2)의 노드들로 나타난다. 제1 상태 정보(SD1) 및 제2 상태 정보(SD2)의 적어도 일부는 도 13의 상태 정보에 포함될 수 있다.Referring to FIG. 14B , the artificial neural network may be implemented as a feedforward network or the like. In this case, the artificial neural network may include a plurality of layers LI, L1, L2, and LO. For example, time series data TD may be propagated through an input layer LI, a first layer L1, a second layer L2, and an output layer LO. The time series data TD may be transformed into first state information SD1, second state information SD2, and prediction result PD according to weights represented by connections between layers. The first state information SD1 and the second state information SD2 appear as nodes of the first layer L1 and the second layer L2, respectively. At least a part of the first state information SD1 and the second state information SD2 may be included in the state information of FIG. 13 .

도 15는 도 13의 데이터 관리기의 예시적인 계층 구조를 도시한 도면이다. 상태 정보(SD)는 최종 예측 결과인 장치 예측 결과(PD)를 생성하기 전에 차원 축소되지 않은 상태의 정보이다. 따라서, 상태 정보(SD)의 차원은 장치 예측 결과(PD)의 차원보다 클 수 있다. 도 15는 예시적으로 2개의 항목 값들(P1, P2)을 포함하는 장치 예측 결과(PD) 및 m개의 값들(S1~Sm)을 포함하는 상태 정보(SD)를 도시한다. 도 15의 데이터 관리기(1310_1)는 상태 정보(SD)의 차원을 축소하도록 구현될 수 있다.FIG. 15 is a diagram illustrating an exemplary hierarchical structure of the data manager of FIG. 13; The state information (SD) is information in a non-dimensionally reduced state before generating the final prediction result, the device prediction result (PD). Accordingly, the dimension of the state information (SD) may be larger than that of the device prediction result (PD). FIG. 15 illustratively illustrates a device prediction result PD including two item values P1 and P2 and state information SD including m values S1 to Sm. The data manager 1310_1 of FIG. 15 may be implemented to reduce the dimension of state information (SD).

도 15를 참조하면, 상태 정보(SD)의 차원을 축소하기 위한 데이터 관리기(1310_1)의 인경 신경망 구조가 예시적으로 도시된다. 인공 신경망은 상술된 예측 모델(33)의 적어도 일부일 수 있다. 데이터 관리기(1310_1)는 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 인공 신경망은 입력 레이어(LI), 추상화 레이어(LAB), 및 출력 레이어(LO)를 포함할 수 있다. 입력 레이어(LI)는 m개의 차원을 갖는 상태 정보(SD)를 수신한다. Referring to FIG. 15 , a neural network structure of the data manager 1310_1 for reducing the dimension of state information (SD) is illustrated as an example. The artificial neural network may be at least part of the predictive model 33 described above. The data manager 1310_1 may be implemented in hardware, firmware, software, or a combination thereof. An artificial neural network may include an input layer (LI), an abstraction layer (LAB), and an output layer (LO). The input layer LI receives state information SD having m dimensions.

추상화 레이어(LAB)는 상태 정보(SD)의 값들(S1~Sm) 사이의 관계를 고려하여, 장치 예측 결과(PD)와 동일한 차원을 갖는 (2개의 차원을 갖는) 추상화 값들(SC1, SC2)을 계산할 수 있다. 추상화 레이어(LAB)는 상태 정보(SD)를 생성한 예측 장치의 레이어와 유사한 구조를 가질 수 있다. 그리고, 추상화 레이어(LAB)는 예측 모델(33)의 가중치 그룹에 포함된 추상화 파라미터에 기초하여 추상화 값들(SC1, SC2)을 계산할 수 있다. 추상화 파라미터는 데이터 관리기(1310_1)가 포함된 앙상블 예측 장치에서 학습될 수 있다. 출력 레이어(LO)는 계산된 추상화 값들(SC1, SC2)을 정렬하여 출력할 수 있다.The abstraction layer (LAB) considers the relationship between the values (S1 to Sm) of the state information (SD), the abstraction values (SC1, SC2) having the same dimension as the device prediction result (PD) (having two dimensions) can be calculated. The abstraction layer (LAB) may have a structure similar to that of the layer of the prediction device that generated the state information (SD). Also, the abstraction layer LAB may calculate abstraction values SC1 and SC2 based on the abstraction parameter included in the weight group of the prediction model 33 . The abstraction parameters may be learned by the ensemble prediction device including the data manager 1310_1. The output layer LO may sort and output the calculated abstraction values SC1 and SC2.

데이터 관리기(1310_1)는 출력된 추상화 값들(SC1, SC2)을 포함하는 상태 결과(SCD)와 장치 예측 결과(PD)를 병합할 수 있다. 병합 결과, 병합 데이터(MLD)가 생성된다. 상태 정보(SD)의 차원 축소 동작이 수행되지 않는 경우, 항목 가중치를 계산하기 위한 도 5의 제1 그룹(G1)은 제1 항목 값(P1) 및 상태 정보(SD) 전체를 포함하고, 제2 그룹(G2)은 제2 항목 값(P2) 및 상태 정보(SD) 전체를 포함할 수 있다. 도 15의 상태 정보(SD)의 차원 축소 동작이 수행되는 경우, 도 5의 제1 그룹(G1)은 제1 항목 값(P1) 및 제1 추상화 값(SC1)을 포함하고, 제2 그룹(G2)은 제2 항목 값(P2) 및 제2 추상화 값(SC2)을 포함할 수 있다. 차원 축소에 따라, 본 발명의 앙상블 예측 장치의 항목 가중치 및 장치 가중치의 계산량이 감소할 수 있다.The data manager 1310_1 may merge the state result SCD including the output abstract values SC1 and SC2 and the device prediction result PD. As a result of the merging, merged data (MLD) is generated. When the dimension reduction operation of the state information SD is not performed, the first group G1 of FIG. 5 for calculating the item weight includes the first item value P1 and the entire state information SD, and Group 2 G2 may include the second item value P2 and all of the state information SD. When the dimension reduction operation of the state information SD of FIG. 15 is performed, the first group G1 of FIG. 5 includes the first item value P1 and the first abstraction value SC1, and the second group ( G2) may include a second item value P2 and a second abstraction value SC2. According to the dimensionality reduction, the calculation amount of item weights and device weights of the ensemble prediction apparatus of the present invention may be reduced.

도 16은 도 13의 데이터 관리기의 예시적인 계층 구조를 도시한 도면이다. 도 13의 제1 내지 제n 예측 장치들(1101~110n)은 고유의 예측 모델을 통하여 장치 예측 결과를 생성할 수 있다. 제1 내지 제n 예측 장치들(1101~110n) 중 일부는 상태 정보(SD)를 데이터 관리기(1310_2)에 제공할 수 있으나, 다른 일부는 상태 정보(SD)를 데이터 관리기(1310_2)에 제공하지 않을 수 있다. 예를 들어, 특정 예측 장치의 예측 모델이 인공 신경망 이외의 기법으로 구현되어 상태 정보(SD)가 생성되지 않거나, 상태 정보(SD)의 제공을 허용하지 않는 경우, 데이터 관리기(1310_2)는 상태 정보(SD)를 수신하지 못할 수 있다. 도 15의 데이터 관리기(1310_2)는 가상의 상태 정보를 생성하도록 구현될 수 있다.FIG. 16 is a diagram illustrating an exemplary hierarchical structure of the data manager of FIG. 13; The first to nth prediction devices 1101 to 110n of FIG. 13 may generate a device prediction result through a unique prediction model. Some of the first to nth prediction devices 1101 to 110n may provide state information (SD) to the data manager 1310_2, but others may not provide state information (SD) to the data manager 1310_2. may not be For example, if state information (SD) is not generated or provision of state information (SD) is not allowed because a predictive model of a specific prediction device is implemented with a technique other than an artificial neural network, the data manager 1310_2 provides state information. (SD) may not be received. The data manager 1310_2 of FIG. 15 may be implemented to generate virtual state information.

도 16을 참조하면, 가상의 상태 정보를 생성하기 위한 데이터 관리기(1310_2)의 인공 신경망 구조가 예시적으로 도시된다. 인공 신경망은 상술된 예측 모델(33)의 적어도 일부일 수 있다. 데이터 관리기(1310_2)는 하드웨어로 구현되거나, 펌웨어, 소프트웨어, 또는 이의 조합으로 구현될 수 있다. 인공 신경망은 입력 레이어(LI), 오토 인코더(LAE), 중간 레이어(LM), 추상화 레이어(LAB), 및 출력 레이어(LO)를 포함할 수 있다. 입력 레이어(LI)는 b개의 항목 값들(P1~Pb)을 포함하는 장치 예측 결과(PD)를 수신한다.Referring to FIG. 16 , an artificial neural network structure of the data manager 1310_2 for generating virtual state information is illustrated as an example. The artificial neural network may be at least part of the predictive model 33 described above. The data manager 1310_2 may be implemented in hardware, firmware, software, or a combination thereof. An artificial neural network may include an input layer (LI), an auto-encoder (LAE), an intermediate layer (LM), an abstraction layer (LAB), and an output layer (LO). The input layer LI receives a device prediction result PD including b item values P1 to Pb.

우선, 데이터 관리기(1310_2)는 장치 예측 결과(PD)에 대응되는 상태 정보(SD)가 수신되었는지 판단할 수 있다. 판단 결과, 상태 정보(SD)가 수신되지 않은 경우, 상태 정보(SD)의 수신여부를 구분하기 위한 마스크 데이터(MSK)가 생성될 수 있다. 마스크 데이터(MSK)는 상태 정보(SD) 존재할 때 제1 값을 갖고, 상태 정보(SD)가 존재하지 않을 때 제1 값과 다른 제2 값을 가질 수 있다. 마스크 데이터(MSK)는 항목 가중치 및 장치 가중치를 생성할 때, 상태 정보가 가상의 상태 정보인지 판단하도록 제공될 수 있다. 학습기 또는 예측기는 마스크 데이터(MSK)에 기초하여, 가상의 상태 정보에 대한 중요도를 상대적으로 낮게 판단할 수 있다.First, the data manager 1310_2 may determine whether status information (SD) corresponding to the device prediction result (PD) has been received. As a result of the determination, when the state information (SD) is not received, mask data (MSK) for distinguishing whether or not the state information (SD) is received may be generated. The mask data MSK may have a first value when the state information SD exists, and may have a second value different from the first value when the state information SD does not exist. The mask data MSK may be provided to determine whether state information is virtual state information when generating item weights and device weights. The learner or predictor may determine the importance of the virtual state information to be relatively low based on the mask data MSK.

오토 인코더(LAE)는 항목 값들(P1~Pb) 사이의 관계를 고려하여, 가상의 상태 정보(S1~Sm)를 계산할 수 있다. 오토 인코더(LAE)는 상태 정보(SD)가 존재하지 않음을 나타내는 마스크 데이터(MSK)에 기초하여 활성화될 수 있다. 오토 인코더(LAE)는 예측 모델(33)의 가중치 그룹에 포함된 인코딩 파라미터에 기초하여 가상의 상태 정보(S1~Sm)를 생성할 수 있다. 인코딩 파라미터는 가중치 및 바이어스를 포함할 수 있고, 가중치 및 바이어스가 적용된 인코딩 함수에 기초하여 가상의 상태 정보(S1~Sm)가 계산될 수 있다. 인코딩 파라미터는 데이터 관리기(1310_1)가 포함된 앙상블 예측 장치에서 학습될 수 있다. 중간 레이어(LM)는 계산된 상태 정보(S1~Sm)를 정렬하여 추상화 레이어(LAB)로 출력할 수 있다.The auto-encoder LAE may calculate virtual state information S1 to Sm by considering the relationship between the item values P1 to Pb. The auto-encoder LAE may be activated based on the mask data MSK indicating that the state information SD does not exist. The auto-encoder (LAE) may generate virtual state information (S1 to Sm) based on the encoding parameters included in the weight group of the prediction model 33. Encoding parameters may include weights and biases, and virtual state information S1 to Sm may be calculated based on an encoding function to which the weights and biases are applied. Encoding parameters may be learned by the ensemble prediction device including the data manager 1310_1. The intermediate layer LM may align the calculated state information S1 to Sm and output them to the abstraction layer LAB.

가상의 상태 정보(S1~Sm)의 차원은 장치 예측 결과(PD)의 차원과 다를 수 있다. 도 15에서 설명한 바와 같이, 추상화 레이어(LAB)는 상태 정보(SD)의 차원을 축소하여, 추상화 값들(SC1~SCb)을 계산할 수 있다. 출력 레이어(LO)는 추상화 값들(SC1~SCb)을 정렬하여 출력할 수 있다. 데이터 관리기(1310_2)는 추상화 값들(SC1~SCb)을 포함하는 상태 결과(SCD), 장치 예측 결과(PD), 및 마스크 데이터(MSK)를 병항할 수 있다. 병합 결과, 병합 데이터(MLD)가 생성된다. 이 경우, 도 5의 제1 그룹(G1)은 제1 항목 값(P1) 및 제1 추상화 값(CS1)을 포함하고, 제2 그룹(G2)은 제2 항목 값(P2) 및 제2 추상화 값(SC2)을 포함할 수 있다.Dimensions of the virtual state information (S1 to Sm) may be different from dimensions of the device prediction result (PD). As described with reference to FIG. 15 , the abstraction layer LAB may calculate the abstraction values SC1 to SCb by reducing the dimension of the state information SD. The output layer LO may sort and output the abstraction values SC1 to SCb. The data manager 1310_2 may concurrently display a state result (SCD) including abstract values (SC1 to SCb), a device prediction result (PD), and mask data (MSK). As a result of the merging, merged data (MLD) is generated. In this case, the first group G1 of FIG. 5 includes the first item value P1 and the first abstraction value CS1, and the second group G2 includes the second item value P2 and the second abstraction value. It may include a value SC2.

도 17은 도 2의 학습기의 예시적인 블록도이다. 도 17을 참조하면, 학습기(1320)는 전처리기(1321), 항목 분류기(1322), 항목 가중치 계산기(1323), 장치 가중치 계산기(1324), 가중치 적용기(1325), 결과 계산기(1326), 및 가중치 제어기(1327)를 포함할 수 있다. 전처리기(1321), 항목 분류기(1322), 항목 가중치 계산기(1323), 장치 가중치 계산기(1324), 가중치 적용기(1325), 결과 계산기(1326), 및 가중치 제어기(1327)는 도 4의 전처리기(321_1), 항목 분류기(322_1), 항목 가중치 계산기(323_1), 장치 가중치 계산기(324_1), 가중치 적용기(325_1), 결과 계산기(326_1), 및 가중치 제어기(327_1)에 대응된다. 따라서, 도 4의 학습기(320_1)와의 차이점을 기준으로 도 17의 학습기(1320)가 설명된다.17 is an exemplary block diagram of the learner of FIG. 2; Referring to FIG. 17, a learner 1320 includes a preprocessor 1321, an item classifier 1322, an item weight calculator 1323, a device weight calculator 1324, a weight applicator 1325, a result calculator 1326, and a weight controller 1327. The preprocessor 1321, item classifier 1322, item weight calculator 1323, device weight calculator 1324, weight applicator 1325, result calculator 1326, and weight controller 1327 are Corresponds to processor 321_1, item classifier 322_1, item weight calculator 323_1, device weight calculator 324_1, weight applicator 325_1, result calculator 326_1, and weight controller 327_1. Accordingly, the learner 1320 of FIG. 17 will be described based on differences from the learner 320_1 of FIG. 4 .

학습기(1320)는 앙상블 학습 데이터(32)를 수신한다. 앙상블 학습 데이터(32)는 도 13에서 설명된 바와 같이, 장치 예측 결과들 및 상태 정보를 포함한다. 이러한 상태 정보를 처리하기 위하여, 전처리기(1321)는 상태 정보 처리기(1328)를 포함할 수 있다. 상태 정보 처리기(1328)는 상태 정보를 학습에 적합한 데이터로 전처리할 수 있다. 상태 정보 처리기(1328)는 상태 정보에 포함된 값들이 비수치 형식인 경우, 수치 형식으로 변환할 수 있다. 상태 정보 처리기(1328)는 상태 정보의 값들을 특정 수치 범위로 변환할 수 있다. 나아가, 상태 정보 처리기(1328)는 데이터 관리기(1310_1, 1310_2) 대신에, 도 15의 차원 축소 동작 및 도 16의 가상의 상태 정보 생성 동작을 수행할 수도 있다.Learner 1320 receives ensemble learning data 32 . Ensemble learning data 32 includes device prediction results and state information, as described in FIG. 13 . To process this state information, the preprocessor 1321 may include a state information processor 1328. The state information processor 1328 may pre-process the state information into data suitable for learning. The state information processor 1328 may convert the values included in the state information into a numeric form when the values are in non-numerical form. The state information processor 1328 may convert values of the state information into a specific numerical range. Furthermore, the state information processor 1328 may perform the dimension reduction operation of FIG. 15 and the virtual state information generation operation of FIG. 16 instead of the data managers 1310_1 and 1310_2 .

항목 분류기(1322)는 도 15 및 도 16에서 설명한 바와 같이, 전처리된 장치 예측 결과들 및 상태 정보를 항목별로 분류할 수 있다. 항목 가중치 계산기(1323)는 장치 예측 결과들 및 상태 정보에 기초하여 항목 가중치를 계산할 수 있다. 장치 가중치 계산기(1324)는 장치 예측 결과들 및 상태 정보에 기초하여 장치 가중치를 계산할 수 있다. 이후의 학습 동작은 도 4에서 설명한 바와 같다. 나아가, 학습기(1320)는 도 9의 학습기 구조로 구현될 수 있으며, 이 경우, 도 9의 전처리기(321_2)가 상태 정보 처리기를 포함할 수도 있다.As described with reference to FIGS. 15 and 16 , the item classifier 1322 may classify the preprocessed device prediction results and status information by item. The item weight calculator 1323 may calculate item weights based on device prediction results and state information. Device weight calculator 1324 can calculate device weights based on device prediction results and state information. The subsequent learning operation is as described in FIG. 4 . Furthermore, the learner 1320 may be implemented with the learner structure of FIG. 9, and in this case, the preprocessor 321_2 of FIG. 9 may include a state information processor.

도 18은 도 17의 항목 가중치 계산기의 예시적인 계층 구조를 도시한 도면이다. 도 13의 제1 내지 제n 예측 장치들(1101~110n)은 고유의 예측 모델을 통하여 장치 예측 결과를 생성할 수 있다. 제1 내지 제n 예측 장치들(1101~110n) 중 일부는 상태 정보(SD)를 데이터 관리기(1310_2)에 제공할 수 있으나, 다른 일부는 상태 정보(SD)를 데이터 관리기(1310_2)에 제공하지 않을 수 있다. 도 18의 항목 가중치 계산기(1323)는 상태 정보(SD)의 존재여부를 고려하여, 항목 가중치를 생성하도록 구현될 수 있다.FIG. 18 is a diagram illustrating an exemplary hierarchical structure of the item weight calculator of FIG. 17; The first to nth prediction devices 1101 to 110n of FIG. 13 may generate a device prediction result through a unique prediction model. Some of the first to nth prediction devices 1101 to 110n may provide state information (SD) to the data manager 1310_2, but others may not provide state information (SD) to the data manager 1310_2. may not be The item weight calculator 1323 of FIG. 18 may be implemented to generate item weights in consideration of whether state information (SD) exists.

도 18을 참조하면, 항목 가중치 계산기(1323)는 장치 판별기(1323_1) 및 병합기(1323_2)를 포함할 수 있다. 장치 판별기(1323_1)는 항목 분류기(1322)에 의하여 분리된 그룹들을 수신할 수 있다. 예시적으로, 장치 판별기(1323_1)는 제1 항목에 대응되는 제1 그룹(G1)을 수신한 것으로 가정한다. 제1 그룹(G1)은 제1 내지 제n 장치 예측 결과들 각각의 제1 항목 값들(E11~E1n)을 포함할 수 있다.Referring to FIG. 18 , the item weight calculator 1323 may include a device discriminator 1323_1 and a merger 1323_2. The device discriminator 1323_1 may receive groups separated by the item classifier 1322 . Illustratively, it is assumed that the device determiner 1323_1 receives the first group G1 corresponding to the first item. The first group G1 may include first item values E11 to E1n of each of the first to nth device prediction results.

장치 판별기(1323_1)는 제1 내지 제n 장치 예측 결과들 각각에 대응되는 상태 정보의 존재여부를 판단할 수 있다. 일례로, 제1, 제3, 제4, 및 제n 장치 예측 결과들에 대응되는 상태 정보는 존재하는 것으로 가정하고, 제2, 제5, 제6, 및 제m 장치 예측 결과들에 대응되는 상태 정보는 존재하지 않는 것으로 가정한다. 장치 판별기(1323_1)는 제1, 제3, 제4, 및 제n 장치 예측 결과들과 제2, 제5, 제6, 및 제m 장치 예측 결과들을 분리할 수 있다. 도 16과 같은 마스크 데이터(MSK)가 병합 데이터(MLD)에 포함되는 경우, 장치 판별기(1323_1)는 마스크 데이터(MSK)에 기초하여 상태 정보의 존재여부를 판단할 수 있다.The device determiner 1323_1 may determine whether state information corresponding to each of the first to nth device prediction results exists. As an example, it is assumed that state information corresponding to the first, third, fourth, and n-th device prediction results exists, and the state information corresponding to the second, fifth, sixth, and m-th device prediction results State information is assumed not to exist. The device discriminator 1323_1 may separate the first, third, fourth, and n-th device prediction results from the second, fifth, sixth, and m-th device prediction results. When the mask data MSK as shown in FIG. 16 is included in the merge data MLD, the device discriminator 1323_1 may determine whether state information exists based on the mask data MSK.

항목 가중치 계산기(1323)에 항목 가중치를 생성하기 위한 인공 신경망이 구현될 수 있다. 인공 신경망은 상술된 예측 모델(33)의 적어도 일부일 수 있다. 항목 가중치 계산기(1323)의 인공 신경망은 제1 및 제2 입력 레이어들(LI1, LI2), 제1 및 제2 임베딩 레이어들(LE1, LE2), 제1 및 제2 어텐션 레이어들(LA1, LA2), 및 제1 및 제2 출력 레이어들(LO1, LO2)을 포함할 수 있다.An artificial neural network for generating item weights may be implemented in the item weight calculator 1323 . The artificial neural network may be at least part of the predictive model 33 described above. The artificial neural network of the item weight calculator 1323 includes first and second input layers LI1 and LI2, first and second embedding layers LE1 and LE2, and first and second attention layers LA1 and LA2. ), and first and second output layers LO1 and LO2.

제1 입력 레이어(LI1)는 제1, 제3, 제4, 및 제n 장치 예측 결과들의 제1 항목 값들(E11, E13, E14, E1n)을 수신한다. 제1 입력 레이어(LI1)는 상태 정보를 더 수신한다. 제2 입력 레이어(LI2)는 제2, 제5, 제6, 및 제m 장치 예측 결과들의 제1 항목 값들(E12, E15, E16, E1m)을 수신한다. The first input layer LI1 receives first item values E11, E13, E14, and E1n of the first, third, fourth, and nth device prediction results. The first input layer LI1 further receives state information. The second input layer LI2 receives first item values E12, E15, E16, and E1m of the second, fifth, sixth, and mth device prediction results.

제1 임베딩 레이어(LE1)는 제1, 제3, 제4, 및 제n 장치 예측 결과들의 제1 항목 값들(E11, E13, E14, E1n) 및 상태 정보 사이의 관계를 고려하여, 제1 어텐션 레이어(LA1)에 제1 중간 결과를 출력할 수 있다. 제2 임베딩 레이어(LE2)는 제2, 제5, 제6, 및 제m 장치 예측 결과들의 제1 항목 값들(E12, E15, E16, E1m) 사이의 관계를 고려하여 제2 어텐션 레이어(LA2)에 제2 중간 결과를 출력할 수 있다.The first embedding layer LE1 considers the relationship between the first item values E11, E13, E14, and E1n of the first, third, fourth, and n-th device prediction results and state information, A first intermediate result may be output to the layer LA1. The second embedding layer (LE2) considers the relationship between the first item values (E12, E15, E16, E1m) of the second, fifth, sixth, and mth device prediction results, and forms the second attention layer (LA2). The second intermediate result can be output to .

제1 어텐션 레이어(LA1)는 제1 중간 결과를 분석하고, 제1, 제3, 제4, 및 제n 장치 예측 결과들의 제1 항목 값들(E11, E13, E14, E1n)에 대한 항목 가중치들(A11, A13, A14, A1n)을 계산할 수 있다. 제1 출력 레이어(LO1)는 이러한 항목 가중치들(A11, A13, A14, A1n)을 병합기(1323_2)로 출력할 수 있다. 제2 어텐션 레이어(LA2)는 제2 중간 결과를 분석하고, 제2, 제5, 제6, 및 제m 장치 예측 결과들의 제1 항목 값들(E12, E15, E16, E1m)에 대한 항목 가중치들(A12, A15, A16, A1m)을 계산할 수 있다. 제2 출력 레이어(LO2)는 이러한 항목 가중치들(A12, A15, A16, A1m)을 병합기(1323_2)로 출력할 수 있다.The first attention layer LA1 analyzes the first intermediate result, and item weights for the first item values E11, E13, E14, and E1n of the first, third, fourth, and nth device prediction results. (A11, A13, A14, A1n) can be calculated. The first output layer LO1 may output these item weights A11, A13, A14, and A1n to the merger 1323_2. The second attention layer LA2 analyzes the second intermediate result, and item weights for the first item values E12, E15, E16, and E1m of the second, fifth, sixth, and mth device prediction results. (A12, A15, A16, A1m) can be calculated. The second output layer LO2 may output these item weights A12, A15, A16, and A1m to the merger 1323_2.

병합기(1323_2)는 제1 항목 값들에 대한 모든 수신된 항목 가중치들(A11~A1n)을 병합하여, 제1 그룹 가중치(AD1)를 생성할 수 있다. 즉, 항목 가중치 계산기(1323)는 상태 정보가 추가된 장치 예측 결과들과 상태 정보가 추가되지 않은 장치 예측 결과들을 구분하여 학습 동작을 수행할 수 있다.The merger 1323_2 may generate a first group weight AD1 by merging all received item weights A11 to A1n for the first item values. That is, the item weight calculator 1323 may perform a learning operation by distinguishing device prediction results to which state information is added and device prediction results to which state information is not added.

예시적으로, 도 18의 계층 구조는 항목 가중치 계산기(1323)뿐만 아니라, 도 18의 장치 가중치 계산기(1324)에도 적용될 수 있다. 나아가, 도 18의 계층 구조는 예측기의 항목 가중치 계산기 및 장치 가중치 계산기에도 적용될 수 있다.Illustratively, the hierarchical structure of FIG. 18 may be applied to the device weight calculator 1324 of FIG. 18 as well as the item weight calculator 1323 . Furthermore, the hierarchical structure of FIG. 18 can also be applied to the item weight calculator and device weight calculator of the predictor.

도 19는 도 2의 예측기의 예시적인 블록도이다. 도 19를 참조하면, 예측기(1330)는 는 전처리기(1331), 항목 분류기(1332), 항목 가중치 계산기(1333), 장치 가중치 계산기(1334), 가중치 적용기(1335), 및 결과 계산기(1336)를 포함할 수 있다. 전처리기(1331), 항목 분류기(1332), 항목 가중치 계산기(1333), 장치 가중치 계산기(1334), 가중치 적용기(1335), 및 결과 계산기(1336)는 도 11의 전처리기(331_1), 항목 분류기(332_1), 항목 가중치 계산기(333_1), 장치 가중치 계산기(334_1), 가중치 적용기(335_1), 및 결과 계산기(336_1)에 대응된다. 따라서, 도 11의 예측기(330_1)를 기준으로, 도 19의 예측기(1330)가 설명된다.19 is an exemplary block diagram of the predictor of FIG. 2; Referring to FIG. 19, the predictor 1330 includes a preprocessor 1331, an item classifier 1332, an item weight calculator 1333, a device weight calculator 1334, a weight applicator 1335, and a result calculator 1336. ) may be included. Preprocessor 1331, item classifier 1332, item weight calculator 1333, device weight calculator 1334, weight applicator 1335, and result calculator 1336 are preprocessor 331_1 of FIG. 11, item It corresponds to the classifier 332_1, the item weight calculator 333_1, the device weight calculator 334_1, the weight applicator 335_1, and the result calculator 336_1. Accordingly, the predictor 1330 of FIG. 19 will be described based on the predictor 330_1 of FIG. 11 .

예측기(1330)는 병합 데이터(MLD)를 수신한다. 병합 데이터(MLD)는 도 13에서 설명된 바와 같이, 장치 예측 결과들 및 상태 정보를 포함한다. 이러한 상태 정보를 처리하기 위하여, 전처리기(1331)는 상태 정보 처리기(1337)를 포함할 수 있다. 상태 정보 처리기(1337)는 상태 정보를 학습에 적합한 데이터로 전처리할 수 있다. 나아가, 상태 정보 처리기(1337)는 데이터 관리기(1310_1, 1310_2) 대신에, 도 15의 차원 축소 동작 및 도 16의 가상의 상태 정보 생성 동작을 수행할 수도 있다.Predictor 1330 receives merged data (MLD). Merge Data (MLD) includes device prediction results and status information, as described in FIG. 13 . To process this state information, the pre-processor 1331 may include a state information processor 1337. The state information processor 1337 may pre-process state information into data suitable for learning. Furthermore, the state information processor 1337 may perform the dimension reduction operation of FIG. 15 and the virtual state information generation operation of FIG. 16 instead of the data managers 1310_1 and 1310_2 .

항목 분류기(1332)는 도 15 및 도 16에서 설명한 바와 같이, 전처리된 장치 예측 결과들 및 상태 정보를 항목별로 분류할 수 있다. 항목 가중치 계산기(1333)는 장치 예측 결과들 및 상태 정보에 기초하여 항목 가중치를 계산할 수 있다. 장치 가중치 계산기(1334)는 장치 예측 결과들 및 상태 정보에 기초하여 장치 가중치를 계산할 수 있다. 이후의 예측 동작은 도 11에서 설명한 바와 같다. 나아가, 예측기(1330)는 도 12의 학습기 구조로 구현될 수 있으며, 이 경우, 도 12의 전처리기(331_2)가 상태 정보 처리기를 포함할 수도 있다.As described with reference to FIGS. 15 and 16 , the item classifier 1332 may classify the preprocessed device prediction results and status information by item. The item weight calculator 1333 may calculate item weights based on device prediction results and state information. Device weight calculator 1334 can calculate device weights based on device prediction results and state information. Subsequent prediction operations are as described in FIG. 11 . Furthermore, the predictor 1330 may be implemented with the learner structure of FIG. 12, and in this case, the preprocessor 331_2 of FIG. 12 may include a state information processor.

도 20은 도 1의 앙상블 예측 장치의 예시적인 블록도이다. 도 20을 참조하면, 앙상블 예측 장치(2300)는 네트워크 인터페이스(2301), 프로세서(2302), 메모리(2303), 스토리지(2304), 및 버스(2305)를 포함할 수 있다. 예시적으로, 앙상블 예측 장치(2300)는 서버로 구현될 수 있으나, 이에 제한되지 않는다.FIG. 20 is an exemplary block diagram of the ensemble prediction apparatus of FIG. 1 . Referring to FIG. 20 , an ensemble prediction device 2300 may include a network interface 2301, a processor 2302, a memory 2303, a storage 2304, and a bus 2305. For example, the ensemble prediction device 2300 may be implemented as a server, but is not limited thereto.

네트워크 인터페이스(2301)는 도 1의 네트워크(400)를 통하여 단말기(200) 또는 제1 내지 제n 예측 장치들(101~10n)과 통신하도록 구성된다. 네트워크 인터페이스(2301)는 네트워크(400)를 통하여 수신된 데이터를 버스(2305)를 통하여 프로세서(2302), 메모리(2303) 또는 스토리지(2304)에 제공할 수 있다. 네트워크 인터페이스(2301)는 프로세서(2302)에 의한 예측 요청과 함께 시계열 데이터를 제1 내지 제n 예측 장치들(101~10n)로 출력할 수 있다. 또한, 네트워크 인터페이스(2301)는 시계열 데이터에 응답하여 생성된 장치 예측 결과들을 수신할 수 있다.The network interface 2301 is configured to communicate with the terminal 200 or the first to nth prediction devices 101 to 10n through the network 400 of FIG. 1 . The network interface 2301 may provide data received through the network 400 to the processor 2302 , memory 2303 , or storage 2304 through the bus 2305 . The network interface 2301 may output time-series data to the first to nth prediction devices 101 to 10n together with a prediction request from the processor 2302 . In addition, the network interface 2301 may receive device prediction results generated in response to time-series data.

프로세서(2302)는 앙상블 예측 장치(2300)의 중앙 처리 장치로의 기능을 수행할 수 있다. 프로세서(1220)는 앙상블 예측 장치(2300)의 데이터 관리, 학습, 및 예측을 위하여 요구되는 제어 동작 및 연산 동작을 수행할 수 있다. 예를 들어, 프로세서(2302)의 제어에 따라, 네트워크 인터페이스(2301)는 시계열 데이터를 제1 내지 제n 예측 장치들(101~10n)로 송신하고, 장치 예측 결과들을 제1 내지 제n 예측 장치들(101~10n)로부터 수신할 수 있다. 프로세서(2302)의 제어에 따라, 예측 모델의 가중치 그룹이 조절될 수 있고, 예측 모델을 이용하여 앙상블 결과가 계산될 수 있다. 프로세서(2302)는 메모리(2303)의 연산 공간을 활용하여 동작할 수 있고, 스토리지(2304)로부터 운영체제를 구동하기 위한 파일들 및 어플리케이션의 실행 파일들을 읽을 수 있다. 프로세서(2302)는 운영 체제 및 다양한 어플리케이션들을 실행할 수 있다.The processor 2302 may function as a central processing unit of the ensemble prediction device 2300 . The processor 1220 may perform control operations and calculation operations required for data management, learning, and prediction of the ensemble prediction device 2300 . For example, under the control of the processor 2302, the network interface 2301 transmits time-series data to the first to n-th prediction devices 101 to 10n, and transmits device prediction results to the first to n-th prediction devices. It can be received from (101 ~ 10n). Under the control of the processor 2302, weight groups of the predictive model may be adjusted, and an ensemble result may be calculated using the predictive model. The processor 2302 may operate by utilizing the computational space of the memory 2303 and may read files for driving an operating system and execution files of applications from the storage 2304 . Processor 2302 may run an operating system and various applications.

메모리(2303)는 프로세서(2302)에 의하여 처리되거나 처리될 예정인 데이터 및 프로세스 코드들을 저장할 수 있다. 예를 들어, 메모리(2303)는 장치 예측 결과들, 장치 예측 결과들을 관리하기 위한 정보들, 가중치 그룹을 생성하기 위한 정보들, 앙상블 결과를 계산하기 위한 정보들, 및 예측 모델을 구축하기 위한 정보들을 저장할 수 있다. 메모리(2303)는 앙상블 예측 장치(2300)의 주기억 장치로 이용될 수 있다. 메모리(2303)는 DRAM (Dynamic RAM), SRAM (Static RAM), PRAM (Phase-change RAM), MRAM (Magnetic RAM), FeRAM (Ferroelectric RAM), RRAM (Resistive RAM) 등을 포함할 수 있다.Memory 2303 may store data and process codes processed or scheduled to be processed by processor 2302 . For example, the memory 2303 includes device prediction results, information for managing device prediction results, information for generating a weight group, information for calculating an ensemble result, and information for building a predictive model. can save them. The memory 2303 may be used as a main memory device of the ensemble predictor 2300 . The memory 2303 may include dynamic RAM (DRAM), static RAM (SRAM), phase-change RAM (PRAM), magnetic RAM (MRAM), ferroelectric RAM (FeRAM), resistive RAM (RRAM), and the like.

데이터 관리부(2310), 학습부(2320), 및 예측부(2330)는 메모리(2303)에 로딩되어 실행될 수 있다. 데이터 관리부(2310), 학습부(2320), 및 예측부(2330)는 각각 도 2의 데이터 관리기(310), 학습기(320), 및 예측기(330)에 대응된다. 데이터 관리부(2310), 학습부(2320), 및 예측부(2330)는 메모리(2303)의 연산 공간의 일부일 수 있다. 이 경우, 데이터 관리부(2310), 학습부(2320), 및 예측부(2330)는 펌웨어 또는 소프트웨어로 구현될 수 있다. 예를 들어, 펌웨어는 스토리지(2304)에 저장되고, 펌웨어를 실행 시에 메모리(2303)에 로딩될 수 있다. 프로세서(2302)는 메모리(2303)에 로딩된 펌웨어를 실행할 수 있다.The data management unit 2310, the learning unit 2320, and the prediction unit 2330 may be loaded into the memory 2303 and executed. The data management unit 2310, the learning unit 2320, and the prediction unit 2330 correspond to the data manager 310, the learner 320, and the predictor 330 of FIG. 2, respectively. The data management unit 2310 , the learning unit 2320 , and the prediction unit 2330 may be part of an operation space of the memory 2303 . In this case, the data management unit 2310, the learning unit 2320, and the prediction unit 2330 may be implemented as firmware or software. For example, the firmware may be stored in the storage 2304 and loaded into the memory 2303 when the firmware is executed. Processor 2302 may execute firmware loaded into memory 2303 .

데이터 관리부(2310)는 프로세서(2302)의 제어 하에 스토리지(2304)에 저장된 원시 학습 데이터에 포함된 시계열 데이터를 로딩하고, 네트워크 인터페이스(2301)를 통하여 제1 내지 제n 예측 장치들(101~10n)로 송신하도록 동작될 수 있다. 데이터 관리부(2310)는 장치 예측 결과들을 병합하여 학습 또는 예측을 위한 병합 데이터를 생성하도록 동작될 수 있다. 학습부(2320)는 프로세서(2302)의 제어 하에 병합 데이터를 전처리하고, 분석하여 가중치 그룹을 생성 및 조절하도록 동작될 수 있다. 예측부(2330)는 프로세서(2302)의 제어 하에 예측 모델에 기초하여 앙상블 결과를 생성하도록 동작될 수 있다.The data management unit 2310 loads the time-series data included in the raw training data stored in the storage 2304 under the control of the processor 2302, and the first to n-th prediction devices 101 to 10n through the network interface 2301 ). The data management unit 2310 may be operated to generate merged data for learning or prediction by merging device prediction results. Under the control of the processor 2302, the learning unit 2320 may operate to pre-process and analyze the merged data to generate and adjust weight groups. The predictor 2330 may be operated to generate ensemble results based on the predictive model under the control of the processor 2302 .

스토리지(2304)는 운영 체제 또는 어플리케이션들에 의해 장기적인 저장을 목적으로 생성되는 데이터, 운영 체제를 구동하기 위한 파일, 또는 어플리케이션들의 실행 파일 등을 저장할 수 있다. 예를 들어, 스토리지(2304)는 데이터 관리부(2310), 학습부(2320), 및 예측부(2330)의 실행을 위한 파일들을 저장할 수 있다. 스토리지(2304)는 앙상블 예측 장치(2300)의 보조 기억 장치로 이용될 수 있다. 스토리지(2304)는 플래시 메모리, PRAM (Phase-change RAM), MRAM (Magnetic RAM), FeRAM (Ferroelectric RAM), RRAM (Resistive RAM) 등을 포함할 수 있다.The storage 2304 may store data generated by an operating system or applications for long-term storage, files for driving an operating system, or execution files of applications. For example, the storage 2304 may store files for execution of the data management unit 2310, the learning unit 2320, and the prediction unit 2330. The storage 2304 may be used as an auxiliary storage device of the ensemble predictor 2300 . The storage 2304 may include flash memory, phase-change RAM (PRAM), magnetic RAM (MRAM), ferroelectric RAM (FeRAM), resistive RAM (RRAM), and the like.

버스(2305)는 앙상블 예측 장치(2300)의 구성 요소들 사이에서 통신 경로를 제공할 수 있다. 네트워크 인터페이스(2301), 프로세서(2302), 메모리(2303), 및 스토리지(2304)는 버스(2305)를 통해 서로 데이터를 교환할 수 있다. 버스(2305)는 앙상블 예측 장치(2300)에서 이용되는 다양한 유형의 통신 포맷을 지원하도록 구성될 수 있다.The bus 2305 may provide a communication path between components of the ensemble prediction device 2300 . The network interface 2301 , processor 2302 , memory 2303 , and storage 2304 may exchange data with each other through the bus 2305 . The bus 2305 may be configured to support various types of communication formats used in the ensemble prediction device 2300.

위에서 설명한 내용은 본 발명을 실시하기 위한 구체적인 예들이다. 본 발명에는 위에서 설명한 실시 예들뿐만 아니라, 단순하게 설계 변경하거나 용이하게 변경할 수 있는 실시 예들도 포함될 것이다. 또한, 본 발명에는 상술한 실시 예들을 이용하여 앞으로 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다.What has been described above are specific examples for carrying out the present invention. The present invention will include not only the above-described embodiments, but also embodiments that can be simply or easily changed in design. In addition, the present invention will also include techniques that can be easily modified and implemented in the future using the above-described embodiments.

1000: 건강 상태 예측 시스템
101~10n, 1101~110n: 예측 장치들
200: 단말기
300, 2300: 앙상블 예측 장치
310, 1310, 1310_1, 1310_2: 데이터 관리기
320, 320_1, 320_2, 1320: 학습기
330, 330_1, 330_2, 1330: 예측기
1000: health condition prediction system
101 to 10n, 1101 to 110n: prediction devices
200: terminal
300, 2300: ensemble prediction device
310, 1310, 1310_1, 1310_2: Data manager
320, 320_1, 320_2, 1320: learner
330, 330_1, 330_2, 1330: predictor

Claims (20)

복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치에 있어서,
원시 학습 데이터를 제1 예측 장치 및 제2 예측 장치에 제공하고, 상기 제1 예측 장치로부터 상기 원시 학습 데이터에 대응되는 제1 장치 예측 결과를 수신하고, 상기 제2 예측 장치로부터 상기 원시 학습 데이터에 대응되는 제2 장치 예측 결과를 수신하는 데이터 관리기; 및
상기 제1 장치 예측 결과 및 상기 제2 장치 예측 결과에 기초하여, 상기 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하는 제1 항목 가중치들, 상기 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존하는 제2 항목 가중치들, 상기 제1 예측 장치에 대응되는 제1 장치 가중치, 및 상기 제2 예측 장치에 대응되는 제2 장치 가중치를 생성하기 위한 예측 모델의 가중치 그룹을 조절하는 학습기를 포함하되,
상기 가중치 그룹은, 상기 제1 항목 가중치들을 생성하기 위한 제1 파라미터, 상기 제2 항목 가중치들을 생성하기 위한 제2 파라미터, 및 상기 제1 및 제2 장치 가중치들을 생성하기 위한 제3 파라미터를 포함하는 장치.
An apparatus for ensembling data received from a plurality of prediction apparatuses,
Provides raw training data to a first prediction device and a second prediction device, receives a first device prediction result corresponding to the raw training data from the first prediction device, and receives the raw training data from the second prediction device. a data manager receiving a corresponding prediction result of the second device; and
Based on the first device prediction result and the second device prediction result, the first item weights depending on the first item values of the first and second device prediction results, the first and second device prediction results Adjusting weight groups of a predictive model for generating second item weights depending on second item values, first device weights corresponding to the first prediction device, and second device weights corresponding to the second prediction device Including a learning period that
wherein the weight group includes a first parameter for generating the first item weights, a second parameter for generating the second item weights, and a third parameter for generating the first and second device weights. Device.
제1 항에 있어서,
상기 학습기는,
상기 제1 항목 값들 및 상기 제1 파라미터에 기초하여 상기 제1 항목 가중치들을 계산하고, 상기 제2 항목 값들 및 상기 제2 파라미터에 기초하여 상기 제2 항목 가중치들을 계산하는 항목 가중치 계산기;
상기 제1 및 제2 장치 예측 결과들 및 상기 제3 파라미터에 기초하여 상기 제1 및 제2 장치 가중치들을 계산하는 장치 가중치 계산기;
상기 제1 장치 예측 결과에 상기 제1 및 제2 항목 가중치들 및 상기 제1 장치 가중치를 적용하여 제1 결과를 생성하고, 상기 제2 장치 예측 결과에 상기 제1 및 제2 항목 가중치들 및 상기 제2 장치 가중치를 적용하여 제2 결과를 생성하는 가중치 적용기; 및
상기 제1 및 제2 결과들에 기초하여, 상기 제1 파라미터, 상기 제2 파라미터, 및 상기 제3 파라미터를 조절하는 가중치 제어기를 포함하는 장치.
According to claim 1,
The learner,
an item weight calculator configured to calculate the first item weights based on the first item values and the first parameter, and to calculate the second item weights based on the second item values and the second parameter;
a device weight calculator configured to calculate the first and second device weights based on the first and second device prediction results and the third parameter;
A first result is generated by applying the first and second item weights and the first device weight to the first device prediction result, and the first and second item weights and the first device weight are applied to the second device prediction result. a weight applicator that generates a second result by applying a second device weight; and
and a weight controller to adjust the first parameter, the second parameter, and the third parameter based on the first and second results.
제2 항에 있어서,
상기 학습기는,
상기 제1 및 제2 장치 예측 결과들의 상기 제1 항목 값들을 그룹화하여 상기 항목 가중치 계산기로 출력하고, 상기 제1 및 제2 장치 예측 결과들의 상기 제2 항목 값들을 그룹화하여 상기 항목 가중치 계산기로 출력하는 항목 분류기를 더 포함하는 장치.
According to claim 2,
The learner,
The first item values of the first and second device prediction results are grouped and output to the item weight calculator, and the second item values of the first and second device prediction results are grouped and output to the item weight calculator. Apparatus further comprising an item classifier that
제2 항에 있어서,
상기 가중치 그룹은 상기 제1 결과 또는 상기 제2 결과와 동일한 차원을 갖는 앙상블 결과를 생성하기 위한 제4 파라미터를 더 포함하고,
상기 학습기는,
상기 제1 및 제2 결과들 및 상기 제4 파라미터에 기초하여, 상기 앙상블 결과를 생성하는 결과 계산기를 더 포함하고,
상기 가중치 제어기는 상기 앙상블 결과에 기초하여 상기 제1 내지 제4 파라미터들을 조절하는 장치.
According to claim 2,
The weight group further includes a fourth parameter for generating an ensemble result having the same dimension as the first result or the second result,
The learner,
Further comprising a result calculator for generating the ensemble result based on the first and second results and the fourth parameter;
The weight controller adjusts the first to fourth parameters based on the ensemble result.
제4 항에 있어서,
상기 가중치 제어기는 상기 앙상블 결과가 기설정된 비교 결과로부터 기준 오차 이내일 때까지 상기 제1 내지 제4 파라미터들을 조절하는 장치.
According to claim 4,
The weight controller adjusts the first to fourth parameters until the ensemble result is within a standard error from a preset comparison result.
제1 항에 있어서,
상기 학습기는,
상기 제1 항목 값들 및 상기 제1 파라미터에 기초하여 상기 제1 항목 가중치들을 계산하고, 상기 제2 항목 값들 및 상기 제2 파라미터에 기초하여 상기 제2 항목 가중치들을 계산하는 항목 가중치 계산기;
상기 제1 항목 값들에 상기 제1 항목 가중치들을 적용하고, 상기 제2 항목 값들에 상기 제2 항목 가중치들을 적용하여 중간 결과를 생성하는 항목 가중치 적용기;
상기 중간 결과 및 상기 제3 파라미터에 기초하여 상기 제1 및 제2 장치 가중치들을 계산하는 장치 가중치 계산기;
상기 중간 결과 중 상기 제1 장치 예측 결과에 대응되는 값에 상기 제1 장치 가중치를 적용하여 제1 결과를 생성하고, 상기 중간 결과 중 상기 제2 장치 예측 결과에 대응되는 값에 상기 제2 장치 가중치를 적용하여 제2 결과를 생성하는 장치 가중치 적용기; 및
상기 제1 및 제2 결과들에 기초하여, 상기 제1 파라미터, 상기 제2 파라미터, 및 상기 제3 파라미터를 조절하는 가중치 제어기를 포함하는 장치.
According to claim 1,
The learner,
an item weight calculator configured to calculate the first item weights based on the first item values and the first parameter, and to calculate the second item weights based on the second item values and the second parameter;
an item weight applicator that applies the first item weights to the first item values and applies the second item weights to the second item values to produce an intermediate result;
a device weight calculator that calculates the first and second device weights based on the intermediate result and the third parameter;
A first result is generated by applying the first device weight to a value corresponding to the first device prediction result among the intermediate results, and the second device weight to a value corresponding to the second device prediction result among the intermediate results. a device weighting applicator for generating a second result by applying and
and a weight controller to adjust the first parameter, the second parameter, and the third parameter based on the first and second results.
제6 항에 있어서,
상기 가중치 그룹은 상기 제1 결과 또는 상기 제2 결과와 동일한 차원을 갖는 앙상블 결과를 생성하기 위한 제4 파라미터를 더 포함하고,
상기 학습기는,
상기 제1 및 제2 결과들 및 상기 제4 파라미터에 기초하여, 상기 앙상블 결과를 생성하는 결과 계산기를 더 포함하고,
상기 가중치 제어기는 상기 앙상블 결과에 기초하여 상기 제1 내지 제4 파라미터들을 조절하는 장치.
According to claim 6,
The weight group further includes a fourth parameter for generating an ensemble result having the same dimension as the first result or the second result,
The learner,
Further comprising a result calculator for generating the ensemble result based on the first and second results and the fourth parameter;
The weight controller adjusts the first to fourth parameters based on the ensemble result.
제1 항에 있어서,
상기 데이터 관리기는, 상기 제1 예측 장치로부터 상기 제1 장치 예측 결과를 생성하기 위한 제1 예측 모델의 제1 상태 정보를 더 수신하고, 상기 제2 예측 장치로부터 상기 제2 장치 예측 결과를 생성하기 위한 제2 예측 모델의 제2 상태 정보를 더 수신하고,
상기 학습기는, 상기 제1 상태 정보 및 상기 제2 상태 정보에 더 기초하여 상기 가중치 그룹을 조절하는 장치.
According to claim 1,
The data manager further receives first state information of a first prediction model for generating the first device prediction result from the first prediction device, and generates the second device prediction result from the second prediction device. Further receiving second state information of a second predictive model for
The learner adjusts the weight group further based on the first state information and the second state information.
제8 항에 있어서,
상기 데이터 관리기 또는 상기 학습기는, 상기 제1 상태 정보의 차원을 상기 제1 장치 예측 결과의 차원과 동일하게 변환하고, 상기 제2 상태 정보의 차원을 상기 제2 장치 예측 결과의 차원과 동일하게 변환하는 장치.
According to claim 8,
The data manager or the learner converts the dimension of the first state information to be the same as the dimension of the first device prediction result, and converts the dimension of the second state information to be the same as the dimension of the second device prediction result. device to do.
제1 항에 있어서,
상기 데이터 관리기는, 상기 제1 예측 장치로부터 상기 제1 장치 예측 결과를 생성하기 위한 제1 상태 정보를 더 수신하고,
상기 데이터 관리기 또는 상기 학습기는, 상기 제2 장치 예측 결과에 기초하여 상기 제2 예측 장치에 대응되는 제2 상태 정보를 생성하고,
상기 학습기는, 상기 제1 상태 정보 및 상기 제2 상태 정보에 더 기초하여 상기 가중치 그룹을 조절하는 장치.
According to claim 1,
The data manager further receives first state information for generating the first device prediction result from the first prediction device;
The data manager or the learner generates second state information corresponding to the second prediction device based on a prediction result of the second device;
The learner adjusts the weight group further based on the first state information and the second state information.
제10 항에 있어서,
상기 데이터 관리기 또는 상기 학습기는, 상기 제1 상태 정보에 기초하여 상기 제1 장치 예측 결과에 대응되는 제1 마스크 정보를 생성하고, 상기 제2 상태 정보에 기초하여 상기 제2 장치 예측 결과에 대응되는 제2 마스크 정보를 생성하고,
상기 학습기는, 상기 제1 마스크 정보 및 상기 제2 마스크 정보에 더 기초하여 상기 가중치 그룹을 조절하는 장치.
According to claim 10,
The data manager or the learner generates first mask information corresponding to the first device prediction result based on the first state information, and generates first mask information corresponding to the second device prediction result based on the second state information. generating second mask information;
The learner adjusts the weight group further based on the first mask information and the second mask information.
제1 항에 있어서,
상기 데이터 관리기는, 상기 제1 예측 장치로부터 상기 제1 장치 예측 결과를 생성하기 위한 상태 정보를 더 수신하고,
상기 학습기는, 상기 상태 정보 및 상기 제1 장치 예측 결과에 기초하여 제1 중간 항목 가중치들을 계산하고, 상기 제2 장치 예측 결과에 기초하여 제2 중간 항목 가중치들을 계산하고, 상기 제1 및 제2 중간 항목 가중치들을 병합하여 상기 제1 및 제2 항목 가중치들을 생성하는 장치.
According to claim 1,
The data manager further receives state information for generating the first device prediction result from the first prediction device;
The learner calculates first intermediate item weights based on the state information and the first device prediction result, calculates second intermediate item weights based on the second device prediction result, and Apparatus for merging intermediate item weights to produce the first and second item weights.
복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치에 있어서,
시계열 데이터를 제1 예측 장치 및 제2 예측 장치에 제공하고, 상기 제1 예측 장치로부터 상기 시계열 데이터에 대응되는 제1 장치 예측 결과를 수신하고, 상기 제2 예측 장치로부터 상기 시계열 데이터에 대응되는 제2 장치 예측 결과를 수신하는 데이터 관리기; 및
상기 제1 장치 예측 결과 및 상기 제2 장치 예측 결과에 기초하여, 상기 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하는 제1 항목 가중치들, 상기 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존하는 제2 항목 가중치들, 상기 제1 예측 장치에 대응되는 제1 장치 가중치, 및 상기 제2 예측 장치에 대응되는 제2 장치 가중치를 생성하고, 상기 제1 및 제2 항목 가중치들 및 상기 제1 및 제2 장치 가중치들에 기초하여 상기 제1 및 제2 장치 예측 결과들의 앙상블 결과를 생성하는 예측기를 포함하는 장치.
An apparatus for ensembling data received from a plurality of prediction apparatuses,
Provide time series data to a first prediction device and a second prediction device, receive a first device prediction result corresponding to the time series data from the first prediction device, and receive a first device prediction result corresponding to the time series data from the second prediction device. 2 a data manager receiving device prediction results; and
Based on the first device prediction result and the second device prediction result, the first item weights depending on the first item values of the first and second device prediction results, the first and second device prediction results generating second item weights depending on second item values, a first device weight corresponding to the first prediction device, and a second device weight corresponding to the second prediction device; and a predictor to produce an ensemble result of the first and second device prediction results based on weights and the first and second device weights.
제13 항에 있어서,
상기 제1 항목 가중치들을 생성하기 위한 제1 파라미터, 상기 제2 항목 가중치들을 생성하기 위한 제2 파라미터, 및 상기 제1 및 제2 장치 가중치들을 생성하기 위한 제3 파라미터를 포함하는 예측 모델의 가중치 그룹이 저장되는 스토리지를 더 포함하고,
상기 예측기는, 상기 제1 항목 값들 및 상기 제1 파라미터에 기초하여 상기 제1 항목 가중치들을 계산하고, 상기 제2 항목 값들 및 상기 제2 파라미터에 기초하여 상기 제2 항목 가중치들을 계산하고, 상기 제1 및 제2 장치 예측 결과들 및 상기 제3 파라미터에 기초하여 상기 제1 및 제2 장치 가중치들을 계산하는 장치.
According to claim 13,
A weight group of a predictive model comprising a first parameter for generating the first item weights, a second parameter for generating the second item weights, and a third parameter for generating the first and second device weights. Including further storage where this is stored,
The predictor calculates the first item weights based on the first item values and the first parameter, calculates the second item weights based on the second item values and the second parameter, and An apparatus for calculating the first and second device weights based on first and second device prediction results and the third parameter.
제13 항에 있어서,
상기 예측기는,
상기 제1 및 제2 장치 예측 결과들의 상기 제1 및 제2 항목 값들을 전처리하는 전처리기;
상기 전처리된 제1 항목 값들에 기초하여 상기 제1 항목 가중치들을 계산하고, 상기 전처리된 제2 항목 값들에 기초하여 상기 제2 항목 가중치들을 계산하는 항목 가중치 계산기; 및
상기 전처리된 제1 및 제2 장치 예측 결과들에 기초하여 상기 제1 및 제2 장치 가중치들을 계산하는 장치 가중치 계산기를 포함하는 장치.
According to claim 13,
The predictor,
a preprocessor preprocessing the first and second item values of the first and second device prediction results;
an item weight calculator configured to calculate the first item weights based on the preprocessed first item values and to calculate the second item weights based on the preprocessed second item values; and
and a device weight calculator configured to calculate the first and second device weights based on the preprocessed first and second device prediction results.
제13 항에 있어서,
상기 예측기는,
상기 제1 및 제2 장치 예측 결과들의 상기 제1 및 제2 항목 값들을 전처리하는 전처리기;
상기 전처리된 제1 항목 값들에 기초하여 상기 제1 항목 가중치들을 계산하고, 상기 전처리된 제2 항목 값들에 기초하여 상기 제2 항목 가중치들을 계산하는 항목 가중치 계산기;
상기 전처리된 제1 항목 값들에 상기 제1 항목 가중치들을 적용하고, 상기 전처리된 제2 항목 값들에 상기 제2 항목 가중치들을 적용하여 중간 결과를 생성하는 항목 가중치 적용기;
상기 중간 결과에 기초하여 상기 제1 및 제2 장치 가중치들을 계산하는 장치 가중치 계산기;
상기 중간 결과 중 상기 제1 장치 예측 결과에 대응되는 값에 상기 제1 장치 가중치를 적용하여 제1 결과를 생성하고, 상기 중간 결과 중 상기 제2 장치 예측 결과에 대응되는 값에 상기 제2 장치 가중치를 적용하여 제2 결과를 생성하는 장치 가중치 적용기; 및
상기 제1 및 제2 결과들에 기초하여 상기 제1 결과 또는 상기 제2 결과와 동일한 차원을 갖는 상기 앙상블 결과를 생성하는 결과 계산기를 포함하는 장치.
According to claim 13,
The predictor,
a preprocessor preprocessing the first and second item values of the first and second device prediction results;
an item weight calculator configured to calculate the first item weights based on the preprocessed first item values and to calculate the second item weights based on the preprocessed second item values;
an item weight applicator that applies the first item weights to the preprocessed first item values and applies the second item weights to the preprocessed second item values to generate an intermediate result;
a device weight calculator that calculates the first and second device weights based on the intermediate result;
A first result is generated by applying the first device weight to a value corresponding to the first device prediction result among the intermediate results, and the second device weight to a value corresponding to the second device prediction result among the intermediate results. a device weighting applicator for generating a second result by applying and
and a result calculator to generate the ensemble result having the same dimension as the first result or the second result based on the first and second results.
제13 항에 있어서,
상기 데이터 관리기는, 상기 제1 예측 장치로부터 상기 제1 장치 예측 결과를 생성하기 위한 제1 예측 모델의 제1 상태 정보를 더 수신하고, 상기 제2 예측 장치로부터 상기 제2 장치 예측 결과를 생성하기 위한 제2 예측 모델의 제2 상태 정보를 더 수신하고,
상기 예측기는, 상기 제1 상태 정보 및 상기 제2 상태 정보에 더 기초하여 상기 앙상블 결과를 생성하는 장치.
According to claim 13,
The data manager further receives first state information of a first prediction model for generating the first device prediction result from the first prediction device, and generates the second device prediction result from the second prediction device. Further receiving second state information of a second predictive model for
wherein the predictor generates the ensemble result further based on the first state information and the second state information.
복수의 예측 장치들로부터 수신된 데이터를 앙상블하는 장치의 동작 방법에 있어서,
시계열 데이터 및 예측 요청을 제1 예측 장치 및 제2 예측 장치에 제공하는 단계;
상기 제1 예측 장치로부터 상기 예측 요청에 응답한 상기 시계열 데이터의 제1 장치 예측 결과를 수신하는 단계;
상기 제2 예측 장치로부터 상기 예측 요청에 응답한 상기 시계열 데이터의 제2 장치 예측 결과를 수신하는 단계;
상기 제1 및 제2 장치 예측 결과들을 전처리하는 단계;
상기 전처리된 제1 및 제2 장치 예측 결과들에 기초하여, 상기 제1 및 제2 장치 예측 결과들의 제1 항목 값들에 의존하는 제1 항목 가중치들을 생성하는 단계;
상기 전처리된 제1 및 제2 장치 예측 결과들에 기초하여, 상기 제1 및 제2 장치 예측 결과들의 제2 항목 값들에 의존하는 제2 항목 가중치들을 생성하는 단계;
상기 전처리된 제1 및 제2 장치 예측 결과들에 기초하여, 상기 제1 예측 장치에 대응되는 제1 장치 가중치 및 상기 제2 예측 장치에 대응되는 제2 장치 가중치를 생성하는 단계;
상기 전처리된 제1 장치 예측 결과에 상기 제1 및 제2 항목 가중치들 및 상기 제1 장치 가중치를 적용하여 제1 결과를 생성하는 단계;
상기 전처리된 제2 장치 예측 결과에 상기 제1 및 제2 항목 가중치들 및 상기 제2 장치 가중치를 적용하여 제2 결과를 생성하는 단계; 및
상기 제1 결과 및 상기 제2 결과에 기초하여 앙상블 결과를 생성하는 단계를 포함하는 방법.
A method of operating a device for ensembling data received from a plurality of prediction devices,
providing the time series data and prediction request to the first prediction device and the second prediction device;
receiving a first device prediction result of the time-series data in response to the prediction request from the first prediction device;
receiving a second device prediction result of the time-series data in response to the prediction request from the second prediction device;
pre-processing the first and second device prediction results;
generating first item weights depending on first item values of the first and second device prediction results, based on the preprocessed first and second device prediction results;
generating second item weights depending on second item values of the first and second device prediction results, based on the preprocessed first and second device prediction results;
generating a first device weight corresponding to the first prediction device and a second device weight corresponding to the second prediction device, based on the preprocessed first and second device prediction results;
generating a first result by applying the first and second item weights and the first device weight to the preprocessed first device prediction result;
generating a second result by applying the first and second item weights and the second device weight to the preprocessed second device prediction result; and
generating an ensemble result based on the first result and the second result.
제18 항에 있어서,
상기 앙상블 결과에 기초하여, 상기 제1 및 제2 항목 가중치들 및 상기 제1 및 제2 장치 가중치들을 생성하기 위한 파라미터를 조절하는 단계를 더 포함하는 방법.
According to claim 18,
based on the ensemble result, adjusting parameters for generating the first and second item weights and the first and second device weights.
제18 항에 있어서,
상기 제1 결과를 생성하는 단계는,
상기 전처리된 제1 장치 예측 결과의 제1 항목 값, 상기 제1 항목 가중치들 중 상기 제1 장치 예측 결과에 대응되는 제1 항목 가중치, 및 상기 제1 장치 가중치를 곱하는 단계; 및
상기 전처리된 제1 장치 예측 결과의 제2 항목 값, 상기 제2 항목 가중치들 중 상기 제1 장치 예측 결과에 대응되는 제2 항목 가중치, 및 상기 제1 장치 가중치를 곱하는 단계를 포함하고,
상기 제2 결과를 생성하는 단계는,
상기 전처리된 제2 장치 예측 결과의 제1 항목 값, 상기 제1 항목 가중치들 중 상기 제2 장치 예측 결과에 대응되는 제1 항목 가중치, 및 상기 제2 장치 가중치를 곱하는 단계; 및
상기 전처리된 제2 장치 예측 결과의 제2 항목 값, 상기 제2 항목 가중치들 중 상기 제2 장치 예측 결과에 대응되는 제2 항목 가중치, 및 상기 제2 장치 가중치를 곱하는 단계를 포함하는 방법.

According to claim 18,
Generating the first result,
multiplying a first item value of the preprocessed first device prediction result, a first item weight corresponding to the first device prediction result among the first item weights, and the first device weight; and
Multiplying a second item value of the preprocessed first device prediction result, a second item weight corresponding to the first device prediction result among the second item weights, and the first device weight;
Generating the second result,
multiplying a first item value of the preprocessed second device prediction result, a first item weight corresponding to the second device prediction result among the first item weights, and the second device weight; and
and multiplying a second item value of the preprocessed second device prediction result, a second item weight corresponding to the second device prediction result among the second item weights, and the second device weight.

KR1020190124616A 2018-12-06 2019-10-08 Device for ensembling data received from prediction devices and operating method thereof KR102557001B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/699,060 US11941513B2 (en) 2018-12-06 2019-11-28 Device for ensembling data received from prediction devices and operating method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180156420 2018-12-06
KR1020180156420 2018-12-06

Publications (2)

Publication Number Publication Date
KR20200069212A KR20200069212A (en) 2020-06-16
KR102557001B1 true KR102557001B1 (en) 2023-07-19

Family

ID=71141843

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190124616A KR102557001B1 (en) 2018-12-06 2019-10-08 Device for ensembling data received from prediction devices and operating method thereof

Country Status (1)

Country Link
KR (1) KR102557001B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102435865B1 (en) * 2021-10-28 2022-08-24 (주)새론솔루션 Reservoir management and predicting model using artificial intelligence attention layer

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
KR102558021B1 (en) * 2016-06-10 2023-07-24 한국전자통신연구원 A clinical decision support ensemble system and the clinical decision support method by using the same
KR20180061552A (en) * 2016-11-29 2018-06-08 한국전자통신연구원 Apparatus and method for generating future health trends prediction models based on similar case clusters
KR20180099193A (en) * 2017-02-28 2018-09-05 연세대학교 산학협력단 Method, server and system for providing disease predictions service usiing multiple disease prediction models

Also Published As

Publication number Publication date
KR20200069212A (en) 2020-06-16

Similar Documents

Publication Publication Date Title
US11600390B2 (en) Machine learning clinical decision support system for risk categorization
WO2020068471A1 (en) Disk drive failure prediction with neural networks
KR102460442B1 (en) Time series data processing device, health predicting system including the same, and method for operating time series data processing device
KR102501530B1 (en) Time series data processing device and operating method thereof
al Zamil et al. Multimedia-oriented action recognition in Smart City-based IoT using multilayer perceptron
Sajedi et al. Dual Bayesian inference for risk‐informed vibration‐based damage diagnosis
US20210375459A1 (en) Method and system enabling digital biomarker data integration and analysis for clinical treatment impact
US20190180882A1 (en) Device and method of processing multi-dimensional time series medical data
KR102415220B1 (en) Time series data processing device and operating method thereof
KR20190070232A (en) Apparatus and method of processing multi-dimensional time series medical data
CN115769235A (en) Method and system for providing an alert related to the accuracy of a training function
US20210174229A1 (en) Device for ensembling data received from prediction devices and operating method thereof
KR102557001B1 (en) Device for ensembling data received from prediction devices and operating method thereof
US20190221294A1 (en) Time series data processing device, health prediction system including the same, and method for operating the time series data processing device
US11941513B2 (en) Device for ensembling data received from prediction devices and operating method thereof
US11551817B2 (en) Assessing unreliability of clinical risk prediction
Zhao et al. Multiclass anomaly detection in imbalanced structural health monitoring data using convolutional neural network
Borovska et al. Experimental framework for the investigations in internet of medical imaging things ecosystem
Gopukumar et al. Predicting readmission charges billed by hospitals: machine learning approach
KR102470431B1 (en) Device for processing time series data having irregular time interval and operating method thereof
KR20190092217A (en) Device for ensembling data and operating method thereof
KR20220145654A (en) Time series data processing device configured to process time series data with irregularity
US20220359082A1 (en) Health state prediction system including ensemble prediction model and operation method thereof
Westholm Event detection and predictive maintenance using component echo state networks
Naresh et al. A Novel Approach for Specification Testing on Heart Disease Detection Using Feed-Forward Neural Network

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right