DOI QR코드

DOI QR Code

Leision Detection in Chest X-ray Images based on Coreset of Patch Feature

패치 특징 코어세트 기반의 흉부 X-Ray 영상에서의 병변 유무 감지

  • Kim, Hyun-bin (Department of Computer Science, Kyonggi University) ;
  • Chun, Jun-Chul (Division of Computer Science and Engineering, Kyonggi University)
  • Received : 2022.01.05
  • Accepted : 2022.03.24
  • Published : 2022.06.30

Abstract

Even in recent years, treatment of first-aid patients is still often delayed due to a shortage of medical resources in marginalized areas. Research on automating the analysis of medical data to solve the problems of inaccessibility for medical services and shortage of medical personnel is ongoing. Computer vision-based medical inspection automation requires a lot of cost in data collection and labeling for training purposes. These problems stand out in the works of classifying lesion that are rare, or pathological features and pathogenesis that are difficult to clearly define visually. Anomaly detection is attracting as a method that can significantly reduce the cost of data collection by adopting an unsupervised learning strategy. In this paper, we propose methods for detecting abnormal images on chest X-RAY images as follows based on existing anomaly detection techniques. (1) Normalize the brightness range of medical images resampled as optimal resolution. (2) Some feature vectors with high representative power are selected in set of patch features extracted as intermediate-level from lesion-free images. (3) Measure the difference from the feature vectors of lesion-free data selected based on the nearest neighbor search algorithm. The proposed system can simultaneously perform anomaly classification and localization for each image. In this paper, the anomaly detection performance of the proposed system for chest X-RAY images of PA projection is measured and presented by detailed conditions. We demonstrate effect of anomaly detection for medical images by showing 0.705 classification AUROC for random subset extracted from the PadChest dataset. The proposed system can be usefully used to improve the clinical diagnosis workflow of medical institutions, and can effectively support early diagnosis in medically poor area.

현대에도 일부 소외된 지역에서는 의료 인력의 부족으로 인해 위·중증 환자에 대한 치료가 지연되는 경우가 많다. 의료 데이터에 대한 분석을 자동화하여 의료 서비스의 접근성 문제 및 의료 인력 부족을 해소하고자 하는 연구가 계속되고 있다. 컴퓨터 비전 기반의 진료 자동화는 훈련 목적에 대한 데이터 수집 및 라벨링 작업에서 많은 비용이 요구된다. 이러한 점은 희귀질환이나 시각적으로 뚜렷하게 정의하기 어려운 병리적 특징 및 기전을 구분하는 작업에서 두드러진다. 이상 탐지는 비지도 학습 전략을 채택함으로써 데이터 수집 비용을 크게 절감할 수 있는 방법으로 주목된다. 본 논문에서는 기존의 이상 탐지 기법들을 기반으로, 흉부 X-RAY 영상에 대해 이상 탐지를 수행하는 방법을 다음과 같이 제안한다. (1) 최적 해상도로 샘플링된 의료 영상의 색상 범위를 정규화한다. (2) 무병변 영상으로부터 패치 단위로 구분된 중간 수준 특징 집합을 추출하여 그 중 높은 표현력을 가진 일부 특징 벡터들을 선정한다. (3) 최근접 이웃 탐색 알고리즘을 기반으로 미리 선정된 무병변(정상) 특징 벡터들과의 차이를 측정한다. 본 논문에서는 PA 방식으로 촬영된 흉부 X-RAY 영상들에 대한 제안 시스템의 이상 탐지 성능을 세부 조건에 따라 상세히 측정하여 제시한다. PadChest 데이터세트로부터 추출한 서브세트에 대해 0.705 분류 AUROC를 보임으로써 의료 영상에 대한 이상 탐지 적용의 효과를 입증하였다. 제안 시스템은 의료 기관의 임상 진단 워크플로우를 개선하는 데에 유용하게 사용될 수 있으며, 의료 서비스 접근성이 낮은 지역에서의 조기 진단을 효율적으로 지원할 수 있다.

Keywords

1. 서론

이상 탐지(Anomaly Detection)란, 정상 데이터 범주에 포함되지 않으며 비정상적인 것으로 간주되는 데이터 또는 데이터 포인트를 검출하는 작업을 의미한다. 영상으로 구성된 데이터 집합에서 비정상 데이터를 탐지하는 작업은 영상 내에서 비정상으로 간주되는 특징을 포착하는 것을 목표하며, 특히 탐지하고자 하는 비정상 특징을 예상하기 어려운 경우에 주로 활용된다. 합성곱 신경망 (Convolutional Neural Network) 기반의 영상 특징 표현 기법이 급격히 발전함에 따라 임의 영상 데이터 집합에 대해 이상 탐지를 수행하는 방법에 대한 다양한 연구가 진행되고 있다.

이상 탐지가 적용되는 작업은 비정상 데이터 자체를 확보하기 어려운 문제를 수반하는 경우가 많기 때문에 이상 탐지는 일반적으로 비지도 학습 전략이 유용하게 활용된다. 비지도 학습 기반 이상 탐지 시스템의 훈련 데이터는 비정상 특징 자료를 포함하지 않는 정상 데이터로만 구성되며, 별도의 지도 없이 스스로 정상 범주의 정의를 학습한다. 이러한 특징으로 인하여 일반적인 이상 영상 탐지 작업에는 자기 지도 학습(self-supervised learning)기법을 적용하기 용이하다.

