KR20240035663A - Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model - Google Patents

Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model Download PDF

Info

Publication number
KR20240035663A
KR20240035663A KR1020220114113A KR20220114113A KR20240035663A KR 20240035663 A KR20240035663 A KR 20240035663A KR 1020220114113 A KR1020220114113 A KR 1020220114113A KR 20220114113 A KR20220114113 A KR 20220114113A KR 20240035663 A KR20240035663 A KR 20240035663A
Authority
KR
South Korea
Prior art keywords
input data
data
features
partial input
tree
Prior art date
Application number
KR1020220114113A
Other languages
Korean (ko)
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 KR1020220114113A priority Critical patent/KR20240035663A/en
Priority to PCT/KR2023/009547 priority patent/WO2024053834A1/en
Publication of KR20240035663A publication Critical patent/KR20240035663A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of 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
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • 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/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Public Health (AREA)
  • Primary Health Care (AREA)
  • Epidemiology (AREA)
  • Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

전자 장치에 있어서, 의료 데이터의 복수의 피처들(features) 중에서 트리 기반의 앙상블 모델(tree-based ensemble model)에 기초하여 선택된 피처를 가지는 부분 입력 데이터(partial input data)를 생성하고, 복수의 부분 입력 데이터들을 포함하는 입력 데이터(input data)를 시퀀스 데이터(sequence data)로 생성하며, 상기 생성된 시퀀스 데이터에 시퀀스 모델(sequence model)을 적용함으로써 출력 데이터(output data)를 산출하는 프로세서를 포함할 수 있다.In an electronic device, partial input data having a feature selected from among a plurality of features of medical data based on a tree-based ensemble model is generated, and a plurality of partial input data is generated. It may include a processor that generates input data including input data as sequence data and calculates output data by applying a sequence model to the generated sequence data. You can.

Description

트리 기반의 앙상블 모델을 이용하여 시퀀스 모델의 입력 데이터의 피처를 선택하는 방법 및 장치{METHOD AND APPARATUS FOR SELECTING FEATURES OF INPUT DATA OF SEQUENCE MODEL USING TREE-BASED ENSEMBLE MODEL}Method and apparatus for selecting features of input data of a sequence model using a tree-based ensemble model {METHOD AND APPARATUS FOR SELECTING FEATURES OF INPUT DATA OF SEQUENCE MODEL USING TREE-BASED ENSEMBLE MODEL}

이하, 트리 기반의 앙상블 모델을 이용하여 시퀀스 모델의 입력 데이터의 피처들을 선택하는 것에 대하여, 보다 구체적으로는, 입력 데이터의 복수의 부분 입력 데이터들 각각의 피처를 선택하는 것에 대하여, 개시한다.Hereinafter, we will describe selecting features of input data of a sequence model using a tree-based ensemble model, and more specifically, selecting features of each of a plurality of partial input data of the input data.

신경망 모델(Neural Network model)은 생물학에서의 뉴런 구조로부터 착안된 지도 학습(supervised learning) 알고리즘이다. 신경망 모델의 기본적인 작동 원리는 여러 개의 뉴런들을 상호 연결하여 입력값에 대한 최적의 출력값을 예측하는 것이다. 통계적인 관점에서 보면 신경망 모델은 입력 변수의 선형 결합에 비선형 함수를 취하는 사영추적회귀로 볼 수 있다.Neural network model is a supervised learning algorithm inspired by the structure of neurons in biology. The basic operating principle of a neural network model is to predict the optimal output value for input values by interconnecting multiple neurons. From a statistical perspective, a neural network model can be viewed as a projective trace regression that takes a non-linear function to a linear combination of input variables.

일 실시예에 따른 전자 장치에 의하여 수행되는 방법은, 의료 데이터의 복수의 피처들(features) 중에서 트리 기반의 앙상블 모델(tree-based ensemble model)에 기초하여 부분 입력 데이터(partial input data)의 피처를 선택하는 단계; 상기 선택된 피처를 가지는 복수의 부분 입력 데이터들을 포함하는 입력 데이터(input data)를 시퀀스 데이터(sequence data)로 생성하는 단계; 및 상기 생성된 입력 데이터에 시퀀스 모델(sequence model)을 적용함으로써 출력 데이터(output data)를 산출하는 단계를 포함할 수 있다.A method performed by an electronic device according to an embodiment includes selecting features of partial input data based on a tree-based ensemble model among a plurality of features of medical data. selecting; generating input data including a plurality of partial input data having the selected feature as sequence data; And it may include calculating output data by applying a sequence model to the generated input data.

상기 부분 입력 데이터의 피처를 선택하는 단계는, 상기 의료 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값(ground truth)을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키는 단계; 및 상기 트레이닝된 트리 기반의 앙상블 모델에 대한 상기 복수의 피처들 각각의 피처 중요도에 기초하여, 상기 복수의 피처들 중 적어도 하나의 피처를 선택하는 단계를 포함할 수 있다.The step of selecting features of the partial input data includes training the tree-based ensemble model by comparing ground truth with temporary output data calculated by applying the tree-based ensemble model to the medical data. ; and selecting at least one feature among the plurality of features based on feature importance of each of the plurality of features for the trained tree-based ensemble model.

상기 부분 입력 데이터의 피처를 선택하는 단계는, 트레이닝된 트리 기반의 앙상블 모델에 대한 피처 중요도에 기초하여, 상기 의료 데이터의 상기 복수의 피처들 중에서 미리 결정된 개수의 피처를 선택하는 단계를 포함할 수 있다.Selecting features of the partial input data may include selecting a predetermined number of features from the plurality of features of the medical data based on feature importance for a trained tree-based ensemble model. there is.

상기 부분 입력 데이터의 피처를 선택하는 단계는, 상기 의료 데이터의 복수의 피처들 중 선택된 피처를 가지는 임시 부분 입력 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키는 단계; 상기 트레이닝된 트리 기반의 앙상블 모델에 대하여 계산된 상기 임시 부분 입력 데이터의 각 피처의 피처 중요도(feature importance)에 기초하여, 상기 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택하는 단계; 상기 선택된 적어도 하나의 피처를 가지는 데이터로 상기 임시 부분 입력 데이터를 업데이트하는 단계; 및 상기 업데이트된 임시 부분 입력 데이터에 적용됨으로써 임시 출력 데이터를 산출하는 앙상블 모델로 상기 트리 기반의 앙상블 모델을 업데이트하는 단계를 포함할 수 있다.The step of selecting a feature of the partial input data includes comparing a true value with temporary output data calculated by applying the tree-based ensemble model to temporary partial input data having a selected feature among a plurality of features of the medical data. training the tree-based ensemble model; selecting at least one feature among the features of the temporary partial input data based on feature importance of each feature of the temporary partial input data calculated for the trained tree-based ensemble model; updating the temporary partial input data with data having the selected at least one feature; and updating the tree-based ensemble model with an ensemble model that produces temporary output data by applying it to the updated temporary partial input data.

상기 부분 입력 데이터의 피처를 선택하는 단계는, 부분 입력 데이터의 피처들 간의 시간 순서와 독립적으로 임시 출력 데이터를 산출하는 상기 트리 기반의 앙상블 모델에 기초하여 피처를 선택하는 단계를 포함할 수 있다.Selecting features of the partial input data may include selecting features based on the tree-based ensemble model that produces temporary output data independently of the time order between features of the partial input data.

상기 입력 데이터를 생성하는 단계는, 상기 복수의 부분 입력 데이터들이 대응하는 시간대들의 시간 순서에 따라 복수의 부분 입력 데이터들을 결합(combine)함으로써 상기 입력 데이터를 생성하는 단계를 포함할 수 있다.Generating the input data may include generating the input data by combining a plurality of partial input data according to a time sequence of time zones to which the plurality of partial input data correspond.

상기 출력 데이터를 산출하는 단계는, 상기 생성된 입력 데이터에 포함된 상기 복수의 부분 입력 데이터들의 결합 순서에 따라 다른 출력 데이터를 산출 가능한 상기 시퀀스 모델을 이용하여 상기 출력 데이터를 산출하는 단계를 포함할 수 있다.The step of calculating the output data may include calculating the output data using the sequence model capable of calculating different output data according to the combining order of the plurality of partial input data included in the generated input data. You can.

상기 출력 데이터를 산출하는 단계는, 복수의 부분 입력 데이터들이 대응하는 시간대들 중 마지막 시간대의 종료 시각 이후의 출력 시간대에 대응하는 출력 데이터를 산출하는 단계를 포함할 수 있다.The step of calculating the output data may include calculating output data corresponding to an output time zone after the end time of the last time zone among the time zones to which the plurality of partial input data corresponds.

상기 부분 입력 데이터의 피처를 선택하는 단계는, 상기 트리 기반의 앙상블 모델로서 XGBoost, AdaBoost, GBM(Gradient Boosting Machine), LightGBM, CatBoost, 또는 histogram-based gradient boost 중 적어도 하나를 포함하는 부스팅 알고리즘(boosting algorithm) 기반의 모델에 기초하여 상기 부분 입력 데이터의 피처를 선택하는 단계를 포함할 수 있다.The step of selecting features of the partial input data includes a boosting algorithm (boosting) including at least one of XGBoost, AdaBoost, GBM (Gradient Boosting Machine), LightGBM, CatBoost, or histogram-based gradient boost as the tree-based ensemble model. It may include selecting features of the partial input data based on an algorithm)-based model.

상기 출력 데이터를 산출하는 단계는, 상기 시퀀스 모델로서, RNN(Recurrent Neural Network), LSTM(Long Short Term Memory), ARIMA(AutoregRessive Integrated Moving Average), Seq2Seq(Sequence to Sequence model), GRU(Gated Recurrent Unit), 또는 Transformer 중 적어도 하나를 포함하는 기계 학습 모델을 상기 입력 데이터에 적용함으로써 상기 출력 데이터를 산출하는 단계를 포함할 수 있다. The step of calculating the output data includes, as the sequence model, RNN (Recurrent Neural Network), LSTM (Long Short Term Memory), ARIMA (AutoregRessive Integrated Moving Average), Seq2Seq (Sequence to Sequence model), and GRU (Gated Recurrent Unit) ), or may include calculating the output data by applying a machine learning model including at least one of Transformer to the input data.

상기 출력 데이터를 산출하는 단계는, 추정 사구체 여과율(estimated Glomerular Filtration Rate; eGFR)을 포함하는 상기 출력 데이터를 산출하는 단계를 포함할 수 있다.Calculating the output data may include calculating the output data including an estimated Glomerular Filtration Rate (eGFR).

일 실시예에 따른 전자 장치는, 의료 데이터의 복수의 피처들(features) 중에서 트리 기반의 앙상블 모델(tree-based ensemble model)에 기초하여 선택된 피처를 가지는 부분 입력 데이터(partial input data)를 생성하고, 복수의 부분 입력 데이터들을 포함하는 입력 데이터(input data)를 시퀀스 데이터(sequence data)로 생성하며, 상기 생성된 시퀀스 데이터에 시퀀스 모델(sequence model)을 적용함으로써 출력 데이터(output data)를 산출하는 프로세서를 포함할 수 있다.An electronic device according to an embodiment generates partial input data having a feature selected based on a tree-based ensemble model among a plurality of features of medical data, and , generating input data including a plurality of partial input data as sequence data, and calculating output data by applying a sequence model to the generated sequence data. May include a processor.

상기 프로세서는, 상기 의료 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키고, 상기 트레이닝된 트리 기반의 앙상블 모델에 대한 상기 복수의 피처들 각각의 피처 중요도에 기초하여, 상기 복수의 피처들 중 적어도 하나의 피처를 선택할 수 있다.The processor trains the tree-based ensemble model by comparing temporary output data calculated by applying the tree-based ensemble model to the medical data with a true value, and trains the tree-based ensemble model for the trained tree-based ensemble model. Based on the feature importance of each of the features, at least one feature among the plurality of features may be selected.

상기 프로세서는, 상기 의료 데이터의 복수의 피처들 중 선택된 피처를 가지는 임시 부분 입력 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키고, 상기 임시 부분 입력 데이터의 각 피처의 상기 트레이닝된 트리 기반의 앙상블 모델에 대한 피처 중요도에 기초하여, 상기 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택하며, 상기 선택된 적어도 하나의 피처를 가지는 데이터로 상기 임시 부분 입력 데이터를 업데이트하고, 상기 업데이트된 임시 부분 입력 데이터에 적용됨으로써 임시 출력 데이터를 산출하는 앙상블 모델로 상기 트리 기반의 앙상블 모델을 업데이트할 수 있다.The processor trains the tree-based ensemble model by comparing temporary output data calculated by applying the tree-based ensemble model to temporary partial input data having a selected feature among the plurality of features of the medical data and a true value. and select at least one feature among the features of the temporary partial input data based on the feature importance of each feature of the temporary partial input data to the trained tree-based ensemble model, and select the at least one feature selected. The tree-based ensemble model can be updated with an ensemble model that updates the temporary partial input data with the data, and calculates temporary output data by applying it to the updated temporary partial input data.

