AI System Semiconductor

3.2 Neuromorphic Hardware Learning Argorithms

-운- 2025. 1. 6. 18:10

Learning Algorithms

  • Transfer learning : DNN에 의해 학습하고 그 웨이트를 SNN(스파이킹 신경망)에 transfer함.(정확도가 높음)
  • Unsupervised learning : 정답을 모르는 상태에서 STDP 또는 SRDP 방식으로 시냅스 가중치를 업데이트함. (DNN과 같은 것은 정답을 알고 있는 상태이므로 supervised learning임, 생물학적인 learning을 그대로 차용하였음)
  • Spike based back propagation learning: 출력층에서 계산된 오차를 back propagation하여 가중치를 업데이트

  • SNN을 구현한 오픈소스 코드의 시뮬레이션 과정이다. 28X28픽셀로 구성된 MNIST숫자 이미지의 각 픽셀값에 따라 스파이크 신호가 입력층에 존재하는 각 뉴런에서 출력됨.
  • 이때 Poisson 인코딩 룰을 적용하게 되는데, 픽셀값이 클수록 스파이크 신호가 출력될 확률이 Poisson 분포를 따르며 증가함.
  • 시냅스를 통해 벡터-행렬 곱셈 연산을 수행하는데 해당 연산 결과를 은닉층에 존재하는 뉴런에서 받아서 LIF 동작에 따른 스파이크 신호룰 출력함.
  • 다시 시냅스를 통해 벡터-행렬 곱셈 연산을 수행하며 그 연산 결과를 출력층에 존재하는 뉴런에서 받아서 LIF 동작에 따른 스파이크 신호를 출력함.
  • 최종적으로 정해진 시간동안 가장 많은 스파이크가 출력된 뉴런에 해당하는 숫자가 인식 결과가 됨,
  • 학습과정에서, 출력층에서 계산된 오차를 역전파하여 가중치를 업데이트하는 spike-based back-propagation 방법이 적용됨.

위는 학습 결과이며 Epoch가 증가할수록 학습이 이루어지며 인식률이 증가함을 알 수 있음.

 

 

이는 heat_map.txt이고 실제 숫자와 분류된 숫자에 따른 데이터 개수가 저장됨. 대각선이 뚜렷할수록 인식이 더 잘 된 상황.