이상탐지가 적용되는 분야의 주요한 예로, 제조업에서의 불량 검출 작업[1], 사이버 침임 시도 감지[2], 금융 분야의 사기 행위 인식, 의료 영상에서의 병변 유무 감지 [3]가 있다. 그 중 제조업에서의 불량 검출 작업에서의 이상 영상 탐지에 대한 연구가 다른 분야에 비해 활발히 진행되고 있다.

생산품 검수 단계는 살짝 깨져있거나 절삭이 매끄럽지 못하거나 하는 비정상 제품을 불량으로 규정하여 생산 품질을 향상하는 품질 관리(QC; Quality Control) 작업의 주요 프로세스이다. 정상 제품과 색이 다르거나 구성이 부족한 경우도 모두 불량품으로 판정되어야 한다. 종합하면, 넓은 의미에서 비정상은 정상 제품에 대해 정의하는 집합의 여집합에 속하는 모든 제품을 의미한다. 때문에 비정상 제품 자체의 특성을 미리 예측하여 정의하기는 매우 어렵다. 또한 생산 기술의 고도화로 불량품의 출현이 매우 드물기 때문에 불량품에 대한 실제 데이터를 확보하는 것도 어렵다.

2019년에 공개된 MVTec-AD 데이터세트는 제조업에서의 불량 검출을 위한 이상 탐지 기법 연구를 위해 제작되었다[4]. 해당 데이터세트의 공개와 동시에 발표되었던 연구에서는 SSIM loss를 적용한 오토인코더(auto-encoder) 기법을 통해 비정상 분할(segmentation) 작업에 대해 0.87 AUROC를 달성하였다. 현재 해당 데이터세트에 대해 가장 높은 성능을 보이는 방법들은 Yu J, Zheng Y, et al[5] 에 따르면 0.994 분류 AUROC, Gudovskiy D, Ishizaka S, et al[6]의 0.986 분할 AUROC로, 2년 사이 급격한 발전을 보이고 있다.

의료 영상데이터에서 자동으로 병변의 유무를 감지하는 작업에서도 이상 탐지가 유용하게 활용될 수 있다. 사람의 신체에서 발생 가능한 질병의 수가 매우 많고, 영상에서 나타나는 병리를 특정하기 어렵기 때문에, 이를 진단하는 작업은 높은 수준의 의학 지식을 습득한 의사들의 고유 업무이다. 현재 진행 중인 COVID-19 사태에서도 빈번하게 발생하는 바와 같이, 특정 사건에 의해 의료 서비스의 수요는 급격하게 증가할 수 있는 데에 반해 의사의 수는 빠른 시간 내에 확충하기 어렵기 때문에 특정 사건에 의해 의료 서비스의 질이 저하되거나 마비되는 문제가 발생한다. Nabulsi, Zaid, et al[7]에 따르면, 의료 영상에 대한 초기 분류 작업(cold-start classification)을 통해 임상 워크플로우(work-flow)를 상당 수준 개선할 수 있는 것으로 보인다. 심층 신경망 기반의 우선순위 지정 기법 (DLS ordering)을 통해 진단 처리시간이 최대 28% 까지감소됨을 확인할 수 있다.

본 논문에서는 흉부 X-Ray 영상에 대해 이상 탐지 기법을 적용한 각 기법의 성능을 비교한다. MVTec-AD 와 같은 제조업 불량 검출 작업에서 먼저 연구되었던 방법을 기반으로 의료 영상에서 병변 유무를 검출하는 방법과 그 결과를 제시한다. 제안하는 방법은 Patch Core[8]를 기반으로 하며, 다음과 같은 방법으로 이상 탐지를 수행한다.

● 훈련 데이터세트에서 영상의 패치마다 특징을 추출하여, 클러스터 중심에 위치하는 주요 특징 벡터들을 선정하여 이 특징 벡터의 집합 C를 기억한다.

● 테스트 영상이 입력되면 각 패치의 특징 벡터에 대해 C에서 가장 가까운 다수의 이웃 벡터들을 검색하고, 이웃 벡터들까지의 평균 거리를 계산하여 비정상 점수(anomaly score)로 예측한다.

제안하는 방법은 실험에 활용한 Pad-Chest 데이터 세트의 무작위 샘플 집합에 대해 분류 AUROC 0.705를 달성하였다.

2. 관련 연구

2.1 일반 영상에 대한 이상 탐지 기법 연구

2.1.1 오토인코더 및 생성적 모델 기반 연구

오토인코더는 비지도 학습 알고리즘으로 훈련하는 인공 신경망 기법 중 하나이다. 이상 탐지의 훈련데이터는 정상 데이터로만 구성되는데, 오토인코더는 훈련 데이터 집합의 특징만을 학습하여 가능한 한 정상 데이터와 유사한 영상을 생성하는 것을 목표로 한다. 만약 비정상 데이터가 입력되면 오토인코더는 정상 특징만을 추출하고, 이를 재건(reconstruction)하여 정상 범주에 속하는 영상을 생성하며, 생성된 영상을 원본 입력영상과 비교하여 이상 탐지를 수행한다. 일반적으로 오토인코더는 이상 탐지가 적용될 수 있는 분야에 가장 기본적으로 적용된다. 제조업 불량 검출 작업을 위한 오토인코더 적용 사례에서는 SSIM(structural similarity index map) loss를 활용한 연구 결과가 있다[4]. SSIM 오토인코더는 휘도, 대비와 같은 영상의 구조 성분이 실제 영상 인식에 큰 영향을 미친다는 점에 착안하였으며, 지역적인 SSIM을 계산하여 모델을 훈련함으로써 영상 생성 품질을 향상할 수 있다. 영상변형 정보를 활용하여 역변환(Inverse Transform)을 수행하는 IT-AE는 특정 데이터세트에 대해 더 나은 이상 탐지성능을 보인다[9].

