ODAI

[Review]Spiking YOLO

Donghun Kang 2025. 3. 27. 22:18

0. Abstract

- SNN을 이용한 Object Detection을 수행
- 이를 위해 2가지 새로운 기법을 적용
1. Channel-wise-normalization
2. signed neuron with imbalanced threshold
- 결과적으로 최초의 SNN 기반 Object Detection model인 Spiking-YOLO를 제안한다.
- PASCAL VOC와 MS COCO 데이터 셋에서 Tiny YOLO와 최대 98%에 달하는 유사한 성능을 보임.
- Neuromorphic chip에서 Tiny YOLO 대비 약 280배 적은 에너지 소비

 

최초의 SNN 기반 Object Detection model인 Spiking-YOLO를 제안
1. Channel-wise-normalization
2. signed neuron with imbalanced threshold

 


 

1. Introduction

- SNN은 실수 값(연속적) 대신 일련의 스파이크(이산적 신호)들의 정확한 시간 정보를 활용해 정보를 전달
- 스파이킹 뉴런은 입력 스파이크가 들어올 때 막전위(mem­brane potential)를 누적하고, 이 값이 일정 임계치(threshold)에 도달하면 스파이크를 발생(fire)
=> 이런 특성 덕분에 SNN은 이벤트 기반(event-driven) 연산이 가능하며, 매우 전력 효율적인 구조를 지닌다.
  • DNN-to-SNN Conversion
- DNN에서 학습된 가중치(weight)와 편향(bias)을 SNN에 가져와서 사용하는 것
- VGG, ResNet과 같은 Deep SNN에서도 DNN과 유사한 성능을 낼 수 있다.
  • Object Detection
- 여러 객체가 겹쳐 있는 이미지를 인식하고, 각 객체에 대한 Bounding Box 좌표를 계산 
  • Object Detection을 SNN에 적용시 문제점

1. 기존 정규화(Normalization)방식의 비효율성

2. SNN 내에서 Leaky-ReLU를 효과적으로 구현할 수 있는 방법의 부재

  • Solution

1. 채널 단위 정규화(channel-wise normalization)

2. 불균형 임계값을 사용하는 부호화 뉴런(signed neuron with imbalanced threshold)

 

Object Detection을 SNN에 적용

 


 

2. Related work

  • DNN-to-SNN Conversion
- integrate-and-fire neuron은 입력값 z를 막전위(membrane potential,Vmem)에 누적하고, 일정 임계값 Vth를 넘으면 spike를 발생

막전위 누적
입력 계산
발화 조건
  • Object Detection
- 객체 탐지는 이미지나 비디오 내의 하나 또는 여러 개의 객체를 찾아서 바운딩 박스를 그린 후, 해당 클래스까지 식별하는 작업
  • R-CNN 계열
Region proposal 기반으로 높은 정확도를 얻지만, 느린 추론 속도 때문에 실시간 처리에는 부적합함.
  • One-Stage 방식
- SSD (Single Shot MultiBox Detector)
- YOLO (You Only Look Once) → 빠른 속도와 적절한 정확도로 실시간 객체 탐지에 적합

 

=> 본 논문에서는 Tiny YOLO를 SNN 변환의 Base model로 사용

 

Tiny YOLO를 SNN Conversion의 Base model로 적용 

 


 

3. Methods

- DNN-to-SNN 변환을 통해 객체 탐지를 수행하면 심각한 성능 저하가 발생
- 그 이유는 아래와 같다.
1. 매우 낮은 발화율(firing rate): 뉴런들이 거의 스파이크를 발화하지 않음.
2. Leaky-ReLU의 비효율적인 구현: SNN에서 부정 값을 처리하지 못해 정보 손실이 큼.
- 이를 해결하기 위해 2가지 새로운 기법을 제안
  • Normalization (기존 정규화 방법)
- SNN에서는 입력의 크기에 따라 뉴런이 적절한 발화율(firing rate)을 갖고, 정보 손실 없이 스파이크를 생성하도록 하는 것이 중요
- 일정한 타임스텝 내에 정보가 충분히 전달되지 않으면, 과소 혹은 과다 활성화로 인해 정보 손실이 발생할 수 있다.
N: 주어진 Time step T 내에 발생한 스파이크 수
=> 이론적인 최대 발화율은 100%이며, 이는 매 time step마다 한번의 스파이크가 발생하는 경우
  • layer-wise Normalization
- DNN에서의 훈련 데이터를 통과시켜 해당 레이어의 최대 활성값을 계산한 후 이를 기준으로 가중치를 정규화하는 방법
=> Deep SNN에서는 성능 저하 문제가 발생
  • Tiny YOLO
