• 검색 결과가 없습니다.

양방향 순환 신경망(Bidirectional recurrent neural network,

B. 순환 신경망(R ECURRENT N EURAL N ETWORK , RNN)

3. 양방향 순환 신경망(Bidirectional recurrent neural network,

기본적인 순환 신경망의 구조는 다음 정보를 예측하기 위해서 과거의 정보와 현재의 정보만을 사용한다. 어떤 시점을 예측할 때 과거의 정보만이 아닌 미래의 정보까지 함께 사용한다면 더 좋은 성능을 기대할 수 있다. 양방향 순환 신경망(Bidirectional Recurrent Neural Network, BRNN)은 순환 신경망과 달리 시퀀스의 현재 시점을 예측하기 위해 미래의 정보도 함께 사용한다(Schuster and Paliwal, 1997).

그림 6. 양방향 순환 신경망의 구조

비알엔엔(BRNN)의 수식은 다음과 같다.

3

ZZZ⃗ = ?(567ZZ⃗/3+ 57ZZ⃗7ZZ⃗ℎZ⃗3<0+ =7ZZ⃗) ℎ3

⃐ZZZ = ?(567⃐ZZ/3+ 57⃐ZZ7⃐ZZℎ⃐Z3]0+ =7⃐ZZ) 93 = 57ZZ⃗8ZZZ⃗ + 5ℎ3 7⃐ZZ8ℎ⃐Z3+ =8

비알엔엔은 2 개의 은닉 계층인 전방향 은닉 계층과 후방향 은닉 계층을 갖는다.

전방향, 후방향 은닉 계층의 수식은 동일하나 정보의 흐름만 반대로 들어간다.

14

전방향 은닉 계층에서는 이전 시점의 은닉 계층인 ℎZ⃗3<0에 가중치를 곱한 값이 더해지고 후방향 은닉 계층에서는 다음 시점의 은닉 계층인 ℎZ⃗3]0에 가중치를 곱한 값이 더해진다. 마지막으로 두 은닉 계층을 각각 가중치를 곱한 후 더해준 값이 최종 출력값이다.

15

4. 어텐션 메커니즘(Attention mechanism)

시퀀스 투 시퀀스(Sequence-to-Sequence, S2S) 모델은 영어-한국어, 한국어-일본어 등의 기계번역에 사용되고 있는 순환 신경망의 발전된 아키텍처 중 하나이다(Sutskever 등, 2014). 에스투에스(S2S)의 구조는 인코더(encoder)와 디코더(decoder)로 나뉘는데 인코더는 입력데이터인 소스 시퀀스(source sequence)를 받는 역할이며 디코더는 출력데이터인 타겟 시퀀스(target sequence)를 출력하는 역할이다. 에스투에스의 이러한 구조상 입력데이터의 길이가 길어질수록 앞에 위치한 벡터들의 비중이 약해진다. 이런 문제점을 보완하기 위해 어텐션 메커니즘(attention mechanism) 기반의 에스투에스 모델이 새롭게 등장하였다. 어텐션 메커니즘은 은닉 상태에 가중치를 곱하여 가장 중요한 벡터에 집중하게 만드는 것이 주요 논지이다. 이에 따르면 최종 출력값은 가장 마지막의 은닉 계층만 출력되는 것이 아닌 모든 은닉 계층들의 가중치 곱의 합이다(그림 7).

또한 어텐션 메커니즘은 각 벡터마다 가중치를 곱하기 때문에 벡터의 중요성을 확인하는 데 사용된다.

그림 7. 어텐션 기법의 구조(Bahdanau et al., 2014)

16

어텐션 메커니즘의 수식은 다음과 같다.

L^ = _ `^a^

bc

ad0

`^a= exp (h^a)

bjd0c exp (h^a) h^a= I(k^<0, ℎa)

모든 어텐션 벡터인 α를 소프트맥스 함수에 통과시켜 합이 1 이 되도록 변환한 후, 각 시점의 ℎ^에 어텐션 가중치인 α 를 곱하여 컨텍스트(context) 벡터인 L^가 추출된다.

17 C. 임베딩(embedding)

1. 워드투벡(Word2Vec)

컴퓨터는 숫자만 인식할 수 있기 때문에 모델 학습을 위해 텍스트를 수치 형태로 변환해야 한다. 이를 위해 대부분 원핫벡터(one-hot vector) 형태로 재표현(representation)하지만 원핫벡터로 변환된 데이터의 경우 단어 간의 관계성을 유추할 수 없다. 또한 고유한 자질들의 개수만큼 차원이 늘어나 희소해지기(sparse) 때문에 이를 위해 차원을 축소하는 것과 동시에 단어 간의 관계성을 유추할 수 있는 워드투벡(Word2Vec) 방법론이 개발되었다(Mikolov et al., 2013).

