AI 기술의 발전이 과연 우리 삶을 변화시켜줄 수 있을까요? 이 질문에 답을 찾기 위한 노력으로 카카오 AI 리포트는 지금까지 다양한 분야, 기술, 활용 가능성 등을 소개해 왔습니다. 이번에는 ‘의학 분야에서의 AI 기술'을 소개하려고 합니다. 새로운 기술이 개발된다고 해서 바로 돈을 벌 수 있는 산업분야에 응용되기는 쉽지 않습니다. 새로운 기술이 기존에 해결하지 못했던 문제들을 해결할 수 있는 방법을 제시해 준다거나, 기존의 비효율을 개선한다면 그 기술은 산업 분야의 혁신을 가져올 수 있습니다.
[카카오 AI 리포트] Vol. 5 (2017년 7월호) 는 다음 내용으로 구성되어 있습니다.
[1] Industry - AI와 의료
03. 황상흠 : 딥러닝 기반 의료영상 기술의 진화 (이번글)
04. 김남국 : 의료와 AI 신기술의 융합 : 과제와 전망
06. 양광모 : 인공지능 의료, 이제 윤리를 고민하다
[2] Review - AI의 진화
[3] Information
[카카오 AI 리포트] Vol. 5 전체글 다운받기
내용 중간의 [ ]는 뒷부분에 설명 및 관련 문헌의 소개 내용이 있음을 알리는 부호입니다. 예를 들어, [1]에 대한 설명은 '설명 및 참고문헌'의 첫 번째에 해당합니다.
컴퓨터를 이용하여 의료영상을 분석하고 진단하고자 하는 시도는 꽤 긴 역사를 가지고 있습니다. 컴퓨터 보조 진단(computer-aided diagnosis, CAD) 개념은 지금으로부터 약 50년 전 미국의 Gwilym S. Lodwick이라는 의사가 처음 제안했습니다[1]. 이 연구에서 그는 흉부 X선 촬영 영상을 기반으로 어떤 폐암 환자의 일 년 후 생존 여부를 예측하는 시스템을 개발했습니다. 하지만 당시에는 영상을 스캔하여 디지털화하는 기술이 없었고 자연스럽게 이러한 영상을 처리할 수 있는 컴퓨팅 기술도 없었기 때문에 영상으로부터 중요하다고 판단되는 예측 변수들을 손수 추출했습니다.
실제로 의료영상을 스캔하고 이렇게 디지털화된 영상을 컴퓨터를 이용하여 처리하기 시작한 연구는 1970년대에 등장합니다. 이때부터 여러 영상처리 기법들을 이용하여 추출한 객체의 가장자리, 선분 등의 영상 특징들을 활용하기 시작합니다. 이러한 특징들에 기반한 수학적 모델링을 통해 규칙기반(rule-based) 시스템이 만들어지는데 이는 비슷한 시기에 인공지능 분야에서 유행했던 전문가 시스템(expert system)과 유사합니다.
1980년대에 들어서 CAD 시스템의 발전을 가속화시키는 여러 요인들이 등장합니다. 그중 가장 중요한 요인은 바로 의료영상 저장 및 전송시스템 (picture archiving and communication system, PACS)의 도입입니다 ([그림1] 참고). 디지털화된 영상이 의사들의 판독 능력에 미치는 영향이 검증된 이후 이 PACS는 가장 효율적이고 경제적으로 의료영상을 저장하고 전송할 수 있는 시스템으로 자리 잡습니다. 다른 한 가지는 CAD를 바라보는 패러다임의 변화입니다. 이전에는 CAD의 개념이 모호하여 주로 컴퓨터를 이용한 진단 자동화에 초점이 맞춰져 있었다면 이 시기부터 CAD의 개념이 보조 진단으로 확실하게 자리 잡게 됩니다. 즉, CAD 시스템을 의사의 판독 이후 보조 기구로 활용했을 때 원래의 판독 능력보다 나아지기만 하면 충분히 가치가 있다는 것입니다. 이는 CAD 시스템의 판독 능력이 전문가의 그것과 비슷하거나 상회하지 않아도 상호보완적인 역할을 할 수만 있다면 활용 가치가 있다는 것인데 그렇다고 해서 이러한 개념이 CAD 시스템 개발 과정에 직접 반영되지는 않았습니다. 단지 가치를 평가하는 방식과 기준만 변화한 것이지요.
CAD라는 개념의 대중화에 가장 큰 역할을 한 곳은 미국 시카고 대학의 Kurt Rossmann Laboratories for Radiologic Image Research 그룹입니다[3]. 이곳에서는 의료 현장에서의 효과가 가장 클 것으로 판단된 혈관영상 (vascular imaging), 흉부 X선 촬영 영상, 유방촬영영상 분석을 주요 연구과제로 선정하여 선도적인 연구를 진행했습니다. 이 연구 그룹은 1993년 북미영상의학회(Radiological Society of North America, RSNA)에서 자신들이 개발한 CAD 시스템을 시연하기 위해 직접 118명의 영상의학전문의를 초청하여 검증하기도 했습니다.
이 시기에 활용된 영상 분석 기법은 기술적인 관점에서 패턴 인식 혹은 기계 학습으로 분류할 수 있습니다. 영상으로부터 주요 특징들을 추출하여 이 추출된 특징들로 영상을 벡터화한 후 다양한 기계학습 분류기법들을 활용합니다. 이런 방식의 기술이 주류를 이뤄 개발되어 오다가 최근 들어 딥러닝을 기반으로 하는 인공지능 기술의 혁신적인 발전으로 접근방법이 급격히 바뀌게 됩니다. 다루는 문제에 따라 중요한 특징들을 직접 디자인하고 추출하던 이전의 방식들이 데이터로부터 문제의 해결에 최적화된 특징들을 학습하는 방식으로 변화한 것입니다. 이러한 주류 접근 방식의 변화는 일반적인 컴퓨터 비전 연구에서의 변화와 그 맥락을 같이 합니다. 규칙 기반의 전문가 시스템에서 시작하여 추출된 특징 벡터를 기반으로 분류기를 학습하는 방식이 주류를 이루어 오다가 최근 들어 딥러닝으로 수렴하는 추세입니다.
딥러닝 기반의 의료영상 분석
의료영상 분석의 세부적인 주요 과제들은 일반적인 영상에서의 그것들과 상당히 유사합니다. 영상을 분류 classification) 하는 것을 시작으로 객체의 검출(detection), 객체 경계의 추출(segmentation), 서로 다른 영상의 정합(registration) 등이 의료영상 분석에서 중요한 과제들이라고 볼 수 있습니다. 기본적으로 영상을 입력으로 하기 때문에 영상에서 특징을 추출하는데 특화된 컨볼루션 신경망(convolutional neural networks, CNN) 이 가장 많이 활용됩니다.
[그림2]의 위 도표는 연도별로 딥러닝 관련 기술을 활용한 의료영상 분석 연구들의 수를 나타냅니다. 2015년 이후로 딥러닝, 특히 CNN을 이용한 연구 논문들의 수가 가파르게 증가하는 것을 확인할 수 있습니다. 아래 도표는 딥러닝을 활용한 의료영상 분석 연구들에서 다루고 있는 과제의 빈도수를 나타내고 있습니다. 가장 많은 연구결과가 발표된 과제는 장기 혹은 특정 구조의 경계 검출이었고, 그 뒤를 이어 병변의 검출과 검사 단위의 분류 연구가 활발했습니다. 상대적으로 영상의 정합 연구는 그 수가 적었는데 의료영상 분석에서는 시차를 두고 촬영된 영상 사이의 변화가 진단에 있어 중요한 정보이기 때문에 앞으로 많은 연구 결과들이 나올 걸로 생각됩니다.
CNN을 활용한 의료영상 분석 연구들 중 가장 화제가 되었던 연구는 구글에서 2016년 발표한 당뇨병성 망막증의 진단[5]과 올해 스탠퍼드 대학에서 발표한 피부암 진단입니다[6]. 두 연구 모두 모델을 개발하는데 활용한 학습 데이터의 수와 학습된 모델의 성능으로 주목을 받았습니다. 공통적으로 약 10만 건 이상의 영상을 학습에 활용했는데 이는 기존의 딥러닝을 활용한 의료영상 분석 연구에 비해 훨씬 큰 규모의 학습 데이터입니다. 그리고 모두 숙련된 전문의 수준에 뒤지지 않는 분류 성능을 보였습니다. 특히 스탠퍼드 대학의 연구는 모바일 기기에 쉽게 탑재되어 활용될 수 있기 때문에 그 활용가치는 굉장히 크다고 평가받습니다. 구글의 연구에서 주목할만한 점은 약 6만 장의 학습 데이터 이상에서는 성능 향상이 없었다는 것입니다. 일정 수준 이상의 예측 능력을 확보하기 위해 필요한 학습 데이터의 수는 일반화하여 결론 내릴 수 없는 어려운 문제입니다. 하지만 의료영상은 대부분 통제된 상황하에서 획득되는 만큼 일반적인 영상에 비해 데이터 간의 산포가 예측 가능하고, 그래서 이미지 넷에 비해 상대적으로 적은 수의 학습 데이터로도 좋은 일반화 성능을 보일 수 있습니다.
[그림3]에 보이는 다양한 의료영상 분야에서 현재 딥러닝 기반 모델링 방식이 가장 좋은 성능을 내는 것으로 알려져 있습니다[4]. X선 영상에서 CT, MRI, 나아가 병리 조직 영상까지 거의 대부분의 영역에서 딥러닝 기술의 도입이 아주 빠르게 진행되고 있고 좋은 예측 성능들이 보고되고 있습니다. 이렇게 빠르게 확산될 수 있는 이유는 앞에서 언급한 바와 같이 딥러닝 방식이 데이터로부터 주요 특징들을 스스로 학습하기 때문에 주어진 과제와 영상에 최적화된 특징을 직접 디자인할 필요가 없기 때문입니다. 즉, 충분한 양의 학습 데이터만 확보되면 바로 학습을 시작할 수 있고 꽤 높은 확률로 좋은 성능을 얻을 수 있습니다.
지금까지의 의료영상 분석 관련 연구들 대부분은 기술적인 관점에서 봤을 때 기본적인 지도학습의 범주에 속합니다. 다시 말해서 학습 데이터는 입력과 정답, 이렇게 쌍으로 주어지고 입력과 정답 간의 함수관계를 CNN이 학습하는 방식입니다. 앞서 살펴본 바와 같이 의료영상 분석 분야에서 다루고 있는 과제들이 일반적인 영상의 분석 과제들과 공통되기 때문에 전반적인 기술 발전의 흐름이 컴퓨터 비전 분야의 흐름과 매우 유사합니다. 그렇지만 연도별 연구의 수에서 알 수 있듯이 컴퓨터 비전 분야의 연구와 약간의 시간차를 두고 기술 개발이 이뤄지고 있는데, 이는 딥러닝 기반의 기술을 연구할만한 공개된 대규모 데이터를 의료영상 분야에서는 찾기 어렵기 때문입니다.
딥러닝을 위한 의료영상 데이터
딥러닝 기반의 인공지능 기술은 많은 수의 학습 데이터를 필요로 합니다. 그리고 기술 개발의 가속화를 위해서는 이러한 데이터가 연구자들에게 공개되어 쉽게 접근 가능해야 합니다. 현재 하루가 멀다 하고 새로운 시도와 기술이 쏟아지고 있는 컴퓨터 비전 영역의 연구결과들은 이미지 넷 데이터가 없었다면 그 속도가 매우 더뎠을 것입니다. 하지만 지금까지 의료영상 분석의 연구 대부분은 많아야 수천 개의 데이터를 활용했음에도 불구하고 상대적으로 좋은 성능을 보일 수 있었는데 이는 전이 학습(transfer learning)이라는 방식의 효과 덕분이었습니다[7]. 여기서의 전이 학습의 의미는 이미 이미지 넷 데이터 등으로 학습되어 있는 모델을 시작점으로 의료영상의 학습을 시작하는 것을 말합니다. 전이 학습이 효과적인 이유는 이미지 넷 데이터와 같은 일반적인 영상과 의료영상이 어느 정도 공통된 특징을 가지고 있기 때문입니다. 특히 모서리, 선분 등과 같은 낮은 차원의 특징들을 공유하기 때문에 이미 학습된 모델 전체를 시작점으로 삼지 않고 하위 레이어들만 가져와도 큰 효과를 얻을 수 있습니다[8]. 그렇다고 하더라도 역시 학습 데이터는 많으면 많을수록 좋습니다.
의료영상은 그 특성상 대규모의 학습 데이터를 개인 혹은 하나의 기관에서 확보하는 것이 일반적인 영상에 비해 더 어렵습니다. 이런 이유 아래 인공지능 기반 의료영상 분석 기술의 개발에 필수적인 대규모의 의료영상 데이터를 공개하는 시도들이 의료영상 분석 대회라는 형태로 이루어지고 있습니다. 이렇게 의료영상 데이터가 연구를 위해 공개되는 흐름에는 역시 영상의 분석에 있어 딥러닝이 탁월한 효과를 보이고 있기 때문입니다.
이 흐름의 대표적인 예가 작년에 시작된 The Digital Mammography DREAM Challenge[9]와 올해 열렸던 Data Science Bowl 2017[10]입니다. DREAM Challenge는 총 8만 4,000명 이상의 수검자들로부터 모은 64만 개 이상의 유방촬영영상을 학습하여 특정 유방촬영영상에 유방암으로 의심되는 조직이 존재할 가능성을 예측하는 대회입니다. 이전까지의 의료영상 관련 대회에서는 찾아보기 힘들었던 대규모의 데이터를 제공했고 이에 많은 연구자들의 관심을 끌었지만, 막상 뚜껑을 열어보니 실제 악성 병변을 가지고 있는 검사의 수는 수백 건에 불과했고 제공된 데이터를 직접 다운로드하여 사용하는 방식이 아니라 아쉬움이 남습니다. 이 대회는 1차 경쟁 단계(competitive phase) 및 2차 협업 단계(collaborative phase)로 나뉘어 있는데 현재 루닛은 1차 단계 결과 상위 8개 팀만을 초청하여 진행되는 2차 단계에 참여하여 과제를 수행하고 있습니다. Data Science Bowl 2017은 약 1,400건의 흉부 CT 촬영 영상을 이용하여 그 영상에 암조직으로 의심되는 병변이 존재하는지 여부를 예측하는 대회입니다. 제공된 데이터 중 실제 악성 종양이 포함된 케이스는 약 360건 정도로 앞서 유방촬영영상 데이터와 같이 정상 데이터에 비해 그 수가 적습니다.
공개데이터 관점에서 올해 가장 흥미로운 소식은 NVIDIA의 GPU 기술 학회(GPU technology conference, GTC)에서 스탠퍼드 대학이 발표한 Medical ImageNet 프로젝트입니다[11]. 프로젝트의 이름에서 알 수 있듯이 의료영상으로 이미지넷과 같은 대규모 공개 데이터셋을 만들겠다는 내용입니다. 이 데이터셋은 의료영상뿐 아니라 연관된 유전체 데이터, 환자의 전자의무기록 등 상당히 넓은 범위를 모두 포함합니다. 데이터셋의 크기는 대략 0.5 페타바이트, 총영상의 수는 약 10억 건 정도로 예상되고 있습니다. 아직 구체적인 공개시기는 알려진 바 없지만 공개가 되면 관련 연구의 발전에 상당한 기여를 할 수 있을 걸로 기대됩니다.
위와 같이 우리에게 어느 정도 익숙한 방사선영상 이외의 또 다른 형태의 의료영상으로는 병리 조직 슬라이드를 스캔한 병리 영상이 있습니다. 병리 영상의 판독은 조직의 악성 유무와 전이 여부를 판단하고 이러한 진단 결과가 향후 환자의 치료 계획에 영향을 미치는 아주 중요한 행위입니다. CAMELYON 대회[12]는 이 병리 영상을 이용하여 유방암 전이를 검출하는 것을 목표로 작년부터 개최되어 오고 있습니다. 올해 대회에서는 1,000장의 슬라이드 영상이 참가자들에게 제공되었습니다. 2016년에 열린 유방암의 진행 정도를 예측하는 Tumor Proliferation Assessment Challenge(TUPAC)[13]에서는 약 800장의 슬라이드 영상을 제공했고 이 대회의 총 세 가지 세부과제에서 루닛은 모두 1위를 기록하기도 했습니다.
위에 언급된 대회들에서 상위 성적을 얻은 참가팀들은 모두 딥러닝, 특히 CNN 기반의 모델을 이용합니다. 일반적인 영상 분석과 마찬가지로 의료영상에서도 대부분의 영역에서 현재 가장 좋은 성능을 보이는 기술은 딥러닝임을 다시 한번 확인할 수 있습니다.
의료영상 데이터의 특징과 향후 과제
의료영상은 일반적인 영상과 데이터 측면에서 확연히 다른 몇 가지 특징들을 가지고 있는데 이러한 특징들을 모델링 과정에 반영한 기술 개발이 앞으로 활발해질 것으로 예상됩니다. 이러한 기술은 새로운 알고리즘의 개발, 최적화된 네트워크 모형의 수립 등을 필요로 할 수 있습니다. 예를 들어, 2015년에 소개된 U-Net[14] 은 적은 수의 영상을 이용하여 세포 경계를 검출하는데 효과적인 새로운 네트워크 모형이라고 알려져 있고, 이 연구에서 현미경 영상의 특징을 고려한 탄성 변형(elastic deformation) 방식으로 데이터를 생성하여 좋은 검출 성능을 얻었습니다.
의료영상에서 공통적으로 찾아볼 수 있는 몇 가지 특징들은 아래와 같습니다.
먼저, 대량의 데이터를 얻기 힘들고 게다가 지도학습에 필요한 레이블 정보를 얻는 건 더욱 어렵습니다. PACS가 도입된 이래 병원 내에서 촬영되는 의료영상들은 모두 저장되어 왔기 때문에 데이터 수는 굉장히 많습니다. 하지만 여러 제도적, 사회적 이슈들로 인해 이러한 데이터를 손쉽게 외부에서 접근하기 어렵고 실제 활용하기 위해서는 축적된 데이터를 학습에 활용할 수 있도록 정제하는 작업이 선행되어야 합니다. 이 부분이 많은 시간과 노력을 요합니다. 또한 숙련된 전문가만이 영상을 판독할 수 있기 때문에 지도학습에 필요한 레이블 정보를 얻는 것 또한 많은 시간과 노력이 필요합니다. 예를 들어, 객체 검출 방식을 통해 의료영상에서의 병변의 위치를 알아내고자 한다면 기본적으로 학습 데이터에 병변의 위치가 모두 표기되어 있어야 하는데 PACS에 있는 그대로의 의료영상들은 이러한 정보를 담고 있는 경우가 거의 없기 때문에 새롭게 병변의 위치를 표시해야 합니다. 데이터를 마련하는 데 있어 필요한 자원을 최소화하면서도 좋은 성능을 기대할 수 있는 방법론의 개발이 중요합니다.
다른 특징은 영상의 크기입니다. 2015년 이미지넷 대회의 모든 과제에서 압도적인 성능으로 1위를 차지한 Residual Network[15]는 영상을 분류할 때 짧은 변 기준으로 최대 640 픽셀 크기의 영상을 입력으로 받습니다. 반면 흉부 X선 영상은 한변의 크기가 2000픽셀 이상이고 유방촬영영상의 경우 4000픽셀이 넘습니다. 또한 병리 조직 세포를 스캔한 병리 영상의 경우는 한변의 크기가 10만 픽셀보다 큰 경우가 대부분입니다. 만약 영상단위로 분류를 하고자 한다면 상당히 많은 계산 자원을 필요하게 됩니다. 정보의 손실 없이 주어진 데이터를 활용하기 위하여 이러한 엄청난 크기의 입력 영상을 효율적으로 처리할 수 있는 알고리즘의 개발이 필요합니다.
또 다른 특징은 영상에 존재하는 객체의 크기입니다. 일반적인 영상에서 그 영상의 클래스는 특정 객체의 유무로 판단하게 됩니다. 예를 들어, 고양이 클래스에 속한 영상은 고양이라는 객체를 가지고 있습니다. 의료영상에서는 보통 정상과 비정상 영상을 구분하는 것이 목적이기 때문에 비정상 병변이 영상의 클래스를 결정하는 객체라고 볼 수 있습니다. 의료영상은 이 객체의 크기가 일반적인 영상에 비해 상대적으로 굉장히 작은 경우가 많습니다. 물론 주어진 데이터안에 존재하는 모든 객체들의 위치를 알고 있다면 문제없겠지만 실제로 그런 데이터를 수집하는 것은 현실적으로 많은 자원을 요구하기 때문에 한정된 정보를 활용하면서도 이렇게 작은 객체를 잘 검출할 수 있는 기술을 필요로 합니다.
언급된 것들 이외에 주어진 의료영상의 고유한 특징을 학습 과정에 반영시키는 방향으로 기술 개발이 이루어진다면 데이터 관점에서 경제적이면서 좋은 성능을 보이는 모델을 얻을 수 있을 것입니다.
마치며
현재까지 보고되고 있는 인공지능 기술을 활용한 의료영상 분석에 관한 연구들을 보면 그 결과가 놀랍습니다. 소개드린 바와 같이 수년간 수련한 전문의 수준의 진단 성능을 데이터로부터 학습된 모델이 보여주고 있으니까요. 하지만 실제로 널리 활용되기까지는 더 광범위하고 다양한 검증을 거쳐야 합니다. 의료라는 산업의 특성상 실제로 활용되기 위해서는 인공지능 시스템이 좀 더 예측 가능해야 하고, 다양한 상황하에서도 일관된 성능을 보여야 하며, 예측한 결과에 대한 최소한의 해석이 가능해야 합니다. 앞으로 이런 관점에서의 기술 개발과 함께, 개발된 시스템에 대한 많은 임상 연구들이 발표되기를 기대합니다.
글 | 황상흠 shwang@lunit.io
인공지능 기술이 인류의 번영에 도움이 될거라 믿고 있는 엔지니어입니다. 오랜 시간에 걸쳐 축적된 지식의 혜택을 전세계에서 누구나 누릴 수 있게 된다면 얼마나 멋질까요. 그런 세상을 꿈꾸며 의료 분야의 인공지능을 연구하고 있습니다.
[1] 논문 : Lodwick, G. S. (1966), “Computer-aided diagnosis in radiology: A research plan”, Investigative Radiology, 1, 72-80.
[2] 참고 : https://en.wikipedia.org/wiki/Picture_archiving_and_communication_system
[3] 논문 : Doi, K. (2007), “Computer-aided diagnosis in medical imaging: Historical review, current status and future potential”, Computerized Medical Imaging and Graphics, 31, 198-211.
[4] 논문 : Litjens, G. et al. (2017), “A survey on deep learning in medical image analysis”, arXiv:1702.05747v2.
[5] 논문 : Gulshan, V. et al. (2016), “Development and validation of a deep learning algorithm for detection of diabetic retinopathy in retinal fundus photographs”, The Journal of the American Medical Association (JAMA), 316, 2402-2410.
[6] 논문 : Esteva, A. et al. (2017), “Dermatologist-level classication of skin cancer with deep neural networks”, Nature, 542, 115-118.
[7] 논문 : Shin, H.-C. et al. (2016), “Deep convolutional neural networks for computer-aided detection: CNN architectures, dataset characteristics and transfer learning”, IEEE Transactions on Medical Imaging, 35(5), 1285-1298.
[8] 논문 : Hwang, S. and Kim, H.-E. (2016), “A novel approach for tuberculosis screening based on deep convolutional neural networks”, In Proceedings of SPIE Medical Imaging, 9785, 97852W-1.
[9] 참고 : https://www.synapse.org/Digital_Mammography_DREAM_Challenge
[10] 참고 : https://www.kaggle.com/c/data-science-bowl-2017
[11] 참고 : https://gputechconf2017.smarteventscloud.com/connect/sessionDetail.ww?SESSION_ID=110157
[12] 참고 : https://camelyon17.grand-challenge.org/
[13] 참고 : http://tupac.tue-image.nl/
[14] 논문 : Ronneberger, O., Fischer, P. and Brox, T. (2015), “U-Net: convolutional networks for biomedical image segmentation”, Medical Image Computing and Computer-Assisted Intervention (MICCAI), 9351, 234-241.
[15] 논문 : He, K. et al. (2015), “Deep residual learning for image recognition”, arXiv:1512.03385.