이상 탐지 작업에 적용된 GAN[10] 기반의 방법을 적용할 수 있다. 일반 영상에 대해 GAN 계열의 기법을 적용했을 때는 오토인코더 기반의 방법에 비해 비교적 낮은 이상 탐지 성능을 보인다[11, 12].

2.1.2 공통 심층 표현 학습 기반 연구

대규모 데이터세트를 활용하여 지도 학습된 특징 추출네트워크는 공통 심층 표현 학습 기반의 이상 탐지에 유용하게 활용될 수 있다. 영상 데이터로 사전 학습된 심층합성 곱 신경망으로부터 추출된 특징 영상은 계층 수준에 따라 상이한 지역적 특징 정보를 표현한다.

Yi, Jihun, et al[13]에 따르면 pretext task를 적용하여 영상 패치 간 심층 표현의 상대적 위치 연관성을 학습하는 방법으로 이상 영상 탐지가 수행될 수 있다. 영상 패치 기반의 방법으로 이상 탐지를 수행하면 분할 그리드의 크기에 해당하는 해상도로 이상 영역 탐지 결과를 도출할 수 있다. 이 예측 결과에 대해서는 임계 화(thresholding)를 거쳐 이진 마스크 형태의 이상 영역을 분할할 수 있다. 또한 다중 해상도 이상 맵으로 가공하고, 이에 대한 비-최대억제(NMS; Non-Max Suppression)를 통해 주요 이상 영역을 경계 상자 형태로 표현하는 방법이 있다[14].

Defard, Thomas, et al[15]은 신경망의 각 레이어로부터 추출한 특징 정보를 연결하는 방법을 제시하였다. 학습 단계에서는 패치 단위의 특징 벡터끼리 다변량 가우 시안분포(Multivariate Gaussian Normal)를 이룰 것이라 가정하며 측정된 공분산값을 기반으로 정상 데이터의 범위를 학습한다. 테스트 이미지의 특징 벡터로부터 훈련된 정상 특징까지의 Manhalanobis 거리를 계산하여 이상 탐지를 수행한다. 심층 신경망으로부터 추출된 고차원 특징 정보는 연산 효율성을 위해 PCA(Principal component analysis) 를 수행하여 차원을 축소할 수 있다. 또한, 무작위로 차원을 선택하여 제거하는 방법을 적용할 수 있으며, PCA에 비해 무작위 차원 축소 방법이 더 나은 이상 탐지 성능을 보인다.

Cohen, Niv, et al[16]에 따르면, 다른 도메인으로 사전훈련된 네트워크에서 추출된 특징 영상 집합에 대해 최근접 이웃 탐색 기법을 적용하여 이상 탐지를 수행할 수 있다. 유클리드 거리 함수를 기반으로 가장 가까운 k개의 특징 벡터까지의 거리 평균을 계산하며, 특징 정보를 추출한 계층 수준에 따라 상이한 성능을 보인다. 고수준 특징 정보를 활용하였을 때 더 좋은 이상 탐지 성능을 보이며, FPN(Feature Pyramid Network)를 적용하였을 때 가장 나은 성능을 보인다.

2.2 흉부 X-Ray 영상에 대한 이상 탐지 기법 연구

일반적으로 X-Ray 영상은 단일 채널로 구성되어 있으며, 높은 투과력으로 인해 복합적인 정보가 혼재되어 있기 때문에 전문적인 의학 지식 없이 해석하기 난해하다. 때문에 비지도 학습 기반의 이상 탐지가 일반 영상에 비해 의료 영상에 적용된 연구 사례가 적다. Kingma, Diederik P, et al[17]에서 적용된 변이 오토인코더(VAE; Variational Auto-Encoder)는 입력 데이터를 잠재 공간 (latent space)로 압축하지 않고 정규 분포를 따르는 확률분포 함수의 인자를 생성하는 방법이다. GAN 기반으로 수행한 이상 탐지 작업은 VAE에 비해 더 선명한 이상 맵 (Anomaly Map)을 생성한다[18]. 최근의 연구에서, VAE의잠재 코드 생성 방법과 GAN의 적대적 신경망 구조를 동시 채용한 기법이 제안되었으며, 개별 기법이 적용되었을 때 보다 더 나은 이상 탐지 성능을 보인다[12].

3. 비정상 이미지 검출 방법

본 논문에서 제시하는 방법은 그림 1과 같은 절차로 진행된다.

(그림 1) 흉부 X-RAY 영상에 대한 이상 탐지 시스템 구조도

(Figure 1) Overall System Architecture Diagram for Anomaly Detection of Chest X-RAY Images

(1) 사전 훈련된 CNN(Convolutional Neural Network) 기반의 특징 추출 네트워크로부터 특징 벡터 추출

(2) 과도한 메모리 점유율을 낮추기 위한 코어-세트선정

(3) 이상 점수 및 히트맵 예측

