공부 기록장

[논문 읽기] U-Net : Convolutional Networks for Biomedical Image Segmentation 본문

스터디/인공지능

[논문 읽기] U-Net : Convolutional Networks for Biomedical Image Segmentation

빛나무 2021. 5. 4. 21:55

convolutional network를 이용해 생물의학적 사진들 분류하기

[요약]

이 논문에서 소개할 U-Net은 속도도 빠르고 적은 수의 데이터로 최상의 학습 효과를 낼 수 있다.

 

cf) et al : "and others" (저자가 여러 명일 때 사용)

 

1. 소개

sliding-window 기법에 기반한 신경망은 대회에서 수상을 할 정도로 좋았지만 크게 두 가지 단점이 있었다.

첫번째는 각 패치에 대해 별도로 실행되어야 하기 때문에 상당히 느리고, 패치들 끼리도 중복이 많아서 비효율적이다.

두번쨰는 localization accuracy와 use of context 사이의 trade-off 가 존재한다는 것이다. 패치가 클수록 context는 파악하기 쉽지만, max-pooling layer가 더 필요하게 되고 이로 인해 localization accurary가 감소된다. 패치가 작을수록 localization은 정확해지만 context를 파악하기 어려워진다.

(localization : 해당 물체가 주어진 공간에서 어디에 위치하는지, context : 이웃한 픽셀들 간의 관계)

 

U-Net은 이러한 단점을 극복한다.

 

2. 네트워크 구조

Architecture of U-net : Contraction Path + Expansive Path

(=> 둘 다 convolution을 기반으로 만들어짐, 미세한 차이만 있고 비슷하다, symmetric 하게 U자 형태 -> U Net)

 

 

 

- Contraction Path : 이미지의 feature map에서 context를 포착해 도출하는 역할

1) 전형적인 convolution network 수행 (without fully connected layer)

2) 두 번의 3X3 convolution(unpadded) 후, RELU 사용

3) 한 번의 2X2 max-pooling(stride 2), down-sampling시에는 2배의 feature channel 적용

 

- Expansive Path : feature map을 upsampling을 하여 정확한 localization을 하기 도와줌

1) down-sampling을 수행하는 max pooling layer 대신 UP conv.layer로 치환

2) 두 번의 3X3 convolution 후, RELU 사용

3) contraction path에서 추출된 feauture map 가져와 부착

4) 마지막 단에는 1X1 conv를 사용

 

Unet은 기존의 sliding window 탐색 방식이 아닌 patch 탐색 방식(improved sliding window search method)을 사용한다.

Unet은 padding을 수행하지 않고 conv를 수행하기 때문에 출력값이 입력값보다 작다. Unet은 매번 network 이전의 크기를 줄이고 network를 따라 upsampling 하는 시간과 노력이 많이 드는 방법보다는 overlap tile이라는 방법을 사용한다. 손실된 부분은 mirroring 기법을 이용해 채워 정보 손실을 최소화하여 context 정보를 저장할 수 있다.

 

 

3. 학습

 

픽셀마다의 class를 분류하기 위해 pixel-wise softmax를 사용한다.

ak(x)는 x의 k번째 채널의 활성화 함수이다. x는 해당 픽셀 위치의 좌표이다. K는 class 개수이다. pk(x)는 확률값이다.

 

 

 

 

wc(x)는 class frequency를 맞추기 위한 weight map이다. d1은 x에서 가장 가까운 세포까지의 거리이다. d2는 x에서 두번째로 가까운 세포까지의 거리이다. 두 세포 사이 거리가 넓을 수록 작은 weight를 갖는다.

 

 

 

 

 

 

 

 

3.1. Data Augmentation

U-Net은 적은 양의 데이터로 충분한 학습을 하기 위해 data augmentation을 사용한다. 데이터가 한정되어 있을 때 사용하는 방식인데, 때때로 좋지 않은 성능을 가져오기도 한다. U-Net이 세포 segmentation에서 강점을 보이는 네트워크이고 세포 데이터에서는 data augmentation의 적용이 괜찮은 효과를 보이기 때문에 논문에서 사용되었다.

 

Elastic Deformation 방식 사용

: 픽셀별로 다른 방향으로 뒤틀려서 더 자연스럽고 현실속에서 있을법한 변화를 표현하는 것 같아 biometical data에 적합하게 사용된 것 같다.