- Tiny YOLO는 8개의 합성곱 층(conv layer)으로 구성
- 각 층 내의 채널마다 정규화된 최대 활성값의 편차가 매우 크다.
(일부 채널에서는 정규화 후 값이 1에 가까운 반면, 다른 채널에서는 0에 가까운 값이 나왔다.)
Channel imbalance
=> 채널 간 불균형은 발화율을 심각하게 떨어뜨리고, 작은 값들을 전달하기 위해 너무 많은 타임스텝이 필요
EX) 0.007이라는 값은 손실 없이 전달하기 위해 1,000 타임스텝 이상이 필요

 

  • Channel-wise Data-based Normalization (채널 단위 정규화)
- 기존의 레이어 단위가 아닌, 각 채널마다 최대값을 기준으로 가중치와 편향을 정규화
- 이 방식은 발화율을 높이고, 정밀한 정보를 더 빠르게 전달할 수 있게 한다. 이로써 under-activation 문제를 효과적으로 해결
=> 채널 단위 정규화는 전체 뉴런의 발화율을 대폭 향상
=> 특정 채널(예: Conv1의 채널 2)의 경우, 기존 layer-norm 대비 20배 이상 높은 발화율

Channel-Wise Normalization

 

Algorithm

 


Q) 왜 정규화가 필요한가?

 

Q) Layer-wise Normalization의 한계는?

단일 정규화 계수로 전체 레이어를 스케일링하기 때문

 

Q) Channel-wise Normalization의 장점은?

 

EX)

 


 

  • SNN에서 leaky-ReLU 한계
입력이 음수일 경우, 작은 음수 출력을 유지

- 대부분의 기존 DNN-to-SNN 변환 방법은 leaky-ReLU의 음수 구간을 무시하고 ReLU만 구현
(SNN에서는 spike가 +1, -1의 이산신호만 존재하기 때문에 음수 출력을 그대로 반영하기 어렵다.)
- 그러나 Tiny YOLO에서는 음수 activation이 51% 이상을 차지

기존의 스파이킹 뉴런은 막전위 Vmem이 하나의 임계값 Vth을 넘었을 때만 스파이크를 발화(+1)
→ 이건 마치 ReLU처럼음수 입력은 무시 / 양수 입력만 반영

<leaky-ReLU 사용>
→ 음수 입력도 α배로 축소해서 반영하므로, 이를 똑같이 반영하려면 음수 방향의 발화(-1 spike)도 필요
  • Signed neuron with imbalanced threshold (IBT)
- 양수와 음수 영역에 서로 다른 임계값(Vth)을 적용
양수/음수영역 임계값
(음수 스파이크는 더 많은 막전위 누적이 필요하므로 스파이크가 덜 자주 발생)
뉴런의 발화 조건

 

Channel-wise Data-based Normalization (채널 단위 정규화) &
Signed neuron with imbalanced threshold (IBT) 적용

 


 

4. Evaluation

- Tiny YOLO 사용
- 데이터 셋은 PASCAL VOC, MS COCO를 사용
  • IBT 유무 / Output Decoding 방식(Vmem, spike count)

- IBT 없이는 객체 탐지가 거의 불가능하며, mAP는 6~7% 수준에 불과
→ 이는 IBT가 leaky-ReLU의 음수 영역 구현에 중요한 역할

- Vmem Decoding 방식이 정확도와 수렴 속도가 우

  • Time step

channel-norm은 훨씬 빠르게 수렴하며, 미세한 객체도 정확히 탐지 가능

  • Energy Efficient

→ 동일한 연산 기준으로 Spiking-YOLO는 Tiny YOLO 대비 2000배 이상 전력 효율적

 


 

5. Conclusion

- 본 논문에서는 Spiking-YOLO라는 SNN 기반 객체 탐지 모델을 처음으로 제안
- 객체 탐지와 같은 고차원 회귀 문제를 SNN으로 해결하는 과정에서 나타나는 주요 문제점을 분석하고, 이를 극복하기 위해 두 가지 새로운 기법을 제안
1. Channel-wise Normalization → 뉴런의 발화율을 조정
2. Signed Neuron with Imbalanced Threshold (IBT) → leaky-ReLU의 양·음수 출력을 모두 SNN에 정확히 반영할 수 있도록 설계
- 이러한 기법들을 바탕으로 구축한 Spiking-YOLO는 PASCAL VOC 및 MS COCO와 같은 데이터셋에서 Tiny YOLO와 유사한 성능(mAP 기준 최대 98%)을 달성
- 또한, 뉴로모픽 칩에서 실행했을 때는 Tiny YOLO보다 약 280배 적은 에너지를 소비하였고, 기존 SNN 변환 기법보다 2.3~4배 더 빠르게 수렴

 


 

  • 원문

Spiking YOLO.pdf
5.98MB