3.1 특징 벡터 추출 및 코어-세트 선정

3.1.1 패치 단위의 특징 벡터 추출 및 처리

어떤 데이터가 비정상적인 데이터 포인트를 포함한다면 이는 비정상 데이터로 분류되며, 따라서 이상 탐지는 주로 비정상 데이터 포인트를 탐지함으로써 수행된다. 영상 데이터에서의 데이터 포인트는 영상의 일부 영역을 의미한다. 영상 단위로 분석하는 것은 개별 영상의 지역적인 비정상 데이터 포인트를 포착하지 못하고 무시할 가능성이 비교적 높기 때문에 영상의 패치(patch) 단위로 분석하려는 시도가 있었다[15]. 영상 패치 단위로 이상 탐지를 수행하면 비정상 데이터 포인트의 위치를 특정 (localization)하기 용이하다는 장점이 있다. 심층 신경망 모델의 입력 단계에서부터 영상을 패치 단위로 쪼개어 입력하는 방법이 있는 반면, CNN 모델의 각 계층으로부터 추출된 특징 영상의 픽셀을 분할하여 이를 각각의 패치 특징 정보로 활용할 수도 있다[15]. CNN 모델의 특징정보는 중간 수준 계층까지는 유의미한 지역 특징 정보를 보존하고 있으나 출력 계층에 가까운 고수준 특징 정보는 지역적인 특징 정보를 잃는 경우가 많고, 사전 훈련을 위해 설정한 작업에 지나치게 편향되어 있다. 따라서 본 연구에서는 사전 훈련된 CNN 기반의 특징 추출 네트워크의 중간 계층 수준에서 추출한 특징 영상을 활용한다.

사전 훈련에 사용되는 데이터세트는 Image-Net[19], Pascal-VOC, MS COCO와 같은 일반적인 컬러 이미지로 구성될 수 있으며, CXR-8 또는 CXR-14[20], Pad Chest[21]와 같은 흉부 X-Ray 영상으로 구성될 수도 있다. 또한 이미지 분류(Image Classification), 객체 탐지(Object Detection), 의미적 분할(semantic segmentation)과 같이 훈련 목적에 따라서 서로 다른 사전 훈련 모델이 생성될 수 있다. [13], [8] 에서 가장 높은 이상 탐지 성능을 보인 모델은 Image-Net 데이터세트로 훈련된 Wide-ResNet-50[22] 모델로, 해당 시스템들을 구현 및 분석한 결과 분류 작업을 목적으로 훈련되었음을 확인할 수 있었다. 본 연구에서는 서로 다른 데이터세트, 훈련 목적 및 네트워크 구조로 훈련된 모델을 활용하였으며, 각 모델의 이상 탐지 성능을 비교하여 제시한다.

CNN 모델에 입력된 영상은 각 풀링(pooling) 계층에 의해 압축되며, 계층의 수준에 비례하여 고차원 특징 정보를 출력한다. ResNet-50과 같은 구조의 특정한 모델에서는 (c*, 224, 224) 해상도의 입력 영상에 대한 중간 수준 특징으로 (512, 28, 28) 및 (1024, 14, 14) 해상도의 특징 영상들을 출력한다. 그림 2는 특징 추출 네트워크로부터 추출된 특징 영상을 병합하여, 다시 패치 특징 정보로 분할하는 과정을 보인다. 추출된 특징 영상은 두 가지로, 저차원 특징 영상 A, 고차원 특징 영상 B로 표기한다. 고차원특징 영상 B는 A에 비해 낮은 해상도를 가지며, 보간 없는 크기 변환을 통해 A와 해상도를 일치시킬 수 있다. 특징 영상 A와 변환된 특징영상 B´를 연결(concatenate)하여 차원 확장을 수행하여 영상의 각 패치를 1536차원의 특징 벡터로 정의할 수 있다.

(그림 2) 특징 벡터 변환 프로세스

(Figure 2) Transformation Process of Feature Vectors

추출된 패치 특징 벡터는 지역적인 변화에 강건하게 특징을 표현해야한다. 또한, 비정상적인 맥락 정보를 포착할 수 있어야하기 때문에 평균 풀링(average pooling) 연산을 수행한다. 이는 그림 2와 같은 3×3 커널의 stride 1 합성곱 연산 방식과 유사하게 동작한다. 제안 시스템은($3.1.2)에서 서술하는 바와 같이 매우 큰 메모리 점유율을 보인다. 따라서 더 큰 해상도의 영상이 입력될 경우 특징 영상의 해상도를 임의로 낮추어 사용하는 것이 효과적이다. 본 연구에서는 (c*, 224, 224)를 초과하는 해상도의 영상이 입력되었을 경우, 적응적 평균 풀링(adaptive average pooling)을 수행하여 상기된 바와 같이 특징 영상의 해상도를 적정 수준으로 재조정한 후 앞서의 평균 풀링을 재차 수행한다.

3.1.2 패치단위 특징 벡터의 코어세트 선정

