CT image captioning based on the pre-trained classfiers and a language model.

Abstract

뇌출혈은 생명에 위협을 가하는 심각한 뇌 혈관 질환으로, 빠른 진단과 치료가 필요합니다. CT 영상은 뇌출혈 진단에 가장 효과적으로 사용되는 검사 중 하나이지만, 이를 판독하는 것은 숙련된 전문가에게 맡겨져야 합니다. 그러나 숙련된 전문가가 부족한 지역이나 시간적 여유가 없는 상황에서는 진단이 지연될 수 있습니다.
본논문은 4종류의 CNN (convolutional neural network)으로 사전 학습된 분류기와 자연어처리 분야에서널리 사용되고있는 모델 중하나인 GPT-2 언어모델의 조합을사용하여 연속 뇌출혈 컴퓨터 단층 촬영(Computed Tomography, CT) 영상에 대한 캡션을생성하는 방식을제안합니다.
우리는 CNN에 기반한 분류기를 사전 학습시키고, 분류기의 결과 시퀀스를 GPT-2 언어모델에 입력하여 캡션을학습시켰습니다. 첫째, 대량의공개된 이미지로사전 학습된CNN을 사용하여연속적인 뇌출혈CT 이미지에서 개별 이미지를 각각 분석하고이미지에 ICH가존재하는지 식별합니다. 둘째, 개별CT 이미지들은 분류 결과로 치환되고 이들은하나의 시퀀스가되어 특징벡터로언어 모델의입력으로 사용됩니다. 이러한 시퀀스를GPT-2 언어 모델의입력으로 사용하여식별된 영역에대한 설명 캡션을 생성합니다.
제안된 방법은 뇌 CT 이미지를 분석하고캡셔닝 하는데있어서 유용한방법을 제시하며, 뇌출혈 진단 및치료에 기여할수 있습니다. 우리의 연구는뇌출혈 진단 및치료에 매우 중요한 역할을 할 수있습니다. 또한, 이 방법은 다른 의료 영상분석 분야에도적용될 수 있습니다.

Material and Methods

데이터 수집 및 전처리
우리의 연구는 한국의 춘천성심병원과 평촌성심병원으로부터 각각의 환자마다 뇌출혈 CT 영상과 환자의 판독문 캡션이 제공되어 이러한 데이터를 사용하여 캡셔닝을 수행한다. [학습]
우리의 데이터는 CNN 분류기를 학습하는 데이터와 GPT-2를 학습하기 위한 데이터 2가지로 이루어진다.

CNN 데이터 수집 및 전처리

먼저, 병원으로부터 제공되는 데이터는 ICH에 대한 정보를 추출할 수 있는 데이터가 없기 때문에 뇌 CT 이미지에서 정상과 ICH를 분류하기 위해 kaggle에서 개최한 RSNA Intracranial Hemorrhage Detection 대회의 이미지 데이터와 이에 대한 ICH 다중 분류 레이블 데이터를 사용한다. kaggle에서 제공한 데이터는 DICOM 파일로 이루어져 있다. 따라서 ICH를 강조하기 위해 window level을 조정하고 가로와 세로를 224x224크기의 이미지로 변환하여 정제한다. 또한, CT 이미지에 대한 다중 레이블 데이터를 존재의 유무만을 판단하기 위해 이진 분류 레이블로 변경하여 정제된 CT 이미지와 함께 CNN 모델을 학습한다. CNN 모델에 사용되는 데이터에 대한 캡션은 존재하지 않는 관계로 훈련과 세스트 성능만을 확인하고 병원에서 제공된 데이터를 사용하여 훈련된 CNN을 거쳐 GPT-2 언어모델을 통한 캡셔닝을 진행한다.

GPT-2 데이터 수집 및 전처리

병원에서 제공한 CT 영상 또한 DICOM 파일로 이루어져 있기 때문에 kaggle 데이터와 마찬가지로 이미지를 정제한다. 정제된 이미지를 사용하여 GPT-2 언어모델을 학습하기 위해 사전 학습된 CNN 모델을 사용하여 각각의 CT 이미지에 대해 ICH가 존재하는지 식별하고 식별된 시퀀스들을 하나로 묶어 특징벡터로 만든다. 특징벡터와 함께 사용되는 진료 텍스트들은 특수 문자 제거및 소문자 변환, 영어 이외의 글자는 제거하여 전처리 한다.

Introduction

모델이 생성한 문장과 사람이 작성한 기준 문장의 유사도를 측정하여 모델의 성능을 평가하는 지표 중 하나이다.

  1. 생성된 문장에서 n-gram들을 추출하고 기준 문장에서 추출한 n-gram들 간의 일치도를 측정한다.
  2. 생성된 문장에서 추출한 모든 n-gram에 대해 측정된 일치도를 합산한다.
  3. 모델이 생성한 문장의 길이가 짧은 경우, 짧은 문장을 더 잘 평가하기 위해 길이 패널티를 적용한다. (짧은 문장을 더 쉽게 생성하는 것을 방지하기 위함)
  4. 위 과정을 모든 생성 문장에 대해 반복하고, 이들의 평균 일치도 점수를 계산하여 BLEU 스코어를 도출한다.

