๐Ÿ“š[๋…ผ๋ฌธ ๋ณด๋Ÿฌ๊ฐ€๊ธฐ](https://arxiv.org/abs/1505.04597) # Abstract - **U-Net**์€ ์ ์€ ์–‘์˜ ํ•™์Šต ๋ฐ์ดํ„ฐ๋กœ๋„ ๋†’์€ ์ •๋ฐ€๋„์˜ ์„ธ๋ถ„ํ™”๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” **CNN ๊ตฌ์กฐ**์ด๋‹ค. - U-Net์˜ ๋ชฉํ‘œ๋Š” **Classfication**์ด ์•„๋‹ˆ๋ผ **Segmentation**์ด๋‹ค. ์ฆ‰, ๊ฐ ํ”ฝ์…€์ด ์–ด๋–ค ์˜๋ฏธ(ํด๋ž˜์Šค)์— ์†ํ•˜๋Š”๊ฐ€๋ฅผ ํ•™์Šตํ•˜์—ฌ **Mask ์ด๋ฏธ์ง€**๋ฅผ ๊ฒฐ๊ณผ๋ฌผ๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. (Ex, ์„ธํฌ ์„ธ๋ถ„ํ™”, ๋‡Œ MRI ์˜์—ญ ๊ตฌ๋ถ„, ๋„๋กœ ์ฐจ์„  ํƒ์ง€ etc..) - ๊ธฐ์กด์˜ ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ์€ ์ˆ˜์ฒœ~์ˆ˜๋งŒ ์žฅ์˜ ๋ผ๋ฒจ๋ง๋œ ์ด๋ฏธ์ง€๋ฅผ ์š”๊ตฌํ•˜์ง€๋งŒ, ์˜ํ•™ ์˜์ƒ ๊ฐ™์€ ๋ถ„์•ผ์—์„œ๋Š” ๋งŽ์€ ๋ฐ์ดํ„ฐ ํ™•๋ณด๊ฐ€ ๊ฑฐ์˜ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— U-Net์€ **๋ฐ์ดํ„ฐ ์ฆ๊ฐ•**์„ ๊ฐ•ํ•˜๊ฒŒ ํ™œ์šฉํ•ด **์ œํ•œ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ํ•™์Šต**ํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ๋‹ค. - U-Net์€ ์ปจํ…์ŠคํŠธ(context)๋ฅผ ํฌ์ฐฉํ•˜๋Š” **Contracting path(์ˆ˜์ถ• ๊ฒฝ๋กœ)์™€** ํ”ฝ์…€ ๋‹จ์œ„์˜ ์ •ํ™•ํ•œ ์œ„์น˜๋ฅผ ๋ณต์›ํ•˜๋Š” **Expanding Path(ํ™•์žฅ ๊ฒฝ๋กœ)๋กœ** ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. - ์ถ”๊ฐ€๋กœ 512 x 512 ์ด๋ฏธ์ง€ ํ•œ ์žฅ์„ GPU์—์„œ 1์ดˆ ์ด๋‚ด์— ๋ถ„ํ•  ํ•  ์ˆ˜ ์žˆ๋‹ค. - U-Net์€ ISBI 2015 Cell Tracking Challenge์—์„œ 1๋“ฑ์„ ๋‹ฌ์„ฑํ–ˆ๋‹ค. # 1. Introduction - ๊ธฐ์กด Deep CNN์˜ ๊ฒฝ์šฐ ์ด๋ฏธ์ง€ Classfication ๋ถ„์•ผ์— ํฐ ์„ฑ์žฅ์„ ์ด๋ฃจ์—ˆ์œผ๋‚˜, ์ด๋Š” **์ˆ˜์‹ญ๋งŒ~์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ๋ผ๋ฒจ๋œ ์ด๋ฏธ์ง€**์™€ **๋Œ€๊ทœ๋ชจ ๋„คํŠธ์›Œํฌ ๊ตฌ์กฐ** ๋•Œ๋ฌธ์ด์—ˆ๋‹ค. - ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ CNN์€ ์˜๋ฃŒ ์˜์ƒ์ฒ˜๋Ÿผ **๋ฐ์ดํ„ฐ๊ฐ€ ์ ์€ ๋ถ„์•ผ**์—๋Š” ๋ถ€์ ํ•ฉํ•˜๋‹ค. - ์ผ๋ฐ˜ CNN์˜ ๋ชฉํ‘œ๋Š” Classfication์ธ ๋ฐ˜ํ•ด U-Net์˜ ๋ชฉํ‘œ๋Š” **Segmentation(์„ธ๋ถ„ํ™”)์ด๋‹ค.** - ๊ธฐ์กด์—๋Š” Segmentation์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด **sliding window** ๋ฐฉ์‹์„ ์‚ฌ์šฉํ–ˆ๋‹ค. - **sliding window** : ๊ฐ ํ”ฝ์…€ ์ฃผ๋ณ€์˜ ์ž‘์€ ํŒจ์น˜(patch)๋ฅผ ์ž˜๋ผ CNN์— ์ž…๋ ฅํ•˜์—ฌ ๊ทธ ํŒจ์น˜์˜ ์ค‘์‹ฌ ํ”ฝ์…€์ด ์–ด๋–ค ํด๋ž˜์Šค์ธ์ง€ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ๋ฒ• - ํ•˜์ง€๋งŒ **sliding window** ๋ฐฉ์‹์—๋Š” **๋‘ ๊ฐ€์ง€ ํฐ ๋ฌธ์ œ์ **์ด ์žˆ์—ˆ๋‹ค. 1. **Ineffciency** : ๋ชจ๋“  ํ”ฝ์…€๋งˆ๋‹ค ๋„คํŠธ์›Œํฌ๋ฅผ ๋”ฐ๋กœ ๋Œ๋ ค์•ผ ํ•˜๋ฏ€๋กœ ์ค‘๋ณต ๊ณ„์‚ฐ์ด ๋งŽ์Œ 2. **Localization โ†” Context** Trade-off : ํฐ Patch๋ฅผ ์“ฐ๋ฉด ์ฃผ๋ณ€ Context๋Š” ์ž˜ ๋ณด์ง€๋งŒ ๊ฒฝ๊ณ„๊ฐ€ ํ๋ฆฟํ•ด์ง€๊ณ  ์ž‘์€ ํŒจ์น˜๋ฅผ ์“ฐ๋ฉด ๊ฒฝ๊ณ„๋Š” ์ž˜ ์žก์ง€๋งŒ ์ „์ฒด ๋งฅ๋ฝ์„ ๋ณด์ง€ ์•Š๋Š”๋‹ค. ์ฆ‰, **์ •ํ™•ํ•œ ์œ„์น˜**์™€ **๋„“์€ ๋ฌธ๋งฅ ์ •๋ณด**๋ฅผ ๋™์‹œ์— ์–ป๊ธฐ ์–ด๋ ต๋‹ค. - **U-Net**์€ **Fully Convolutional Network(FCN) ๊ฐœ๋…**์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์„ค๊ณ„ ๋˜์—ˆ๋‹ค. - ๊ธฐ์กด CNN์€ FC Layer์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— feature map์„ **๋ชจ๋‘ flatten** ํ•ด๋ฒ„๋ฆฌ๋Š” ๊ณผ์ •์—์„œ (x, y) ์œ„์น˜ ์ •๋ณด๊ฐ€ ์‚ฌ๋ผ์ง€๋Š” ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค. - FC Layer๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋ชจ๋“  ์ธต์„ Convolution๊ณผ Upsampling์œผ๋กœ ๋Œ€์ฒดํ–ˆ๋‹ค. ![[U-Net architecture.png]] - U-Net architecture์€ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ ๋Œ€์นญ ๊ตฌ์กฐ(U-ํ˜•)์ด๋‹ค. - ์™ผ์ชฝ - **Contracting path** : downsampling์œผ๋กœ **context ์ถ”์ถœ** - ์˜ค๋ฅธ์ชฝ - **Expanding path** : upsampling์œผ๋กœ **localization ๋ณต์›** - ๋‘ ๊ฒฝ๋กœ๋ฅผ **skip connection**์œผ๋กœ ์—ฐ๊ฒฐํ•˜์—ฌ ์ €์ˆ˜์ค€ featrue์„ ๋‹ค์‹œ ํ•ฉ์ณ **๊ฒฝ๊ณ„ ์„ธ๋ถ€ ์ •๋ณด ์†์‹ค**์„ ๋ฐฉ์ง€ํ–ˆ๋‹ค. - ๊ธฐ์กด **FNC**๋Š” upsamplingํ•˜๋ฉด์„œ ์ฑ„๋„ ์ˆ˜๋ฅผ ์ค„์˜€๊ธฐ ๋•Œ๋ฌธ์— context๊ฐ€ ์•ฝํ•ด์กŒ์ง€๋งŒ, U-Net์€ **์ฑ„๋„์„ ํ’๋ถ€ํ•˜๊ฒŒ ์œ ์ง€**ํ•ด์„œ **๋ฌธ๋งฅ(context) + ์„ธ๋ถ€(localizatoin)์„** ํ•จ๊ป˜ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. - **Elastic deformation augmentation(ํƒ„์„ฑ ๋ณ€ํ˜• ์ฆ๊ฐ•)์„** ์ ๊ทน ์‚ฌ์šฉํ•˜์—ฌ ์ ์€ ์ˆ˜์˜ ๋ผ๋ฒจ๋ง ๋ฐ์ดํ„ฐ๋กœ๋„ ํ•™์Šต ๊ฐ€๋Šฅํ•˜๊ฒŒ ์„ค๊ณ„ํ–ˆ๋‹ค. ![[Cell Boundary Image.png]] - ํ•˜์ง€๋งŒ ์„œ๋กœ ๋งž๋‹ฟ์€ ์„ธํฌ๋“ค์€ ๊ฐ™์€ ํด๋ž˜์Šค๋ผ์„œ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ๊ทธ๋ž˜์„œ **๊ฒฝ๊ณ„(background border)์— ๋” ํฐ ๊ฐ€์ค‘์น˜๋ฅผ ์ค˜์„œ** ๋„คํŠธ์›Œํฌ๊ฐ€ **'์—ฌ๊ธฐ๊ฐ€ ์„ธํฌ ๊ฒฝ๊ณ„๋‹ค'๋ฅผ** ๋” ๊ฐ•ํ•˜๊ฒŒ ํ•™์Šตํ•˜๋„๋ก ์œ ๋„ํ–ˆ๋‹ค. - (d) ๊ฐ’์ด ํ›„์— ๋‚˜์˜ฌ ๋„คํŠธ์›Œํฌ๊ฐ€ ๊ฒฝ๊ณ„ ํ”ฝ์…€์„ ํ•™์Šตํ•˜๋„๋ก **ํ”ฝ์…€ ๋ณ„ ์†์‹ค ๊ฐ€์ค‘์น˜๋ฅผ ๋งคํ•‘**ํ•œ ์ด๋ฏธ์ง€์ด๋‹ค. # 2. Network Architecture - U-Net์€ ํฌ๊ฒŒ **Contracting Path**์™€ **Expanding Path**๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ## Contracting Path - Contracting Path์€ context์„ ์ถ”์ถœํ•˜๋Š” ๊ฒฝ๋กœ๋กœ ์ผ๋ฐ˜์ ์ธ CNN ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค, - ๋‘ ๊ฐœ์˜ 3x3 convolution์„ ๊ฑฐ์น˜๊ณ  **padding ์—†์ด** ์ˆ˜ํ–‰๋˜์–ด feature map์˜ ํฌ๊ธฐ๊ฐ€ 2์”ฉ ์ค„์–ด๋“ ๋‹ค. - ๊ทธ ํ›„ **max pooling(stride=2)๋กœ ๋‹ค์šด์ƒ˜ํ”Œ๋ง**์„ ๊ฑฐ์น˜๊ณ  ์ •๋ณด ์†์‹ค์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด feature map์˜ ํฌ๊ธฐ๋ฅผ 2๋ฐฐ ์ฆ๊ฐ€ํ•˜์˜€๋‹ค. ## Expanding Path - Expanding Path์€ **upsmapling(ํ•ด์ƒ๋„ ๋ณต์›)์„** ์ˆ˜ํ–‰ํ•˜๋Š” ๋ถ€๋ถ„์ด๋‹ค. - **up-conv (2ร—2 transposed conv)์„** ํ†ตํ•ด feature map์˜ ํ•ด์ƒ๋„๋ฅผ 2๋ฐฐ๋กœ ๋ณต์›ํ•˜๊ณ  ํ›„์˜ skip connection๊ณผ ํ•ฉ์น˜๊ธฐ ์œ„ํ•ด **feature map์˜ ํฌ๊ธฐ๋ฅผ ์ ˆ๋ฐ˜**์œผ๋กœ ์ค„์ธ๋‹ค. - ๊ทธ ํ›„ contracting path์˜ ๋Œ€์‘ ๋‹จ๊ณ„ feature map์„ ๋ณต์‚ฌํ•ด์„œ ๋ถ™์ด๋Š” **copy & crop (skip connection)** ๋‹จ๊ณ„๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. - ๋‹ค๋งŒ ํ•ฉ์น˜๋Š” ๊ณผ์ •์—์„œ padding ์—†์ด convolution์„ ์ง„ํ–‰ํ•ด ๋‘ feature map ํฌ๊ธฐ๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— **์ด๋ฅผ ๋งž์ถ”๊ธฐ ์œ„ํ•ด crop์œผ๋กœ ํฌ๊ธฐ๋ฅผ ์กฐ์ •**ํ•œ๋‹ค. - ํ•ฉ์ณ์ง„ feature map์„ 3x3 convolution ์—ฐ์‚ฐ์„ ์ง„ํ–‰ํ•˜๋Š”๋ฐ ์ด ๊ณผ์ •์—์„œ **์™ผ์ชฝ์˜ ๊ณ ํ•ด์ƒ๋„ + ์„ธ๋ฐ€ํ•œ ์œ„์น˜ ์ •๋ณด**์™€ **์˜ค๋ฅธ์ชฝ ๊ฒฝ๋กœ์˜ ์ €ํ•ด์ƒ๋„์ด์ง€๋งŒ ์˜๋ฏธ์ ์ธ context**์ธ ๋‘ ์ •๋ณด๋ฅผ ์„ž์–ด ์ •์ œ(fusion)ํ•˜๊ธฐ ์œ„ํ•ด **feature map ํฌ๊ธฐ๋ฅผ ์ ˆ๋ฐ˜**์œผ๋กœ ์ค„์ธ๋‹ค. (+ ์—ฐ์‚ฐ ํšจ์œจ ์ฆ๊ฐ€) ## 1x1 conv - ๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„์—์„œ๋Š” 1x1 convolution์„ ์ ์šฉํ•˜์—ฌ **feature map ์ˆ˜๋ฅผ ํด๋ž˜์Šค ์ˆ˜(K)๋กœ** ์ค„์ธ๋‹ค. (Ex, ๋ฐฐ๊ฒฝ - 0, ์„ธํฌ - 1 โ†’ ์ถœ๋ ฅ ์ฑ„๋„ 2๊ฐœ) - ์ดํ›„ softmax๋ฅผ ์ ์šฉํ•˜์—ฌ ํ”ฝ์…€ ๋ณ„ ํด๋ž˜์Šค ํ™•๋ฅ ์„ ๊ตฌํ•œ๋‹ค. ## Even size - ์ด 4๋ฒˆ์˜ 2x2 max pooling์ด ์ˆ˜ํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— feature map์˜ ์ž…๋ ฅ ์ด๋ฏธ์ง€์˜ ํฌ๊ธฐ๊ฐ€ ๊ฐ€๋กœ, ์„ธ๋กœ ๋‘˜ ๋‹ค 2<sup>4</sup>์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜์–ด์•ผ **U-Net์˜ ๋‹ค์šด์ƒ˜ํ”Œ๋ง/์—…์ƒ˜ํ”Œ๋ง ๋Œ€์นญ์ด ์ •ํ™•ํžˆ ์œ ์ง€**๋œ๋‹ค. - ๋”ฐ๋ผ์„œ ๋…ผ๋ฌธ์—์„œ๋„ **572x572 ์ด๋ฏธ์ง€**๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. # 3. Training ## ํ•™์Šต ์„ธํŒ… - ์ตœ์ ํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ **SGD**๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. - ์ผ๋ฐ˜์ ์œผ๋กœ๋Š” batch size๋ฅผ ํ‚ค์šฐ๋ ค๊ณ  ํ•˜๋Š”๋ฐ, U-Net์€ **batch size๋ฅผ 1๋กœ ๋‘๊ณ  ์ž…๋ ฅ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ํฌ๊ฒŒ ์žก๋Š”๋‹ค.** - segmentation์€ ์ถœ๋ ฅ๋„ ์ด๋ฏธ์ง€ ํ˜•ํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์— **ํฐ ํƒ€์ผ ํ•˜๋‚˜๊ฐ€ ์ •๋ณด๊ฐ€ ๋งŽ์•„**, GPU ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ์œผ๋กœ ์—ฌ๋Ÿฌ ์žฅ์„ ๋„ฃ๊ธฐ ์–ด๋ ต๋‹ค. - batch size๊ฐ€ 1์ผ ๊ฒฝ์šฐ gradient๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ๋”ฑ ํ•œ ์žฅ์˜ ์ด๋ฏธ์ง€์—๋งŒ ์˜์กดํ•˜๊ธฐ ๋•Œ๋ฌธ์— **ํ•œ ์žฅ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ฐ€์ง„ ํŠน์ดํ•œ ํŒจํ„ด์ด๋‚˜ ๋…ธ์ด์ฆˆ๊ฐ€ ๊ทธ๋Œ€๋กœ gradient์— ๋ฐ˜์˜**๋œ๋‹ค. - ๋”ฐ๋ผ์„œ ๋…ผ๋ฌธ์—์„œ๋Š” **momentum์„ 0.99**๋กœ ์ค˜ step๋“ค์˜ gradient๋ฅผ ๋ˆ„์ ํ•ด์„œ ํ˜„์žฌ step์˜ ๋ณ€ํ™”๋Ÿ‰์„ **ํ‰๊ท ์ฒ˜๋Ÿผ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ** ๋งŒ๋“ค์—ˆ๋‹ค. ## ํ”ฝ์…€ ๋ณ„ softmax + cross entropy ### Softmax $p_x(x) = \frac{exp(a_k(x))}{\sum_{i=1}^{K}exp(a_i(x))}$ - a<sub>kโ€‹</sub>(x) : ๋งˆ์ง€๋ง‰ 1ร—1 conv ์ถœ๋ ฅ (logit) โ†’ ํ”ฝ์…€ x ์œ„์น˜์—์„œ ํด๋ž˜์Šค k ์— ๋Œ€ํ•œ ์ ์ˆ˜ - K : ํด๋ž˜์Šค ์ˆ˜ (์˜ˆ: ๋ฐฐ๊ฒฝ+์„ธํฌ โ†’ K=2) - x : 2D ์ขŒํ‘œ - ํ•ด๋‹น softmax๋Š” **๊ฐ ํ”ฝ์…€๋งˆ๋‹ค ๋…๋ฆฝ์ **์œผ๋กœ ์ ์šฉ๋œ๋‹ค. - ์ตœ์ข…์ ์œผ๋กœ ๊ฐ ํ”ฝ์…€๋งˆ๋‹ค **ํด๋ž˜์Šค ํ™•๋ฅ  ๋ถ„ํฌ**๋ฅผ ๊ฐ–๊ฒŒ ๋œ๋‹ค. ### Cross entropy $E = -\sum_{x\in \Omega }^{}w(x)log(p_{l(x)}(x)) $ - โ„“(x): ํ”ฝ์…€ x์˜ **์ •๋‹ต ํด๋ž˜์Šค ์ธ๋ฑ์Šค** - ์˜ˆ: ์„ธํฌ=1, ๋ฐฐ๊ฒฝ=0 ์ด๋Ÿฐ ์‹ - p<sub>โ„“(x)</sub>(x): ์ •๋‹ต ํด๋ž˜์Šค์— ๋Œ€ํ•œ softmax ํ™•๋ฅ  - **w(x)**: ํ”ฝ์…€ ๋ณ„ ๊ฐ€์ค‘์น˜ - ํ”ฝ์…€๋งˆ๋‹ค **์˜ˆ์ธก ํ™•๋ฅ **๊ณผ **์ •๋‹ต ํด๋ž˜์Šค**์˜ cross-entorpy๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์ด๋ฅผ ๊ฐ€์ค‘์น˜ w(x)๋กœ ์กฐ์ •ํ•ด ์ „์ฒด loss๋ฅผ ํ•ฉ์‚ฐํ•œ๋‹ค. ## ๊ฐ€์ค‘์น˜ w(x) - ์˜๋ฃŒ ์˜์ƒ์—์„œ๋Š” ๋ฐฐ๊ฒฝ ํ”ฝ์…€์ด ๋Œ€๋ถ€๋ถ„์ด๊ณ  ์„ธํฌ ๊ฒฝ๊ณ„ ์˜์—ญ์€ ๋งค์šฐ ์ ๋‹ค. - ์ด๋Ÿฌํ•œ ํด๋ž˜์Šค ๋ถˆ๊ท ํ˜•์„ ํ•ด์†Œํ•˜๊ธฐ ์œ„ํ•ด U-Net์€ **๊ฐ ํ”ฝ์…€ ๋งˆ๋‹ค Loss ๊ธฐ์—ฌ๋„๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ฃผ๋Š”** ๊ฐ€์ค‘์น˜ ๋งต w(x)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. $w(x) = w_{c}(x) + w_0 * exp(-\frac{(d_1(x)+d_2(x))^2}{2\sigma ^2})$ - w<sub>c</sub>(x) : ํด๋ž˜์Šค ๋น„์œจ์— ๋”ฐ๋ผ ์ •ํ•ด์ง€๋Š” ๊ธฐ๋ณธ ๊ฐ€์ค‘์น˜ (์†Œ์ˆ˜ ํด๋ž˜์Šค์— ๋” ํฐ ๊ฐ’์„ ์ค€๋‹ค.) - d<sub>1</sub>(x),d<sub>2</sub>โ€‹(x): ํ”ฝ์…€ x์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋‘ ์„ธํฌ ๊ฒฝ๊ณ„๊นŒ์ง€์˜ ๊ฑฐ๋ฆฌ, ๊ฒฝ๊ณ„ ๊ทผ์ฒ˜ ํ”ฝ์…€์ผ ์ˆ˜๋ก d<sub>1</sub>(x) + d<sub>2</sub>โ€‹(x)์ด ์ž‘์•„์ ธ exp ํ•ญ์ด ์ปค์ง„๋‹ค. - w<sub>0</sub>, ฯƒ: ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ (๋…ผ๋ฌธ ์˜ˆ์‹œ๋กœ w<sub>0</sub>=10,ฯƒ=5) ## He initialization - ReLU ๊ฐ™์€ ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋ฅผ ์“ธ ๋•Œ๋Š” ์ž…๋ ฅ ๊ฐ’์˜ ๋ถ„์‚ฐ์ด layer๋ฅผ ๊ฑฐ์ณ๊ฐ€๋„ ๊ฑฐ์˜ ์ผ์ •ํ•˜๊ฒŒ ์œ ์ง€๋˜๋„๋ก ์ดˆ๊ธฐ weight๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•œ๋‹ค. $wโˆผN(0, \sigma ^2), \sigma =\sqrt{\frac{2}{N}}$ - N : ํ•œ ๋‰ด๋Ÿฐ(๋˜๋Š” ํ•œ ํ•„ํ„ฐ)์— ๋“ค์–ด์˜ค๋Š” **์ž…๋ ฅ ์ˆ˜** - ์˜ˆ๋ฅผ ๋“ค์–ด 3x3 conv์— ์ž…๋ ฅ ์ฑ„๋„์ด 64๋ผ๋ฉด, N = 3 x 3 x 64 = 576 - ฯƒ = โˆš(2/576) โ‰ˆ 0.059. - ์ฆ‰, **ํ‰๊ท  0, ํ‘œ์ค€ํŽธ์ฐจ 0.059์ธ ์ •๊ทœ๋ถ„ํฌ์—์„œ weight**๋ฅผ ๋ฝ‘์•„ ์ดˆ๊ธฐํ™” ## Data Augmentation - ์˜๋ฃŒ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ ์ž์ฒด๊ฐ€ ๋ณ„๋กœ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•์ด ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค. - ๊ธฐ์กด์˜ ๋ฐ์ดํ„ฐ๋ฅผ **shift, rotation, flip, gray value variation (๋ช…์•” ๋ณ€ํ™”)** ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ **Elastic deformation (ํƒ„์„ฑ ๋ณ€ํ˜•)์„** ์‚ฌ์šฉํ–ˆ๋‹ค. - **Elastic deformation (ํƒ„์„ฑ ๋ณ€ํ˜•)** : ์„ธํฌ/์กฐ์ง์€ ์‹ค์ œ๋กœ ๋ชจ์–‘์ด ํœ˜๊ณ  ์ฐŒ๊ทธ๋Ÿฌ์กŒ๊ธฐ ๋•Œ๋ฌธ์— **random displacement field**๋ฅผ ๋งŒ๋“ค์–ด์„œ ์ด๋ฏธ์ง€๋ฅผ ํœ˜๊ฒŒ ํ–ˆ๋‹ค. - coarse 3x3 gird๋ฅผ ํ†ตํ•ด ์ด๋ฏธ์ง€๋ฅผ 3x3 ๊ฒฉ์ž๋กœ ๋‚˜๋ˆˆ ๋’ค, ๊ฒฉ์ž์ ๋งˆ๋‹ค ์ž„์˜๋กœ displacement vector๋ฅผ ๋งŒ๋“ค์–ด ์ด๋ฏธ์ง€ ๊ณต๊ฐ„์„ ๋ณ€ํ˜•ํ•˜๊ณ  **bicubic interpolation(2D์—ฃ๊ฑฐ ํ”ํžˆ ์“ฐ๋Š” ๋ถ€๋“œ๋Ÿฌ์šด ๋ณด๊ฐ„๋ฒ•)์„** ์จ์„œ ์ด๋™ ๋ฒกํ„ฐ๋ฅผ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ์—ฐ๊ฒฐํ•œ๋‹ค. - ์ด๋ ‡๊ฒŒ ๋ณ€๊ฒฝ๋œ ๋ฐ์ดํ„ฐ์˜ ๋ผ๋ฒจ(mask) ๋˜ํ•œ ๊ฐ™์€ ๋ณ€ํ˜• ํ•„๋“œ๋กœ ํœ˜๊ฒŒ ๋งŒ๋“ค์–ด์ค˜์•ผ ํ•œ๋‹ค. # 4. Experiments ## ISBI 2012 EM Segmentation Challenge ### ๋ฐ์ดํ„ฐ ์…‹ - ISBI EM Segmentation Challenge - ํฌ๊ธฐ: 512ร—512 grayscale ์ด๋ฏธ์ง€ - Train Image : 30์žฅ, Test Image : 30์žฅ - ๋ผ๋ฒจ : ๋‰ด๋Ÿฐ(1) / ๋ฐฐ๊ฒฝ(0) ### ๋ฐ์ดํ„ฐ ์ฆ๊ฐ• - **elastic deformation** + shift, rotation, flip, gray value variation ๋“ฑ ์—ฌ๋Ÿฌ ์ฆ๊ฐ•์„ ์‚ฌ์šฉํ•จ - ๋ฐ์ดํ„ฐ๋ฅผ 10<sup>4</sup>๋ฐฐ ์ˆ˜์ค€์œผ๋กœ ์ฆ๊ฐ• ### ํ•™์Šต ์„ค์ • - Loss : weighted cross-entropy - Optimizer: SGD (momentum=0.99) - ํƒ€์ผ ํฌ๊ธฐ: 572ร—572 ์ž…๋ ฅ, 388ร—388 ์ถœ๋ ฅ - Batch size: 1 ### ๊ฒฐ๊ณผ ![[ISBI 2012 EM Segmentation Challenge Result.png]] - Rand Error : segmentation์ด ์‹ค์ œ boundary์™€ ์–ผ๋งˆ๋‚˜ ์ผ์น˜ํ•˜๋Š”๊ฐ€ - ๋‚ฎ์„ ์ˆ˜๋ก ์ข‹์Œ - Warwick F-score : ๋ถ„ํ• ๋œ ์˜์—ญ์˜ ์ •๋ฐ€๋„ยท์žฌํ˜„์œจ - ๋†’์„ ์ˆ˜๋ก ์ข‹์Œ - Pixel Error : ๋‹จ์ˆœํ•œ ํ”ฝ์…€ ๋‹จ์œ„ ์˜ค์ฐจ์œจ - ๋‚ฎ์„ ์ˆ˜๋ก ์ข‹์Œ - ์ด 3๊ฐ€์ง€ ์ง€ํ‘œ์—์„œ ๋ชจ๋“  ๋ชจ๋ธ๋ณด๋‹ค **์„ฑ๋Šฅ์ด ์›”๋“ฑํžˆ ๋†’์•˜๋‹ค.** ## ์„ธํฌ ๋ถ„ํ•  (PhC-U373 & DIC-HeLa) - ํ˜„๊ด‘ ํ˜„๋ฏธ๊ฒฝ ์ด๋ฏธ์ง€์—์„œ ์„ธํฌ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋‹ค. (๊ฐ ์„ธํฌ๊ฐ€ ์–ด๋”” ์žˆ๋Š”์ง€, ์„œ๋กœ ์–ด๋–ป๊ฒŒ ๋ถ™์–ด ์žˆ๋Š”์ง€) ### ๋ฐ์ดํ„ฐ ์…‹ - **PhC-U373**: ์ธ๊ฐ„ ๋‡Œ๊ต์„ธํฌ(glioblastoma) - **DIC-HeLa**: ์ž๊ถ๊ฒฝ๋ถ€์•” ์„ธํฌ(HeLa) - ๊ฐ๊ฐ ๋ผ๋ฒจ์ด ๋งค์šฐ ์ ๋‹ค. (20์žฅ ์ดํ•˜ ์ˆ˜์ค€) ### ํ•™์Šต ๋ฐฉ๋ฒ• - ๋‘ ๋ชจ๋ธ ๋‹ค ๋™์ผํ•œ ๋„คํŠธ์›Œํฌ ๊ตฌ์กฐ์™€, ๋™์ผํ•œ weight map ๊ณ„์‚ฐ์‹์„ ์ด์šฉํ–ˆ๋‹ค. - w(x)์˜ d<sub>1</sub>(x),d<sub>2</sub>โ€‹(x)์ด ๊ฒฝ๊ณ„ ๋ถ€๋ถ„์˜ Loss๋ฅผ ๊ฐ•์กฐํ•˜์—ฌ ๊ฒฝ๊ณ„๋ฅผ ๋” ์ž˜ ํŒŒ์•…ํ–ˆ๋‹ค. ### ๊ฒฐ๊ณผ ![[PhC-U373 & DIC-HeLa Result.png]] - ๊ธฐ์กด์˜ **CellProfiler, Ilastik, Random Forest ๊ธฐ๋ฐ˜ ๋ฐฉ๋ฒ•๋“ค๋ณด๋‹ค ์›”๋“ฑํžˆ ๋†’๋‹ค.** - ํŠนํžˆ **๋ถ™์€ ์„ธํฌ ๊ฐ„ ๊ฒฝ๊ณ„ ์‹๋ณ„ ์ •ํ™•๋„**๊ฐ€ ๋งค์šฐ ๋†’์•˜๋‹ค. - ์‚ฌ๋žŒ ๋ˆˆ์œผ๋กœ ๋ด๋„ ๊ฒฝ๊ณ„๊ฐ€ ๋šœ๋ ทํ•˜๊ฒŒ ๋ณต์›๋จ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ![[ISBI, DIC-HeLa image segmentation result.png]] # 5. Conclusion - **Elastic Deformation Augmentation(ํƒ„์„ฑ ๋ณ€ํ˜• ์ฆ๊ฐ•)** ๋•๋ถ„์— U-Net์€ ์ˆ˜์‹ญ ์žฅ ์ˆ˜์ค€์˜ ๋ผ๋ฒจ ๋ฐ์ดํ„ฐ๋กœ๋„ **์ „์žํ˜„๋ฏธ๊ฒฝ(EM)** ์˜์ƒ๊ณผ ๊ด‘ํ•™ํ˜„๋ฏธ๊ฒฝ (Light Microscopy) ๋ฐ์ดํ„ฐ ์…‹์— ๋งค์šฐ ๋†’์€ ์ •ํ™•๋„๋ฅผ ๋‹ฌ์„ฑํ–ˆ๋‹ค. - NVidia Titan GPU (6 GB ๋ฉ”๋ชจ๋ฆฌ)์—์„œ **์•ฝ 10์‹œ๊ฐ„**์ด๋ฉด ์ถฉ๋ถ„ํžˆ ํ•™์Šต ๊ฐ€๋Šฅํ–ˆ๊ณ  ์ถ”๋ก  ์†๋„ ์—ญ์‹œ 512x512 ์ด๋ฏธ์ง€ ํ•œ ์žฅ์„ **1์ดˆ ๋‚ด**๋กœ ๋ถ„ํ•  ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.