패치 단위로 추출한 모든 임베딩 벡터를 저장하는 것은 과도하게 메모리를 점유하는 문제를 야기한다. 32-bit 부동소수점(float) 자료형을 사용하고 각 영상마다 (28, 28, 1536) 크기의 특징 정보를 추출하는 상황을 상정했을 때, 단순 임베딩 벡터 수치만으로 점유하는 메모리는 약 4.6MB로 추정된다. 후술하는 과정에서는 연산 효율성을 위해 각 특징 벡터 간 거리 쌍(distance pair) 연산을 병렬적으로 수행하는데, 단순 자료데이터를 포함하여 메모리에 추가 적재되는 데이터의 양이 매우 많다. 예를 들어 1839장의 영상 데이터를 활용하여 수행한 본 연구에서는 제안하는 기법을 적용하여 특징 벡터의 수를 줄였음에도 훈련 과정에서 최대 41.2GB의 메모리 점유를 보인다. 이와 같은 지나친 메모리 점유 문제는 일반적인 개인 연구환경에서의 어려움을 야기할 뿐 아니라, 하드웨어에 불필요하게 많은 비용을 요구하므로 실제 산업에 활용되기에 어려울 수 있다.

너무 많은 데이터로 인해 발생하는 문제를 해결할 수 있는 방법으로 능동적 학습(Active Learning) 기법이 있다 [23]. 능동적 학습은 전체 훈련 데이터세트에서 대표적인데 이 터 일부로 구성된 서브 샘플(subsample)을 선택하는 방법을 의미한다. 능동적 학습 기법 중 하나인 코어-세트 (Coreset) 기법은 데이터 주도적인 학습 전략이 적용되는 비지도 학습에 주로 사용된다[24].

그림 3은 코어-세트의 선정을 위한 최적 거리 개념을 설명한다. 코어-세트는 일정한 반지름의 원형 범위 안에 훈련 데이터를 모두 포함할 수 있는 일부 데이터들을 선택해 서브샘플링하고, 이때 사용하는 최적 거리 δ 를 구하는 것을 목적으로 한다. 이를 구하기 위한 방법으로 k-Center 알고리즘이 있다.

(그림 3) 코어-세트 선택 예시

(Figure 3) Example of Coreset Selection

본 연구에서는 매우 많은 훈련 데이터를 사용하기 때문에 가능한 효율적인 알고리즘인 k-Center-Greedy를 채택하여 적용하였다. 코어-세트 서브샘플링은 미리 지정한 서브 샘플링 비율 λ에 따라 서브샘플의 크기를 제한한다. MVTec-AD 데이터세트에 대한 제조업 불량 검출 작업에서는 λ = 0.01 or 0.02로 설정하였다[8]. 해당 작업에서는 훈련 영상의 수가 500장 미만이기 때문에 정상적으로 훈련 프로세스를 수행할 수 있었다. 그러나 본 연구에서는 1800장 이상의 훈련 영상을 활용하기 때문에 λ = 0.001로 설정하였으며, 그보다 많은 수의 훈련 영상에 대해 실험할 때는 영상의 수에 반비례하여 더 작은 값으로 설정하였다.

3.2 이상 점수 및 이상 맵 예측

테스트 단계에서의 X-RAY 영상은 훈련 단계와 동일한 특징 추출 네트워크에 입력되어야 한다. 추출된 특징정보는 ($3.1.1)과 동일한 방법으로 처리된다. 각 패치 단위의 특징 벡터는 훈련 단계에서 생성된 코어-세트에 대한 최 근접 이웃 탐색(k-NN Search)을 수행하여 이상 점수(Anomaly Score)를 예측할 수 있다[16]. 본 논문에서는 탐색할 이웃 수 k를 9로 설정하였으며, 각 패치 특징 벡터로부터 이웃 특징 벡터까지의 거리 중 최소 거리를 해당 패치 영역의 이상 점수로 한다. 패치 단위의 이상 점수를 영상 형태로 취합하면 이상 맵을 생성할 수 있다. X-RAY 영상의 일부분이 비정상으로 예측되었다면 해당 영상은 비정상으로 분류되어야하기 때문에, 영상 단위의 이상 점수는 이상 맵의 최댓값으로 취한다.

본 논문에서는 데이터 주도적인 학습 방법을 제안하며, 이는 데이터 특징 표현의 분포에 따라 이상 점수의 분포가 상이할 수 있음을 나타낸다. 특정 범위로 정규화되지 않은 이상 점수 값은 예측 값에 대해 활성화를 적용하고자 할 때 문제가 발생할 수 있다. 예로, 자연함수의 지수함수를 활용하여 활성화를 수행하고자 할 경우, 32-bit 부동소수점 자료형에서 약 710 이상의 값이 인자로 입력되었을 때 오버플로우가 발생하게 된다. 이러한 문제는 패치 단위 이상 점수를 코어-세트를 선정하기 위해 사용된 최적 거리 δ로 나누어 줌으로서 해결할 수 있다.

3.3 흉부 X-Ray 영상에 대한 전처리

흉부 X-RAY 영상은 일반적으로 견갑골부터 골반까지의 몸통의 외각을 포함하는 넓은 영역을 촬영한다. 이는 진단에 필요한 간접적 정보를 제공하기에 유용하지만, 컴퓨터 비전 작업에서는 연산 효율성을 저하시키며 흉부와 관련 없는 부위에서 잘못된 이상 탐지 결과를 출력하는 경우가 발생할 수 있다. 따라서 본 연구에서는 7/8 면적의 중앙 영역을 잘라내어 입력하는 방법을 적용한다.