상기 프로세서는, 부분 입력 데이터의 피처들 간의 시간 순서와 독립적으로 임시 출력 데이터를 산출하는 상기 트리 기반의 앙상블 모델에 기초하여 피처를 선택할 수 있다.The processor may select features based on the tree-based ensemble model that produces temporary output data independent of the temporal order between features of partial input data.

상기 프로세서는, 상기 복수의 부분 입력 데이터들이 대응하는 시간대들의 순서에 따라 복수의 부분 입력 데이터들을 결합(combine)함으로써 상기 입력 데이터를 생성할 수 있다.The processor may generate the input data by combining a plurality of partial input data according to the order of time zones to which the plurality of partial input data correspond.

상기 프로세서는, 상기 생성된 입력 데이터에 포함된 상기 복수의 부분 입력 데이터들의 결합 순서에 따라 다른 출력 데이터를 산출 가능한 상기 시퀀스 모델을 이용하여 상기 출력 데이터를 산출할 수 있다.The processor may calculate the output data using the sequence model capable of calculating different output data depending on the combining order of the plurality of partial input data included in the generated input data.

상기 프로세서는, 상기 트리 기반의 앙상블 모델로서 XGBoost, AdaBoost, GBM(Gradient Boosting Machine), LightGBM, CatBoost, 또는 histogram-based gradient boost 중 적어도 하나를 포함하는 부스팅 알고리즘(boosting algorithm) 기반의 모델에 기초하여 상기 부분 입력 데이터를 생성할 수 있다.The processor is based on a boosting algorithm-based model including at least one of XGBoost, AdaBoost, GBM (Gradient Boosting Machine), LightGBM, CatBoost, or histogram-based gradient boost as the tree-based ensemble model. The partial input data can be generated.

상기 프로세서는, 상기 시퀀스 모델로서, RNN(Recurrent Neural Network), LSTM(Long Short Term Memory), S2S(Sequence to Sequence model), GRU(Gated Recurrent Unit), 또는 Transformer 중 적어도 하나를 포함하는 기계 학습 모델을 상기 입력 데이터에 적용함으로써 상기 출력 데이터를 산출할 수 있다.The processor, as the sequence model, is a machine learning model including at least one of a Recurrent Neural Network (RNN), Long Short Term Memory (LSTM), Sequence to Sequence model (S2S), Gated Recurrent Unit (GRU), or Transformer. The output data can be calculated by applying to the input data.

도 1은 다양한 실시예들에 따른 전자 장치의 출력 데이터의 산출 동작을 설명하기 위한 도면이다.
도 2는 다양한 실시예들에 따른 전자 장치의 출력 데이터의 산출 동작을 나타내는 흐름도다.
도 3은 다양한 실시예들에 따른 트리 기반의 앙상블 모델을 설명하기 위한 도면이다.
도 4은 다양한 실시예들에 따른 시퀀스 모델을 설명하기 위한 도면이다.
도 5는 다양한 실시예들에 따른 전자 장치의 부분 입력 데이터의 피처를 선택하는 동작을 설명하기 위한 도면이다.
도 6은 다양한 실시예들 및 비교 실시예에 따른 시퀀스 모델의 성능을 비교하기 위한 도면이다.
도 7은 다양한 실시예들 및 비교 실시예에 따른 시퀀스 모델의 성능을 비교하기 위한 도면이다.
FIG. 1 is a diagram illustrating an operation of calculating output data of an electronic device according to various embodiments.
FIG. 2 is a flowchart illustrating a calculation operation of output data of an electronic device according to various embodiments.
Figure 3 is a diagram for explaining a tree-based ensemble model according to various embodiments.
Figure 4 is a diagram for explaining a sequence model according to various embodiments.
FIG. 5 is a diagram illustrating an operation of selecting features of partial input data of an electronic device according to various embodiments.
Figure 6 is a diagram for comparing the performance of sequence models according to various embodiments and comparative examples.
Figure 7 is a diagram for comparing the performance of sequence models according to various embodiments and comparative examples.

실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for illustrative purposes only and may be changed and implemented in various forms. Accordingly, the actual implementation form is not limited to the specific disclosed embodiments, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical idea described in the embodiments.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should be interpreted only for the purpose of distinguishing one component from another component. For example, a first component may be named a second component, and similarly, the second component may also be named a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected” to another component, it should be understood that it may be directly connected or connected to the other component, but that other components may exist in between.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as "comprise" or "have" are intended to designate the presence of the described features, numbers, steps, operations, components, parts, or combinations thereof, but are not intended to indicate the presence of one or more other features or numbers, It should be understood that this does not exclude in advance the possibility of the presence or addition of steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person of ordinary skill in the art. Terms as defined in commonly used dictionaries should be interpreted as having meanings consistent with the meanings they have in the context of the related technology, and unless clearly defined in this specification, should not be interpreted in an idealized or overly formal sense. No.

이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments will be described in detail with reference to the attached drawings. In the description with reference to the accompanying drawings, identical components will be assigned the same reference numerals regardless of the reference numerals, and overlapping descriptions thereof will be omitted.

도 1은 다양한 실시예들에 따른 전자 장치의 출력 데이터의 산출 동작을 설명하기 위한 도면이다.FIG. 1 is a diagram illustrating an operation of calculating output data of an electronic device according to various embodiments.

일 실시예에 따른 전자 장치(100)는, 프로세서(110) 및 메모리(120)를 포함할 수 있다.The electronic device 100 according to one embodiment may include a processor 110 and a memory 120.

프로세서(110)는 의료 데이터(medical data)(111)의 복수의 피처들(medical features) 중에서 트리 기반의 앙상블 모델(tree-based ensemble model)(112)에 기초하여 부분 입력 데이터(partial input data)(114a, 114b, 114c)의 피처를 선택할 수 있다. 프로세서(110)는, 복수의 부분 입력 데이터들(114a, 114b, 114c)을 포함하는 입력 데이터(114)를 시퀀스 데이터(sequence data)로 생성할 수 있다. 프로세서(110)는, 입력 데이터(114)에 시퀀스 모델(sequence model) (115)을 적용함으로써 출력 데이터(output data)(116)를 산출할 수 있다. The processor 110 selects partial input data based on a tree-based ensemble model 112 among a plurality of medical features of medical data 111. Features (114a, 114b, 114c) can be selected. The processor 110 may generate input data 114 including a plurality of partial input data 114a, 114b, and 114c as sequence data. The processor 110 may calculate output data 116 by applying a sequence model 115 to the input data 114 .

의료 데이터는, 복수의 피처들을 가지는 데이터로서, 예시적으로 전자의무기록(Electronic Medical Record; EMR)을 포함할 수 있다. 피처(예: 의료 피처)는 대상자(예: 환자)의 의료 상황과 관련된 정보를 분류한 개별 항목 및/또는 카테고리를 나타낼 수 있다. 의료 피처는, 예를 들어, 수술 피처(operation feature), 처치 피처(procedure feature), 의료영상전송시스템 피처(Picture Archiving and Communication System feature; PACS feature), 진단 피처(diagnosis feature), 복약 피처(medication feature), 검사 피처(laboratory feature), 신체 정보 피처(physical information feature), 또는 중환자실 체류기간 피처(length of stay of intensive care unit feature; LOS of ICU feature) 중 하나 또는 둘 이상의 조합을 포함할 수 있다. Medical data is data having a plurality of features and may, for example, include an Electronic Medical Record (EMR). Features (e.g., medical features) may represent individual items and/or categories that classify information related to the medical situation of a subject (e.g., a patient). Medical features include, for example, operation features, procedure features, Picture Archiving and Communication System features (PACS features), diagnosis features, and medication features. It may include one or a combination of two or more of the following features, laboratory features, physical information features, or length of stay of intensive care unit features (LOS of ICU features). there is.

메모리(120)는 의료 데이터(111) 및/또는 의료 데이터(111)의 복수의 피처들을 저장할 수 있다. 메모리(120)는 트리 기반의 앙상블 모델(112) 및 시퀀스 모델(115)의 구조 및/또는 파라미터들을 저장할 수 있다. 메모리(120)는 임시 출력 데이터(113)에 관한 정보, 부분 입력 데이터(114a, 114b, 114c)에 관한 정보, 입력 데이터(114)에 관한 정보, 및/또는 출력 데이터(116)에 관한 정보를 저장할 수 있다. 또한, 메모리(120)는 의료 데이터의 처리를 통해 출력 데이터를 산출하기 위한 방법을 수행하기 위해 요구되는 데이터 및/또는 정보를 일시적으로 및/또는 영구적으로 저장할 수 있다.Memory 120 may store medical data 111 and/or a plurality of features of medical data 111 . The memory 120 may store the structure and/or parameters of the tree-based ensemble model 112 and the sequence model 115. Memory 120 stores information about temporary output data 113, information about partial input data 114a, 114b, 114c, information about input data 114, and/or information about output data 116. You can save it. Additionally, the memory 120 may temporarily and/or permanently store data and/or information required to perform a method for calculating output data through processing of medical data.

도 2는 다양한 실시예들에 따른 전자 장치의 출력 데이터의 산출 동작을 나타내는 흐름도다.FIG. 2 is a flowchart illustrating a calculation operation of output data of an electronic device according to various embodiments.

단계(210)에서, 프로세서는 트리 기반의 앙상블 모델에 기초하여 부분 입력 데이터의 피처를 선택할 수 있다. 프로세서는, 의료 데이터의 복수의 피처들 중에서 부분 입력 데이터의 피처를 선택할 수 있다. 후술하겠으나, 트리 기반의 앙상블 모델은 부분 입력 데이터를 입력받을 수 있고, 복수의 부분 입력 데이터들이 결합됨으로써 시퀀스 모델의 입력 데이터가 생성될 수 있다.At step 210, the processor may select features of the partial input data based on a tree-based ensemble model. The processor may select a feature of the partial input data from among a plurality of features of the medical data. As will be described later, a tree-based ensemble model can receive partial input data, and input data of a sequence model can be generated by combining a plurality of partial input data.

앙상블 모델은, 복수의 약한 분류기들(week classifiers)을 이용하는 모델을 의미할 수 있다. 트리 기반의 앙상블 모델은, 복수의 트리들을 생성하고, 생성된 복수의 트리들에 기초하여 산출된 출력들을 이용하는 모델을 의미할 수 있다. 일 실시예에 따른 전자 장치는, 앙상블 모델을 이용함으로써, 하나의 약한 분류기를 이용하는 경우에 발생 가능한 오버피팅(overfitting)을 감소시킬 수 있다. 트리 기반의 앙상블 모델은 도 3에서 후술한다.An ensemble model may refer to a model that uses multiple weak classifiers (week classifiers). A tree-based ensemble model may refer to a model that generates a plurality of trees and uses outputs calculated based on the generated plurality of trees. The electronic device according to one embodiment can reduce overfitting that may occur when using a single weak classifier by using an ensemble model. The tree-based ensemble model is described later in Figure 3.

일 실시예에 따르면, 프로세서는 의료 데이터에 적용됨으로써 임시 출력 데이터를 산출하는데 이용되는 트리 기반의 앙상블 모델을 트레이닝시킬 수 있다. 예를 들어, 프로세서는 의료 데이터에 트리 기반의 앙상블 모델을 적용하여 임시 출력 데이터를 산출할 수 있다. 프로세서는 임시 출력 데이터와 참 값(ground truth)을 비교함으로써 트리 기반의 앙상블 모델을 트레이닝시킬 수 있다. 프로세서는, 임시 출력 데이터와 참 값을 비교하여 산출된 목적 함수에 기초하여 트리 기반의 앙상블 모델의 파라미터를 업데이트할 수 있다.According to one embodiment, the processor may train a tree-based ensemble model used to calculate temporary output data by applying it to medical data. For example, a processor can apply a tree-based ensemble model to medical data to produce temporary output data. The processor can train a tree-based ensemble model by comparing temporary output data with ground truth. The processor may update the parameters of the tree-based ensemble model based on the objective function calculated by comparing temporary output data and true values.

일 실시예에 따르면, 프로세서는, 피처 중요도(feature importance)에 기초하여 복수의 피처들 중 부분 입력 데이터의 피처를 선택할 수 있다. 프로세서는, 트레이닝된 트리 기반의 앙상블 모델에 대한, 의료 데이터의 복수의 피처들 각각의 피처 중요도(feature importance)를 계산할 수 있다. 예시적으로, 의료 데이터가 제1 피처 및 제2 피처를 가지는 경우, 프로세서는 트레이닝된 트리 기반의 앙상블 모델에 대한 제1 피처의 피처 중요도를 계산하고, 트레이닝된 트리 기반의 앙상블 모델에 대한 제2 피처의 피처 중요도를 계산할 수 있다. According to one embodiment, the processor may select a feature of partial input data from among a plurality of features based on feature importance. The processor may calculate feature importance of each of the plurality of features of the medical data for the trained tree-based ensemble model. Illustratively, when the medical data has a first feature and a second feature, the processor calculates the feature importance of the first feature for the trained tree-based ensemble model and the second feature for the trained tree-based ensemble model. The feature importance of a feature can be calculated.

