3. Decoder의 역할
- 모델의 전체 구조
이미지를 입력으로 받으면, Backbone을 통해서 Visual Feature를 추출. 추출된 Feature는 보통 입력 이미지보다 작은 크기를 가지고 있어서 추후 활용에 용이. 이후 풀고자하는 task에 따라 여러 가지 Decoder를 붙임.
Decoder는 앞서 추출한 feature를 이용하여 풀고자하는 vision task에 맞는 결과를 추출함.
출처 : Upstage Decoder의 역할, 4page - Classification

출처 : Upstage Decoder의 역할, 8page
- Backbone 옆 ( B x C x W x H) 의 의미
Visual feature의 tensor 크기
W와 H는 각각 높이와 넓이, C는 channel, B는 Batch size
B개의 이미지에 대해서 Visual Feature를 추출했고, 추출한 Visual Feature는 C x W x H Dimesion을 가지고 있다.
- Channel
image RGB 채널과 같이 각 공간적인 위치에서 추가적인 정보를 담고 있는 차원.
Visual feature에서 C RGB 채널의 3보다 큰 경우가 대부분 임. - Batch size
동시에 여러개의 이미지를 처리할 때, 동시에 처리한 이미지 개수를 지칭.
- Channel
- Fully Connected Layer의 B x C
Fully Connected Layer의 특징.
C x W x H 에 해당하는 tensor가 C 크기의 tensor로 바뀜. - Fully Connected Layer의 B x # of class
Classification이 예측해야하는 Class 개수에 따라서 정해지는 값.
- B x # of class에 있는 4가지 값들의 의미.
각 클래스에 대한 Score를 표현하고 있음.
- B x # of class에 있는 4가지 값들의 의미.
- Fully Connected Layer (FC Layer)
한 layer가 다음 layer와 완전히 연결되어 있는 layer로, 이미지 분류 모델에서 Decoder 역할로 사용됨. - Softmax
FC Layer의 출력이 주어진 후 통과. 실수 값이었던 Score가 [0,1] 로 변경. 이 값들의 합은 1이 되도록 설정. 이때에 가장 높은 값을 가지는 클래스를 모델이 예측한 종류라고 이해할 수 있음.
입력 받은 값을 모두 [0,1] 사이로 정규화시켜주는 함수. 이를 통해 Decoder의 출력물을 각 클래스에 해당할 확률로 나타낼 수 있음.
- Backbone 옆 ( B x C x W x H) 의 의미
- Detection

출처 : Upstage Decoder의 역할, 9page
Detection Decoder는 특정 클래스에 해당하는 물체에 위치를 박스로 표현해주고 어떤 클래스 인지도 예측해줌. 실제 출력을 보면 박스의 위치를 특정하기위해 필요한 4개의 좌표값 $X_{0}&, $Y_{0}&, $X_{1}&, $Y_{1}&이 있음. 추가로 강아지, 고양이에 각각 대응되는 확률 값이 출력됨. - Segmentation
강아지 혹은 고양이에 해당하는 pixel들을 각각 출력해줌.
해당 Decoder는 이미지 각 pixel마다 고양이인지, 강아지인지에 대해서 구분하여 서로 다른 값을 모든 pixel마다 부여하여 출력함.
출처 : Upstage Decoder의 역할, 10page - Task에 따른 Decoder 결과
Task에 따른 결과가 천차만별이다. = 해당 task에 사용된 decoder 구조나 출력 상태 또한 천차만별임을 의미.
CV에서 Backbone은 이미지에서 유의미한 feature를 추출하는 역할을 하기 때문에 실제 풀고자하는 task가 달라도 같은 구조를 가진 Backbone 혹은 완전히 동일한 Backbone은 재사용이 가능함.
하지만 decoder의 경우 task에 따른 최종 결과의 형태가 상이하다면 이에 맞춰서 decoder 구조 또한 변경 되어야함.
즉, CV 에서 Score와 Decoder는 서로 같이 바뀌어야하는 관계에 있음.
정리
Backbone은 task가 바뀌어도 재사용이 가능하다.
Decoder의 경우 task가 바뀌면 구조 변경을 해야한다.