의료 기관이나 작업자에 따라 X-RAY 촬영 기기와 설정이 다른 경우가 많다. 표 1은 밝기 분포가 서로 상이한의료 영상들의 예시를 보인다. 일반적인 경우에서는 히스토그램 평활화(Histogram Equalization)을 수행하여 밝기분포를 평이하게 조정할 수 있다. 그러나 의료 X-RAY 영상은 신체가 촬영되지 않는 영역이 검정색으로 표현되며, 검정 영역의 면적이 영상마다 매우 다양하고 크다. 이 점은 히스토그램 평활화의 결과에 매우 큰 영향을 미치며 모델의 데이터 학습에 혼란을 야기할 수 있다. 이에, 적응적 히스토그램 평활화 방법 중 하나인 CLAHE(Contrast Limited Adaptive Histogram Equalization)가 적용될 수 있다[25]. 표 1에서 CLAHE가 적용된 영상의 선명도가 향상됨을 확인할 수 있다. 본 연구에서는 원본 데이터세트의 (1024, 1024) 해상도 영상에 대해 타일 크기 64의 CLAHE 를 적용하여 실험하였다.

(표 1) 흉부 X-RAY 영상에 대한 CLAHE 적용 예

(Table 1) Example of CLAHE application for chest X-RAY image

4. 실험 및 결과

본 연구에서는 PatchCore를 기반으로 흉부 X-RAY 영상에 대해 이상 탐지를 수행하는 시스템을 구현하였으며, 표 2의 하드웨어 및 소프트웨어 환경에서 실험하였다.

(표 2) 실험 환경 하드웨어 및 소프트웨어

(Table 2) Hardware and software environment in experiments

4.1 흉부 X-Ray 영상 데이터세트

일반적인 X-ray 영상은 회색조의 단일 채널 영상으로 생성된다. 이미지 센서를 통해 생성되는 일반적인 디지털 컬러 영상의 경우는 입력되는 빛의 파장을 분해하여 RGB의 3 채널 영상으로 생성되는 것과 달리 X-ray 영상은 방사선이 감쇄된 선량을 영상에 투영한 결과물이다. X-ray 영상은 보통 DICOM 표준에 따라 생성되며 12-bit 수준의 밝기 값을 가질 수 있다. CXR-8 및 CXR-14 데이터 세트의 경우 일반 회색조 영상과 같은 8-bit 색상 범위를 사용한다. PadChest 데이터세트는 16-bit PNG 압축 영상으로 배포된다. 이 프로젝트에서는 넓은 범위의 밝기 값과 충분한 규모를 가진 PadChest 데이터세트를 훈련 및 테스트에 사용한다.

PadChest 데이터세트는 6만여 명의 환자로부터 수집한 16만장 이상의 흉부 X-ray 영상을 포함한다. X-ray 영상은 촬영 방식에 따라 PA(Posterior-Anterior) 또는 AP(Anterior Posterior) 및 lateral view 등으로 나뉘며, 촬영 방식에 따라 영상으로부터 확인할 수 있는 병리가 다르다. 해당 데이터 세트에는 환자의 병변 유무와 진단 레이블이 포함되어있다. 진단 레이블은 리스트 형태로 기재되어 있으며, 종양과 같이 특정 장기에 국한되지 않는 병변의 경우 진단명에 장기 및 병변 명을 모두 기재해 놓았다. 이 데이터 세트로 이상 탐지를 수행하기 위해서는 병변이 없는 정상 X-ray 영상과 병변 병리를 확인할 수 있는 비정상 X-ray 영상으로 구분해야 하므로, 표와 같은 질병 키워드를 활용하여 데이터세트 레이블을 분석하였다. 표 4, 5에서 실험에 사용한 데이터세트를 구성하는 영상의 수와 병명 키워드를 확인할 수 있다.

(표 4) PadChest에서 추출한 흉부 X-RAY 실험 데이터 세트 구성

(Table 4) Composition of chest X-RAY experimental dataset extracted from PadChest

(표 5) 진단 내역으로부터 라벨을 추출하기 위해 사용한 병명 키워드 목록

(Table 5) A list of disease name keywords applied to extract labels from diagnosis history

4.2 이상 탐지 성능 비교

표 3은 이 절에서 제시하는 성능 비교 실험의 기준이 되는 값들을 보이며, 개별 표에서 별도 기재되지 않는 한 각 실험 조건은 표 3의 설정을 따른다.

(표 3) 실험 기본 설정

(Table 3) Base Setting of Experiments

본 연구에서는 우선 k-Center-Greedy 연산에서 최적 거리를 얻기 위한 다양한 거리함수에 대해 실험하였으며, 그 결과는 표 6과 같다. 고정된 실험 조건에서 특정 거리함수를 사용했을 때 높은 성능을 보일수록 특징 벡터의 성격에 맞는 거리함수로 판단할 수 있다. 구현된 시스템에서는 유클리드 거리 함수를 사용할 때 가장 높은 이상 탐지 성능을 보였다.

(표 6) k-Center-Greedy 거리 함수에 따른 성능 비교

(Table 6) Comparison of Performance according to Distance Function of k-Center-Greedy

