순수 C 신경망 라이브러리
NoTorch: Neural networks in pure C (2-file library, BitNet 1.58)
·2026.04.25 06:30
2파일 순수 C 신경망 라이브러리 NoTorch가 autograd와 BitNet을 지원한다.
notorch.h와 notorch.c 두 파일로 구성된 순수 C 신경망 학습·추론 라이브러리 NoTorch가 공개됐다. 전체 코드는 약 3300 LOC이며, Python과 PyTorch 없이도 동작하도록 설계됐다.
핵심 기능은 다음과 같다.
- 31개 연산에 대한 autograd 지원
- Adam / AdamW / Chuck 최적화기
- BitNet b1.58 ternary quantization의 forward 및 STE backward, BLAS sgemm fast path
- SwiGLU, GQA, RoPE, MHA, GEGLU, RMSNorm, LayerNorm
- BPE tokenizer, GGUF 로더(F32/F16/Q4_0/Q5_0/Q8_0/Q4_K/Q6_K)
- LR schedule, NaN guard, gradient clipping/accumulation, checkpointing
- LoRA 스타일 파라미터 freezing
- DPO / GRPO / knowledge distillation 예제
- Apple Accelerate, OpenBLAS, CUDA 백엔드
작성자는 nanoGPT를 NoTorch로 포팅해 Dracula 코퍼스로 재학습했다고 밝히며, 2019 Intel i5 MacBook, 8GB RAM에서 두 개의 transformer 학습을 동시에 돌려도 총 메모리 사용량이 약 222MB였다고 설명했다. CPU+BLAS 환경에서도 소규모~중간 규모 모델을 다루는 데 초점을 맞춘 구현이다.
GitHub 저장소와 관련 프로젝트 목록도 함께 공개됐다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.