예를 들어, 프로세서는 계산된 피처 중요도에 기초하여 복수의 피처들 중 적어도 하나의 피처를 선택할 수 있다. 프로세서는, 의료 데이터의 복수의 피처들 중에서 미리 결정된 개수의 피처를 선택할 수 있다. 프로세서는, 복수의 피처들 중 피처 중요도가 큰 순서대로 미리 결정된 개수의 피처를 선택할 수 있다. 복수의 피처들 중 부분 입력 데이터의 피처로 선택된 피처들은, 나머지 피처들보다 큰 피처 중요도를 가질 수 있다. For example, the processor may select at least one feature from the plurality of features based on the calculated feature importance. The processor may select a predetermined number of features from among a plurality of features of medical data. The processor may select a predetermined number of features from among the plurality of features in order of increasing feature importance. Among the plurality of features, features selected as features of partial input data may have greater feature importance than the remaining features.

예를 들어, 프로세서는, 계산된 피처 중요도에 기초하여 복수의 피처들 중 임시 부분 입력 데이터의 피처를 선택함으로써 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델을 업데이트할 수 있다. 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델의 업데이트를 통한 부분 입력 데이터의 피처를 선택하는 동작은 도 5에서 후술한다.For example, the processor may update the temporary partial input data and the tree-based ensemble model by selecting a feature of the temporary partial input data from among a plurality of features based on the calculated feature importance. The operation of selecting features of partial input data through updating of temporary partial input data and tree-based ensemble model will be described later in FIG. 5.

후술하겠으나, 시퀀스 모델은 입력 데이터의 시계열 요인에 기초하여 출력 데이터를 산출할 수 있다. 시퀀스 모델의 입력 데이터 및/또는 부분 입력 데이터의 피처를 선택하기 위하여 시퀀스 모델에 대한 피처 중요도를 이용하는 것 보다, 일 실시예에 따른 전자 장치는 트리 기반의 앙상블 모델에 대한 피처 중요도를 이용함으로써, 피처 중요도의 계산 및 피처의 선택을 보다 더 간단하게 수행 가능할 수 있다.As will be described later, the sequence model can calculate output data based on time series factors of the input data. Rather than using the feature importance for the sequence model to select features of the input data and/or partial input data of the sequence model, the electronic device according to one embodiment uses the feature importance for the tree-based ensemble model to select features of the input data and/or partial input data. Calculation of importance and selection of features may be performed more simply.

단계(220)에서, 프로세서는 복수의 부분 입력 데이터들을 포함하는 입력 데이터를 시퀀스 데이터로 생성할 수 있다. 복수의 부분 입력 데이터들 각각은, 부분 입력 데이터의 피처로서 선택된 피처를 가질 수 있다. 부분 입력 데이터는, 의료 데이터의 적어도 일부로서 대상자(예: 환자)의 의료 상황과 관련된 정보를 포함할 수 있다. 일 실시예에 따르면, 부분 입력 데이터는 시간대에 대응할 수 있다. In step 220, the processor may generate input data including a plurality of partial input data as sequence data. Each of the plurality of partial input data may have a feature selected as a feature of the partial input data. Partial input data may include information related to the medical situation of a subject (eg, patient) as at least part of the medical data. According to one embodiment, partial input data may correspond to a time zone.

부분 입력 데이터는, 대응하는 시간대(예: 부분 입력 시간대)에서의 대상자의 의료 상황과 관련된 정보를 포함할 수 있다. 예시적으로, 부분 입력 데이터는, 부분 입력 시간대에 포함된 시각에서 측정 및/또는 기록된 대상자의 의료 상황과 관련된 정보(예: 체중, 혈당, 등)를 포함할 수 있다. 예시적으로, 부분 입력 데이터는, 부분 입력 시간대에 걸친 평균적인 대상자의 의료 정보(예: 평균 심박수, 평균 혈압 등)를 포함할 수 있다. 부분 입력 시간대는, 미리 결정된 시간 길이를 가질 수 있다. 예시적으로, 부분 입력 시간대는 24시간의 시간 길이를 가질 수 있으나, 이에 한정하는 것은 아니고, 설계에 따라 12시간, 36시간, 48시간 등 다른 시간 길이를 가지는 것으로 변경될 수 있다.Partial input data may include information related to the subject's medical situation in a corresponding time zone (eg, partial input time zone). Illustratively, the partial input data may include information (e.g., weight, blood sugar, etc.) related to the subject's medical situation measured and/or recorded at a time included in the partial input time period. By way of example, the partial input data may include the average subject's medical information (eg, average heart rate, average blood pressure, etc.) over the partial input time period. The partial input time zone may have a predetermined time length. By way of example, the partial input time zone may have a time length of 24 hours, but it is not limited to this and may be changed to have other time lengths such as 12 hours, 36 hours, or 48 hours depending on the design.

시퀀스 데이터는, 시간 순서를 가지는 데이터로서, 시간의 흐름에 따라 측정 및/또는 기록된 데이터를 의미할 수 있다. 시퀀스 데이터는, 복수의 서브 데이터들(예: 부분 입력 데이터들)을 포함할 수 있다. 시퀀스 데이터는, 복수의 서브 데이터들 각각의 측정 및/또는 기록된 시각 또는 시간대에 기초하여, 복수의 서브 데이터들을 시간 순서대로 포함할 수 있다.Sequence data is data with a time sequence and may refer to data measured and/or recorded over time. Sequence data may include a plurality of sub-data (eg, partial input data). Sequence data may include a plurality of sub data in chronological order based on the time or time period at which each of the plurality of sub data was measured and/or recorded.

일 실시예에 따르면, 프로세서는 복수의 부분 입력 데이터들을 시간 순서대로 결합함으로써 입력 데이터를 시퀀스 데이터로 생성할 수 있다. 복수의 부분 입력 데이터들은, 연속된 시간대들에 대응할 수 있다. 프로세서는, 복수의 부분 입력 데이터들이 대응하는 시간대들의 순서에 따라 복수의 부분 입력 데이터들을 결합함으로써, 입력 데이터를 생성할 수 있다. 예시적으로, 제1 부분 입력 데이터는 제1 시간대에 대응하고, 제2 부분 입력 데이터는 제1 시간대 이후의 제2 시간대에 대응할 수 있다. 제1 시간대는 제2 시간대와 연속할 수 있다. 다시 말해, 제1 시간대의 종료 시각은 제2 시간대의 시작 시각과 같을 수 있다. 프로세서는, 제1 시간대가 제2 시간대보다 선행하는(preceding) 것에 기초하여, 제1 부분 입력 데이터 이후에 제2 부분 입력 데이터를 결합함으로써 입력 데이터를 생성할 수 있다.According to one embodiment, the processor may generate input data as sequence data by combining a plurality of partial input data in time order. The plurality of partial input data may correspond to consecutive time periods. The processor may generate input data by combining a plurality of partial input data according to the order of time zones to which the plurality of partial input data correspond. Exemplarily, the first partial input data may correspond to a first time zone, and the second partial input data may correspond to a second time zone after the first time zone. The first time zone may be continuous with the second time zone. In other words, the end time of the first time zone may be the same as the start time of the second time zone. The processor may generate the input data by combining the second partial input data after the first partial input data, based on the first time zone preceding the second time zone.

단계(230)에서, 프로세서는 입력 데이터에 시퀀스 모델을 적용함으로써 출력 데이터를 산출할 수 있다. 시퀀스 모델은, 입력 시간대(예: 과거 시간대 및/또는 현재 시간대)에 대응하는 데이터에 적용됨으로써 출력 시간대(예: 미래 시간대) 이후의 출력 시간대에 대응하는 데이터를 예측에 이용될 수 있다. 예를 들어, 프로세서는 입력 데이터에 시퀀스 모델을 적용함으로써 출력 데이터를 산출함으로써, 출력 시간대에 대응하는 데이터를 예측할 수 있다. 시퀀스 모델은 도 4에서 후술한다.At step 230, the processor may calculate output data by applying a sequence model to the input data. The sequence model can be used to predict data corresponding to an output time zone after an output time zone (e.g., a future time zone) by being applied to data corresponding to an input time zone (e.g., past time zone and/or current time zone). For example, the processor can calculate output data by applying a sequence model to input data, thereby predicting data corresponding to the output time period. The sequence model is described later in Figure 4.

입력 데이터는, 입력 시간대에 대응할 수 있다. 입력 데이터는 복수의 시간대들에 대응하는 부분 입력 데이터들을 포함할 수 있고, 복수의 시간대들은 연속할 수 있다. 입력 시간대의 시작 시각은, 복수의 시간대들 중 첫번째 시간대의 시작 시각으로 결정될 수 있다. 입력 시간대의 종료 시각은, 복수의 시간대들 중 마지막 시간대의 종료 시각으로 결정될 수 있다. 결과적으로, 입력 데이터는, 포함된 복수의 부분 입력 데이터들이 대응하는 시간대들의 합집합인 입력 시간대에 대응할 수 있다. Input data may correspond to the input time zone. Input data may include partial input data corresponding to a plurality of time zones, and the plurality of time zones may be consecutive. The start time of the input time zone may be determined as the start time of the first time zone among the plurality of time zones. The end time of the input time zone may be determined as the end time of the last time zone among the plurality of time zones. As a result, the input data may correspond to an input time zone that is a union of time zones corresponding to a plurality of included partial input data.

출력 데이터는, 대응하는 출력 시간대에 측정 및/또는 기록될 것으로 예측되는 대상자(예: 환자)의 의료 상황과 관련된 값을 포함하는 데이터를 나타낼 수 있다. 출력 시간대는 입력 시간대 이후의 시간대일 수 있다. 예를 들어, 출력 시간대는, 입력 시간대의 복수의 부분 입력 시간대들 중 마지막 부분 입력 시간대의 종료 시각 이후의 시간대일 수 있다. 일 실시예에 따르면, 프로세서는 추정 사구체 여과율(estimated Glomerular Filtration Rate; eGFR)을 포함하는 출력 데이터를 산출할 수 있다. 다만, 출력 데이터를 이에 한정하는 것은 아니고, 출력 데이터는 진단 검사(laboratory test)에 따라 시간대 별로 수집 가능한 의료 상황과 관련된 값을 포함할 수 있다. The output data may represent data containing values related to the medical situation of a subject (eg, a patient) that are expected to be measured and/or recorded in the corresponding output time period. The output time zone may be a time zone after the input time zone. For example, the output time zone may be a time zone after the end time of the last partial input time zone among the plurality of partial input time zones of the input time zone. According to one embodiment, the processor may calculate output data including an estimated Glomerular Filtration Rate (eGFR). However, the output data is not limited to this, and the output data may include values related to medical conditions that can be collected by time period according to a diagnostic test (laboratory test).

출력 시간대의 시작 시각은 입력 시간대에 기초하여 결정될 수 있다. 예를 들어, 출력 시간대의 시작 시각은 입력 시간대의 종료 시각과 같을 수 있다. 다른 예를 들어, 출력 시간대의 시작 시각은, 입력 시간대의 종료 시각으로부터 미리 결정된 시간 길이 이후의 시각일 수 있다. The start time of the output time zone may be determined based on the input time zone. For example, the start time of the output time zone may be the same as the end time of the input time zone. For another example, the start time of the output time zone may be a time after a predetermined length of time from the end time of the input time zone.

출력 시간대의 종료 시각은, 출력 시간대의 시작 시각 및 출력 시간대의 시간 길이에 기초하여 결정될 수 있다. 예를 들어, 출력 시간대의 종료 시각은, 출력 시간대의 시작 시각으로부터 미리 결정된 시간 길이 이후의 시각일 수 있다. 출력 시간대의 시간 길이는, 다시 말해, 출력 시간대의 시작 시각으로부터 출력 시간대의 종료 시각까지의 시간 길이는, 부분 입력 데이터가 대응하는 시간대(예: 부분 입력 시간대)의 길이(예: 24시간)와 같을 수 있다. 다만, 출력 시간대의 시간 길이가 이에 한정되는 것은 아니고, 부분 입력 시간대의 시간 길이와 독립적인 시간 길이로 설계에 따라 변경될 수 있다. The end time of the output time zone may be determined based on the start time of the output time zone and the length of time of the output time zone. For example, the end time of the output time zone may be a time after a predetermined length of time from the start time of the output time zone. The time length of the output time zone, in other words, the length of time from the start time of the output time zone to the end time of the output time zone, is the length (e.g., 24 hours) of the time zone (e.g., partial input time zone) to which the partial input data corresponds. It can be the same. However, the time length of the output time zone is not limited to this, and may be changed according to design to a time length independent of the time length of the partial input time zone.

도 3은 다양한 실시예들에 따른 트리 기반의 앙상블 모델을 설명하기 위한 도면이다.Figure 3 is a diagram for explaining a tree-based ensemble model according to various embodiments.

일 실시예에 따르면, 트리 기반의 앙상블 모델(320)은, 부분 입력 데이터(310)에 적용됨으로써 임시 출력 데이터(330)를 산출하는 모델을 나타낼 수 있다. 트리 기반의 앙상블 모델(320)은, 입력 데이터의 시계열 요인(time series factor)에 기초하여 출력 데이터를 산출하는 시퀀스 모델과 달리, 부분 입력 데이터(310)의 피처들 간의 순서(예: 시간 순서, 결합 순서)와 독립적으로 임시 출력 데이터(330)를 산출하는 모델을 포함할 수 있다. 예를 들어, 부분 입력 데이터(310)는 복수의 피처들(예: 제1 피처(311), 제2 피처(312), 제3 피처(313), 제4 피처(314), 제5 피처(315), 및 제6 피처(316))을 가질 수 있다. 트리 기반의 앙상블 모델(320)은, 부분 입력 데이터(310)의 피처들의 측정 및/또는 기록된 시간 순서와 독립적으로 임시 출력 데이터(330)를 산출할 수 있다. According to one embodiment, the tree-based ensemble model 320 may represent a model that calculates temporary output data 330 by being applied to partial input data 310. The tree-based ensemble model 320, unlike the sequence model that calculates output data based on the time series factor of the input data, is the order (e.g., time sequence, It may include a model that produces temporary output data 330 independently of the combining order. For example, the partial input data 310 includes a plurality of features (e.g., the first feature 311, the second feature 312, the third feature 313, the fourth feature 314, and the fifth feature ( 315), and a sixth feature 316). The tree-based ensemble model 320 may produce temporary output data 330 independently of the temporal order in which features of the partial input data 310 were measured and/or recorded.

이하, 설명의 편의를 위하여, 부분 입력 데이터(310) 및 해당 부분 입력 데이터(310)에 트리 기반의 앙상블 모델(320)을 적용함으로써 산출된 임시 출력 데이터(330)를 데이터 쌍(data pair)으로 페어링(pairing)하여 설명한다.Hereinafter, for convenience of explanation, the partial input data 310 and the temporary output data 330 calculated by applying the tree-based ensemble model 320 to the partial input data 310 are divided into data pairs. Explain by pairing.

도 2에서 전술한 바와 같이, 부분 입력 데이터(310)는, 의료 데이터의 적어도 일부로서, 대응하는 시간대(예: 부분 입력 시간대(341))에서의 대상자의 의료 상황과 관련된 정보를 포함할 수 있다. 복수의 부분 입력 데이터(310)들이 결합됨으로써, 시퀀스 모델의 입력 데이터가 생성될 수 있다. 부분 입력 데이터(310)는 미리 결정된 시간 길이를 가지는 부분 입력 시간대(341)에 대응할 수 있다.As described above in FIG. 2, the partial input data 310 may include, as at least part of the medical data, information related to the subject's medical situation in a corresponding time zone (e.g., partial input time zone 341). . By combining a plurality of partial input data 310, input data of a sequence model can be generated. Partial input data 310 may correspond to a partial input time period 341 having a predetermined time length.

임시 출력 데이터(330)는, 임시 출력 데이터(330)가 대응하는 시간대(342)에 측정 및/또는 기록될 것으로 예측되는 대상자(예: 환자)의 의료 상황과 관련된 값을 포함하는 데이터를 나타낼 수 있다. 임시 출력 데이터(330)는 페어링된 부분 입력 데이터(310)가 대응하는 부분 입력 시간대(341) 이후의 시간대에 대응할 수 있다. Temporary output data 330 may represent data containing values related to a medical situation of a subject (e.g., a patient) that is expected to be measured and/or recorded in the time period 342 to which temporary output data 330 corresponds. there is. The temporary output data 330 may correspond to a time zone after the partial input time zone 341 to which the paired partial input data 310 corresponds.

예를 들어, 임시 출력 데이터(330)가 대응하는 시간대(342)의 시작 시각은, 페어링된 부분 입력 데이터(310)가 대응하는 부분 입력 시간대(341)의 종료 시각과 같을 수 있다. 임시 출력 데이터(330)가 대응하는 시간대(342)의 종료 시각은, 임시 출력 데이터(330)가 대응하는 시간대(342)의 시작 시각으로부터 미리 결정된 시간 길이 이후의 시각일 수 있다. 임시 출력 데이터(330)가 대응하는 시간대(342)의 시간 길이는, 다시 말해, 임시 출력 데이터(330)가 대응하는 시간대(342)의 시작 시각으로부터 종료 시각까지의 시간 길이는, 부분 입력 시간대(341)의 길이와 같을 수 있다. 다만, 임시 출력 데이터(330)가 대응하는 시간대(342)의 시간 길이가 이에 한정되는 것은 아니고, 부분 입력 시간대(341)의 시간 길이와 독립적인 시간 길이로 설계에 따라 변경될 수 있다. For example, the start time of the time zone 342 to which the temporary output data 330 corresponds may be the same as the end time of the partial input time zone 341 to which the paired partial input data 310 corresponds. The end time of the time zone 342 to which the temporary output data 330 corresponds may be a time after a predetermined length of time from the start time of the time zone 342 to which the temporary output data 330 corresponds. The time length of the time zone 342 to which the temporary output data 330 corresponds is, in other words, the time length from the start time to the end time of the time zone 342 to which the temporary output data 330 corresponds is the partial input time zone ( 341) may be the same as the length. However, the time length of the time zone 342 to which the temporary output data 330 corresponds is not limited to this, and may be changed according to design to a time length independent of the time length of the partial input time zone 341.

일 실시예에 따르면, 프로세서는, 트리 기반의 앙상블 모델(320)로서 부스팅 알고리즘(boosting algorithm) 기반의 모델에 기초하여 부분 입력 데이터(310)의 피처를 선택할 수 있다. According to one embodiment, the processor may select features of the partial input data 310 based on a model based on a boosting algorithm as a tree-based ensemble model 320.

부스팅 알고리즘은, 복수의 약한 분류기들 중 선행하는 분류기가 잘못 예측한 결과에 기초하여 후속하는 분류기의 가중치를 변경함으로써, 선행하는 분류기에 의하여 잘못 분류된 데이터에 집중하여 새로운 분류 규칙을 만드는 특징을 가질 수 있다. 예를 들어, 프로세서는 복수개의 분류기들을 순차적으로 트레이닝시킬 수 있다. 프로세서는, 선행하는 분류기의 출력 중 예측(prediction)과 참 값이 다른 경우, 후속하는 분류기는 참 값을 출력할 수 있도록 후속하는 분류기의 가중치를 조정할 수 있다.The boosting algorithm has the characteristic of creating a new classification rule by focusing on data misclassified by the preceding classifier by changing the weight of the subsequent classifier based on the result incorrectly predicted by the preceding classifier among a plurality of weak classifiers. You can. For example, the processor can sequentially train a plurality of classifiers. If the prediction and true value among the outputs of the preceding classifier are different, the processor may adjust the weight of the subsequent classifier so that the subsequent classifier outputs the true value.

예시적으로, 부스팅 알고리즘 기반의 모델은, XGBoost, AdaBoost, GBM(Gradient Boosting Machine), LightGBM, CatBoost, 또는 histogram-based gradient boost 중 적어도 하나를 포함할 수 있다.By way of example, a model based on a boosting algorithm may include at least one of XGBoost, AdaBoost, GBM (Gradient Boosting Machine), LightGBM, CatBoost, or histogram-based gradient boost.

일 실시예에 따르면, 프로세서는 트리 기반의 앙상블 모델(320)로서 배깅 알고리즘(bagging algorithm) 기반의 모델에 기초하여 부분 입력 데이터(310)의 피처를 선택할 수 있다. According to one embodiment, the processor may select features of the partial input data 310 based on a bagging algorithm-based model as a tree-based ensemble model 320.

배깅 알고리즘은, 원본 데이터를 랜덤 샘플링함으로써 생성된 복수의 샘플 데이터들 각각에 기초하여 복수의 약한 분류기들(예: 트리들)을 병렬적으로 트레이닝하는 동작을 포함할 수 있다. 배깅 알고리즘 기반의 모델은, 복수의 약한 분류기들 각각의 결과를 결합함으로써 결과를 출력할 수 있다. 배깅 알고리즘 기반의 모델은, 복수의 결과들의 평균(average) 및/또는 다중 투표(majority vote)을 통해 복수의 결과들을 결합할 수 있다.The bagging algorithm may include training a plurality of weak classifiers (eg, trees) in parallel based on each of a plurality of sample data generated by random sampling of original data. A model based on the bagging algorithm can output results by combining the results of each of multiple weak classifiers. A model based on a bagging algorithm can combine multiple results through average and/or majority vote of the multiple results.

예시적으로, 배깅 알고리즘 기반의 모델은, 랜덤 포레스트(random forest)를 포함할 수 있다.By way of example, a model based on a bagging algorithm may include a random forest.

도 4은 다양한 실시예들에 따른 시퀀스 모델을 설명하기 위한 도면이다.Figure 4 is a diagram for explaining a sequence model according to various embodiments.

일 실시예에 따르면, 시퀀스 모델(420)은 입력 데이터(410)에 적용됨으로써 출력 데이터(430)를 산출하는 모델을 나타낼 수 있다. 입력 데이터(410)는, 대응하는 입력 시간대에 측정 및/또는 기록된 대상자의 의료 상황과 관련된 값을 포함하는 데이터를 나타낼 수 있다. 출력 데이터(430)는, 대응하는 출력 시간대에 측정 및/또는 기록될 것으로 예측되는 대상자의 의료 상황과 관련된 값을 포함하는 데이터를 나타낼 수 있다. 출력 시간대(예: 출력 시간대(450a), 출력 시간대(450b), 출력 시간대(450c))는 입력 시간대(440) 이후의 시간대로서, 시퀀스 모델(420)의 설계에 따라 결정될 수 있다.According to one embodiment, the sequence model 420 may represent a model that calculates the output data 430 by being applied to the input data 410. Input data 410 may represent data containing values related to the subject's medical situation measured and/or recorded in the corresponding input time period. Output data 430 may represent data containing values related to the subject's medical situation that are expected to be measured and/or recorded in the corresponding output time period. The output time zone (e.g., output time zone 450a, output time zone 450b, output time zone 450c) is a time zone after the input time zone 440, and may be determined according to the design of the sequence model 420.

일 실시예에 따르면, 입력 데이터(410)는, 복수의 부분 입력 데이터들(예: 제1 부분 입력 데이터(411), 제2 부분 입력 데이터(412), 제3 부분 입력 데이터(413))을 포함할 수 있다. 입력 데이터(410)는, 복수의 부분 입력 데이터들을 시간 순서에 따라 결합된 시퀀스 데이터를 포함할 수 있다. 일 실시예에 따르면, 프로세서는, 제1 부분 입력 데이터(411), 제2 부분 입력 데이터(412), 및 제3 부분 입력 데이터(413)를 시간 순서에 따라 결합함으로써 입력 데이터(410)를 생성할 수 있다. 복수의 부분 입력 데이터들에 대한 시간 순서는, 부분 입력 데이터(410)가 대응하는 시간대 간의 시간 순서에 의하여 결정될 수 있다. According to one embodiment, the input data 410 includes a plurality of partial input data (e.g., first partial input data 411, second partial input data 412, and third partial input data 413). It can be included. The input data 410 may include sequence data that combines a plurality of partial input data in time order. According to one embodiment, the processor generates input data 410 by combining first partial input data 411, second partial input data 412, and third partial input data 413 in chronological order. can do. The time order of the plurality of partial input data may be determined by the time order between time zones to which the partial input data 410 corresponds.

예시적으로, 도 4에서 나타난 바와 같이, 제1 부분 입력 데이터(411)는 제1 부분 입력 시간대(441)에 대응할 수 있다. 제2 부분 입력 데이터(412)는 제2 부분 입력 시간대(442)에 대응할 수 있다. 제3 부분 입력 데이터(413)는 제3 부분 입력 시간대(443)에 대응할 수 있다. 프로세서는, 복수의 부분 입력 데이터들을, 복수의 부분 입력 시간대들의 시간 순서에 따라, 제1 부분 입력 데이터(411), 제2 부분 입력 데이터(412), 및 제3 부분 입력 데이터(413)의 순서로 결합함으로써 입력 데이터(410)를 생성할 수 있다. 생성된 입력 데이터(410)는, 복수의 부분 입력 시간대들(예: 제1 부분 입력 시간대(441), 제2 부분 입력 시간대(442), 및 제3 부분 입력 시간대(443))을 포함하는 입력 시간대(440)에 대응할 수 있다.Exemplarily, as shown in FIG. 4, the first partial input data 411 may correspond to the first partial input time period 441. The second partial input data 412 may correspond to the second partial input time period 442. The third partial input data 413 may correspond to the third partial input time period 443. The processor processes the plurality of partial input data in the order of first partial input data 411, second partial input data 412, and third partial input data 413 according to the time order of the plurality of partial input time periods. Input data 410 can be generated by combining. The generated input data 410 is input that includes a plurality of partial input time zones (e.g., a first partial input time zone 441, a second partial input time zone 442, and a third partial input time zone 443). It can correspond to the time zone (440).

프로세서는, 입력 데이터(410)에 시퀀스 모델(420)을 적용함으로써, 입력 시간대(440) 이후의 출력 시간대에 대응하는 출력 데이터(430)를 산출할 수 있다.The processor may calculate output data 430 corresponding to an output time period after the input time period 440 by applying the sequence model 420 to the input data 410.

일 실시예에 따르면, 출력 시간대(450a)의 시작 시각은 입력 시간대(440)의 종료 시각일 수 있다. 출력 시간대(450a)의 종료 시각은, 출력 시간대(450a)의 시작 시각으로부터 미리 결정된 시간 길이 이후의 시각일 수 있다. 다시 말해, 출력 시간대(450a)는 입력 시간대의 종료 시각으로부터 미리 결정된 시간 길이 이후의 시각까지의 시간대일 수 있다. 시퀀스 모델(420)은, 입력 시간대(440)에 대응하는 입력 데이터(410)에 적용되는 경우, 입력 시간대(440)의 종료 시각으로부터 미리 결정된 시간 길이 이후의 시각까지의 출력 시간대(450a)에 대응하는 출력 데이터(430)를 산출하도록 트레이닝될 수 있다. 프로세서는, 시퀀스 모델(420)을 이용하여 입력 시간대(440)에 대응하는 입력 데이터(410)에 기초하여 출력 시간대(450a)에 대응하는 출력 데이터(430)를 산출할 수 있다.According to one embodiment, the start time of the output time slot 450a may be the end time of the input time slot 440. The end time of the output time slot 450a may be a time after a predetermined length of time from the start time of the output time slot 450a. In other words, the output time zone 450a may be a time zone from the end time of the input time zone to a time after a predetermined length of time. The sequence model 420, when applied to input data 410 corresponding to the input time period 440, corresponds to the output time period 450a from the end time of the input time period 440 to a time after a predetermined length of time. Can be trained to produce output data 430 that The processor may calculate output data 430 corresponding to the output time zone 450a based on input data 410 corresponding to the input time zone 440 using the sequence model 420.

일 실시예에 따르면, 출력 시간대의 시작 시각은 입력 시간대(440)의 종료 시각으로부터 제1 시간 길이 이후의 시각일 수 있다. 출력 시간대의 종료 시각은, 출력 시간대(450b)의 시작 시각으로부터 제2 시간 길이 이후의 시각일 수 있다. According to one embodiment, the start time of the output time zone may be a time after a first length of time from the end time of the input time zone 440. The end time of the output time zone may be a time after a second length of time from the start time of the output time zone 450b.

예를 들어, 제1 시간 길이 및 제2 시간 길이가 24시간인 경우, 시퀀스 모델(420)은 입력 시간대(440)에 대응하는 입력 데이터(410)에 적용되는 경우, 출력 시간대(450b)에 대응하는 출력 데이터(430)를 산출하도록 트레이닝될 수 있다. 프로세서는, 시퀀스 모델(420)을 이용하여 입력 시간대(440)에 대응하는 입력 데이터(410)에 기초하여 출력 시간대(450b)에 대응하는 출력 데이터(430)를 산출할 수 있다. For example, if the first time length and the second time length are 24 hours, sequence model 420, when applied to input data 410 corresponding to input time zone 440, corresponds to output time zone 450b. Can be trained to produce output data 430 that The processor may calculate output data 430 corresponding to the output time zone 450b based on input data 410 corresponding to the input time zone 440 using the sequence model 420.

예를 들어, 제1 시간 길이가 48시간이고 제2 시간 길이가 24시간인 경우, 시퀀스 모델(420)은 입력 시간대(440)에 대응하는 입력 데이터(410)에 적용되는 경우, 출력 시간대(450c)에 대응하는 출력 데이터 (430)를 산출하도록 트레이닝될 수 있다. 프로세서는, 시퀀스 모델(420)을 이용하여 입력 시간대(440)에 대응하는 입력 데이터(410)에 기초하여 출력 시간대(450c)에 대응하는 출력 데이터(430)를 산출할 수 있다.For example, if the first time length is 48 hours and the second time length is 24 hours, the sequence model 420, when applied to the input data 410 corresponding to the input time zone 440, output time zone 450c ) can be trained to produce output data 430 corresponding to The processor may calculate output data 430 corresponding to the output time zone 450c based on input data 410 corresponding to the input time zone 440 using the sequence model 420.

일 실시예에 따르면, 시퀀스 모델(420)은, 트리 기반의 앙상블 모델(예: 도 3의 트리 기반의 앙상블 모델(320))과 달리, 입력 데이터(410)의 시계열 요인에 기초하여 출력 데이터(430)를 산출하는 모델을 포함할 수 있다. 예를 들어, 입력 데이터(410)의 시계열 요인은, 입력 데이터(410)의 부분 입력 데이터들 간의 결합 순서를 포함할 수 있다. 다시 말해, 시퀀스 모델(420)은, 입력 데이터(410) 중에서, 부분 입력 데이터들뿐만 아니라, 부분 입력 데이터들의 결합 순서(예: 시간 순서, 무작위로 정렬된 다른 순서)에도 기초하여 출력 데이터(430)를 산출할 수 있다.According to one embodiment, the sequence model 420, unlike a tree-based ensemble model (e.g., the tree-based ensemble model 320 of FIG. 3), produces output data based on the time series factors of the input data 410. 430) may be included. For example, the time series factor of the input data 410 may include a combining order between partial input data of the input data 410. In other words, the sequence model 420, among the input data 410, output data 430 based on not only the partial input data, but also the combined order (e.g., temporal order, other randomly arranged orders) of the partial input data. ) can be calculated.

일 실시예에 따르면, 시퀀스 모델(420)은, 입력 데이터(410)에 포함된 복수의 부분 입력 데이터들의 결합 순서에 따라 다른 출력 데이터를 산출 가능할 수 있다. 예를 들어, 시퀀스 모델(420)은, 동일한 부분 입력 데이터들을 서로 다른 순서로 결합함으로써 생성된 제1 입력 데이터 및 제2 입력 데이터에 각각 적용됨으로써, 서로 다른 출력 데이터를 산출할 수 있다. 제1 입력 데이터는, 부분 입력 데이터들을 시간 순서대로 결합함으로써 생성될 수 있다. 제1 입력 데이터는, 제1 부분 입력 데이터(411), 제2 부분 입력 데이터(412), 및 제3 부분 입력 데이터(413)의 순서로 결합됨으로써 생성될 수 있다. 제2 입력 데이터는, 시간 순서와 독립적으로 결정된 순서로 결합됨으로써 생성될 수 있다. 예시적으로, 제2 입력 데이터는, 제2 부분 입력 데이터(412), 제3 부분 입력 데이터(413), 및 제1 부분 입력 데이터(411)의 순서로 결합됨으로써 생성될 수 있다. 프로세서는, 제1 입력 데이터에 시퀀스 모델(420)을 적용함으로써 제1 출력 데이터를 출력할 수 있다. 프로세서는, 제2 입력 데이터에 시퀀스 모델(420)을 적용함으로써 제1 출력 데이터와 다른 제2 출력 데이터를 출력할 수 있다. 시퀀스 모델(420)은, 제1 입력 데이터 및 제2 입력 데이터가 동일한 부분 입력 데이터들을 결합함으로써 생성된 입력 데이터들임에도 불구하고, 부분 입력 데이터들의 결합 순서에 차이가 있으므로, 서로 다른 복수의 출력 데이터들(예: 제1 출력 데이터 및 제2 출력 데이터)을 산출 가능할 수 있다.According to one embodiment, the sequence model 420 may be capable of calculating different output data depending on the combining order of a plurality of partial input data included in the input data 410. For example, the sequence model 420 may be applied to first input data and second input data generated by combining identical partial input data in different orders, thereby producing different output data. First input data may be generated by combining partial input data in chronological order. The first input data may be generated by combining the first partial input data 411, the second partial input data 412, and the third partial input data 413 in that order. The second input data may be generated by combining them in an order determined independently of the time order. Exemplarily, the second input data may be generated by combining the second partial input data 412, the third partial input data 413, and the first partial input data 411 in that order. The processor may output first output data by applying the sequence model 420 to the first input data. The processor may output second output data that is different from the first output data by applying the sequence model 420 to the second input data. Although the first input data and the second input data are input data generated by combining the same partial input data, the sequence model 420 has a difference in the combining order of the partial input data, so that a plurality of different output data are generated. (e.g., first output data and second output data) may be calculated.

예시적으로, 시퀀스 모델(420)은, RNN(Recurrent Neural Network), LSTM(Long Short Term Memory), ARIMA(AutoregRessive Integrated Moving Average), Seq2Seq(Sequence to Sequence model), GRU(Gated Recurrent Unit), 또는 Transformer 중 적어도 하나를 포함할 수 있다.Illustratively, the sequence model 420 is a Recurrent Neural Network (RNN), Long Short Term Memory (LSTM), AutoregRessive Integrated Moving Average (ARIMA), Sequence to Sequence model (Seq2Seq), Gated Recurrent Unit (GRU), or It may contain at least one Transformer.

도 5는 다양한 실시예들에 따른 전자 장치의 부분 입력 데이터의 피처를 선택하는 동작을 설명하기 위한 도면이다.FIG. 5 is a diagram illustrating an operation of selecting features of partial input data of an electronic device according to various embodiments.

단계(510)에서, 프로세서는 트리 기반의 앙상블 모델을 트레이닝시킬 수 있다. 프로세서는 임시 부분 입력 데이터에 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교할 수 있다. 프로세서는 임시 출력 데이터와 임시 부분 입력 데이터에 매핑된 참 값의 비교에 기초하여 목적 함수를 산출할 수 있다. 프로세서는, 산출된 목적 함수에 기초하여 트리 기반의 앙상블 모델의 파라미터를 업데이트할 수 있다.At step 510, the processor may train a tree-based ensemble model. The processor can apply a tree-based ensemble model to temporary partial input data and compare the calculated temporary output data with true values. The processor may calculate the objective function based on a comparison of the temporary output data and the true value mapped to the temporary partial input data. The processor may update parameters of the tree-based ensemble model based on the calculated objective function.

임시 부분 입력 데이터는, 의료 데이터의 적어도 일부로서, 부분 입력 데이터를 획득하기 위하여 이용될 수 있다. 예시적으로, 프로세서는, 초기에 임시 부분 입력 데이터를 의료 데이터의 복수의 피처들을 모두 가지는 것으로 설정할 수 있다. Temporary partial input data, as at least part of medical data, may be used to obtain partial input data. Exemplarily, the processor may initially set the temporary partial input data to have all of the plurality of features of the medical data.

단계(520)에서, 프로세서는 피처 중요도(feature importance)에 기초하여, 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택할 수 있다. 프로세서는 트레이닝된 트리 기반의 앙상블 모델에 대하여, 임시 부분 입력 데이터의 각 피처에 대한 피처 중요도를 계산할 수 있다. 프로세서는, 피처 중요도에 기초하여 임시 부분 입력 데이터의 피처들 중 미리 결정된 개수의 피처를 선택할 수 있다. 임시 부분 입력 데이터의 피처들 중에서, 선택된 미리 결정된 개수의 피처는, 나머지 피처보다 큰 피처 중요도를 가질 수 있다.In step 520, the processor may select at least one feature of the temporary partial input data based on feature importance. The processor may calculate feature importance for each feature of the temporary partial input data for the trained tree-based ensemble model. The processor may select a predetermined number of features from among the features of the temporary partial input data based on feature importance. Among the features of the temporary partial input data, a predetermined number of selected features may have a greater feature importance than the remaining features.

피처 중요도는, 트레이닝된 트리 기반의 앙상블 모델의 출력 데이터 산출에 대한 임시 부분 입력 데이터의 각 피처의 영향력을 나타내는 값을 포함할 수 있다. 예시적으로, 피처 중요도는, 게인(gain), 커버(cover), 또는 웨이트(weight) 중 하나 또는 둘 이상의 조합을 포함할 수 있다. The feature importance may include a value indicating the influence of each feature of the temporary partial input data on the output data of the trained tree-based ensemble model. Illustratively, feature importance may include one or a combination of two or more of gain, cover, or weight.

