jiwoolee.space

[U-Net: Convolutional Networks for Biomedical Image Segmentation] 리뷰 02 본문

PaperReview

[U-Net: Convolutional Networks for Biomedical Image Segmentation] 리뷰 02

jiwoolee 2021. 9. 14. 10:38

[Chicago: Olaf Ronneberger, Philipp Fischer, Thomas Brox, U-Net: Convolutional Networks for Biomedical Image Segmentation (n.p.: Computer Science Department and BIOSS Centre for Biological Signalling Studies, University of Freiburg, Germany, n.d.), 1-10.]

 

 

3. Training

input image와 corresponding segmentation maps는 stochastic gradient descent =SGD 구현으로 네트워크를 훈련시키는 데에 사용된다.

unpadded convolutions 때문에 출력 이미지는 일정한 border 너비만큼 입력보다 작다.

overhead를 최소화하고 GPU 메모리를 최대한 사용하기 위해

=> 큰 배치 크기보다 큰 입력 타일을 선호하므로 배치를 단일 이미지로 축소한다.

=> 기존의 train sample이 최적화 단계에서 업데이트를 결정할 수 있도록 높은 운동량 0.99를 사용했다.

 

 

해당 논문에서는 GPU memory의 사용량을 최대화 시키기 위해서 batch size를 크게해서 학습시키는 것보다

input tile 의 size를 크게 주는 방법을 사용했는데,

이 방법으로 Batch Size가 작아서 이를 보완하고자 momentum의 값을 0.99로 줘서 지난 값들을 많이 반영해

학습이 더 잘 되도록 했다는 뜻이다.

 

 

 

energy function는 cross entropy loss function와 결합된 final feature map에 대해 pixel-wise soft-max로 계산된다. 소프트맥스는 이렇게 정의된다.

**cross entropy loss function이란

 

 

 

 

w(x)는 두개의 텀의 합으로 구성되고, x 위치의 픽셀에 가중치를 부여하는 함수이다.

wc(x)는 x 의 위치에 해당하는 클래스의 빈도수에 따라 값이 결정한다

그러니까,

학습데이터에서 x 픽셀이 background일 경우가 많은지 foreground일 경우가 많은지의 빈도수에 따라 결정된다는 것이다.

 

 

exp 텀의 d1, d2 함수에서

d1  x 에서 가장 가까운 세포까지의 거리 

d2는 두번째로 가까운 세포까지의 거리를 계산하는 함수

그러니까,

x는 세포사이에 존재하는 픽셀이며

두 세포 사이의 간격이 좁을 수록 weight를 큰 값을,

두 세포 사이가 넓을 수록 weight를 작은 값을 가지게 된다

 

 

 

 

 

 

 

3.1 Data Augumentation

train sample이 매우 적은 경우에 Data augmentation는 필수적이다. 네트워크에 원하는 불변성 및 견고성 속성을 가르치는 데에 말이다. microscopical images의 경우, 변형 및 gray value 변화에 대한 견고성뿐만 아니라 이동 및 회전 불변성이 필요하다. shift and rotation invariance as well as robustness to deformations and gray value variations.

 

특히,

train sample의 random elastic deformations은 random elastic deformations가 거의 없는 segmentation network 를 훈련시키는 핵심 개념으로 보인다.

거친 coarse 3x3 그리드에서  random displacement vectors를 사용하여 부드러운 변형을 생성한다.

변위 displacements는 10픽셀 표준 편차의 가우스 분포에서 샘플링된다.

그리고 픽셀당 변위를 바이큐빅 보간법을 사용하여 계산한다.

contracting path의 끝에 있는 드롭아웃 layer은 추가적인 implicit data augmentation를 수행한다.

 

 

 

 

 

 

 

 

 

4. Experiments

해당 논문에서는 여러 segmentation 테스크에 u-net을 적용했다.

1. 전자 현미경 기록에서 신경 구조를 segmentation 하는 것

train data로는 Drosophila 첫 번째 ventral nerve cord (VNC)의 transmission electron microscopy에서 얻은 30개의 이미지 세트(512x512픽셀)를 사용했고,

각각의 이미지에는 cells (흰색) 및 membranes (검은색)에 대해 fully annotated ground truth segmentation map이 함께 제공되었다.

test data는 공개적으로 사용할 수 있지만, segmentation maps은 비밀이라고 한다. 

예측된 멤브레인 probability map를 organizers에게 전송하여 평가를 얻을 수 있다.

-> 평가는 10개의 서로 다른 수준에서 지도를 임계값화하고 "왜곡 오류", "랜드 오류" 및 "픽셀 오류"를 계산하여 수행한다.

 

u-net (averaged over 7 rotated versions of the input data) 는 사전, 후처리 없이 warping error of 0.0003529를 얻었다. 표에서 확인할 수 있듯 최고 성적이다.

슬라이딩 윈도우 컨볼루션 네트워크 결과보다 훨씬 낫다.

rand error 측면에서 보았을 때, 이 데이터 세트에서 유일하게 성능이 더 좋은 알고리즘은

Ciresan 등의 확률 지도에 적용된 높은 데이터 세트 특정 후처리 방법을 사용하는 것이었다.

 

 

 

 

 

 

2. 광 현미경 영상에서 cell segmentation 하는 것.

첫 번째 데이터 세트 "PhC-U373"2는 위상 대조 현미경으로 기록된 폴리아크릴리미드 기질에 교모세포종-아스트로사이토마 U373 세포를 포함하고 있다. 

그림 4a,b에서 확인할 수 있다.

 

 

여기에는 35개의 부분적으로 annotated training image가 포함되어 있다.

achieve an average IOU (“intersection over union”) of 92%, which is significantly better than the second best algorithm with 83%

 

 

 

두 번째 데이터 세트 "DIC-HeLa"3는 DIC(Dierential interference contrast) 현미경으로 기록한 평평한 유리의 HeLa 세포를 포함하고 있다.

그림 4c,d에서 확인할 수 있다.

여기에는 20개의 부분적으로 annotated training image가 포함되어 있다.

achieve an average IOU of 77.5% which is significantly better than the second best algorithm with 46%.

 

 

 

 

 

 

 

 

 

 

5. Conslusion

u-net 아키텍처는 매우 다른 biomedical segmentation 적용에서 매우 우수한 성능을 보인다.

탄력적 변형으로 data augmentation 덕분에 annotated image는 거의 필요하지 않으며,

NVidia Titan GPU(6GB)에서 10시간이라는 매우 합리적인 learning time을 갖는다.

해당 논문에서는 그들이 제공한 u-net 아키텍처를 더 많은 작업에 쉽게 적용할 수 있다고 확신하고 있다.