WSI image segmentation과 분석을 위한 general DL framework
원문 : A generalized deep learning framework for whole-slide image segmentation and analysis
10월 31일부터 시작된 데이콘 유방암 전이 예측 대회에 참가했는데, domain이 의료 분야다보니 어려운 용어도 많고 task와 관련해 읽어보면 좋을 자료들이 많아 하나씩 리뷰해보려고 합니다! 논문 리뷰의 포스팅이라는 이름을 하고 있지만 아직까지는 이해를 위한 해석에 가까운 것 같습니다 ㅎㅎ
1. Abstract
논문의 목적은 Whole-slide image (WSI)의 조직학적 분석을 통해 일반화된 딥러닝 프레임워크를 제안하는 것입니다. 기존의 WSI 이미지를 사용한 segmentation에는 아래와 같은 몇 가지 어려움이 있습니다.
- WSI image의 크기 - 크기가 80,000 * 60,000 pixel로 매우 크고 화질 또한 높음
- 데이터에 대한 제한적인 접근성 및 훈련 데이터의 부족
- 데이터의 일관성 - 실험실마다 다른 염색 패턴으로 인한 이미지의 lack of uniformity
- 이미지 데이터로부터 임상학적 정보를 얻기 어려움
이런 한계점들을 극복하기 위해, 이 논문에서 제안하는 딥러닝 프레임워크는 segmentation model 들의 앙상블, WSI 를 작은 단위의 patch들로 나누어 class imbalance 해결, patch-based 예측 프레임워크 등을 포함합니다.
2. Materials and Methods
사용한 데이터셋
CAMELYON16 & CAMELYON17 : 각각 399장, 1000 장으로 이루어진 WSI image dataset이며, pixel-level 의 전이여부가 라벨링 되어있습니다.
PAIP : 100장의 50K * 50K pixel WSI 이미지로 이루어진 간 세포 샘플입니다. 20x배율로 스캔된 H&E stained tissue 사진이며, 서울대병원에서 제공되었습니다. 악성 종양 영역이 pixel-level annotation이 포함되어 있습니다.
DigestPath: 초기 대장암세포를 식별하기 위해 수집된 660장의 tissue 이미지 데이터셋입니다. 한 장의 WSI image 안에 최소 10장 이상의 세포 영역들이 있습니다. 5000*5000 pixel로 다른 데이터셋보다는 다소 크기가 작은 편입니다. 별도의 test dataset이 있지만 confidential하다고 합니다.
1. Network architectures & ensembles
WSI image의 패치를 segmentation하기 위해 encoder - decoder - pixelwise classfication layer로 이루어진 FCN based segmentation network를 앙상블하여 사용했습니다. U-net with DenseNet-121, U-net with Inception-ResNet-V2, DeeplabV3Plus with Xception 총 세 가지 모델을 앙상블했습니다.
개별 네트워크를 사용하는 것보다 세 개의 CNN 모델을 앙상블한 앙상블 모델의 성능이 실험에서 더 높은 segmentation 성능을 보였습니다. 두 개의 U-Net은 ImageNet 데이터셋으로, DeeplabV3Plus 는 PASCAL VOC 데이터셋으로 사전학습된 backbone encoder를 가지고 있습니다.
2. Train strategies
학습 과정은 크게 나누어 mask generation, patch extraction, patchwisely model training으로 볼 수 있습니다.
Tissue mask generation: 세포 조직 영역이 배경인 유리영역으로부터 segmentation 됩니다. 세포가 아닌 이미지 영역에 대해 불필요한 연산이 수행되는 것을 막기 위함입니다. 마찬가지로 자원을 아끼기 위해 low-resolution version에서 대략적인 테두리가 만들어집니다. HSV 색상 영역으로 변환된 이미지는 binary morphological operation을 통해 적절한 patch가 추출될 수 있도록 합니다.
Patch coordinate extraction: 이전 스텝에서 생성된 tissue mask 로부터 같은 개수의 악성 종양과 비악성(?) 종양 패치 이미지가 추출됩니다. class imbalance와 shift issue를 방지하고 적절한 학습이 될 수 있도록 도와주는 과정입니다. 패치 내에서 한 개의 pixel이라도 악성 종양이라도 판단되면 해당 패치는 tumor로 분류됩니다. 추출되는 패치의 dimension은 하이퍼파라미터입니다.
(dataset shift란? 참고자료 )
Data augmentation: 모델을 일반화하기 위해서 flip, rotation, gaussian blurring, colour augementation by brightness, contrast, hue, saturation등의 기법이 사용되었습니다.
Loss function: 악성 종양 영역은 이미지에서 굉장히 작은 부분을 차지하고 있어서, class imbalance를 유발할 수도 있습니다. 이를 방지하기 위해 cross-entropy loss와 dice overlap coefficient를 기반으로 한 loss function을 선형 결합하여 사용합니다.
Training: 3개의 모델은 각각 다른 cross-validation fold로 학습되었습니다. DenseNet-121 과 Inception-ResNetV2 기반의 encoder는 초기 2 epoch에서는 frozen weight로 진행되어 decoder weight만 학습되었습니다. 나머지 epoch들은 encoder와 decoder 모두 학습 진행되었습니다. learning rate는 모델이 점진적으로 수렴할 수 있도록 감소하였고, validation loss가 증가하는 시점에서 학습은 중단되었습니다.
3. Uncertainty analysis에 관해
딥러닝 모델에서 진단이 명확하지 않을 경우 uncentainty estimation (불확실 추정)이 필수적입니다. 불확실함의 원인에는 aleatori uncentainty (우연적 불확실함)과 epistemic uncertainty(인식적 불확실함)이 있습니다. aleatoric uncertainty는 데이터가 생성되는 과정 자체에서 유래되는 불확실함인 반면, epistemic uncertainty는 모델의 파라미터가 데이터에 적절하게 셋팅되지 않았을 때 발생합니다.
test time augmentation을 통해 각 불확실함이 계산될 수 있는데요, 아래 (4)번 수식은 aleatoric, (5)번 수식은 epistemic uncertainty 계산을 위한 식입니다.
3. Discussion & Conclusions
앙상블된 FCN architecture는 각각의 FCN 보다 훌륭한 segmentation performance를 보여주었습니다. 큰 이미지를 patch-based segmentation의 단점은 patch의 경계선에서 얻을 수 있는 인접한 이미지 정보의 상실이지만, 이는 더 큰 패치 사이즈의 사용 혹은 overlap되는 패치들을 사용하고 겹치는 영역의 posterior probability 들의 평균을 사용하여 해결할 수 있었습니다.
WSI image의 segmentation은 전이 여부 분류 혹은 tumor burden의 예측의 첫 단계에서 주로 활용됩니다. 림프절 전이 예측 문제에서, 전체 데이터 내 다른 subset으로 학습된 multiple random forest 분류기의 앙상블을 예시로 들 수 있습니다. 또한 간암의 WSI image 를 이용한 tumor burden estimation은 전체 종양 영역을 viable tumor region으로부터 예측하는 실험적 방법으로 제안될 수 있습니다.