SNN 시뮬레이터를 위한 메타모델 기반 프레임워크
= Metamodel-based framework for SNN simulators
- Type
- Thesis
- Abstract
- The research environment for spiking neural networks(SNNs) is fragmented across multiple mutually incompatible simulators-including snnTorch, SpikingJelly, and BindsNET-requiring researchers to re-implement the same model for each environment. This issue goes beyond mere inconvenience, directly affecting experimental reproducibility and research reliability while reducing overall efficiency. Furthermore, optimization tasks required to bridge the gap between high-performance GPU environments used in the research phase and actual deployment environments such as edge AI processors and neuromorphic chips-including LIF-to-IF neuron substitution, FP16 precision conversion, and timestep reduction-rely entirely on manual effort, making it difficult to guarantee consistency and prone to introducing subtle bugs. This paper proposes a hardware-aware automatic code generation framework that combines a simulator-independent JSON-based metamodel with the Jinja2 template engine to address these two problems. From a single JSON specification, executable Python code for snnTorch, SpikingJelly, and BindsNET is automatically generated; LIF-to-IF neuron substitution, FP16 conversion, timestep reduction, and surrogate function replacement are automatically applied at code generation time based on the power_mode and device type declarations. The code generation pipeline comprises three modules-validation (parser.py), optimization application(codegen.py), and simulator-specific rendering (Jinja2 templates)-and the clear separation of each module enhances extensibility and maintainability. However, this study is limited to fully connected (FC) layer structures and does not address extensions to convolutional layers. Code generation accuracy and optimization application were verified across six experimental configurations comprising three simulators and two power mode combinations; executability and structural fidelity were confirmed across all six configurations. For the SpikingJelly configuration, the low-power mode achieved a 75.0% reduction in inference time and a 73.8% reduction in memory usage relative to the standard mode; despite the LIF-to_IF substitution, the difference in spike firing rate was only 2.8%, confirming that the impact of low-power optimization on firing patterns is limited.|스파이킹 신경망(SNN) 연구 환경은 snnTorch, SpikingJelly, BindsNET 등 상호 호환되지 않는 여러 시뮬레이터로 분산되어 있어, 동일한 모델을 각 환경에 맞게 다시 구현해야 하는 문제가 있다. 이 문제는 단순한 불편함을 넘어 실험 재현성과 연구 신뢰성에 직접적인 영향을 미치며, 효율성이 떨어진다. 또한 연구 단계의 고성능 GPU 환경과 실제 배포 환경인 엣지 AI 프로세서 및 뉴로모픽 칩 사이의 간극을 메우기 위한 LIF-IF 뉴런 교체, FP16 정밀도 변환, 타임스텝 축소 등의 최적화 작업이 전적으로 수작업에 의존하여 일관성을 보장하기 어렵고 미묘한 버그를 유발하기 쉽다. 본 논문은 이 두 가지 문제를 해결하기 위해 시뮬레이터 독립적인 독립적인 JSON 기반 메타모델과 Jinja2 템플릿 엔진을 활용한 자동 코드 생성 프레임워크를 제안한다. 단일 JSON 명세로부터 snnTorch, SpikingJelly, BindsNET의 실행 가능한 Python 코드를 자동 생성하며, 전력 모드 설정에 따라 LIF와 IF 뉴런 교체, FP16 변환, 타임 스텝 축소 등의 하드웨어 인식 최적화를 코드 생성 시점에 자동 적용한다. 코드 생성 파이프라인은 유효성 검사(parser.py), 최적화 적용(codegen.py), 시뮬레이터별 렌더링(Jinja2 템플릿)의 세 모듈로 구성되며, 각 모듈의 명확한 분리를 통해 확장성과 유지보수성을 높였다. 다만 본 연구는 완전 연결(FC) 레이어 구조에 한정하며, 컨볼루션 레이어로의 확장은 다루지 않는다. 3개의 시뮬레이터와 2개의 전력 모드 조합으로 구성된 6가지 실험 구성에 대해 코드 생성 정확성과 최적화 적용을 검증하였으며, 6개 구성 모두에서 실행 가능성과 구조적 일치성이 확인되었다. SpikingJelly 구성 기준으로 저전력 모드는 표준 모드 대비 추론시간 75%, 메모리 사용량 73.8% 감소를 달성하였고, LIF-IF 교체에도 불구하고 스파이크 발화율 차이는 2.8%에 그쳐 저전력 최적화가 발화 패턴에 미치는 영향이 제한적임을 확인하였다.
- Author(s)
- 손유현
- Advisor
- 허준영
- Department
- 컴퓨터공학과
- Issued Date
- 2026
- Publisher
- 한성대학교 대학원
- Keyword
- 스파이킹 신경망; SNN; 메타모델; Jinja2; JSON; Spiking Neural Networks; Metamodel
- URI
- https://dspace.hansung.ac.kr/handle/2024.oak/10830
-
Appears in Collections:
- 컴퓨터공학과 > 2. Thesis
- Authorize & License
-
- Authorize공개

- Files in This Item:
-
Items in Repository are protected by copyright, with all rights reserved, unless otherwise indicated.