Skip to content

[FEATURE] neuron Phase 13 — HybridGraphLinear 의 Transformer FFN 통합 + RMSNorm #67

Description

@juhy0987

배경 (Phase 12 직후)

Phase 12 에서 HybridGraphLinear (outer group + inner channel dual routing) 가 paradigm 의 ultimate 표현으로 확립됨 (PR #66 머지). Phase 8-12 는 모두 MLP-LM 베이스라인 위에서 검증 — char n-gram 의 단순 모델에서 function preservation / scale-corrected init / dual routing 우위 확인.

다음 자연스러운 단계는 실제 Transformer 의 FFN 위치에 HybridGraphLinear 를 도입 하여, 본 paradigm 이 진짜 LM 아키텍처에서도 동작하는지 확인.

목표

  1. RMSNorm 도입 — 현대 Transformer (LLaMA, Mistral 등) 의 표준 norm. 기존 backbone 의 nn.LayerNorm 보다 numerical 안정성 ↑ 및 파라미터 ↓
  2. HybridGraphTransformerBlock — attention (표준 nn.Linear, 추후 Phase 14 에서 graph 화 검토) + FFN (HybridGraphLinear 2 layer) + RMSNorm
  3. HybridGraphTransformerLM — small Transformer LM (TinyShakespeare char-LM)
  4. function preservation 검증 — adj_outer=full + adj_inner=full + 동일 weight init → standard Transformer forward 동치 (atol=1e-5)
  5. 4 arch sweep — plain / hybrid_full_full / hybrid_identity_full / hybrid_full_around_one 비교 (Phase 12 와 동일 구조, MLP → Transformer 만 교체)

비목표 (Phase 14+ 로 이연)

  • attention 의 qkv/out 을 HybridGraphLinear 로 교체 — 별도 검증 필요. Phase 14 검토.
  • 대형 데이터셋 / 멀티 GPU — 본 단계는 paradigm 의 internal consistency 만 검증

작업 항목 (sub-issue 분할 없이 단일 PR — Phase 12 와 동일 규모)

  • src/graphlm/neuron/rms_norm.py 신규 — RMSNorm 클래스 + 단위 테스트
  • src/graphlm/neuron/hybrid_transformer.py 신규 — HybridGraphTransformerBlock + HybridGraphTransformerLM
  • function preservation 테스트 (standard nn.LayerNorm + nn.Linear 와 forward 동치)
  • src/graphlm/neuron/hybrid_transformer_demo.py 신규 — train helper (Phase 12 demo pattern 재사용)
  • notebooks/02-function-level/12-phase13-hybrid-transformer.ipynb 신규 — 4 arch sweep + 시각화
  • 0-init 거부 / magnitude rule 일관 적용 (memory: feedback_no_zero_init.md)

완료 조건

  • 122 → ~140+ tests, all green
  • coverage ≥ 70%
  • 노트북 sweep 정상 실행 (GPU 사용자 측 실행), 4 arch loss curve 비교 가능
  • Notion Phase 13 페이지 업데이트

관련

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions