KR20200063364A - 시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템 - Google Patents

시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템 Download PDF

Info

Publication number
KR20200063364A
KR20200063364A KR1020180146628A KR20180146628A KR20200063364A KR 20200063364 A KR20200063364 A KR 20200063364A KR 1020180146628 A KR1020180146628 A KR 1020180146628A KR 20180146628 A KR20180146628 A KR 20180146628A KR 20200063364 A KR20200063364 A KR 20200063364A
Authority
KR
South Korea
Prior art keywords
disease
data
patient
attention
time
Prior art date
Application number
KR1020180146628A
Other languages
English (en)
Other versions
KR102216689B1 (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 KR1020180146628A priority Critical patent/KR102216689B1/ko
Publication of KR20200063364A publication Critical patent/KR20200063364A/ko
Application granted granted Critical
Publication of KR102216689B1 publication Critical patent/KR102216689B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • 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
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • 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/50ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders
    • 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
    • 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/0464Convolutional networks [CNN, ConvNet]

Landscapes

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

Abstract

시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템이 개시된다. 컴퓨터로 구현되는 방법에 있어서, 환자의 의료 데이터를 시간 순의 시계열 데이터인 시퀀스(sequence) 형태로 표현함으로써 시퀀스 데이터를 생성하는 단계; RNN(recurrent neural network)과 어텐션 네트워크(attention network)를 이용한 질병 예측 모델을 통해 상기 시퀀스 데이터로부터 상기 환자의 질병을 예측하는 단계; 및 Grad-CAM(gradient-weighted class activation map)을 이용하여 상기 환자의 질병 예측에 대한 상기 시퀀스 데이터의 어텐션 가중치를 시각화하는 단계를 포함하는 방법을 제공한다.

Description

시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템{METHOD AND SYSTEM FOR VISUALIZING CLASSIFICATION RESULT OF DEEP NEURAL NETWORK FOR PREDICTION OF DISEASE PROGNOSIS THROUGH TIME SERIES MEDICAL DATA}
아래의 설명은 질병 예후를 예측하여 예측 결과를 제공하는 기술에 관한 것이다.
심장혈관 및 뇌혈관 질병과 같은 고위험 질병의 정확한 예측은 의료 영역의 사망을 예방하기 위해 아주 중요한 문제이다. 대부분의 기존 방법은 주로 병리학적, 방사선학적, 임상적 정보를 사용하여 예측 결과를 제공한다.
예컨대, 한국공개특허 제10-2014-0098561호(공개일 2014년 08월 08일)에는 분석 대상 질병에 관련된 단일염기다형성(single nucleotide polymorphism, SNP) 조합을 기초로 사용자의 질병 발생 위험도를 예측하는 기술이 개시되어 있다.
병리학적 및 방사선학적 측정이 경쟁력 있는 정밀도를 제공한다고 하더라도 예측을 위해 데이터를 얻고 분석하는 데 많은 시간과 비용이 필요하다.
환자의 진단 및 의약품 기록을 포함하는 의료 기록인 EHR(electronic health record, 전자 건강 기록)을 대안으로 사용할 수 있다. EHR 데이터는 시계열 정보를 포함하고 의료 전문가에 의해 측정되므로 질병 예후를 예측하는 데 유용하다.
최근 딥러닝(deep learning)의 발전으로 컴퓨터 비전, 자연어 처리, 오디오 신호 처리 등과 같은 다양한 분야에서 주목할 만한 성공을 거두고 있는 가운데, 의료 영역에서 많은 연구들이 기존 의료 데이터 및 EHR 데이터로부터 다양한 질병을 예측하기 위한 딥러닝 기반의 접근법을 도입하고 있다.
그러나, 딥러닝 기반 방법이 유망한 결과를 보여주더라도 그들의 블랙박스 특성 때문에 어떤 요소가 질병 상태에 큰 영향을 미치는지 조사하기는 쉽지 않다.
RNN(Recurrent Neural Network)과 어텐션(attention) 메커니즘을 기반으로 한 새로운 질병 예측 방법인 EHR 기반 질병 예측 모델을 제공한다.
특정 시점의 EHR 데이터가 특정 종류의 질병으로 분류되는데 미치는 상대적 영향력을 시간 축에 대한 선형 합의 형태로 시각화할 수 있는 기술을 제공한다.
컴퓨터로 구현되는 방법에 있어서, 환자의 의료 데이터를 시간 순의 시계열 데이터인 시퀀스(sequence) 형태로 표현함으로써 시퀀스 데이터를 생성하는 단계; RNN(recurrent neural network)과 어텐션 네트워크(attention network)를 이용한 질병 예측 모델을 통해 상기 시퀀스 데이터로부터 상기 환자의 질병을 예측하는 단계; 및 Grad-CAM(gradient-weighted class activation map)을 이용하여 상기 환자의 질병 예측에 대한 상기 시퀀스 데이터의 어텐션 가중치를 시각화하는 단계를 포함하는 방법을 제공한다.
일 측면에 따르면, 상기 생성하는 단계는, 상기 의료 데이터로서 진단 기록(diagnosis records)에 포함된 정보와 처방 기록(medication records)에 포함된 정보를 정보 유형 별로 각각 시퀀스 데이터를 생성한 후 상기 질병 예측 모델에 입력 가능하도록 임베딩하는 단계를 포함할 수 있다.
다른 측면에 따르면, 상기 생성하는 단계는, 상기 의료 데이터를 양방향 GRU(gated recurrent units)의 입력으로 하여 임베딩 벡터로 통합하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 생성하는 단계는, 상기 의료 데이터를 연속된 의료 이벤트 사이의 시간 간격을 포함하는 임베딩 벡터로 인코딩하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 질병 예측 모델은, 질병 예측에 대해 상기 의료 데이터에 포함된 시간 정보의 중요성을 학습하기 위해 어텐션 메커니즘을 이용할 수 있다.
또 다른 측면에 따르면, 상기 질병 예측 모델은, 상기 어텐션 네트워크의 시간-분포 소프트맥스 레이어(time-distributed softmax layer)에 의해 상기 시퀀스 데이터에 대한 어텐션 가중치를 계산한 후 상기 RNN의 출력에 반영할 수 있다.
또 다른 측면에 따르면, 상기 예측하는 단계는, 상기 시퀀스 데이터의 어텐션 가중치를 병합하여 완전 연결 레이어(fully connected layer)를 통해 질병 예측에 따른 클래스 라벨링을 수행하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 시각화하는 단계는, 상기 어텐션 가중치에 대한 클래스(class)의 소프트맥스 출력의 그래디언트(gradient)를 계산하는 단계; 시간 차원에 대해 1차원 GAP(Global Average Pooling)를 수행하여 시간 평균 그래디언트를 획득하는 단계; 및 상기 시간 평균 그래디언트를 이용하여 상기 어텐션 가중치의 Grad-CAM을 계산하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 시각화하는 단계는, 히트맵을 통해 질병 예측에 따른 클래스에 대한 상기 어텐션 가중치의 Grad-CAM을 시각화할 수 있다.
또 다른 측면에 따르면, 상기 시각화하는 단계는, 상기 환자의 방문 시간에 대한 타임 도메인을 통해 질병 예측에 따른 클래스에 미치는 상대적 영향력을 나타내는 상기 Grad-CAM의 히트맵을 제공할 수 있다.
상기 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록매체를 제공한다.
컴퓨터 시스템에 있어서, 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 환자의 의료 데이터를 시간 순의 시계열 데이터인 시퀀스 형태로 표현함으로써 시퀀스 데이터를 생성하는 데이터 처리부; 및 RNN과 어텐션 네트워크를 이용한 질병 예측 모델을 통해 상기 시퀀스 데이터로부터 상기 환자의 질병을 예측하고 Grad-CAM(gradient-weighted class activation map)을 이용하여 상기 환자의 질병 예측에 대한 상기 시퀀스 데이터의 어텐션 가중치를 시각화하는 시각화부를 포함하는 컴퓨터 시스템을 제공한다.
본 발명의 실시예들에 따르면, 환자의 EHR 데이터와 어텐션 네트워크를 사용한 예측 모델로서 고위험 질병을 예측할 수 있는 RNN 기반의 새로운 질병 예측 모델을 제공할 수 있다.
본 발명의 실시예들에 따르면, 특정 시점의 EHR 데이터가 특정 종류의 질병으로 분류되는데 미치는 상대적 영향력을 시간 축에 대한 선형 합의 형태로 시각화함으로써 보다 자세한 정보를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 있어서 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 질병 예후 예측 방법의 예를 도시한 순서도이다.
도 4는 본 발명의 일 실시예에 있어서 EHR 기반 어텐션 네트워크(EHAN)의 구조를 도시한 것이다.
도 5는 본 발명의 일 실시예에 있어서 EHR 기반 어텐션 네트워크(EHAN)에서 사용된 어텐션 구조의 일례를 도시한 것이다.
도 6은 본 발명의 일 실시예에 있어서 고위험 질병으로 분류된 질병 코드 예시를 나타낸 테이블이다.
도 7은 본 발명의 일 실시예에 있어서 진단 피처에 대한 Grad-CAM을 시각화한 인터페이스 화면의 예시를 도시한 것이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 실시예들은 질병 예후를 예측하여 예측 결과를 제공하는 기술에 관한 것이다.
본 명세서에서 구체적으로 개시되는 것들을 포함하는 실시예들은 시계열 의료 데이터의 학습을 통해서 특정 질병의 예후를 예측하기 위한 딥 뉴럴 네트워크의 분류 결과를 시각화 할 수 있고, 이를 통해 효율성, 정확성, 신속성, 비용 절감 등의 측면에 있어서 상당한 장점들을 달성한다.
도 1은 본 발명의 일 실시예에 있어서 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다. 예를 들어, 본 발명의 실시예들에 따른 질병 예후 예측 시스템이 도 1의 컴퓨터 시스템(100)을 통해 구현될 수 있다. 도 1에 도시한 바와 같이, 컴퓨터 시스템(100)은 질병 예후 예측 방법을 실행하기 위한 구성요소로서 프로세서(110), 메모리(120), 영구 저장 장치(130), 버스(140), 입출력 인터페이스(150) 및 네트워크 인터페이스(160)를 포함할 수 있다.
프로세서(110)는 환자 의료 기록으로부터 고위험 질병을 예측하기 위한 구성요소로서 명령어들의 시퀀스를 처리할 수 있는 임의의 장치를 포함하거나 그의 일부일 수 있다. 프로세서(110)는 예를 들어 컴퓨터 프로세서, 이동 장치 또는 다른 전자 장치 내의 프로세서 및/또는 디지털 프로세서를 포함할 수 있다. 프로세서(110)는 예를 들어, 서버 컴퓨팅 디바이스, 서버 컴퓨터, 일련의 서버 컴퓨터들, 서버 팜, 클라우드 컴퓨터, 컨텐츠 플랫폼 등에 포함될 수 있다. 프로세서(110)는 버스(140)를 통해 메모리(120)에 접속될 수 있다.
메모리(120)는 컴퓨터 시스템(100)에 의해 사용되거나 그에 의해 출력되는 정보를 저장하기 위한 휘발성 메모리, 영구, 가상 또는 기타 메모리를 포함할 수 있다. 메모리(120)는 예를 들어 랜덤 액세스 메모리(RAM: random access memory) 및/또는 다이내믹 RAM(DRAM: dynamic RAM)을 포함할 수 있다. 메모리(120)는 컴퓨터 시스템(100)의 상태 정보와 같은 임의의 정보를 저장하는 데 사용될 수 있다. 메모리(120)는 예를 들어 질병 예후 예측을 위한 명령어들을 포함하는 컴퓨터 시스템(100)의 명령어들을 저장하는 데에도 사용될 수 있다. 컴퓨터 시스템(100)은 필요에 따라 또는 적절한 경우에 하나 이상의 프로세서(110)를 포함할 수 있다.
버스(140)는 컴퓨터 시스템(100)의 다양한 컴포넌트들 사이의 상호작용을 가능하게 하는 통신 기반 구조를 포함할 수 있다. 버스(140)는 예를 들어 컴퓨터 시스템(100)의 컴포넌트들 사이에, 예를 들어 프로세서(110)와 메모리(120) 사이에 데이터를 운반할 수 있다. 버스(140)는 컴퓨터 시스템(100)의 컴포넌트들 간의 무선 및/또는 유선 통신 매체를 포함할 수 있으며, 병렬, 직렬 또는 다른 토폴로지 배열들을 포함할 수 있다.
영구 저장 장치(130)는 (예를 들어, 메모리(120)에 비해) 소정의 연장된 기간 동안 데이터를 저장하기 위해 컴퓨터 시스템(100)에 의해 사용되는 바와 같은 메모리 또는 다른 영구 저장 장치와 같은 컴포넌트들을 포함할 수 있다. 영구 저장 장치(130)는 컴퓨터 시스템(100) 내의 프로세서(110)에 의해 사용되는 바와 같은 비휘발성 메인 메모리를 포함할 수 있다. 영구 저장 장치(130)는 예를 들어 플래시 메모리, 하드 디스크, 광 디스크 또는 다른 컴퓨터 판독 가능 매체를 포함할 수 있다.
입출력 인터페이스(150)는 키보드, 마우스, 음성 명령 입력, 디스플레이 또는 다른 입력 또는 출력 장치에 대한 인터페이스들을 포함할 수 있다. 구성 명령들 및/또는 질병 예후 예측을 위한 입력이 입출력 인터페이스(150)를 통해 수신될 수 있다.
네트워크 인터페이스(160)는 근거리 네트워크 또는 인터넷과 같은 네트워크들에 대한 하나 이상의 인터페이스를 포함할 수 있다. 네트워크 인터페이스(160)는 유선 또는 무선 접속들에 대한 인터페이스들을 포함할 수 있다. 구성 명령들 및/또는 질병 예후 예측을 위한 입력이 네트워크 인터페이스(160)를 통해 수신될 수 있다.
또한, 다른 실시예들에서 컴퓨터 시스템(100)은 도 1의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 시스템(100)은 상술한 입출력 인터페이스(150)와 연결되는 입출력 장치들 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
본 발명에서는 RNN과 어텐션 메커니즘을 기반으로 한 새로운 질병 예측 모델로서 EHR 기반 어텐션 네트워크(EHAN: EHR History-based prediction using Attention Network)를 제안한다.
본 명세서에서는 심혈관 질병과 뇌혈관 질병을 사망을 유발하는 고위험 질병의 대표적인 예로 하여 설명하고 있으나, 이에 한정되는 것은 아니다. 그리고, 의사가 결정한 진단 기록(diagnosis records)과 치료를 위한 처방 기록(medication records)을 환자 의료 기록의 대표적인 예로 하여 설명하고 있으나, 이 또한 이에 한정되는 것은 아니다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이고, 도 3은 본 발명의 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 질병 예후 예측 방법의 예를 도시한 순서도이다.
도 2에 도시된 바와 같이, 프로세서(110)는 데이터 처리부(210)와, 분류 및 시각화부(220)를 포함할 수 있다. 이러한 프로세서(110)의 구성요소들은 적어도 하나의 프로그램 코드에 의해 제공되는 제어 명령에 따라 프로세서(110)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 예를 들어, 프로세서(110)가 의료 데이터를 사전 처리하도록 컴퓨터 시스템(100)을 제어하기 위해 동작하는 기능적 표현으로서 데이터 처리부(210)가 사용될 수 있다. 프로세서(110) 및 프로세서(110)의 구성요소들은 도 3의 질병 예후 예측 방법이 포함하는 단계들(S310 내지 S330)을 수행할 수 있다. 예를 들어, 프로세서(110) 및 프로세서(110)의 구성요소들은 메모리(120)가 포함하는 운영체제의 코드와 상술한 적어도 하나의 프로그램 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 적어도 하나의 프로그램 코드는 질병 예후 예측 방법을 처리하기 위해 구현된 프로그램의 코드에 대응될 수 있다.
질병 예후 예측 방법은 도시된 순서대로 발생하지 않을 수 있으며, 단계들 중 일부가 생략되거나 추가의 과정이 더 포함될 수 있다.
단계(S310)에서 프로세서(110)는 질병 예후 예측 방법을 위한 프로그램 파일에 저장된 프로그램 코드를 메모리(120)에 로딩할 수 있다. 예를 들어, 질병 예후 예측 방법을 위한 프로그램 파일은 도 1을 통해 설명한 영구 저장 장치(130)에 저장되어 있을 수 있고, 프로세서(110)는 버스를 통해 영구 저장 장치(130)에 저장된 프로그램 파일로부터 프로그램 코드가 메모리(120)에 로딩되도록 컴퓨터 시스템(110)을 제어할 수 있다. 이때, 프로세서(110) 및 프로세서(110)가 포함하는 데이터 처리부(210)와, 분류 및 시각화부(220) 각각은 메모리(120)에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(S320 내지 S330)을 실행하기 위한 프로세서(110)의 서로 다른 기능적 표현들일 수 있다. 단계들(S320 내지 S330)의 실행을 위해, 프로세서(110) 및 프로세서(110)의 구성요소들은 직접 제어 명령에 따른 연산을 처리하거나 또는 컴퓨터 시스템(100)을 제어할 수 있다.
단계(S320)에서 데이터 처리부(210)는 환자의 의료 기록으로서 시계열 정보를 포함하는 의료 데이터를 시퀀스 형태로 표현하여 사전 처리할 수 있다. 다시 말해, 데이터 처리부(210)는 환자의 의료 기록을 시간 순의 시계열 데이터인 시퀀스 형태의 피처로 표현함으로써 해당 환자에 대한 시퀀스 데이터를 생성할 수 있다.
고위험 질병(심혈관 질병과 뇌혈관 질병)의 예후를 예측하기 위해 실제 병원에서 수집한 전자 의료 데이터(EHR 데이터)로서, 혈관 질병을 가지고 있지 않은 환자, 심혈관 질병을 가지고 있는 환자, 뇌혈관 질병을 가지고 있는 환자의 의료 기록을 사용할 수 있다.
전자 의료 데이터로는 환자의 질병과 증상 등을 분류하는 코드, 일례로 국제 통계 분류 10차 개정판인 ICD-10으로 표현된 질병 분류 코드를 이용할 수 있다. 의료 데이터로 사용되는 ICD-10 코드는 총 6,667개이며, 이들 코드 전체를 사용하거나 혹은 환자들에게서 일정 횟수 이상 나타나는 일부 코드들을 선택적으로 사용하는 것 또한 가능하다. 환자의 의료 데이터에는 질병 분류 코드 이외에도 시간 정보(진단 일자, 처방 일자, 방문 시간 간격 등), 의약품 코드, 방문 유형 등 다양한 추가 정보가 포함될 수 있다.
일례로, 환자 의료 기록은 진단 기록과 처방 기록을 포함할 수 있으며, 이외에도 혈압, 콜레스테롤 등과 같은 생체 측정 정보는 물론이고, 날짜나 환자 상태 정보, 그리고 나이나 성별 등과 같은 환자 임상 정보 또한 활용 가능하다. 이하에서는 진단 기록과 처방 기록을 환자 의료 기록의 일 예로 하여 구체적인 실시예를 설명하고 있으나, 이러한 것으로만 한정되는 것은 아니며 전자 의료 기록에 포함되거나 혹은 전자 의료 기록으로부터 도출 가능한 환자의 모든 정보를 활용할 수 있음은 당연하다.
진단 기록은 환자 고유번호(pid), 진단 일자(date), 질병 분류 코드(code), 방문 유형(type)을 포함할 수 있고, 처방 기록은 환자 고유번호(pid), 처방 일자(date), 의약품 코드(code), 방문 유형(type)을 포함할 수 있다. 방문 유형은 환자가 병원을 방문한 유형으로, 외래 환자, 입원 환자, 응급 환자 등으로 구분될 수 있다.
데이터 처리부(210)는 환자의 의료 기록에 포함된 정보를 정보 유형 별로 각각 시퀀스 데이터를 생성한 후 질병 예측 모델에 입력 가능하도록 임베딩(embedding)할 수 있다. 피처 표현(feature representation)을 위해 다양한 유형의 의료 데이터를 양방향 GRU(gated recurrent units)의 입력으로 연결하여 이벤트 임베딩 벡터로 통합할 수 있다. 특히, 정규 시간 간격 데이터만 처리할 수 있는 RNN의 한계를 해결하기 위해 연속된 의료 이벤트 사이의 시간 간격을 임베딩 벡터에 명시적으로 인코딩할 수 있다. 다시 말해, 진단 일자나 처방 일자의 시간 간격을 나타내는 추가 피처를 표현할 수 있으며, 예를 들어 첫 번째 진단 일자와 두 번째 진단 일자의 시간 간격이 30주이고, 두 번째 진단 일자와 세 번째 진단 일자의 시간 간격이 7주인 경우 (30, 7)과 같이 기록하여 해당 기록으로부터 시퀀스 데이터를 생성할 수 있다.
단계(S330)에서 분류 및 시각화부(210)는 EHR 기반 어텐션 네트워크(EHAN) 모델을 통해 시퀀스 형태의 의료 데이터에서 고위험 질병을 예측함과 동시에 고위험 질병의 예측값에 대한 의료 데이터의 상대적 영향력을 시각화할 수 있다. 이때, 분류 및 시각화부(210)는 Grad-CAM(gradient-weighted class activation map)을 통해 특정 시점의 의료 데이터가 특정 질병 예측에 얼마나 큰 영향을 미치는지 시각화 하여 보다 명확하고 자세한 해석이 가능한 결과를 제공할 수 있다.
본 발명에 따른 EHR 기반 어텐션 네트워크(EHAN) 모델은 (1) 자동 순차 모델링을 위한 양방향 GRU, (2) 장기 의존성 모델링을 개선하기 위한 어텐션 메커니즘, (3) 클래스 특정 어텐션-가중치를 시각화하기 위한 RNN 기반 그래디언트-가중 클래스 활성화 매핑(Grad-CAM)이 포함된다.
본 발명에 따른 EHR 기반 어텐션 네트워크(EHAN) 모델은 피처 표현을 위한 모듈과 함께, 분류를 위한 모듈을 포함할 수 있다. 이때, EHR 기반 어텐션 네트워크(EHAN) 모델은 질병 상태를 구별하는 데 큰 영향을 미치는 중요한 의학적 사건에 집중함으로써 예측 능력을 향상시키기 위해 어텐션 메커니즘을 이용한다. 또한, EHR 기반 어텐션 네트워크(EHAN) 모델은 Grad-CAM을 통합하여 질병 분류와 관련된 의료 이벤트의 중요성 점수를 명시적으로 제공할 수 있다.
RNN은 가변 길이 순차 데이터 모델링에 자주 사용되는 뉴럴 네트워크이다. RNN은 한 번에 한 개의 입력을 처리하고 과거의 정보를 암시적으로 저장하는 숨겨진 유닛의 순환적 연결을 포함한다. 최근 RNN은 LSTM(long short term memory) 및 GRU와 같은 메모리 셀의 일종으로 작동하는 보다 정교한 숨겨진 유닛을 사용한다. 또한, 특정 시점을 가중시켜 장기 의존성을 보다 효과적으로 학습하도록 설계된 어텐션 메커니즘을 적용하여 RNN의 성능이 더욱 향상될 수 있다. 이때, 어텐션은 일반적으로 뉴럴 네트워크의 아키텍쳐에 따라 다양한 형태로 구현될 수 있다.
한편, CAM(Class activation mapping)은 CNN(convolutional neural networks)의 효과적인 시각화를 위해 설계된 딥러닝 기술이다. CAM을 사용하면 주어진 하이레벨의 피처에서 식별 영역을 하이라이트하여 예측된 클래스 점수를 시각화할 수 있다. CAM은 분류 구조가 특정 레이어의 피처 맵에 대해 GAP(Global Average Pooling)를 사용하도록 한다는 점에서 네트워크 제한으로 인해 분류 성능의 저하를 초래할 수 있다. 이와 달리, Grad-CAM은 CAM을 개선한 것으로, 관심 레이어의 그래디언트에 GAP를 적용하여 분류 아키텍처로 인한 제약을 제거할 수 있다.
본 발명에 따른 EHR 기반 어텐션 네트워크(EHAN) 모델은 RNN과 어텐션 메커니즘을 기반으로 한 것으로, EHR 시퀀스 데이터에서 고위험 질병을 예측함과 동시에 Grad-CAM을 사용하여 중요한 이벤트를 강조하기 위한 엔드 투 엔드(end-to-end) 모델로 구현된 것이다.
도 4는 본 발명의 일 실시예에 있어서 EHR 기반 어텐션 네트워크(EHAN)의 구조를 도시한 것이다.
EHR 기반 어텐션 네트워크(EHAN)에 의한 질병 예후 예측 방법은 입력 표현(input representation)(사전 처리) 단계, 피처 추출(feature extraction) 단계, 분류(classification) 및 시각화 단계로 구성될 수 있다.
첫 번째 입력 표현 단계에서, 주어진 진단 기록(401)과 처방 기록(402)은 워드 벡터 표현으로 변환된다.
피처 추출 단계에서, 워드 벡터는 어텐션 메커니즘으로 양방향 GRU로 전달되고 집합 피처로 병합될 수 있다.
추출된 피처는 분류 단계에서 소프트맥스(softmax) 이진 벡터로 분류되고, Grad-CAM 기반 시각화 단계를 통해 시간 관련 정보를 획득할 수 있다.
도 4를 참조하면, EHR 기반 어텐션 네트워크(EHAN)는 환자의 진단 기록(401)과 처방 기록(402) 각각에 대하여 네 가지 유형(pid, date, code, type)의 정보를 입력으로 사용하며, 해당 환자가 고위험군인지 여부를 나타내는 2차원 소프트맥스 벡터를 결과로 출력한다.
데이터 처리 단계(S320)에서는 입력 표현을 위해 진단 기록(401)과 처방 기록(402)을 이진 워드 벡터로 인코딩한다. 인코딩된 이진 워드 벡터는 분류 및 시각화부(210)로서 피처 추출 모듈(RNN 및 어텐션 모듈)(410)과 분류 모듈(다중 완전 연결 레이어(fully connected layer))(420) 및 시각화 모듈(Grad-CAM)(430)로 구성된 뉴럴 네트워크 아키텍처에 의해 처리된다.
입력 표현
설명의 편의를 위해 단일 환자에 대한 입력 표현을 설명한다.
환자 의료 기록의 시퀀스를 나타내기 위해 질병 진행 모델링(disease progression modeling)(DPM)을 이용한다. 방문 횟수가 k라고 가정할 때, i번째(i=1,2,…,k) 타임 스탬프와 의료 기록을 각각
Figure pat00001
Figure pat00002
로 표시할 수 있다. 여기에서,
Figure pat00003
는 의료 기록 x의 어휘 목록(vocabulary)을 나타낸다. 예를 들어, 어휘 목록 사이즈가 |c|인 특정 의료 기록 x를 사용하면 i번째 방문 시 의료 코드를 가진 이진 벡터
Figure pat00004
로 나타낼 수 있으며, 여기서 j번째 좌표에서 각각의 값은
Figure pat00005
가 해당되는 방문에서 문서화됨을 나타낸다.
이하에서는 4가지 종류의 의료 기록, 즉 질병 코드 dc, (진단 기록의) 방문 유형 dt, 의약품 코드 mc, (투약 기록의) 방문 유형 mt를 고려한다. 방문 유형은 환자가 병원을 방문한 유형으로, 외래 환자, 입원 환자, 응급 환자 등으로 구분될 수 있다.
질병 코드 dc의 경우 날짜 별로 진단 가능한 모든 코드에 대응하는 벡터(1 또는 0)로 표현될 수 있으며, 예를 들어, 100개의 질병 코드가 존재하면 크기가 100인 벡터로 표현될 수 있다.
EHR 기반 어텐션 네트워크( EHAN )
Grad-CAM을 이용한 시각화를 위해 오리지널 입력 도메인으로 되돌릴 수 있는 적절한 피처 표현이 필요하다. EHR 기반 어텐션 네트워크(EHAN)는 피처 추출 모듈(410)과 분류 모듈(420) 및 시각화 모듈(430)로 이루어진다.
- 임베딩 (피처 추출 모듈(410))
본 실시예에서는 수학식 1과 같이 정의된 소프트-임베딩(soft-embedding) 기술을 이용한다.
[수학식 1]
Figure pat00006
여기서,
Figure pat00007
Figure pat00008
은 주어진 입력
Figure pat00009
의 임베딩 벡터와 학습할 임베딩 행렬을 의미한다. m은 임베딩 차원의 크기이다.
4가지 종류의 의료 기록(dc, dt, mc, mt)에 해당되는 각 의료 기록 유형
Figure pat00010
에 대해 해당 임베딩 벡터
Figure pat00011
Figure pat00012
은 수학식 2와 같이 정의된다.
[수학식 2]
Figure pat00013
Figure pat00014
의 각 임베딩 차원의 숫자는 각각
Figure pat00015
,
Figure pat00016
,
Figure pat00017
,
Figure pat00018
이다.
각 임베딩 차원의 숫자를 해당 어휘 크기의 4제곱근 루트로 결정한다. 예를 들어, 어휘 크기가 100일 때 임베딩의 숫자는
Figure pat00019
로 계산할 수 있다.
질병 코드 dc와 진단 유형 dt은 동일한 타임스탬프에서 파생되므로 두 개의 임베딩 벡터를 수학식 3과 같이 연결할 수 있다.
[수학식 3]
Figure pat00020
여기서,
Figure pat00021
은 진단 기록의 임베딩 벡터이고,
Figure pat00022
는 진단 기록의 i번째 방문과 i-1번째 방문 사이의 시간 간격을 의미한다.
Figure pat00023
는 수학식 4와 같이 정의될 수 있다.
[수학식 4]
Figure pat00024
여기서,
Figure pat00025
는 i번째 방문일의 타임스탬프를 나타낸다.
동일한 방법으로, 처방 기록의 임베딩 벡터
Figure pat00026
을 얻을 수 있다.
- 피처 추출 (피처 추출 모듈(410))
진단 기록의 임베딩 벡터(진단 피처)와 처방 기록의 임베딩 벡터(처방 피처)에 대한 각각의 순차적 모델링을 위해 두 개의 양방향 GRU 레이어와 어텐션 메커니즘을 사용한다.
양방향 GRU 레이어 Gd와 Gm은 임베딩 벡터
Figure pat00027
Figure pat00028
를 방문 시점(time point)
Figure pat00029
로 사용하고 수학식 5와 수학식 6의 가중치 행렬 Hd 및 Hm을 반환한다.
[수학식 5]
Figure pat00030
[수학식 6]
Figure pat00031
여기서, nd와 nm은 각 레이어의 GRU 유닛 수를 나타내고, k는 방문 횟수를 나타낸다.
주어진 입력 x의 시간 포지션의 중요성을 학습하기 위해 RNN 출력인 Hd 및 Hm에 어텐션 메커니즘을 적용할 수 있다.
도 5는 본 발명의 일 실시예에 있어서 EHR 기반 어텐션 네트워크(EHAN)에서 사용된 어텐션 구조의 일례를 도시한 것이다.
양방향 GRU 레이어의 각 출력에 대한 어텐션 가중치를 학습하기 위해 각각 완전 연결 레이어와 소프트맥스 활성화로 구성된 2개의 소프트맥스 레이어를 사용한다.
본 실시예에서는 일종의 자가-어텐션(self-attention) 메커니즘을 사용한다. 어텐션 가중치 벡터(attention weight vector)는 시간-분포(time-distributed) 소프트맥스 레이어에 의해 계산되며 RNN 출력에 어텐션 가중치를 곱한다.
학습 가능한 가중치 행렬
Figure pat00032
Figure pat00033
은 수학식 7과 수학식 8의 어텐션 가중치 행렬
Figure pat00034
Figure pat00035
을 구성하는데 사용된다.
[수학식 7]
Figure pat00036
[수학식 8]
Figure pat00037
어텐션 가중치 벡터
Figure pat00038
Figure pat00039
는 수학식 9, 수학식 10와 같이 정의될 수 있다.
[수학식 9]
Figure pat00040
[수학식 10]
Figure pat00041
여기서,
Figure pat00042
는 소프트맥스 활성화 함수를 나타내고,
Figure pat00043
은 행렬을 취하여 대각선 벡터를 생성하는 함수를 나타내고,
Figure pat00044
Figure pat00045
의 i번째 요소는 각각의 i번째 방문에 대한 질병 코드 dc와 의약품 코드mc에 대한 어텐션 가중치를 나타낸다.
가중치 행렬 Hd 및 Hm의 어텐션 가중치 표현(attention-weighted representation)인 Cd 및 Cm은 수학식 11과 수학식 12를 통해 얻을 수 있다.
[수학식 11]
Figure pat00046
[수학식 12]
Figure pat00047
여기서,
Figure pat00048
Figure pat00049
은 nd 차원 벡터와 nm 차원 벡터를 나타내고,
Figure pat00050
은 요소별 곱셈(element-wise multiplication)을 나타내고,
Figure pat00051
은 외적 연산자(outer product operator)를 나타낸다.
- 분류 (분류 모듈(420))
EHR 기반 어텐션 네트워크(EHAN)는 이전 단계에서 추출된 진단 피처와 처방 피처를 병합하여 두 개의 완전 연결 레이어를 사용하여 질병 라벨을 예측할 수 있다. 예컨대, 클래스 라벨링을 위해 도 6의 표에 나타낸 바와 같이 의료 전문가에 의해 결정된 질병 코드 그룹을 사용할 수 있다.
어텐션 가중치 행렬 Cd 및 Cm은 벡터
Figure pat00052
Figure pat00053
로 평면화(flattened)될 수 있으며, 이 두 벡터는 통합 표현(integrated representation)
Figure pat00054
Figure pat00055
으로 연관시킬 수 있다. 그리고, 중간 출력 O를 수학식 13을 통해 계산할 수 있다.
[수학식 13]
Figure pat00056
여기서,
Figure pat00057
은 로지스틱 시그모이드 함수(logistic sigmoid function)를 나타내고,
Figure pat00058
은 학습 가능한 가중치 행렬을 나타내고,
Figure pat00059
는 바이어스 벡터를 나타내고,
Figure pat00060
는 중간 출력 O의 차원을 나타낸다.
두 번째 완전 연결 레이어는 수학식 14와 같은 최종 소프트맥스 출력
Figure pat00061
를 출력할 수 있다.
[수학식 14]
Figure pat00062
여기서,
Figure pat00063
는 학습 가능한 가중치 행렬을 나타내고,
Figure pat00064
는 바이어스 벡터를 나타낸다. 손실 함수에는 이진 크로스-엔트로피가 사용될 수 있다.
- Grad-CAM(gradient-weighted class activation map) (시각화 모듈(430))
본 발명에서는 의료 기록의 어느 시점이 분류 결과에 가장 큰 영향을 미치는가를 시각화할 수 있다. 따라서, 시간 정보가 포함된 최상위 표현(highest-level representation)을 나타내는
Figure pat00065
를 Grad-CAM의 목표 피처로 간주한다.
첫째, 진단 피처인 어텐션 가중치 행렬 Cd에 대한 클래스 c의 소프트맥스 출력의 그래디언트
Figure pat00066
를 수학식 15를 통해 계산할 수 있다.
[수학식 15]
Figure pat00067
여기서,
Figure pat00068
는 클래스 c의 최종 소프트맥스 출력을 나타낸다.
시간 차원에 대해 1차원 GAP를 수행하여 수학식 16을 통해 시간 평균 그래디언트
Figure pat00069
를 얻을 수 있다.
[수학식 16]
Figure pat00070
마지막으로, 클래스 c에서 진단 피처 Cd의 Grad-CAM인
Figure pat00071
는 수학식 17을 통해 계산할 수 있다.
[수학식 17]
Figure pat00072
여기서,
Figure pat00073
은 행렬을 취하여 대각선 벡터를 생성하는 함수를 나타내고,
Figure pat00074
은 외적 연산자를 나타내고,
Figure pat00075
는 k차원 벡터를 나타낸다.
진단 피처 Cd와 동일한 절차를 거쳐 처방 피처 Cm에 대한 Grad-CAM을 도출할 수 있다.
- Grad-CAM을 이용한 시각화 (시각화 모듈(430))
엔드 투 엔드 접근법은 학습 효율성은 물론이고 새로운 피처를 발견할 수 있는 능력을 갖추고 있다. 일반적으로 피처가 딥 네트워크 모델의 가중치로 표현되기 때문에 학습된 피처를 직관적으로 해석하기 어려운 점이 있다. 이를 해결하기 위해 본 발명에서는 Grad-CAM을 이용하여 질병 분류에 중요한 방문 시간 관련 정보를 얻을 수 있다.
예컨대, 도 7을 참조하면 시각화 모듈(430)에서는 히트맵을 통해 포지티브 클래스(비정상)에 대한 진단 피처 Cd의 Grad-CAM을 시각화 할 수 있다.
도 7의 (A)에서 x축은 진단을 위한 방문 시간을, y축은 무작위로 선택된 10명의 포지티브 분류 예시를 도시한 것이다. 도 7의 (A) 그래프에서 가로 줄 하나가 환자 한 사람에 대한 진단 피처 Cd의 Grad-CAM을 나타내는 것이다. 도 7의 (A) 그래프를 구성하는 히트맵은 각 피처 벡터의 어느 시점이 해당 포지티브 클래스의 분류에 상대적 영향력을 미치는지를 보여준다.
도 7의 (B) 그래프에서 가로 스케일은 방문 시간에 대한 타임 도메인으로, Grad-CAM의 히트맵이 진할수록 당시 방문 시점의 진단이 결과에 큰 영향을 준 것을 의미할 수 있다.
도 7의 (B)는 고유번호 id가 20065752인 환자의 Grad-CAM에 대한 질병 코드 주석을 나타낸 것이다. 예를 들어, 해당 환자가 11회 방문했고 마지막 방문 이후 6 개월 이내에 질병 발생 확률이 0.7989로 예측되는 발병 예측 결과를 제공할 수 있다. 5번째 방문에서 가장 높은 강도가 나타나는데, 이는 5번째 방문 시점에 질병 코드 'E785', 'R42', 'E780'이 긍정적인 분류에 상대적으로 더 많은 영향을 미쳤음을 보여주는 것이다.
이처럼 본 발명의 실시예들에 따르면, 환자의 EHR 데이터와 어텐션 네트워크를 사용한 예측 모델로서 고위험 질병을 예측할 수 있는 RNN 기반의 새로운 질병 예측 모델을 제공할 수 있다. 특히, 특정 시점의 EHR 데이터가 특정 종류의 질병으로 분류되는데 미치는 상대적 영향력을 시간 축에 대한 선형 합의 형태로 시각화함으로써 보다 자세하고 유용한 정보를 제공할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (12)

  1. 컴퓨터로 구현되는 방법에 있어서,
    환자의 의료 데이터를 시간 순의 시계열 데이터인 시퀀스(sequence) 형태로 표현함으로써 시퀀스 데이터를 생성하는 단계;
    RNN(recurrent neural network)과 어텐션 네트워크(attention network)를 이용한 질병 예측 모델을 통해 상기 시퀀스 데이터로부터 상기 환자의 질병을 예측하는 단계; 및
    Grad-CAM(gradient-weighted class activation map)을 이용하여 상기 환자의 질병 예측에 대한 상기 시퀀스 데이터의 어텐션 가중치를 시각화하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 생성하는 단계는,
    상기 의료 데이터로서 진단 기록(diagnosis records)에 포함된 정보와 처방 기록(medication records)에 포함된 정보를 정보 유형 별로 각각 시퀀스 데이터를 생성한 후 상기 질병 예측 모델에 입력 가능하도록 임베딩하는 단계
    를 포함하는 방법.
  3. 제1항에 있어서,
    상기 생성하는 단계는,
    상기 의료 데이터를 양방향 GRU(gated recurrent units)의 입력으로 하여 임베딩 벡터로 통합하는 단계
    를 포함하는 방법.
  4. 제1항에 있어서,
    상기 생성하는 단계는,
    상기 의료 데이터를 연속된 의료 이벤트 사이의 시간 간격을 포함하는 임베딩 벡터로 인코딩하는 단계
    를 포함하는 방법.
  5. 제1항에 있어서,
    상기 질병 예측 모델은,
    질병 예측에 대해 상기 의료 데이터에 포함된 시간 정보의 중요성을 학습하기 위해 어텐션 메커니즘을 이용하는 것
    을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 질병 예측 모델은,
    상기 어텐션 네트워크의 시간-분포 소프트맥스 레이어(time-distributed softmax layer)에 의해 상기 시퀀스 데이터에 대한 어텐션 가중치를 계산한 후 상기 RNN의 출력에 반영하는 것
    을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 예측하는 단계는,
    상기 시퀀스 데이터의 어텐션 가중치를 병합하여 완전 연결 레이어(fully connected layer)를 통해 질병 예측에 따른 클래스 라벨링을 수행하는 단계
    를 포함하는 방법.
  8. 제1항에 있어서,
    상기 시각화하는 단계는,
    상기 어텐션 가중치에 대한 클래스(class)의 소프트맥스 출력의 그래디언트(gradient)를 계산하는 단계;
    시간 차원에 대해 1차원 GAP(Global Average Pooling)를 수행하여 시간 평균 그래디언트를 획득하는 단계; 및
    상기 시간 평균 그래디언트를 이용하여 상기 어텐션 가중치의 Grad-CAM을 계산하는 단계
    를 포함하는 방법.
  9. 제1항에 있어서,
    상기 시각화하는 단계는,
    히트맵을 통해 질병 예측에 따른 클래스에 대한 상기 어텐션 가중치의 Grad-CAM을 시각화하는 것
    을 특징으로 하는 방법.
  10. 제1항에 있어서,
    상기 시각화하는 단계는,
    상기 환자의 방문 시간에 대한 타임 도메인을 통해 질병 예측에 따른 클래스에 미치는 상대적 영향력을 나타내는 상기 Grad-CAM의 히트맵을 제공하는 것
    을 특징으로 하는 방법.
  11. 제1항 내지 제10항 중 어느 한 항의 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록매체.
  12. 컴퓨터 시스템에 있어서,
    컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    환자의 의료 데이터를 시간 순의 시계열 데이터인 시퀀스 형태로 표현함으로써 시퀀스 데이터를 생성하는 데이터 처리부; 및
    RNN과 어텐션 네트워크를 이용한 질병 예측 모델을 통해 상기 시퀀스 데이터로부터 상기 환자의 질병을 예측하고 Grad-CAM(gradient-weighted class activation map)을 이용하여 상기 환자의 질병 예측에 대한 상기 시퀀스 데이터의 어텐션 가중치를 시각화하는 시각화부
    를 포함하는 컴퓨터 시스템.
KR1020180146628A 2018-11-23 2018-11-23 시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템 KR102216689B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180146628A KR102216689B1 (ko) 2018-11-23 2018-11-23 시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180146628A KR102216689B1 (ko) 2018-11-23 2018-11-23 시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20200063364A true KR20200063364A (ko) 2020-06-05
KR102216689B1 KR102216689B1 (ko) 2021-02-17

Family

ID=71088797

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180146628A KR102216689B1 (ko) 2018-11-23 2018-11-23 시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102216689B1 (ko)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111696674A (zh) * 2020-06-12 2020-09-22 电子科技大学 一种电子病历的深度学习方法及系统
CN112734739A (zh) * 2021-01-18 2021-04-30 福州大学 一种基于注意力机制与ResNet融合的建筑裂缝可视化识别方法
CN113628759A (zh) * 2021-07-22 2021-11-09 中国科学院重庆绿色智能技术研究院 一种基于大数据的传染病疫情安全区域预测方法
KR20220016766A (ko) * 2020-08-03 2022-02-10 한국과학기술원 데이터 정규화와 국소 패치 기반 흉부 방사선 영상의 병변 분류 방법 및 그 장치
WO2022050578A1 (ko) * 2020-09-04 2022-03-10 주식회사 뷰노 질환 판단 방법
WO2022097971A1 (ko) * 2020-11-04 2022-05-12 주식회사 온택트헬스 질병의 발생을 예측하기 위한 방법 및 장치
WO2022119325A1 (ko) * 2020-12-01 2022-06-09 서울대학교병원 두부단순촬영 영상을 활용한 수면 무호흡증 진단 보조 시스템 및 이를 이용한 진단 보조 정보의 제공 방법
CN115299962A (zh) * 2022-08-12 2022-11-08 山东大学 一种基于双向门控循环单元和注意力机制的麻醉深度监测方法
KR20220160407A (ko) * 2021-05-27 2022-12-06 재단법인 아산사회복지재단 생의학적 연관성 예측 방법 및 장치
KR20230020863A (ko) * 2021-08-04 2023-02-13 단국대학교 산학협력단 설명 가능한 딥러닝 기반의 보행 패턴 분석을 위한 시각화 장치 및 방법
WO2023022493A1 (ko) * 2021-08-17 2023-02-23 주식회사 메디컬에이아이 딥러닝 기반 심전도 데이터의 노이즈 제거 시스템
KR20230031471A (ko) * 2021-08-27 2023-03-07 한양대학교 산학협력단 조정 가능한 Grad-CAM을 기반으로 한 이미지 분류 작업에 시각적 설명
KR20230079802A (ko) * 2021-11-29 2023-06-07 주식회사 데이터스튜디오 타임 시리즈 데이터 예측을 위한 학습 이미지를 생성하는 방법 및 장치
CN116959715A (zh) * 2023-09-18 2023-10-27 之江实验室 一种基于时序演进过程解释的疾病预后预测系统
CN117079821A (zh) * 2023-10-12 2023-11-17 北京大学第三医院(北京大学第三临床医学院) 一种患者住院事件预测方法
WO2023239150A1 (ko) * 2022-06-07 2023-12-14 서울대학교병원 기능적 분석 장치 및 방법
CN118039183A (zh) * 2024-04-11 2024-05-14 四川互慧软件有限公司 基于循环神经网络预测感染风险的方法、装置及电子设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240035663A (ko) * 2022-09-08 2024-03-18 재단법인 아산사회복지재단 트리 기반의 앙상블 모델을 이용하여 시퀀스 모델의 입력 데이터의 피처를 선택하는 방법 및 장치
KR20240062320A (ko) 2022-10-31 2024-05-09 주식회사 디케이닥터 건강관련 미인지 데이터 마이닝을 위한 데일리 간편 디지털 문진 발송 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005508556A (ja) * 2001-11-02 2005-03-31 シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッド 患者の状態を診断し予測するための患者データマイニング
KR20070033340A (ko) * 2004-04-27 2007-03-26 휴마나 인코포레이티드 미래의 건강 상태를 예측하는데 조력하는 과거의 건강 관리이용의 자동화 추출 및 디스플레이를 위한 방법 및 시스템
US20150220833A1 (en) * 2014-01-31 2015-08-06 Google Inc. Generating vector representations of documents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005508556A (ja) * 2001-11-02 2005-03-31 シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッド 患者の状態を診断し予測するための患者データマイニング
KR20070033340A (ko) * 2004-04-27 2007-03-26 휴마나 인코포레이티드 미래의 건강 상태를 예측하는데 조력하는 과거의 건강 관리이용의 자동화 추출 및 디스플레이를 위한 방법 및 시스템
US20150220833A1 (en) * 2014-01-31 2015-08-06 Google Inc. Generating vector representations of documents

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Fenglong MA et al., Proceedings of 23rd ACM SIGKDD international conference on knowledge discovery and data mining, ACM, 2017.* *
Ramprasaath R. Selvaraju et al., arXiv preprint arXiv:1610.02391, p.618-626, 2016.* *

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111696674B (zh) * 2020-06-12 2023-09-08 电子科技大学 一种电子病历的深度学习方法及系统
CN111696674A (zh) * 2020-06-12 2020-09-22 电子科技大学 一种电子病历的深度学习方法及系统
KR20220016766A (ko) * 2020-08-03 2022-02-10 한국과학기술원 데이터 정규화와 국소 패치 기반 흉부 방사선 영상의 병변 분류 방법 및 그 장치
KR20220031397A (ko) * 2020-09-04 2022-03-11 주식회사 뷰노 질환 판단 방법
WO2022050578A1 (ko) * 2020-09-04 2022-03-10 주식회사 뷰노 질환 판단 방법
WO2022097971A1 (ko) * 2020-11-04 2022-05-12 주식회사 온택트헬스 질병의 발생을 예측하기 위한 방법 및 장치
WO2022119325A1 (ko) * 2020-12-01 2022-06-09 서울대학교병원 두부단순촬영 영상을 활용한 수면 무호흡증 진단 보조 시스템 및 이를 이용한 진단 보조 정보의 제공 방법
CN112734739B (zh) * 2021-01-18 2022-07-08 福州大学 一种基于注意力机制与ResNet融合的建筑裂缝可视化识别方法
CN112734739A (zh) * 2021-01-18 2021-04-30 福州大学 一种基于注意力机制与ResNet融合的建筑裂缝可视化识别方法
KR20220160407A (ko) * 2021-05-27 2022-12-06 재단법인 아산사회복지재단 생의학적 연관성 예측 방법 및 장치
CN113628759A (zh) * 2021-07-22 2021-11-09 中国科学院重庆绿色智能技术研究院 一种基于大数据的传染病疫情安全区域预测方法
KR20230020863A (ko) * 2021-08-04 2023-02-13 단국대학교 산학협력단 설명 가능한 딥러닝 기반의 보행 패턴 분석을 위한 시각화 장치 및 방법
WO2023022493A1 (ko) * 2021-08-17 2023-02-23 주식회사 메디컬에이아이 딥러닝 기반 심전도 데이터의 노이즈 제거 시스템
KR20230031471A (ko) * 2021-08-27 2023-03-07 한양대학교 산학협력단 조정 가능한 Grad-CAM을 기반으로 한 이미지 분류 작업에 시각적 설명
KR20230079802A (ko) * 2021-11-29 2023-06-07 주식회사 데이터스튜디오 타임 시리즈 데이터 예측을 위한 학습 이미지를 생성하는 방법 및 장치
WO2023239150A1 (ko) * 2022-06-07 2023-12-14 서울대학교병원 기능적 분석 장치 및 방법
CN115299962A (zh) * 2022-08-12 2022-11-08 山东大学 一种基于双向门控循环单元和注意力机制的麻醉深度监测方法
CN116959715A (zh) * 2023-09-18 2023-10-27 之江实验室 一种基于时序演进过程解释的疾病预后预测系统
CN116959715B (zh) * 2023-09-18 2024-01-09 之江实验室 一种基于时序演进过程解释的疾病预后预测系统
CN117079821A (zh) * 2023-10-12 2023-11-17 北京大学第三医院(北京大学第三临床医学院) 一种患者住院事件预测方法
CN117079821B (zh) * 2023-10-12 2023-12-19 北京大学第三医院(北京大学第三临床医学院) 一种患者住院事件预测方法
CN118039183A (zh) * 2024-04-11 2024-05-14 四川互慧软件有限公司 基于循环神经网络预测感染风险的方法、装置及电子设备

Also Published As

Publication number Publication date
KR102216689B1 (ko) 2021-02-17

Similar Documents

Publication Publication Date Title
KR102216689B1 (ko) 시계열 의료 데이터를 통한 질병 예후 예측을 위한 딥 뉴럴 네트워크의 분류 결과 시각화 방법 및 시스템
KR102225894B1 (ko) 딥 어텐션 네트워크를 이용하여 환자 의료 기록으로부터 질병 예후를 예측하는 방법 및 시스템
KR101869438B1 (ko) 딥 러닝을 이용하여 환자의 진단 이력으로부터 질병 예후를 예측하는 방법 및 시스템
Shickel et al. Deep EHR: a survey of recent advances in deep learning techniques for electronic health record (EHR) analysis
Beyersmann et al. Competing risks and multistate models with R
JP6783887B2 (ja) 治療経路分析および管理プラットフォーム
CN109326353B (zh) 预测疾病终点事件的方法、装置及电子设备
KR102460442B1 (ko) 시계열 데이터 처리 장치, 이를 포함하는 건강 예측 시스템, 및 시계열 데이터 처리 장치의 동작 방법
US11605447B2 (en) Intelligent agents for patient management
CN110310740B (zh) 基于交叉注意神经网络的再就医信息预测方法及系统
KR20200029425A (ko) 딥 어텐션 네트워크를 이용하여 환자 의료 기록으로부터 질병 예후를 예측하는 방법 및 시스템
Band et al. Application of explainable artificial intelligence in medical health: A systematic review of interpretability methods
Veena et al. Healthcare analytics: Overcoming the barriers to health information using machine learning algorithms
US20190221294A1 (en) Time series data processing device, health prediction system including the same, and method for operating the time series data processing device
Sampath et al. Ensemble Nonlinear Machine Learning Model for Chronic Kidney Diseases Prediction
Kumar et al. Deep-learning-enabled multimodal data fusion for lung disease classification
JP7007469B2 (ja) 医療文書作成支援装置、方法およびプログラム、学習済みモデル、並びに学習装置、方法およびプログラム
US20210056347A1 (en) Intelligent generation of image-like representations of ordered and heterogenous data to enable explainability of artificial intelligence results
KR102519848B1 (ko) 생의학적 연관성 예측 방법 및 장치
Malgieri Ontologies, Machine Learning and Deep Learning in Obstetrics
Feng et al. Can Attention Be Used to Explain EHR-Based Mortality Prediction Tasks: A Case Study on Hemorrhagic Stroke
Liu et al. An interpretable machine learning approach for predicting hospital length of stay and readmission
Park et al. [Regular Paper] Interpretable Prediction of Vascular Diseases from Electronic Health Records via Deep Attention Networks
CN113902186A (zh) 一种基于电子病历的患者死亡风险预测方法、系统、终端及可读存储介质
Stagge A time series forecasting approach for queue wait-time prediction

Legal Events

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