게인(gain)은, 각 피처가 트리 기반의 앙상블 모델 예측에 미친 영향력을 나타내는 값을 포함할 수 있다. 예를 들어, 대상 피처의 게인은 데이터에서 대상 피처의 값을 임의의 값으로 치환하면 원본 데이터보다 임시 기계 학습 모델의 예측 에러가 증가하는 정도를 포함할 수 있다. 대상 노드에 대한 대상 피처의 게인은, 대상 노드에서 대상 피처로 분기되지 않는 경우에 비하여, 트리의 대상 노드가 대상 피처로 분기되는 경우에 가지는 트리 기반의 앙상블 모델의 성능의 증가분을 포함할 수 있다. 평균 게인은, 트리 기반의 앙상블 모델에 포함된 복수의 노드들에 대한 게인들의 평균으로 계산될 수 있다. 총 게인(total gain)은, 트리 기반의 앙상블 모델에 포함된 복수의 노드들에 대한 게인들의 합(summation)으로 계산될 수 있다.Gain may include a value representing the influence each feature has on tree-based ensemble model prediction. For example, the gain of the target feature may include the degree to which the prediction error of the temporary machine learning model increases compared to the original data when the value of the target feature in the data is replaced with a random value. The gain of the target feature for the target node may include the increase in performance of the tree-based ensemble model when the target node of the tree branches to the target feature compared to the case where the target node does not branch to the target feature. . The average gain can be calculated as the average of the gains for a plurality of nodes included in the tree-based ensemble model. The total gain can be calculated as the sum of the gains for a plurality of nodes included in the tree-based ensemble model.

커버(cover)는, 각 피처와 관련된 샘플의 상대적인 개수를 나타내는 값을 포함할 수 있다. 예시적으로, 입력 데이터는 4개의 피처들을 가질 수 있다. 트리 기반의 앙상블 모델의 입력 데이터 세트는 100개의 입력 데이터들을 가질 수 있다. 트리 기반의 앙상블 모델은, 제1 트리, 제2 트리, 및 제3 트리를 포함할 수 있다. 대상 피처의 커버는, 입력 데이터 세트에 포함된 100개의 입력 데이터들 중에서, 대상 피처에 기초하여 제1 트리에서 10개의 입력 데이터들이 분류되고 제2 트리에서 5개의 입력 데이터들이 분류되며 제3 트리에서 2개의 입력 데이터들이 분류되는 경우, 17로 계산될 수 있다. 대상 피처의 평균 커버는, 앙상블 모델에 포함된 트리들에 대한 대상 피처의 커버들의 평균으로 계산될 수 있다. 총 커버(total cover)는, 트리 기반의 앙상블 모델에 대한 복수의 피처들의 커버들의 합으로 계산될 수 있다.Cover may include a value indicating the relative number of samples associated with each feature. By way of example, input data may have four features. The input data set of a tree-based ensemble model can have 100 input data. A tree-based ensemble model may include a first tree, a second tree, and a third tree. For the cover of the target feature, among the 100 input data included in the input data set, 10 input data are classified in the first tree, 5 input data are classified in the second tree, and 5 input data are classified in the third tree based on the target feature. If two input data are classified, it can be calculated as 17. The average cover of the target feature may be calculated as the average of the covers of the target feature for the trees included in the ensemble model. Total cover can be calculated as the sum of the covers of multiple features for a tree-based ensemble model.

웨이트(weight)는, 트리 기반의 앙상블 모델의 구조에서, 각 피처에 기초한 노드 분기의 개수를 나타내는 값을 포함할 수 있다. 예시적으로, 트리 기반의 앙상블 모델은, 제1 트리, 제2 트리, 및 제3 트리를 포함할 수 있다. 대상 피처의 웨이트는, 제1 트리는 대상 피처에 기초한 2개의 노드 분기들을 가지고, 제2 트리는 대상 피처에 기초한 1개의 노드 분기를 가지며, 제3 트리는 대상 피처에 기초한 3개의 노드 분기들을 가지는 경우, 6으로 계산될 수 있다.Weight may include a value representing the number of node branches based on each feature in the structure of the tree-based ensemble model. Illustratively, the tree-based ensemble model may include a first tree, a second tree, and a third tree. The weight of the target feature is 6, where the first tree has 2 node branches based on the target feature, the second tree has 1 node branch based on the target feature, and the third tree has 3 node branches based on the target feature. It can be calculated as

일 실시예에 따르면, 프로세서는, 게인에 기초하여 임시 부분 입력 데이터의 피처들 중 일부를 선택할 수 있다. 프로세서는, 트레이닝된 트리 기반의 앙상블 모델에 대하여 임시 부분 입력 데이터의 각 피처의 게인을 계산할 수 있다. 프로세서는, 게인에 기초하여 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택할 수 있다. 임시 부분 입력 데이터의 피처 중에서, 선택된 피처는, 나머지 피처보다 큰 게인을 가질 수 있다.According to one embodiment, the processor may select some of the features of the temporary partial input data based on the gain. The processor may calculate the gain of each feature of the temporary partial input data with respect to the trained tree-based ensemble model. The processor may select at least one feature among the features of the temporary partial input data based on the gain. Among the features of the temporary partial input data, the selected feature may have a greater gain than the remaining features.

일 실시예에 따르면, 프로세서는, 게인 및 커버에 기초하여 임시 부분 입력 데이터의 피처들 중 일부를 선택할 수 있다. 프로세서는, 트레이닝된 트리 기반의 앙상블 모델에 대하여 임시 부분 입력 데이터의 각 피처의 게인을 계산할 수 있다. 프로세서는, 게인에 기초하여 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택함으로써 게인에 기초한 피처 세트(feature set)를 획득할 수 있다. 임시 부분 입력 데이터의 피처 중에서, 게인에 기초한 피처 세트의 피처는, 나머지 피처보다 큰 게인을 가질 수 있다. 프로세서는, 트레이닝된 트리 기반의 앙상블 모델에 대하여 임시 부분 입력 데이터의 각 피처의 커버를 계산할 수 있다. 프로세서는, 커버에 기초하여 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택함으로써 커버에 기초한 피처 세트(feature set)를 획득할 수 있다. 임시 부분 입력 데이터의 피처 중에서, 커버에 기초한 피처 세트의 피처는, 나머지 피처보다 큰 커버를 가질 수 있다. 프로세서는, 임시 부분 입력 데이터의 피처 중 게인에 기초한 피처 세트 및 커버에 기초한 피처 세트의 합집합에 포함된 피처를 선택할 수 있다. 프로세서는, 게인에 기초한 피처 세트 및 커버에 기초한 피처 세트에 모두 포함된 피처를 한 번 선택하도록 중복된 피처에 대하여 처리할 수 있다.According to one embodiment, the processor may select some of the features of the temporary partial input data based on gain and cover. The processor may calculate the gain of each feature of the temporary partial input data with respect to the trained tree-based ensemble model. The processor may obtain a feature set based on the gain by selecting at least one feature among the features of the temporary partial input data based on the gain. Among the features of the temporary partial input data, features in the feature set based on gain may have a larger gain than the remaining features. The processor may calculate the cover of each feature of the temporary partial input data for the trained tree-based ensemble model. The processor may obtain a feature set based on the cover by selecting at least one feature among the features of the temporary partial input data based on the cover. Among the features of the temporary partial input data, features in the feature set based on the cover may have a larger cover than the remaining features. The processor may select a feature included in the union of the gain-based feature set and the cover-based feature set among the features of the temporary partial input data. The processor may process duplicate features to select once a feature that is included in both the gain-based feature set and the cover-based feature set.

단계(530)에서, 프로세서는 선택된 적어도 하나의 피처를 가지는 데이터로 임시 부분 입력 데이터를 업데이트할 수 있다. 프로세서는, 선택된 일부 피처들을 가지는 데이터로 임시 부분 입력 데이터를 변경함으로써, 임시 부분 입력 데이터의 피처의 개수를 감소시킬 수 있다.At step 530, the processor may update the temporary partial input data with data having at least one selected feature. The processor may reduce the number of features of the temporary partial input data by changing the temporary partial input data to data having some selected features.

단계(540)에서, 프로세서는 업데이트된 임시 부분 입력 데이터에 기초하여, 트리 기반의 앙상블 모델을 업데이트할 수 있다. 프로세서는, 업데이트된 임시 부분 입력 데이터에 적용됨으로써 임시 출력 데이터를 산출하는 앙상블 모델로 트리 기반의 앙상블 모델을 업데이트할 수 있다. 트리 기반의 앙상블 모델은, 임시 부분 입력 데이터의 피처의 개수가 감소함에 따라, 업데이트된 임시 부분 입력 데이터에 적용됨으로써 임시 출력 데이터를 산출하도록 트레이닝될 수 있다.At step 540, the processor may update the tree-based ensemble model based on the updated temporary partial input data. The processor may update the tree-based ensemble model with an ensemble model that produces temporary output data by applying it to the updated temporary partial input data. A tree-based ensemble model can be trained to produce temporary output data by applying it to updated temporary partial input data as the number of features of the temporary partial input data decreases.

일 실시예에 따르면, 프로세서는, 업데이트된 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델에 기초하여, 트리 기반의 앙상블 모델을 트레이닝시키는 동작, 및 피처를 선택하는 동작을 반복할 수 있다. 프로세서는, 임시 부분 입력 데이터의 피처의 개수 및/또는 트리 기반의 앙상블 모델의 성능에 기초하여, 트리 기반의 앙상블 모델을 트레이닝시키는 동작 및 피처를 선택하는 동작을 중단할 수 있다. 프로세서는 임시 부분 입력 데이터의 피처들을 부분 입력 데이터의 피처로 결정할 수 있다. 예를 들어, 프로세서는, 임시 부분 입력 데이터의 피처의 개수가 미리 결정된 개수 이하인 경우, 임시 부분 입력 데이터의 피처들을 부분 입력 데이터의 피처로 선택할 수 있다. 예를 들어, 프로세서는, 기존 트리 기반의 앙상블 모델의 성능이 업데이트된 트리 기반의 앙상블 모델의 성능보다 저하되는 경우, 기존 트리 기반의 앙상블 모델이 적용되는 임시 부분 입력 데이터의 피처들을 부분 입력 데이터의 피처로 선택할 수 있다.According to one embodiment, the processor may repeat an operation of training a tree-based ensemble model and an operation of selecting features based on the updated temporary partial input data and the tree-based ensemble model. The processor may suspend training the tree-based ensemble model and selecting features based on the number of features in the temporary partial input data and/or the performance of the tree-based ensemble model. The processor may determine features of the temporary partial input data as features of the partial input data. For example, if the number of features of the temporary partial input data is less than or equal to a predetermined number, the processor may select features of the temporary partial input data as features of the partial input data. For example, if the performance of the existing tree-based ensemble model is worse than that of the updated tree-based ensemble model, the processor may use the features of the temporary partial input data to which the existing tree-based ensemble model is applied to the partial input data. You can select it as a feature.

도 6은 다양한 실시예들 및 비교 실시예에 따른 시퀀스 모델의 성능을 비교하기 위한 도면이다.Figure 6 is a diagram for comparing the performance of sequence models according to various embodiments and comparative examples.

도 6에서, 비교 실시예 및 일 실시예들에 따른 시퀀스 모델들은, 입력 데이터에 적용됨으로써 출력 데이터를 산출하는 모델일 수 있다. 입력 데이터는 2개의 부분 입력 데이터를 포함하고, 각 부분 입력 데이터는 12시간의 시간 길이를 가지는 시간대에 대응할 수 있다. 출력 데이터는, 입력 시간대의 종료 시각으로부터 12시간 이후의 시각까지의 시간대에 대응할 수 있다. 비교 실시예 및 일 실시예들에 따른 시퀀스 모델들은, 부분 입력 데이터의 피처에서 주요한 차이점을 가질 수 있다.In FIG. 6, the comparative example and the sequence models according to one embodiment may be models that calculate output data by being applied to input data. The input data includes two partial input data, and each partial input data may correspond to a time zone with a time length of 12 hours. Output data can correspond to a time zone from the end time of the input time zone to a time 12 hours later. The comparative example and the sequence models according to the example embodiments may have major differences in features of partial input data.

비교 실시예에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들을 가질 수 있다. 다시 말해, 비교 실시예에 따른 시퀀스 모델의 부분 입력 데이터는, 의료 데이터의 복수의 피처들 중 선택된 피처들을 가지는 부분 입력 데이터 대신에, 의료 데이터의 복수의 피처들 모두를 가질 수 있다.Partial input data of the sequence model according to the comparative example may have a plurality of features of medical data. In other words, the partial input data of the sequence model according to the comparative example may have all of a plurality of features of the medical data, instead of partial input data having features selected from among the plurality of features of the medical data.

