written by Olaf Ronneberger, Philipp Fischer, and Thomas Brox
์ง๋ ์๊ฐ ๋์ Deep Convolutional Networks(DCN)๋ ๋ง์ ์๊ฐ ์ธ์ ์์ ์์ ํฐ ์ฑ๊ณผ๋ฅผ ๊ฑฐ๋ . DCN์ ์ฑ๊ณต์ ์ฃผ๋ก ๋๊ท๋ชจ์ ๋ฐ์ดํฐ์ ๊ณผ ๋คํธ์ํฌ ํฌ๊ธฐ์ ํ๊ณ๋ก ์ธํด ์ ํ๋์์ผ๋ Krizhevsky ๋ฑ์ด 8๊ฐ ์ธต๊ณผ ์๋ฐฑ๋ง ๊ฐ์ parameters๋ฅผ ๊ฐ์ง ๋ํ ๋คํธ์ํฌ๋ฅผ ImageNet ๋ฐ์ดํฐ์ ์ ๋ํด ๊ฐ๋ ํ์ตํ์ฌ ์ฑ๊ณผ๋ฅผ ๋
์ ํ์ ์ธ DCN์ ๋ถ๋ฅ ์์ ์ ์ฌ์ฉ๋์ด ์ด๋ฏธ์ง์ a single class label์ output์ผ๋ก ๋์ถํจ. ๊ทธ๋ฌ๋ ์๋ฌผ์ํ ์ด๋ฏธ์ง ์ฒ๋ฆฌ์์๋ ๊ฐ ํฝ์ ์ label์ ํ ๋นํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์. Ciresan ๋ฑ์ ์ฌ๋ผ์ด๋ฉ ์๋์ฐ ๋ฐฉ์์ ์ฌ์ฉํด ํฝ์ ์ฃผ๋ณ์ ๊ตญ์ ์์ญ์ ์ ๋ ฅ์ผ๋ก ๋ฐ์ ๊ฐ ํฝ์ ์ class label์ ์์ธกํ๋ ๋คํธ์ํฌ๋ฅผ ํ๋ จ์ํด. ๊ทธ๋ฌ๋ ์ด ๋ฐฉ์์ ๋๋ฆฌ๊ณ ์ค๋ณต์ด ๋ง์ผ๋ฉฐ, ํฐ patch์์๋ ๋ฌธ๋งฅ์ ๋ง์ด ์ฌ์ฉํ ์ ์์ง๋ง ์์น ์ ํ๋๊ฐ ๋จ์ด์ง๋ ๋ฌธ์ ๊ฐ ์์
๋ณธ ๋ ผ๋ฌธ์์๋ fully convolutional network๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ a more elegant architecture๋ฅผ ์ ์ํจ. ํด๋น architecture๋ ํ๋ จ ์ด๋ฏธ์ง๊ฐ ์ ์ด๋ ์๋ํ๋ฉฐ, ๋ ์ ํํ segmentation์ ์ ๊ณตํจ. ์ฃผ์ ์์ด๋์ด๋ ์์ถ ๊ฒฝ๋ก์์ ๊ณ ํด์๋ feature๋ฅผ upsampled๋ output๊ณผ ๊ฒฐํฉํ์ฌ ์ ํํ output์ ํ์ตํ๋ ๊ฒ. ๋ํ data augmentation์ ํตํด ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ๋๋ฆฌ๊ณ ๋ณํ์ ๋ํ ๋ถ๋ณ์ฑ์ ํ์ตํ๊ฒ ํจ
๋ํ์ฌ ์ ์ดํ๋ ๊ฐ์ฒด๋ฅผ ๋ถ๋ฆฌํ๊ธฐ ์ํด ๊ฐ์ค ์์ค ํจ์๋ฅผ ์ฌ์ฉํจ. ์ ์๋ network๋ ๋ค์ํ ์์ํ segmentation ๋ฌธ์ ์ ์ ์ฉ ๊ฐ๋ฅํ๋ฉฐ, EM stack์์ ์ ๊ฒฝ ๊ตฌ์กฐ์ ์ธ๋ถํ ๋ฐ ISBI 2015์ ์ธํฌ ์ถ์ ์ฑ๋ฆฐ์ง์์ ์ฐ์ํ ์ฑ๊ณผ๋ฅผ ๋ณด์
Network architecture๋ contracting path(์ผ)์ expansive path(์ค)๋ก ์ด๋ฃจ์ด์ง
contracting path๋ ์ ํ์ ์ธ convolution network architecture๋ฅผ ๋ฐ๋ฆ. ๋ ๊ฐ์ 3x3 convolution(no pading)๊ณผ ๊ฐ conloution ํ์ ์ ๋ฅ๋ ReLU, ๊ทธ๋ฆฌ๊ณ 2x2 max pooling์ผ๋ก ๊ตฌ์ฑ๋จ. ๋ค์ด์ํ๋ง ๋จ๊ณ๋ง๋ค feature channel์ ์๊ฐ ๋ ๋ฐฐ๋ก ์ฆ๊ฐ
expansive path์ ๊ฐ ๋จ๊ณ๋ feature map์ ์ ์ํ๋งํ๊ณ 2x2 convolution(up-convolution)์ ํตํด feature channel ์๋ฅผ ์ ๋ฐ์ผ๋ก ์ค์ธ ํ, contracting path์ ๋์๋๋ ๋ถ๋ถ์์ ์๋ผ๋ธ feature map๊ณผ ๊ฒฐํฉํจ. ์ดํ ๋ ๊ฐ์ 3x3 convolution๊ณผ ๊ฐ convolution ํ์ ReLU๊ฐ ์ ์ฉ๋จ. ์๋ผ๋ด๊ธฐ๋ ๊ฐ convolution์์ ๊ฒฝ๊ณ ํฝ์ ์ด ์์ค๋๊ธฐ ๋๋ฌธ์ ํ์ํจ. final layer์์๋ 1x1 convolution์ ์ฌ์ฉํ์ฌ ๊ฐ 64-component feature vector๋ฅผ ์ํ๋ class ์๋ก mappingํจ. network๋ ์ด 23๊ฐ์ convolution layers๋ฅผ ๊ฐ์ง
output segmentation map์ ์ํํ tiling์ ์ํด ๋ชจ๋ 2x2 max pooling ์ฐ์ฐ์ด x ๋ฐ y ํฌ๊ธฐ๊ฐ ์ง์์ธ layer์ ์ ๊ตฅใ ๋๋๋ก input tile size๋ฅผ ์ ํํ๋ ๊ฒ์ด ์ค์ํจ
Network๋ Caffe์ Stochastic Gradient Descent(SGD) ๊ตฌํ์ ์ฌ์ฉํ์ฌ input image์ ํด๋น segmentation map์ผ๋ก ํ๋ จ๋จ. padding์ด ์๋ convolution์ผ๋ก ์ธํด output image๋ input๋ณด๋ค ๊ฒฝ๊ณ ๋๋น๋งํผ ์์์ง. GPU ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ต๋ํ ํ์ฉํ๊ธฐ ์ํด ํฐ batch ํฌ๊ธฐ๋ณด๋ค๋ ํฐ input tile์ ์ฌ์ฉํ๊ณ , patch๋ ๋จ์ผ ์ด๋ฏธ์ง๋ก ์ค์. ๋์ momentum(0.99)์ ์ฌ์ฉํ์ฌ ์ด์ ํ๋ จ ์ํ๋ค์ด ํ์ฌ ์ต์ ํ ๋จ๊ณ์ ์ ๋ฐ์ดํธ๋ฅผ ๊ฒฐ์ ํ๊ฒ ํจ
energy ํจ์๋ ์ต์ข
feature map์ ๋ํ pixel ๋จ์ sofmax์ cross entropy loss ํจ์๋ก ๊ณ์ฐ๋จ. softmax๋ ๊ฐ pixel ์์น์์ k๋ฒ์งธ feature map์ activation์ ๊ธฐ๋ฐ์ผ๋ก ์ ์๋จ. cross entropy๋ ๊ฐ ์์น์์ ์์ธก๋ class ํ๋ฅ ๊ณผ ์ค์ label์ ์ฐจ์ด๋ฅผ ๋ฒ์น์ผ๋ก ์ฌ์ฉํจ
๊ฐ ground truth segmentation์ ๋ํด weight map์ ์ฌ์ ๊ณ์ฐํ์ฌ ํน์ ํด๋์ค์ ํฝ์
๋น๋๋ฅผ ๋ณด์ํ๊ณ , ์๋ก ์ ์ดํ๋ cell ์ฌ์ด์ ์์ ๋ถ๋ฆฌ ๊ฒฝ๊ณ๋ฅผ ํ์ตํ๋๋ก ํจ. ๋ถ๋ฆฌ ๊ฒฝ๊ณ๋ ํํํ์ ์ฐ์ฐใ
๋ฅด ์ฌ์ฉํ์ฌ ๊ณ์ฐ๋จ. weight map์ class ๋น๋๋ฅผ ๊ท ํ ์๊ฒ ํ๊ธฐ ์ํ wc์ ๊ฐ์ฅ ๊ฐ๊น์ด cell ๊ฒฝ๊ณ์ ๋ ๋ฒ์งธ๋ก ๊ฐ๊น์ด cell ๊ฒฝ๊ณ๊น์ง์ ๊ฑฐ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ์์ผ๋ก ๊ณ์ฐ๋จ
deep netwrok์์๋ weight initialization์ด ๋งค์ฐ ์ค์. ๋คํธ์ํฌ์ ์ผ๋ถ๊ฐ ๊ณผ๋ํ ํ์ฑํ๋ฅผ ์ ๊ณตํ๊ฑฐ๋ ๊ธฐ์ฌํ์ง ์๊ฒ ๋๋ ๊ฒ์ ๋ฐฉ์งํด์ผ ํจ. ๋คํธ์ํฌ์ ๊ฐ feature map์ด ๋๋ต ๋จ์ ๋ถ์ฐ์ ๊ฐ์ง๋๋ก ์ด๊ธฐ ๊ฐ์ค์น ์ค์ . ์ด๋ฅผ ์ํด ๊ฐ์ค์น๋ ํ์ค ํธ์ฐจ๊ฐ sqrt(2/N)์ธ ์ ๊ท ๋ถํฌ์์ ์ถ์ถ๋๋ฉฐ, ์ฌ๊ธฐ์ N์ ํ ๋ด๋ฐ์ ๋ค์ด์ค๋ ๋ ธ๋ ์๋ฅผ ๋ํ๋. ์๋ฅผ ๋ค์ด, 3x3 ์ปจ๋ณผ๋ฃจ์ ๊ณผ ์ด์ ์ธต์ 64๊ฐ ํน์ง ์ฑ๋์์๋ N = 9 * 64 = 576
์ ์ ์์ ํ๋ จ ์ํ๋ก ๋คํธ์ํฌ์ ํ์ํ invariance๊ณผ robustness๋ฅผ ๊ฐ๋ฅด์น๋ ๋ฐ ํ์์
ํ๋ฏธ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ๋์์ผ๋ก ํ ๋, ์ฃผ๋ก ์ด๋ ๋ฐ ํ์ invariance์ ๋ณํ ๋ฐ ํ์ ๊ฐ ๋ณ๋์ ๋ํ robustness๊ฐ ํ์ํจ. ํนํ, random elastic deformations of the training samples์ ๋งค์ฐ ์ ์ ์์ ์ฃผ์์ด ๋ฌ๋ฆฐ ์ด๋ฏธ์ง๋ก segmentation network๋ฅผ ํ๋ จํ๋ ๋ฐ ์ค์ํ ๊ฐ๋ ์. 3x3 ๊ฒฉ์์์ ๋๋ค ๋ณ์ ๋ฒกํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋งค๋๋ฌ์ด ๋ณํ์ ์์ฑํจ. ๋ณ์๋ ํ์ค ํธ์ฐจ๊ฐ 10ํฝ์ ์ธ ๊ฐ์ฐ์์ ๋ถํฌ์์ ์ํ๋ง๋๋ฉฐ, ํฝ์ ๋จ์ ๋ณ์๋ 3์ฐจ ์คํ๋ผ์ธ ๋ณด๊ฐ๋ฒ์ ์ฌ์ฉํ์ฌ ๊ณ์ฐ๋จ. contracting path ๋์ drop-out layer๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๊ฐ์ ์ธ ์๋ฌต์ data augmentation์ ์ํํจ
๋ณธ ๋ ผ๋ฌธ์์๋ U-Net์ ์ธ ๊ฐ์ง ๋ค๋ฅธ segmentation ์์ ์ ์ ์ฉํจ
U-Net architecture๋ ๋ค์ํ ์์ํ segmentation ์์ฉ ๋ถ์ผ์์ ๋งค์ฐ ์ข์ ์ฑ๋ฅ์ ๋ฐํํจ. elastic deformations์ ์ด์ฉํ data augmentation์ ํตํด ์์์ ์ฃผ์์ด ๋ฌ๋ฆฐ ์ด๋ฏธ์ง๋ก๋ ํ๋ จ์ด ๊ฐ๋ฅํ๋ฉฐ, NVidia Titan GPU(6GB)์์ 10์๊ฐ ์ ๋์ ํ๋ จ ์๊ฐ๋ง ํ์๋ก ํจ. U-Net architecture๋ ๋ ๋ง์ ์์ ์ ์ฝ๊ฒ ์ ์ฉ๋ ์ ์์ ๊ฒ์.