U-Net 위와 같은 모델의 architecture 때문에 U-Net이라는 이름이 붙었다고 하네요. 원래는 의료 분야에 유용할 것이라는 생각이 있었는데, 예상과 달리 computer vision과 같은 분야에서 크게 빛을 발했다고 합니다. Conv, RELU를 실행하면 channel은 증가하고 height와 width는 줄어듭니다. Max Pooling을 실행하면 channel은 그대로지만 height와 width는 줄어듭니다. Trans Conv를 실행하면(파란색 블록) channel은 줄어들지만 height와 width가 증가합니다. 최종 결과는 h x w x n(class)로 input과 동일한 차원을 갖게 됩니다. 출처: Coursera, Convolutional Neural Networks, D..
Transpose Convolutions 일반적인 Convolution은 filter를 통해 계산하면 그 차원수가 줄어듭니다. 하지만 Transpose Convolution을 적용하면 오히려 차원이 커지는 것을 볼 수 있습니다. 위 예시에서는 2 x 2 input이 3 x 3 필터를 만나 4 x 4가 되었습니다. input은 2x2, filter는 3x3, padding은 1, stride는 2인 예시를 살펴봅시다. 필터의 모든 값은 input의 각 값을 변수로 받아 제곱을 계산합니다. 계산된 제곱은 패딩을 제외한 구역에 더해집니다. 만약 여러 계산이 중첩되는 경우 계산된 값을 더하여 누적하면 됩니다. 패딩에 해당하는 값들은 계산하지 않고 무시합니다. U-Net에서는 이런 방식을 이용하여 이미지를 다시 ..
Object Detection vs. Semantic Segmentation 각 픽셀이 연결되어 있는지 그렇지 않은지를 구분하는 방식입니다. 특정 분야에서 효용성이 더 좋습니다. Motivation for U-Net 예시에서 볼 수 있는 것처럼 의료 분야에서 어떤 질병이 있는지 없는지를 판단하는데 큰 도움을 줄 수 있습니다. Per-pixel class labels label을 어떻게 설정하는지를 고민해봅시다. 위 이미지에서는 자동차인 부분은 1, 그렇지 않은 부분은 0이 될 것입니다. 만약 건물까지 구분하고 싶다면, 건물을 2로 할당할 수 있습니다. 여기에 도로까지 구분한다면 도로 부분은 3이 될 것입니다. bounding box를 예측할 때와 다르게 학습할 수 있습니다. Deep Learning fo..