일 실시예 1에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들 중 선택된 피처를 가질 수 있다. 일 실시예 1에 따른 시퀀스 모델의 부분 입력 데이터의 피처는, 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델의 업데이트를 반복함으로써 선택될 수 있다. 일 실시예 1에 따른 시퀀스 모델의 부분 입력 데이터의 피처는, 시퀀스 모델의 성능에 기초하여 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델의 업데이트를 중단함으로써, 93개의 피처들로 결정될 수 있다.Partial input data of the sequence model according to Example 1 may have a feature selected from among a plurality of features of medical data. Features of partial input data of the sequence model according to Example 1 may be selected by repeating updates of the temporary partial input data and the tree-based ensemble model. The features of the partial input data of the sequence model according to Example 1 may be determined to be 93 features by stopping the update of the temporary partial input data and the tree-based ensemble model based on the performance of the sequence model.

일 실시예 2에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들 중 게인(gain)에 기초하여 선택된 50개의 피처들을 가질 수 있다.Partial input data of the sequence model according to Example 2 may have 50 features selected based on gain among a plurality of features of medical data.

일 실시예 3에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들 중 게인(gain)에 기초하여 선택된 10개의 피처들을 가질 수 있다.Partial input data of the sequence model according to Example 3 may have 10 features selected based on gain among a plurality of features of medical data.

일 실시예 4에 따른 시퀀스 모델의 부분 입력 데이터의 피처는, 게인 및 커버에 기초하여 선택될 수 있다. 구체적으로, 일 실시예 4에 따른 시퀀스 모델의 부분 입력 데이터는, 게인에 기초하여 선택된 10개의 피처들 및 커버에 기초하여 선택된 10개의 피처들을 가질 수 있다. 결과적으로, 일 실시예 4에 따른 시퀀스 모델의 부분 입력 데이터는, 게인 및 커버에 기초하여 선택된 20개의 피처들을 가질 수 있다.Features of partial input data of the sequence model according to Embodiment 4 may be selected based on gain and cover. Specifically, partial input data of the sequence model according to Example 4 may have 10 features selected based on gain and 10 features selected based on cover. As a result, partial input data of the sequence model according to Example 4 may have 20 features selected based on gain and cover.

도 6에서 나타난 바와 같이, 일 실시예들에 따른 시퀀스 모델들 각각은, 비교 실시예에 따른 시퀀스 모델보다 평균 제곱 오차(Mean Squared Error; MSE), 평균 절대 오차(Mean Absolute Error; MAE), 결정 계수(R-Squared), 및 정확도(accuracy)의 측면에서 모두 우수한 성능을 가질 수 있다.As shown in FIG. 6, each of the sequence models according to one embodiment has a higher mean squared error (MSE), mean absolute error (MAE), and determination than the sequence model according to the comparative embodiment. It can have excellent performance in terms of both coefficient (R-Squared) and accuracy (accuracy).

또한, 일 실시예들에 따른 시퀀스 모델들 중에서도, 게인 및 커버에 기초하여 피처를 선택하는 일 실시예 4에 따른 시퀀스 모델이, 게인에 기초하여 피처를 일 실시예 1 내지 3에 따른 시퀀스 모델들보다, 평균 제곱 오차(Mean Squared Error; MSE), 평균 절대 오차(Mean Absolute Error; MAE), 결정 계수(R-Squared), 및 정확도(accuracy)의 측면에서 모두 우수한 성능을 가질 수 있다.Additionally, among the sequence models according to embodiments, the sequence model according to Embodiment 4 selects features based on gain and cover, and the sequence models according to Embodiments 1 to 3 select features based on gain. Rather, it can have excellent performance in terms of Mean Squared Error (MSE), Mean Absolute Error (MAE), coefficient of determination (R-Squared), and accuracy.

도 7은 다양한 실시예들 및 비교 실시예에 따른 시퀀스 모델의 성능을 비교하기 위한 도면이다.Figure 7 is a diagram for comparing the performance of sequence models according to various embodiments and comparative examples.

도 6에서, 비교 실시예 및 일 실시예들에 따른 시퀀스 모델들은, 입력 데이터에 적용됨으로써 출력 데이터를 산출하는 모델일 수 있다. 입력 데이터는 2개의 부분 입력 데이터를 포함하고, 각 부분 입력 데이터는 12시간의 시간 길이를 가지는 시간대에 대응할 수 있다. 출력 데이터는, 출력 시간대에 대응할 수 있고, 출력 시간대의 시작 시각은, 입력 시간대의 종료 시각으로부터 12시간 이후의 시각이고, 출력 시간대의 종료 시각은, 출력 시간대의 시작 시각으로부터 12시간 이후의 시각일 수 있다. 비교 실시예 및 일 실시예들에 따른 시퀀스 모델들은, 부분 입력 데이터의 피처에서 주요한 차이점을 가질 수 있다.In FIG. 6, the comparative example and the sequence models according to one embodiment may be models that calculate output data by being applied to input data. The input data includes two partial input data, and each partial input data may correspond to a time zone with a time length of 12 hours. The output data may correspond to an output time zone, the start time of the output time zone is a time 12 hours after the end time of the input time zone, and the end time of the output time zone is a time 12 hours after the start time of the output time zone. You can. The comparative example and the sequence models according to the example embodiments may have major differences in features of partial input data.

비교 실시예에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들을 가질 수 있다. 다시 말해, 비교 실시예에 따른 시퀀스 모델의 부분 입력 데이터는, 의료 데이터의 복수의 피처들 중 선택된 피처들을 가지는 부분 입력 데이터 대신에, 의료 데이터의 복수의 피처들 모두를 가질 수 있다.Partial input data of the sequence model according to the comparative example may have a plurality of features of medical data. In other words, the partial input data of the sequence model according to the comparative example may have all of a plurality of features of the medical data, instead of partial input data having features selected from among the plurality of features of the medical data.

일 실시예 1에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들 중 선택된 피처를 가질 수 있다. 일 실시예 1에 따른 시퀀스 모델의 부분 입력 데이터의 피처는, 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델의 업데이트를 반복함으로써 선택될 수 있다. 일 실시예 1에 따른 시퀀스 모델의 부분 입력 데이터의 피처는, 시퀀스 모델의 성능에 기초하여 임시 부분 입력 데이터 및 트리 기반의 앙상블 모델의 업데이트를 중단함으로써, 93개의 피처들로 결정될 수 있다.Partial input data of the sequence model according to Example 1 may have a feature selected from among a plurality of features of medical data. Features of partial input data of the sequence model according to Example 1 may be selected by repeating updates of the temporary partial input data and the tree-based ensemble model. The features of the partial input data of the sequence model according to Example 1 may be determined to be 93 features by stopping the update of the temporary partial input data and the tree-based ensemble model based on the performance of the sequence model.

일 실시예 2에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들 중 게인(gain)에 기초하여 선택된 50개의 피처들을 가질 수 있다.Partial input data of the sequence model according to Example 2 may have 50 features selected based on gain among a plurality of features of medical data.

일 실시예 3에 따른 시퀀스 모델의 부분 입력 데이터는 의료 데이터의 복수의 피처들 중 게인(gain)에 기초하여 선택된 10개의 피처들을 가질 수 있다.Partial input data of the sequence model according to Example 3 may have 10 features selected based on gain among a plurality of features of medical data.

도 7에서 나타난 바와 같이, 일 실시예들에 따른 시퀀스 모델들 각각은, 비교 실시예에 따른 시퀀스 모델보다 평균 제곱 오차(Mean Squared Error; MSE), 평균 절대 오차(Mean Absolute Error; MAE), 결정 계수(R-Squared), 및 정확도(accuracy)의 측면에서 모두 우수한 성능을 가질 수 있다.As shown in FIG. 7, each of the sequence models according to one embodiment has a higher mean squared error (MSE), mean absolute error (MAE), and determination than the sequence model according to the comparative embodiment. It can have excellent performance in terms of both coefficient (R-Squared) and accuracy (accuracy).

또한, 일 실시예들에 따른 시퀀스 모델들 중에서도, 게인에 기초하여 10개의 피처들을 선택하는 일 실시예 3에 따른 시퀀스 모델이, 게인에 기초하여 더 많은 피처들을 선택하는 일 실시예 1 및 2에 따른 시퀀스 모델들보다, 평균 제곱 오차(Mean Squared Error; MSE), 평균 절대 오차(Mean Absolute Error; MAE), 결정 계수(R-Squared), 및 정확도(accuracy)의 측면에서 모두 우수한 성능을 가질 수 있다.Additionally, among the sequence models according to embodiments, the sequence model according to Embodiment 3 selects 10 features based on gain, and the sequence model according to Embodiment 1 and Embodiment 2 selects more features based on gain. Compared to other sequence models, it can have superior performance in terms of Mean Squared Error (MSE), Mean Absolute Error (MAE), R-Squared, and accuracy. there is.

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, and a field programmable gate (FPGA). It may be implemented using a general-purpose computer or a special-purpose computer, such as an array, programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and software applications running on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. Software and/or data may be used on any type of machine, component, physical device, virtual equipment, computer storage medium or device to be interpreted by or to provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on a computer-readable recording medium.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. A computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination, and the program instructions recorded on the medium may be specially designed and constructed for the embodiment or may be known and available to those skilled in the art of computer software. It may be possible. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.

위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware devices described above may be configured to operate as one or multiple software modules to perform the operations of the embodiments, and vice versa.

본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다.As used herein, “A or B”, “at least one of A and B”, “at least one of A or B”, “A, B or C”, “at least one of A, B and C”, and “A Each of phrases such as “at least one of , B, or C” may include any one of the items listed together in the corresponding phrase, or any possible combination thereof.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited drawings, those skilled in the art can apply various technical modifications and variations based on this. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims also fall within the scope of the claims described below.

Claims (20)