워드투벡은 “문서상 가까이 있는 단어들은 서로 연관이 깊을 것이다”라는 전제(Distributed Hypothesis)에서 시작되었으며 인공신경망을 통해 학습된다.

워드투벡은 단어의 문맥적 의미를 보존한 채 벡터형태로 변환된다. 예를 들면,

‘MAN’과 ‘WOMAN’의 두 단어 벡터의 거리는 ‘KING’과 ‘QUEEN’의 단어 벡터 거리와 유사하며, 벡터의 거리가 가까울수록 의미가 비슷하다고 해석된다.

워드투벡은 다음과 같은 두 개의 모델이 존재하는데, 시보우(Continuous Bag-of-Words, CBOW)는 주변 단어들을 이용하여 중심 단어를 예측하는 반면 스킵그램(Skip-gram)은 중심 단어를 이용하여 주변 단어들을 예측한다. 이 과정에서 연관성이 높은 벡터의 내적 값을 향상시키도록 학습한다.

18

그림 8. 워드투벡의 구조(Milolov et al., 2013)

19

2. 메드투벡(Med2Vec)

의료데이터와 자연어는 비슷한 구조이지만 다른 형태를 가진다. 구조적으로 비교하자면 문서를 환자와 같게 볼 수 있으며 문서 안의 단락은 환자의 방문, 단락 안의 문장은 방문 과정에서 생긴 의료 코드로 볼 수 있다. 다만, 단락 안 문장의 경우에는 순서가 있지만 환자가 방문 과정에서 생긴 의료 코드는 동시에 발생하고, 인구통계학적 데이터도 동반된다. 이러한 의료데이터의 특성을 반영한 임베딩(embedding) 기법으로 Choi et al. 연구에서 메드투벡(Med2Vec)을 개발하였다(Choi et al., 2016). 메드투벡은 한 환자를 기준으로 t 번째의 방문 벡터의 윈도우(window)만큼 앞뒤 방문 벡터와의 관계성이 높아지도록 학습시키는 알고리즘이다. 그림 9 는 메드투벡의 구조이다.

그림 9. 메드투벡의 구조(Choi et al., 2016)

20

오몹 시디엠(Observation Medical Outcomes Partnership-Common Data Model, OMOP-CDM) 5 버전으로 변환된 데이터를 활용하였다. 데이터의 특성은 다음 표와

# of patients 1,125,691 2,277,540

# of visits 121,570,644 43,755,028 Avg. # of visits per

21

Avg. # of medical

codes per visit

6 7

Max # of medical codes per visit

158 265

국민건강보험공단 표본연구 DB 데이터셋이 아주대학교병원 데이터셋보다 환자별 평균 방문 수가 많았고 의료 코드가 약 2,500 종류 더 많은 것을 확인할 수 있다.

이에 비해, 방문별 최대 의료 코드 수는 아주대학교병원 데이터셋이 약 100 개 더 많은 것을 확인할 수 있다.

22

1. 오몹 시디엠(OMOP-CDM)

본 연구는 오봅 시디엠(OMOP-CDM)으로 변환된 데이터를 사용하였다.

일반적으로 각 기관이 보유한 전자의무기록자료나 보험청구자료의 데이터 구조와 용어는 기관별로 다르게 사용된다. 공통데이터모델(common data model, CDM)은 이렇듯 서로 다른 형태로 산재되어 있는 데이터베이스를 동일한 형태로 변환하여 후항적 관찰연구 기반의 분석을 가능케 한다(Hripcsak et al., 2015). 또한 각 기관의 원천 자료를 통해 추출된 요약 결과만을 취합함으로써 개인 정보를 유출하지 않는 동시에 데이터를 한 곳에 모으지 않고도 모아서 분석한 것과 같은 결과를 낼 수 있게 된다. 나아가 오딧세이 네트워크 산하 오몹 시디엠(OMOP-CDM)은 국제표준용어를 이용하여 구축되기 때문에 전세계 기관의 데이터를 하나의 연구 프로토콜과 프로그램 코드로 분석할 수 있게 된다.

그림 10. 시디엠 워크플로

23

2. 국민건강보험공단 표본연구 DB

국민건강보험공단은 국민 건강 증진에 대한 보험 급여를 실시하는 기관으로서 보건 향상에 기여하고 있다. 국민건강보험공단에서 관리하고 있는 표본연구 DB 는 2006 년 1 년간 건강보험가입자 및 의료급여수급권자 자격을 유지한 대한민국 인구의 약 98%의 전국민 데이터를 보유하고 있으며, 그 중 100 만 명의 샘플데이터로 성, 연령, 진단 정보 등으로 층화 추출된 샘플 데이터를 제공한다.