예를 들어, 모델이 "The cat is on the mat"이라는 문장을 생성하였고, 이를 비교 대상인 "There is a cat on the mat"이라는 문장과 비교한다고 가정해보겠습니다. 이 경우, "The cat is on the mat"은 길이가 짧기 때문에 일치하는 n-gram이 더 많아질 가능성이 있습니다. 그러나, 이 문장은 원래 의미와는 다르기 때문에 일치도 점수가 높은 것은 의미가 없습니다.


이를 방지하기 위해, 길이 패널티를 적용하여 모델이 생성한 문장의 길이가 짧은 경우 일치도 점수에 패널티를 부여합니다. 이를 통해, 모델이 짧은 문장을 더 쉽게 생성하는 것을 방지하고, 좀 더 의미 있는 문장을 생성하도록 유도합니다. 이렇게 패널티를 적용하여 모델의 성능을 더 정확하게 평가할 수 있습니다.

관련 연구

ResNet50V2

VGG-16

VGG-16 모델은 각각 3개의 3x3 크기의 필터를 사용하는 합성곱 레이어를 13개 사용한다. 이러한 작은 크기의 필터를 사용하면, 더 많은 레이어를 사용할 수 있으며, 이는 더 깊은 모델을 만드는 데 도움이 된다. 또한, 합성곱 레이어와 3개의 fully connected 레이어 간에 드롭아웃(dropout)이 사용되어 오버피팅(overfitting)을 방지하고 모델의 일반화 성능을 향상시킨다.

VGG-19

DensNet

VGG-19 모델은 VGG-16 모델에서 3개의 합성곱 층이 추가되어 만들어졌다. 두 모델은 입력 이미지를 224x224 크기로 전처리하며, 각 레이어는 4개의 3x3 크기의 필터로 구성된다. 레이어들 사이에는 ReLU 활성화 함수와 2x2 크기의 최대 풀링(Max Pooling) 레이어가 적용되어 있다. 이를 통해 이미지의 크기를 점차 줄이고, 추상화된 특징을 추출하게 된다.


ResNet50V2는 기존 ResNet50 모델에서 구조적인 개선을 가해, 더 높은 정확도와 더 적은 파라미터 수를 가지게 되었다. 이를 위해 ResNet50V2 모델은 1x1 합성곱 레이어를 추가하여 입력 데이터의 차원을 줄이고, 선형성을 강화했다. 또한, 모델의 복잡도를 줄이기 위해 전체 레이어의 파라미터 수를 감소시키면서도 정확도를 유지하도록 한다.

DenseNet은 ResNet과 마찬가지로 깊은 신경망에서 발생하는 그래디언트 소실 문제를 해결하기 위해 스킵 연결(skip connection)을 활용하지만, ResNet과는 다르게 인접한 층의 출력값을 합치는 것이 아니라, 층들 간의 출력값을 모두 결합하여 입력값으로 사용하는 밀집 연결을 활용한다.


--
밀집 연결은 이전 층들의 출력값을 현재 층의 입력값으로 사용함으로써, 층들 간의 정보 유실을 최소화하고, 특징 추출을 효과적으로 할 수 있도록 도와준다. 또한, 밀집 연결을 통해 파라미터 수를 크게 줄일 수 있으며, 기존 딥러닝 모델보다 높은 정확도를 가지게 된다.

click to edit

뇌출혈의 심각성 및 해결 방안

CNN 모델을 사용하는 이유

ResNet, VGG, DenseNet은 CNN 모델 중에서 이미지 인식 분야에서 높은 성능을 보이는 모델입니다. 이 중 ResNet은 깊은 신경망에서 발생하는 그래디언트 소실 문제를 해결하기 위해 도입된 스킵 연결(skip connection) 구조를 사용하여 더 깊은 신경망을 구축할 수 있도록 해줍니다.

VGG는 깊은 신경망에서 파라미터 수를 줄이고 효율적으로 학습할 수 있도록 3x3 커널을 사용하는 특징이 있습니다. 이로 인해 더 깊은 네트워크를 구성할 수 있게 되어 높은 성능을 보이게 됩니다.

DenseNet은 ResNet과 마찬가지로 깊은 신경망에서 발생하는 그래디언트 소실 문제를 해결하기 위해 밀집 연결(dense connection) 구조를 도입하여 모든 층의 출력값을 연결합니다. 이로 인해 정보의 유실을 최소화하고, 높은 정확도를 보이게 됩니다.

뇌출혈의 심각성