전자 장치에 의하여 수행되는 방법에 있어서,
의료 데이터의 복수의 피처들(features) 중에서 트리 기반의 앙상블 모델(tree-based ensemble model)에 기초하여 부분 입력 데이터(partial input data)의 피처를 선택하는 단계;
상기 선택된 피처를 가지는 복수의 부분 입력 데이터들을 포함하는 입력 데이터(input data)를 시퀀스 데이터(sequence data)로 생성하는 단계; 및
상기 생성된 입력 데이터에 시퀀스 모델(sequence model)을 적용함으로써 출력 데이터(output data)를 산출하는 단계
를 포함하는 방법.
In a method performed by an electronic device,
Selecting a feature of partial input data from among a plurality of features of medical data based on a tree-based ensemble model;
generating input data including a plurality of partial input data having the selected feature as sequence data; and
Calculating output data by applying a sequence model to the generated input data
How to include .
제1항에 있어서,
상기 부분 입력 데이터의 피처를 선택하는 단계는,
상기 의료 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값(ground truth)을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키는 단계; 및
상기 트레이닝된 트리 기반의 앙상블 모델에 대한 상기 복수의 피처들 각각의 피처 중요도에 기초하여, 상기 복수의 피처들 중 적어도 하나의 피처를 선택하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of selecting features of the partial input data is,
training the tree-based ensemble model by comparing ground truth with temporary output data calculated by applying the tree-based ensemble model to the medical data; and
Comprising: selecting at least one feature among the plurality of features based on feature importance of each of the plurality of features for the trained tree-based ensemble model,
method.
제1항에 있어서,
상기 부분 입력 데이터의 피처를 선택하는 단계는,
트레이닝된 트리 기반의 앙상블 모델에 대한 피처 중요도에 기초하여, 상기 의료 데이터의 상기 복수의 피처들 중에서 미리 결정된 개수의 피처를 선택하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of selecting features of the partial input data is,
Comprising: selecting a predetermined number of features from the plurality of features of the medical data based on feature importance for a trained tree-based ensemble model,
method.
제1항에 있어서,
상기 부분 입력 데이터의 피처를 선택하는 단계는,
상기 의료 데이터의 복수의 피처들 중 선택된 피처를 가지는 임시 부분 입력 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키는 단계;
상기 트레이닝된 트리 기반의 앙상블 모델에 대하여 계산된 상기 임시 부분 입력 데이터의 각 피처의 피처 중요도(feature importance)에 기초하여, 상기 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택하는 단계;
상기 선택된 적어도 하나의 피처를 가지는 데이터로 상기 임시 부분 입력 데이터를 업데이트하는 단계; 및
상기 업데이트된 임시 부분 입력 데이터에 적용됨으로써 임시 출력 데이터를 산출하는 앙상블 모델로 상기 트리 기반의 앙상블 모델을 업데이트하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of selecting features of the partial input data is,
training the tree-based ensemble model by comparing temporary output data calculated by applying the tree-based ensemble model to temporary partial input data having a selected feature among the plurality of features of the medical data and a true value;
selecting at least one feature among the features of the temporary partial input data based on feature importance of each feature of the temporary partial input data calculated for the trained tree-based ensemble model;
updating the temporary partial input data with data having the selected at least one feature; and
Comprising updating the tree-based ensemble model with an ensemble model that produces temporary output data by being applied to the updated temporary partial input data,
method.
제1항에 있어서,
상기 부분 입력 데이터의 피처를 선택하는 단계는,
부분 입력 데이터의 피처들 간의 시간 순서와 독립적으로 임시 출력 데이터를 산출하는 상기 트리 기반의 앙상블 모델에 기초하여 피처를 선택하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of selecting features of the partial input data is,
comprising selecting features based on the tree-based ensemble model that yields temporary output data independent of the temporal ordering between features of the partial input data,
method.
제1항에 있어서,
상기 입력 데이터를 생성하는 단계는,
상기 복수의 부분 입력 데이터들이 대응하는 시간대들의 시간 순서에 따라 복수의 부분 입력 데이터들을 결합(combine)함으로써 상기 입력 데이터를 생성하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of generating the input data is,
Generating the input data by combining a plurality of partial input data according to a time sequence of time zones to which the plurality of partial input data corresponds.
method.
제1항에 있어서,
상기 출력 데이터를 산출하는 단계는,
상기 생성된 입력 데이터에 포함된 상기 복수의 부분 입력 데이터들의 결합 순서에 따라 다른 출력 데이터를 산출 가능한 상기 시퀀스 모델을 이용하여 상기 출력 데이터를 산출하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of calculating the output data is,
Comprising the step of calculating the output data using the sequence model capable of calculating different output data according to the combining order of the plurality of partial input data included in the generated input data,
method.
제1항에 있어서,
상기 출력 데이터를 산출하는 단계는,
복수의 부분 입력 데이터들이 대응하는 시간대들 중 마지막 시간대의 종료 시각 이후의 출력 시간대에 대응하는 출력 데이터를 산출하는 단계를 포함하는
방법.
According to paragraph 1,
The step of calculating the output data is,
Comprising the step of calculating output data corresponding to an output time zone after the end time of the last time zone among the time zones to which the plurality of partial input data corresponds.
method.
제1항에 있어서,
상기 부분 입력 데이터의 피처를 선택하는 단계는,
상기 트리 기반의 앙상블 모델로서 XGBoost, AdaBoost, GBM(Gradient Boosting Machine), LightGBM, CatBoost, 또는 histogram-based gradient boost 중 적어도 하나를 포함하는 부스팅 알고리즘(boosting algorithm) 기반의 모델에 기초하여 상기 부분 입력 데이터의 피처를 선택하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of selecting features of the partial input data is,
The partial input data based on a boosting algorithm-based model including at least one of XGBoost, AdaBoost, GBM (Gradient Boosting Machine), LightGBM, CatBoost, or histogram-based gradient boost as the tree-based ensemble model. Including the step of selecting features of,
method.
제1항에 있어서,
상기 출력 데이터를 산출하는 단계는,
상기 시퀀스 모델로서, RNN(Recurrent Neural Network), LSTM(Long Short Term Memory), ARIMA(AutoregRessive Integrated Moving Average), Seq2Seq(Sequence to Sequence model), GRU(Gated Recurrent Unit), 또는 Transformer 중 적어도 하나를 포함하는 기계 학습 모델을 상기 입력 데이터에 적용함으로써 상기 출력 데이터를 산출하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of calculating the output data is,
The sequence model includes at least one of Recurrent Neural Network (RNN), Long Short Term Memory (LSTM), AutoregRessive Integrated Moving Average (ARIMA), Sequence to Sequence model (Seq2Seq), Gated Recurrent Unit (GRU), or Transformer. Comprising calculating the output data by applying a machine learning model to the input data,
method.
제1항에 있어서,
상기 출력 데이터를 산출하는 단계는,
추정 사구체 여과율(estimated Glomerular Filtration Rate; eGFR)을 포함하는 상기 출력 데이터를 산출하는 단계를 포함하는,
방법.
According to paragraph 1,
The step of calculating the output data is,
Comprising calculating the output data including an estimated Glomerular Filtration Rate (eGFR),
method.
하드웨어와 결합되어 제1항 내지 제11항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
A computer program combined with hardware and stored in a computer-readable recording medium to execute the method of any one of claims 1 to 11.
전자 장치에 있어서,
의료 데이터의 복수의 피처들(features) 중에서 트리 기반의 앙상블 모델(tree-based ensemble model)에 기초하여 선택된 피처를 가지는 부분 입력 데이터(partial input data)를 생성하고, 복수의 부분 입력 데이터들을 포함하는 입력 데이터(input data)를 시퀀스 데이터(sequence data)로 생성하며, 상기 생성된 시퀀스 데이터에 시퀀스 모델(sequence model)을 적용함으로써 출력 데이터(output data)를 산출하는 프로세서
를 포함하는 전자 장치.
In electronic devices,
Generates partial input data having features selected based on a tree-based ensemble model among a plurality of features of medical data, and includes a plurality of partial input data. A processor that generates input data as sequence data and calculates output data by applying a sequence model to the generated sequence data.
Electronic devices containing.
제13항에 있어서,
상기 프로세서는,
상기 의료 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키고,
상기 트레이닝된 트리 기반의 앙상블 모델에 대한 상기 복수의 피처들 각각의 피처 중요도에 기초하여, 상기 복수의 피처들 중 적어도 하나의 피처를 선택하는,
전자 장치.
According to clause 13,
The processor,
Training the tree-based ensemble model by comparing temporary output data calculated by applying the tree-based ensemble model to the medical data and true values,
Selecting at least one feature among the plurality of features based on feature importance of each of the plurality of features for the trained tree-based ensemble model,
Electronic devices.
제13항에 있어서,
상기 프로세서는,
상기 의료 데이터의 복수의 피처들 중 선택된 피처를 가지는 임시 부분 입력 데이터에 상기 트리 기반의 앙상블 모델을 적용하여 산출된 임시 출력 데이터와 참 값을 비교함으로써 상기 트리 기반의 앙상블 모델을 트레이닝시키고,
상기 임시 부분 입력 데이터의 각 피처의 상기 트레이닝된 트리 기반의 앙상블 모델에 대한 피처 중요도에 기초하여, 상기 임시 부분 입력 데이터의 피처 중 적어도 하나의 피처를 선택하며,
상기 선택된 적어도 하나의 피처를 가지는 데이터로 상기 임시 부분 입력 데이터를 업데이트하고,
상기 업데이트된 임시 부분 입력 데이터에 적용됨으로써 임시 출력 데이터를 산출하는 앙상블 모델로 상기 트리 기반의 앙상블 모델을 업데이트하는,
전자 장치.
According to clause 13,
The processor,
Training the tree-based ensemble model by comparing temporary output data calculated by applying the tree-based ensemble model to temporary partial input data having a selected feature among the plurality of features of the medical data and a true value,
Select at least one feature among the features of the temporary partial input data based on the feature importance of each feature of the temporary partial input data to the trained tree-based ensemble model,
Update the temporary partial input data with data having the selected at least one feature,
Updating the tree-based ensemble model with an ensemble model that produces temporary output data by being applied to the updated temporary partial input data,
Electronic devices.
제13항에 있어서,
상기 프로세서는,
부분 입력 데이터의 피처들 간의 시간 순서와 독립적으로 임시 출력 데이터를 산출하는 상기 트리 기반의 앙상블 모델에 기초하여 피처를 선택하는,
전자 장치.
According to clause 13,
The processor,
Selecting features based on the tree-based ensemble model that produces temporary output data independent of the temporal ordering between features of the partial input data,
Electronic devices.
제13항에 있어서,
상기 프로세서는,
상기 복수의 부분 입력 데이터들이 대응하는 시간대들의 순서에 따라 복수의 부분 입력 데이터들을 결합(combine)함으로써 상기 입력 데이터를 생성하는,
전자 장치.
According to clause 13,
The processor,
generating the input data by combining a plurality of partial input data according to the order of time zones to which the plurality of partial input data correspond,
Electronic devices.
제13항에 있어서,
상기 프로세서는,
상기 생성된 입력 데이터에 포함된 상기 복수의 부분 입력 데이터들의 결합 순서에 따라 다른 출력 데이터를 산출 가능한 상기 시퀀스 모델을 이용하여 상기 출력 데이터를 산출하는,
전자 장치.
According to clause 13,
The processor,
Calculating the output data using the sequence model capable of calculating different output data according to the combining order of the plurality of partial input data included in the generated input data,
Electronic devices.
제13항에 있어서,
상기 프로세서는,
상기 트리 기반의 앙상블 모델로서 XGBoost, AdaBoost, GBM(Gradient Boosting Machine), LightGBM, CatBoost, 또는 histogram-based gradient boost 중 적어도 하나를 포함하는 부스팅 알고리즘(boosting algorithm) 기반의 모델에 기초하여 상기 부분 입력 데이터를 생성하는,
전자 장치.
According to clause 13,
The processor,
The partial input data based on a boosting algorithm-based model including at least one of XGBoost, AdaBoost, GBM (Gradient Boosting Machine), LightGBM, CatBoost, or histogram-based gradient boost as the tree-based ensemble model. generating,
Electronic devices.
제13항에 있어서,
상기 프로세서는,
상기 시퀀스 모델로서, RNN(Recurrent Neural Network), LSTM(Long Short Term Memory), S2S(Sequence to Sequence model), GRU(Gated Recurrent Unit), 또는 Transformer 중 적어도 하나를 포함하는 기계 학습 모델을 상기 입력 데이터에 적용함으로써 상기 출력 데이터를 산출하는,
전자 장치.
According to clause 13,
The processor,
As the sequence model, a machine learning model including at least one of a Recurrent Neural Network (RNN), Long Short Term Memory (LSTM), Sequence to Sequence model (S2S), Gated Recurrent Unit (GRU), or Transformer is used as the input data. Calculating the output data by applying to,
Electronic devices.
KR1020220114113A 2022-09-08 2022-09-08 Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model KR20240035663A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220114113A KR20240035663A (en) 2022-09-08 2022-09-08 Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model
PCT/KR2023/009547 WO2024053834A1 (en) 2022-09-08 2023-07-06 Method and apparatus for selecting feature of input data of sequence model by using tree-based ensemble model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220114113A KR20240035663A (en) 2022-09-08 2022-09-08 Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model

Publications (1)

Publication Number Publication Date
KR20240035663A true KR20240035663A (en) 2024-03-18

Family

ID=90191509

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220114113A KR20240035663A (en) 2022-09-08 2022-09-08 Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model

Country Status (2)

Country Link
KR (1) KR20240035663A (en)
WO (1) WO2024053834A1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2516493A (en) * 2013-07-25 2015-01-28 Ibm Parallel tree based prediction
KR102216689B1 (en) * 2018-11-23 2021-02-17 네이버 주식회사 Method and system for visualizing classification result of deep neural network for prediction of disease prognosis through time series medical data
KR102209382B1 (en) * 2018-12-27 2021-01-28 연세대학교 산학협력단 Method for providing information of lesion diagnosis and device for providing information of lesion diagnosis using the same

Also Published As

Publication number Publication date
WO2024053834A1 (en) 2024-03-14

Similar Documents

Publication Publication Date Title
US11610131B2 (en) Ensembling of neural network models
US11935233B2 (en) Neural network classification
US11106978B2 (en) Execution of a genetic algorithm with variable evolutionary weights of topological parameters for neural network generation and training
Perna Convolutional neural networks learning from respiratory data
US11853893B2 (en) Execution of a genetic algorithm having variable epoch size with selective execution of a training algorithm
US9547820B2 (en) Method of classifying input pattern and pattern classification apparatus
JP7307926B2 (en) METHOD FOR GENERATING PREDICTION RESULTS FOR EARLY PREDICTING OCCURRENCE OF FATHER SYMPTOMS IN SUBJECT, AND APPARATUS USING THE SAME
US10713783B2 (en) Neural network classification
JPWO2020142551A5 (en)
WO2019025901A1 (en) Systems and methods of predicting onset of sepsis
Gupta et al. Prediction and classification of cardiac arrhythmia
KR20220059287A (en) Attention-based stacking method for time series forecasting
Hussain et al. Prediction and evaluation of healthy and unhealthy status of COVID-19 patients using wearable device prototype data
Ayyanar et al. Predicting the Cardiac Diseases using SelectKBest Method Equipped Light Gradient Boosting Machine
Du et al. The effects of deep network topology on mortality prediction
Alotaibi et al. Stroke in-patients' transfer to the ICU using ensemble based model
Abd Ali et al. Networks data transfer classification based on neural networks
KR20240035663A (en) Method and apparatus for selecting features of input data of sequence model using tree-based ensemble model
Su et al. Detection of pulmonary embolism severity using clinical characteristics, hematological indices, and machine learning techniques
Han Multimodal brain image analysis and survival prediction using neuromorphic attention-based neural networks
Ono et al. Introduction to supervised machine learning in clinical epidemiology
Fradi et al. Automatic heart disease class detection using convolutional neural network architecture‐based various optimizers‐networks
Lin et al. A particle swarm optimization based classifier for liver disorders classification
Jaffe Long short-term memory recurrent neural networks for classification of acute hypotensive episodes
Jayamini et al. Decision Support for Diagnosing Thyroid Diseases using Machine Learning