스파이킹 컨볼루션 신경망의 효율적 지도학습과 다차원 Send‑on‑Delta 코딩

본 논문은 역전파를 통한 시간역전파(BPTT)와 서브게이트 그래디언트를 이용해 LIF 기반 스파이킹 신경망을 PyTorch에서 구현하고, 공간·시간 컨볼루션과 Denève식 수평 연결을 결합한 새로운 구조를 제안한다. 다차원 Send‑on‑Delta 코딩을 통해 입력 신호를 효율적으로 스파이크로 변환하고, Google Speech Commands 데이터셋에서 94%의 정확도와 평균 5 Hz 이하의 낮은 발화율을 달성하였다.

저자: Romain Zimmer, Thomas Pellegrini, Srisht Fateh Singh

스파이킹 컨볼루션 신경망의 효율적 지도학습과 다차원 Send‑on‑Delta 코딩
**1. 서론** 인공 신경망(ANN)은 연속적인 활성값을 사용하지만, 생물학적 뉴런은 이산적인 스파이크로 정보를 전달한다. 스파이킹 신경망(SNN)은 이러한 스파이크 기반 연산을 모델링함으로써 뇌의 정보 처리 메커니즘을 탐구하고, 에너지 효율적인 뉴로모픽 하드웨어 구현을 가능하게 한다. 그러나 스파이크의 비선형 발화와 이산 시간 특성 때문에 전통적인 역전파 학습이 어려웠다. 최근 서브게이트 그래디언트를 이용한 BPTT가 이를 해결했으며, 본 논문은 이를 바탕으로 컨볼루션 구조와 수평 연결을 결합한 새로운 학습 프레임워크를 제시한다. **2. 문헌 리뷰** 기존 SNN 연구는 재귀형 스파이킹 네트워크(RSNN), 액정 상태 머신(LSNN), 변환 기반(ANN→SNN) 방법, 그리고 STDP와 같은 비지도 학습에 초점을 맞추었다. 그러나 대부분이 레이트 코딩에 의존하거나, 한 번의 스파이크만 허용하는 제한적인 코딩 방식을 사용했다. 서브게이트 그래디언트는 이러한 한계를 넘어 연속적인 시간 코딩을 가능하게 하였으며, DECOLLE, Binarized Networks 등 다양한 변형이 제안되었다. **3. LIF 및 NLIF 뉴런 모델** - **LIF**: \(\tau_{mem}\frac{dU_i}{dt}=-(U_i-U_{rest})+RI_i\). 발화 시 전위가 임계값 \(B_i\) 를 초과하면 스파이크를 발생하고 전위가 리셋된다. - **NLIF**: 누수 항이 없는 형태로 \(\tau_{mem}\frac{dU_i}{dt}=RI_i\). 논문에서는 수학적 간결성을 위해 \(R=1, U_{rest}=0\) 으로 설정한다. 입력 전류는 입력 스파이크와 가중치 행렬 \(W\) 의 내적으로 정의되며, 시냅스 전류를 별도 미분 방정식으로 모델링할 수도 있다. **4. 이벤트 기반 샘플링과 Send‑on‑Delta** 시간 연속 신호를 스파이크 시퀀스로 변환하기 위해 SoD(Threshold‑based) 방식을 채택한다. 신호 \(x(t)\) 가 사전 정의된 변화량 \(\Delta\) 를 초과하면 샘플링 시점이 생성되고, 이를 두 개의 IF 뉴런(ON/OFF)과 상호 억제 연결을 통해 구현한다. 다차원 신호에 대해서는 각 뉴런이 선호 방향 \(w_i\) 를 갖고, 투영값이 \(\|w_i\|^2\) 를 초과하면 발화한다. 발화 시 모든 뉴런의 전위가 \(w_i\) 만큼 이동하도록 수평 연결을 \(-\langle w_j,w_i\rangle\) 로 설정하면, 신호 기준값이 즉시 업데이트된다. 이는 Bourdoukan 등(2012)의 최적 스파이크 기반 표현과 동일한 구조를 갖는다. **5. 딥 스파이킹 신경망 구조** - **5.1 LIF를 RNN 셀로**: LIF의 재귀식은 RNN 셀과 동일하므로 PyTorch의 `nn.Module` 로 구현 가능하다. - **5.2 서브게이트 그래디언트**: 발화 함수의 미분을 부드러운 시그모이드 형태로 근사한다. - **5.3 피드포워드 모델**: - *Fully‑connected spiking layer*: 전통적인 완전 연결 레이어에 LIF 셀 적용. - *Convolutional spiking layer*: 공간 컨볼루션(2‑D)과 시간 컨볼루션(1‑D) 커널을 결합해 입력 시퀀스를 처리한다. - *Readout layer*: 스파이크 집계(예: 평균 발화율) 후 전통적인 선형 레이어로 클래스 확률을 계산한다. - **5.4 재귀 모델**: 필요 시 레이어 간 피드백 연결을 추가해 장기 의존성을 학습한다. - **5.5 스파이크 패널티**: 손실에 \(\lambda\sum_t\sum_i s_i(t)\) 항을 더해 평균 발화율을 억제한다. **6. 실험** - **데이터셋**: Google Speech Commands (35개 명령어, 1 s 오디오). - **전처리**: 오디오를 40‑차원 멜‑스펙트로그램으로 변환 후 정규화. - **아키텍처**: 1) 입력 → 시간‑공간 컨볼루션 (kernel = (3,3,3)) → 배치 정규화 → MaxPool 2) 두 번째 컨볼루션 → 스파이킹 풀링 → 완전 연결 스파이킹 레이어 (256 뉴런) → 읽기 레이어 (35 클래스) - **학습**: Adam(learning‑rate = 1e‑3), 배치 = 64, 200 epoch, 크로스 엔트로피 + 스파이크 패널티(λ = 0.001). - **평가**: 테스트 정확도 94 %, 평균 발화율 4.8 Hz, 에너지 추정치가 비스파이킹 CNN 대비 약 2.5배 절감. **7. 논의** 본 접근법은 스파이킹 컨볼루션 레이어와 수평 연결을 결합해 동적 입력(음성)에서 높은 정확도와 낮은 에너지 소비를 동시에 달성했다. 다차원 SoD 코딩은 입력 차원 간 상관관계를 활용해 효율적인 신호 표현을 가능하게 하며, 수평 연결은 빠른 재설정 메커니즘을 제공한다. 그러나 수평 연결의 O(N²) 복잡도와 시간 지연 컨볼루션 파라미터 선택이 경험적이라는 점은 향후 연구 과제로 남는다. 또한, 현재 구현은 GPU 기반 PyTorch에 최적화돼 있어 실제 뉴로모픽 하드웨어에 이식하려면 추가적인 최적화가 필요하다. **8. 결론** 본 논문은 서브게이트 그래디언트를 활용한 BPTT와 컨볼루션 SNN, 그리고 Denève식 수평 연결을 통합한 새로운 학습 프레임워크를 제시한다. 다차원 Send‑on‑Delta 코딩을 통해 입력을 효율적으로 스파이크화하고, Google Speech Commands에서 94 % 정확도와 저전력 발화율을 달성함으로써 SNN이 실제 시계열 인식 과제에 적용 가능함을 입증하였다. 향후 연구는 하드웨어 친화적 구현, 대규모 네트워크에서의 효율적인 수평 연결 근사, 그리고 다양한 시계열 데이터셋에 대한 일반화 검증을 목표로 한다.

원본 논문

고화질 논문을 불러오는 중입니다...

댓글 및 학술 토론

Loading comments...

의견 남기기