표 7은 전체 특징 벡터 집합에서 코어-세트를 선정하는 비율을 변경하며 실험한 결과를 보인다. 실험 결과 가능한 높은 비율로 책정할수록 정상 데이터 분포의 경계를 세밀하게 정의할 수 있기 때문에 성능이 향상됨을 확인할 수 있다. 그러나 실험에 사용한 데이터세트의 규모와 실험 환경의 제약으로 인해 0.002의 Sampling Ratio를 부여했을 때는 메모리 부족으로 실험 진행이 불가능했다. 본 연구에서 사용하는 특징 추출 네트워크는 Wide-ResNet-50[22]으로, (224, 224) 해상도의 ImageNet 데이터 세트 영상으로 사전 훈련되었다. 따라서 기본 조건으로 (224, 224) 해상도를 부여하였으며, ($3.1.1)의 적응적 평균 풀링을 적용하면 다른 해상도 영상을 입력하여도 효율적인 연산을 수행할 수 있다. 실험 결과에서는 (448, 448) 해상도로 영상을 입력했을 때 가장 높은 성능을 보이는 것으로 표 8에서 확인할 수 있다.

(표 7) 코어-세트 샘플링 비율에 따른 성능 비교

(Table 7) Comparison of Performance according to Coreset Sampling Ratio

(표 8) 입력 이미지 해상도에 따른 성능 비교

(Table 8) Comparison of Performance according to Input Image Resolution

표 9는 ($3.3)의 CLAHE 적용 여부와 ($3.2)의 이상 점수 정규화 연산 수행 여부에 따른 실험 결과를 보인다. 평가에 사용한 지표는 AUROC(Area Under ROC curve) 로, 그래프 상에서 ROC(Receiver Operating Characteristics) 곡선의 하방 면적을 의미한다. 그림 4는 본 연구에서 제시하는 이상 탐지 시스템의 ROC 곡선 그래프를 보인다.

(표 9) CLAHE 및 점수 정규화 적용에 따른 성능 비교

(Table 9) Comparison of Performance according to Adaptation of CLAHE & Score Normalization

(그림 4) 제안하는 이상 탐지 시스템의 ROC 곡선

(Figure 4) ROC Curve of Proposed Anomaly Detection System

본 논문에서 구현한 시스템은 이상 점수 및 이상 맵을 동시에 예측할 수 있다. 이상 맵은 모델의 특징 추출 결과 및 코어-세트 기반의 분류 작업 수행을 귀납적으로 분석하기 위해 사용될 수 있다. 이상 맵의 정량적인 평가는 일반적으로 이진 마스크 영상 형태의 라벨을 필요로 한다. 흉부 X-Ray 영상으로부터 병변의 원인이 되는 병리적 영역을 마스크 형태로 세밀하게 라벨링하는 작업은 매우 어렵고, 현재로서는 이상 탐지 시스템의 정량적 평가에 사용하기 위한 라벨을 배포하는 데이터세트가 존재하지 않는다. 표 10은 실험에 사용된 일부 흉부 X-RAY 영상에 대한 이상 맵 예측 결과의 예시를 보인다.

(표 10) 이상맵 예측 결과 예시

(Table 10) Example of Anomaly Map Prediction

5. 결론

본 논문에서는 제조업 불량 검출을 위한 이상 탐지 기법인 PatchCore를 기반으로 흉부 X-RAY 영상에 대해 병변 유무를 검출하는 방법을 제안하였다. 흉부 X-RAY를 비롯한 의료 영상에 대한 진단 자동화는 매우 어려운 작업이며, 비지도 학습 초기 분류 작업을 수행함으로써 향후 연구를 위한 데이터세트 생성에 도움이 될 수 있다. 또한 임상 진단 워크플로우의 개선을 통해 실제 의료 현장에 적용될 가능성이 있다. 본 연구 결과는 PadChest 데이터 세트의 PA 방식으로 촬영된 서브세트에 대해 0.705 분류 AUROC를 보이며, 이는 지도학습 기반의 분류 성능에 비해 낮은 편이다. 그러나 정상 데이터의 범주를 정의하여 이에 벗어나는 비정상 데이터를 포착하는 시스템의 특성상 과적합(Overfitting) 문제가 발생하지 않으며, 시각적으로 확인 가능한 병리에 대해 일반적인 성능을 보일 것으로 기대할 수 있다. 향후 연구에서는 FPN을 적용한 모델 구조를 채택하여 객체 탐지 작업으로 훈련된 사전훈련 네트워크를 활용하여 실험할 예정이다. FPN 구조상의 skip connection weight까지 활용하여 특징 벡터를 역방향 병합하는 방법을 고려하고 있다. 또한, 흉부 Xray 영상으로부터 대략적인 흉부 영역을 잘라내는 Center Crop 방식이 아닌 Detect & Crop 방식으로 변경하여 실험할 것으로 계획하고 있으며, 이는 단순 영상 처리 기법으로 수행할 예정이다.

