뇌의 뉴런처럼 숫자 값 대신 스파이크가 언제 터지는지로 정보를 주고받는 신경망으로, 의미 있는 입력이 들어올 때만 계산하고 나머지 시간에는 쉰다. 이벤트 카메라 영상, 센서 시계열처럼 끊임없이 들어오는 데이터를 적은 전력으로 처리해야 하는 엣지 기기에서 쓴다.
| 항목 | 일반 신경망(ANN) | 스파이킹 신경망(SNN) |
|---|---|---|
| 신호 형태 | 연속된 숫자 값 | 켜짐/꺼짐 스파이크 |
| 시간 개념 | 거의 없음 | 스파이크 타이밍이 정보 |
| 계산 방식 | 매번 모든 뉴런 계산 | 입력이 있을 때만 계산 |
| 잘 맞는 하드웨어 | GPU | 뉴로모픽 칩 |
가장 많이 쓰는 뉴런 모델은 '새는 적분-발화(LIF)' 방식이다. 들어오는 스파이크가 뉴런 안의 전위를 올리거나 내리고, 입력이 없으면 이 값은 서서히 새어 나간다. 값이 문턱을 넘으면 뉴런이 스파이크를 쏘고 다시 낮은 값으로 돌아간다. 그래서 같은 입력이라도 언제 들어왔는지에 따라 결과가 달라진다.
스파이크는 켜짐/꺼짐이라 일반 역전파를 그대로 쓰기 어렵다. 그래서 상황에 맞춰 학습 방법을 고른다.
| 방법 | 어떻게 | 이럴 때 |
|---|---|---|
| ANN→SNN 변환 | 학습된 CNN을 스파이킹 방식으로 바꾼다 | 이미 잘 되는 모델이 있을 때 |
| 시공간 역전파 | 시간 축까지 펼쳐 직접 학습한다 | 정확도를 끌어올려야 할 때 |
| STDP | 스파이크 순서로 연결 강도를 조정한다 | 칩 위에서 바로 학습할 때 |
지금 쓰는 대부분의 하드웨어는 벡터에 가중치를 곱하는 일반 신경망용으로 설계돼, SNN을 돌려도 전력 이점이 크게 줄어든다. 저전력 효과를 보려면 인텔 로이히나 IBM 트루노스 같은 뉴로모픽 칩에 올려야 한다. 움직임이 있을 때만 신호를 내는 이벤트 카메라로 제스처를 인식하거나, 근전도·뇌파 같은 생체 신호를 감지하거나, 배터리로 도는 기기에서 센서 데이터를 바로 판단할 때 효과가 크다.
학습이 까다로워서 같은 작업이라면 일반 신경망보다 정확도를 맞추기 어려운 경우가 많고, 널리 쓰이는 단계에는 이르지 못했다. 데이터가 정지 이미지나 텍스트라면 일반 신경망이 낫고, 시간에 따라 흐르는 신호를 아주 적은 전력으로 처리해야 할 때 SNN을 검토하면 된다.
가장 흔한 쓰임은 이벤트 카메라나 생체 센서 신호를 기기 안에서 바로 처리하는 것이다. 아직 연구 단계라, 기존 모델을 SNN으로 바꿔 뉴로모픽 칩에서 전력과 정확도를 비교해 보는 실험도 많다.
| 어디서 | 어떻게 쓰나 |
|---|---|
| 이벤트 카메라 | 움직임이 생길 때만 들어오는 신호로 제스처를 인식 |
| 생체 신호 기기 | 근전도·뇌파를 계속 받아 특정 패턴이 나올 때만 반응 |
| 배터리 센서 기기 | 센서 데이터를 서버로 보내지 않고 칩 위에서 바로 판단 |
| 뉴로모픽 연구 | 학습된 CNN을 SNN으로 변환해 전용 칩에서 전력·정확도를 비교 |