덧붙여 사회, 경제적 현황 데이터와 의료이용 현황 데이터, 요양기관 현황 데이터를 포함하고 있다. 데이터의 특성은 그림 11 에서 확인할 수 있다.

그림 11. 아킬레스를 이용한 국민건강보험공단 표본연구 DB 데이터셋 특성

아킬레스 힐(ACHILLES HEEL)은 데이터베이스의 특성과 품질을 평가하기 위한 프로파일링 도구이다.

24

3. 아주대학교병원 데이터베이스

아주대학교병원은 1994 년에 개원하였으며, 경기남부권역 응급의료센터와 경기지역암센터, 권역외상센터 등을 갖추고 있는 상급종합병원이다. 2018 년을 기준으로 아주대학교병원의 병상 수는 1,179 개이며 전자의무기록 데이터베이스 내의 환자수는 총 240 만여명이다. 데이터의 특성은 그림 12 에서 확인할 수 있다.

그림 12. 아킬레스를 이용한 아주대학교병원 데이터셋 특성

25

46271022 Chronic kidney disease 198185 Chronic renal failure 443597 Chronic kidney disease stage 3 443612 Chronic kidney disease stage 4 443611 Chronic kidney disease stage 5 Exclusion

criteria

4324887 Disorder related to renal transplantation

4309006 Kidney transplant failure and rejection

4128369 Renal transplant rejection 4127554 Failed renal transplant

26

199991 Disorder of transplanted kidney

타겟 환자와 비교 환자의 시간의 따른 변화 요소를 동일한 조건으로 주기 위해 윈도우를 설정하였다(window setting). 2011 년에서 2013 년 사이의 만성 신질환을 진단받은 환자를 타겟 환자로 잡았고 2010 년에서 2011 년 사이의 데이터는 필수로 존재하여야 하며 학습을 위해 타겟 환자와 비교 환자의 2003 년부터 2011 년에 기록된 데이터를 사용하였다. 모든 환자의 방문 길이를 전부 학습하기엔 모델의 성능이 떨어지고 학습 시간 소모가 커서 방문 길이에 따른 성능 및 시간을 비교하여 비교적 적은 소요시간에 좋은 성능이 보이는 국민건강보험공단 표본연구 DB 데이터셋은 80, 아주대학교병원 데이터셋은 30 을 환자별 최대 방문 수로 설정하였다. 그림 13 은 데이터 전처리를 위한 윈도우 설정 예시이다.

그림 13. 데이터 전처리를 위한 윈도우 설정 예시

첫 번째 환자의 경우, 방문한 횟수가 1 이기 때문에 제외하였고, 3 번째 환자의 경우, 2003 년 이전에도 방문한 데이터가 존재하였지만 활용하지 않았다. 4 번째 환자의 경우, 처음으로 만성 신질환을 진단받은 날짜가 2013 년 이후이기 때문에 학습 데이터에서 제외하였다.

27

나이의 정규화(normalization)를 위해 최소-최대 정규화(min-max normalization) 알고리즘을 사용하였으며 성별의 경우 남성은 1, 여성은 0 으로 변환하였다.

전처리를 통해 추출된 데이터의 수는 표 4 와 같다.

표 4. 데이터셋별 타겟 및 비교 환자 그룹 수

Dataset 국민건강보험공단

표본연구 DB

아주대학교병원 데이터베이스

# of target patients 3,690 756

# of comparator patients

21,826 3,463

Total # of patients 25,516 4,219

28

layer Method Hyperparameter Value

29

Learning rate 0.0001 Class weight 6 Keep probability 0.5 L2 regularization 0.003 RNN layer GRU Hidden size 64

Drop out True Bi-GRU Hidden size 64

Drop out True Attention

layer

Attention Hidden size 32

CNN layer CNN Kernel size 3

Stride size 1 Channel size 64

Padding Same Activation

function

ReLU

30

D. 딥러닝 기반의 만성 신질환 위험도 예측 모델

본 논문에서는 이에이치알 데이터를 이용하여 만성 신질환 위험도를 예측하기 위해 합성곱 신경망과 순환 신경망을 단일 또는 복합적인 구조로 만들어 실험하였다.

환자의 이에이치알 데이터를 벡터로 변환한 뒤 메드투벡을 통해 임베딩하여 선행학습하고 합성곱 신경망과 순환 신경망을 직렬 또는 병렬적으로 쌓은 모델을 통해 학습시킨 뒤 소프트맥스 함수를 통과시켜 만성 신질환의 위험도를 예측한다.

환자의 이에이치알 데이터를 벡터로 변환한 뒤 메드투벡을 통해 임베딩하여 선행학습하고 합성곱 신경망과 순환 신경망을 직렬 또는 병렬적으로 쌓은 모델을 통해 학습시킨 뒤 소프트맥스 함수를 통과시켜 만성 신질환의 위험도를 예측한다.

관련 문서