Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- clip
- 딥러닝 엔트로피
- blip-2
- referring expression segmentation
- object detection
- 딥러닝 목적함수
- grefcoco
- res
- Object detection article
- 엔트로피란
- 원격 학습 안끊기게
- gsoc
- 에지 검출
- clip adapter
- 이미지 필터링
- gsoc 2025
- res paper
- gsoc 후기
- 논문 리뷰
- reparameterization
- google summer of code
- gres
- grefcoco dataset
- 논문 요약
- 1차 미분 마스크
- vlm
- mobilenetv1
- 기계학습
- Segmentation
- 객체 검출
Archives
- Today
- Total
My Vision, Computer Vision
[논문 요약/리뷰] Golden Cudgel Network for Real-Time Semantic Segmentation 본문
Paper
[논문 요약/리뷰] Golden Cudgel Network for Real-Time Semantic Segmentation
gyuilLim 2025. 11. 18. 20:46Golden Cudgel Network for Real-Time Semantic Segmentation
Recent real-time semantic segmentation models, whether single-branch or multi-branch, achieve good performance and speed. However, their speed is limited by multi-path blocks, and some depend on high-performance teacher models for training. To overcome the
arxiv.org
초록
- 기존 Real-time 시멘틱 세그멘테이션 모델은 Multi-path 블럭에 의해 속도가 제한되거나고성능 티쳐 모델과에 의존한다는 한계가 존재함

- 이런 이슈들을 해결하기 위해 Re-parameterization 기법을 사용하여 Multi-path 블럭을 추론 단계에서 하나의 컨볼루션 블럭으로 만드는 Golden Cudgel Network(GCNet)을 제안
- 이 디자인은 모델이 학습할 때 티쳐 모델로써 작용할 수 있게 함

- 위 그래프는 Cityscapes 데이터셋에 대한 벤치마크를 보여줌
GCNet

- 위 그림은 GCNet 아키텍쳐를 Training과 Inference 단계를 나누어서 보여줌
Training
- GCNet은 총 6개의 스테이지로 구성됨
- Stage 3까지는 1개의 GCBlock, Stage 4부터 2개의 GCBlock이 사용되는데, 초반 스테이지에서는 얕은 특징맵을 추출하고 깊어질수록 더욱 디테일한 정보를 추출하기 위함
Re-parameterization
1. Conv-Bn to Conv
- Convolution → Batch Norm을 하나의 Convolution으로 융합하는 방법.
$$
W' = \frac{\gamma}{\sqrt{\sigma + \varepsilon}}W, B' = \frac{(B-\mu)\gamma}{\sqrt{\sigma + \varepsilon}} + \beta
$$
- $\mu, \sigma, \gamma,\beta$는 Batch Norm의 학습 파라미터들이며 각각 평균, 분산, 스케일링 팩터, 편향(bias)임
- $W, B$는 커널의 가중치와 편향인데, 위의 수식으로 커널과 Batch Norm의 학습 변수를 결합할 수 있음
- 이 때 $\varepsilon$은 0으로 나눠지는 것을 피하기 위해 더해주는 상수값
2. Conv 3*3_1*1 → Conv 3*3
- 3*3 → 1*1 컨볼루션을 하나의 3*3 컨볼루션으로 융합하는 방법.


- *는 컨볼루션 연산을 의미하는데, 이 때 im2col 연산자 $I(\cdot)$을 도입하여 행렬곱 연산 $\cdot$ 로 치환
- 결과적으로 3*3 → 1*1 순서로 계산되는 두 개의 컨볼루션을 하나의 3*3 컨볼루션으로 융합할 수 있음
3. Multipath to Single Convolution

- 학습 단계에서의 GCBlock을 보면 여러 Path로 나눠져있는데, 이를 하나의 컨볼루션으로 융합하는 방법

- 이 과정을 거치게 되면 위 그림처럼 여러 Path로 이루어진 33 → 11 컨볼루션 연산을 하나의 3*3 컨볼루션으로 합칠 수 있게됨
728x90