피드로 돌아가기
Dev.toAI/ML
원문 읽기
Deterministic Initialization 통한 62.3% Sparsity 달성 및 모델 최적화
Stop Guessing Which Weights Your Neural Network Actually Learned: Deterministic Initialization That Tracks Every Change
AI 요약
Context
표준 초기화 방식인 kaiming_normal 및 he_normal 사용 시 가중치 초기값이 소멸되어 학습 후 변경 내역 추적이 불가능한 한계 존재. 이로 인해 Dead Neuron 식별이 어려우며 정밀한 Pruning 없이 모델 경량화를 진행할 경우 품질 저하 위험 발생.
Technical Solution
- 좌표 기반 주소 지정 방식(Addressability) 도입을 통한 가중치 초기값의 결정론적 복구 구조 설계
- SplitMix64 해시 함수와 Box-Muller Transform을 결합하여 상태 저장 없는(Stateless) Pure Function 기반 가중치 생성 로직 구현
- 가중치 좌표(layer_id, i, j)를 입력값으로 하여 동일한 초기값을 언제든 재현하는 Counter-Based PRNG 아키텍처 채택
- 학습 후 현재 가중치와 복구된 초기값의 차이(Delta)를 비교하여 실제 학습에 참여한 Active Weight를 정밀하게 식별
- 식별된 Sleeping Weight만을 선택적으로 제거하는 Targeted Pruning 워크플로우 구축
Impact
- 모델 내 가중치의 약 60%~70%가 학습에 기여하지 않는 Sleeping 상태임을 정량적으로 입증
- 정확도 손실 없이 62.3%의 Sparsity를 달성하여 모델 효율성 극대화
- 가중치 생성 당 약 10 CPU cycles의 낮은 연산 비용으로 실시간 초기값 복구 가능
Key Takeaway
상태 기반의 무작위성(Stateful Randomness)을 좌표 기반의 결정론적 함수(Deterministic Function)로 대체함으로써 블랙박스 형태의 신경망 내부 상태를 측정 가능한 데이터로 전환한 설계 사례
실천 포인트
- 모델 경량화 전 Deterministic Initialization을 적용하여 실제 학습 참여 가중치 비율 측정 - 단순 Magnitude 기반 Pruning 대신 초기값 대비 변화량(Delta) 기반의 Pruning 전략 검토 - Stateless PRNG 도입을 통한 가중치 저장 공간 절감 및 재현성 확보 방안 검토