References

  1. Stojanovic, L., Dinic, M., Stojanovic, N., & Stojadinovic, A., "Big-data-driven anomaly detection in industry (4.0): An approach and a case study.", 2016 IEEE international conference on big data (big data), pp. 1647-1652, 2016. http://dx.doi.org/10.1109/BigData.2016.7840777
  2. Ahmed M., Mahmood A. N., Hu J., "A survey of network anomaly detection techniques.", Journal of Network and Computer Applications, No.60, pp.19-31, 2016. http://dx.doi.org/10.1016/j.jnca.2015.11.016
  3. Fernando T., Gammulle H., Denman S., Sridharan S., Fookes C., "Deep Learning for Medical Anomaly Detection-A Survey.", ACM Computing Surveys (CSUR), Vol.54, No.7, pp.1-37, 2021. https://doi.org/10.48550/arXiv.2012.02364
  4. Bergmann P., Fauser M., Sattlegger D., Steger C., "MVTec AD--A comprehensive real-world dataset for unsupervised anomaly detection.", Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition., pp.9595-9600, 2019. http://dx.doi.org/10.1109/cvpr.2019.00982
  5. Yu J., Zheng Y., Wang X., Li W., Wu Y., Zhao R., Wu L., "FastFlow: Unsupervised Anomaly Detection and Localization via 2D Normalizing Flows.", arXiv preprint arXiv:2111.07677, 2021. http://dx.doi.org/10.1109/wacv51458.2022.00188
  6. Gudovskiy D., Ishizaka S., Kozuka K, "CFLOW-AD: Real-Time Unsupervised Anomaly Detection with Localization via Conditional Normalizing Flows.", arXiv preprint arXiv:2107.12571., 2021. http://dx.doi.org/10.1109/wacv51458.2022.00188
  7. Nabulsi, Zaid, et al., "Deep learning for distinguishing normal versus abnormal chest radiographs and generalization to two unseen diseases tuberculosis and COVID-19.", Scientific Reports, Vol.11, No.1, pp.1-15, 2021. http://dx.doi.org/10.1038/s41598-021-93967-2
  8. Roth, Karsten, et al., "Towards Total Recall in Industrial Anomaly Detection.", arXiv preprint arXiv:2106.08265, 2021. https://doi.org/10.48550/arXiv.2106.08265
  9. Huang, Chaoqing, et al., "Inverse-transform autoencoder for anomaly detection.", 2019. https://onikle.com/articles/9526
  10. Carrara, Fabio, et al., "Combining gans and autoencoders for efficient anomaly detection.", 2020 25th International Conference on Pattern Recognition (ICPR). IEEE, 2021. http://dx.doi.org/10.1109/icpr48806.2021.9412253
  11. Akcay, Samet, Amir Atapour-Abarghouei, and Toby P. Breckon., "Ganomaly: Semi-supervised anomaly detection via adversarial training.", Asian conference on computer vision. Springer, Cham, pp.622-637, 2018. https://doi.org/10.1007/978-3-030-20893-6_39
  12. Nakao, Takahiro, et al., "Unsupervised Deep Anomaly Detection in Chest Radiographs.", Journal of Digital Imaging, pp.1-10, 2021. http://dx.doi.org/10.1007/s10278-020-00413-2
  13. Yi, Jihun, and Sungroh Yoon, "Patch svdd: Patch-level svdd for anomaly detection and segmentation.", Proceedings of the Asian Conference on Computer Vision., 2020. http://dx.doi.org/10.1007/978-3-030-69544-6_23
  14. Hyun-Bin Kim, Jun-Chul Chun, "Anomaly localization system using industrial anomaly prediction results based on unsupervised methods", Proceedings of the 43th KSII Spring Conference, Vol. 22, Issue 2, 2021.
  15. Defard, Thomas, et al., "PaDiM: a patch distribution modeling framework for anomaly detection and localization.", arXiv preprint arXiv:2011.08785, 2020. http://dx.doi.org/10.1007/978-3-030-68799-1_35
  16. Cohen, Niv, and Yedid Hoshen., "Sub-image anomaly detection with deep pyramid correspondences.", arXiv preprint arXiv:2005.02357, 2020. https://doi.org/10.48550/arXiv.2005.02357
  17. Kingma, Diederik P., Max Welling, "Auto-encoding variational Bayes.", arXiv preprint arXiv: 1312.6114, 2013. https://doi.org/10.48550/arXiv.1312.6114
  18. Radford, Alec, Luke Metz, and Soumith Chintala, "Unsupervised representation learning with deep convolutional generative adversarial networks." arXiv preprint arXiv: 1511.06434, 2015. https://doi.org/10.48550/arXiv.1511.06434
  19. Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton., "Imagenet classification with deep convolutional neural networks.", Advances in neural information processing systems, Vol.25, pp.1097-1105, 2012. http://dx.doi.org/10.1145/3065386
  20. Wang, Xiaosong, et al., "Chestx-ray8: Hospital-scale chest x-ray database and benchmarks on weakly-supervised classification and localization of common thorax diseases.", Proceedings of the IEEE conference on computer vision and pattern recognition., 2017. http://dx.doi.org/10.1109/cvpr.2017.369
  21. Bustos, Aurelia, et al., "Padchest: A large chest x-ray image dataset with multi-label annotated reports.", Medical image analysis, 2020. http://dx.doi.org/10.1016/j.media.2020.101797
  22. Zagoruyko, Sergey, and Nikos Komodakis., "Wide residual networks.", arXiv preprint arXiv:1605.07146, 2016. http://dx.doi.org/10.5244/c.30.87
  23. Gissin, Daniel, and Shai Shalev-Shwartz., "Discriminative active learning.", arXiv preprint arXiv:1907.06347, 2019. http://dx.doi.org/10.1007/978-981-10-2056-8_1
  24. Sener, Ozan, and Silvio Savarese., "Active learning for convolutional neural networks: A core-set approach.", arXiv preprint arXiv:1708.00489, 2017. https://doi.org/10.48550/arXiv.1708.00489
  25. Koonsanit, Kitti, et al., "Image enhancement on digital x-ray images using n-clahe.", 2017 10th Biomedical Engineering International Conference (BMEiCON). IEEE, 2017. http://dx.doi.org/10.1109/BMEiCON.2017.8229130