Skip to content

Latest commit

 

History

History
57 lines (43 loc) · 3.08 KB

File metadata and controls

57 lines (43 loc) · 3.08 KB

Tekrar-üretim

Tüm ölçümler tek bir NVIDIA A100 üzerinde, requirements.txt'teki sabitlenmiş sürümlerle yapılmıştır.

Ortam

pip install torch==2.7.1 --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt

Veri ve ağırlık manifestosu

Betikler aşağıdaki göreli yolları bekler (depoda ağırlık/veri dosyaları yer almaz; boyut nedeniyle ayrı sağlanır):

Yol İçerik Nasıl elde edilir
./data/eval_tr.txt Türkçe düz metin (Wikipedia paragrafları); perplexite + ko-eğitim metni Türkçe Wikipedia dökümünden paragraf ayıklama (satır başına bir paragraf)
./data/turkmorfbench.json TurkMorfBench morfolojik üretim değerlendirmesi Ayrı yayımlanır
./gdn_init/L{li}.pt Katman-başı eğitimsiz damıtılmış GDN başlangıçları 03_diagnostics.py üretir (kaydeder)
./gdn_weights/L{li}.pt Yayımlanan %20 GDN ağırlıkları (ko-eğitilmiş) 05_cotrain_mmlu_probe.py üretir; ayrıca HF'de gdn_weights.safetensors
./gdn_alt/L{li}.pt %22,5 (9 katman) tavan konfigürasyonu ko-eğitim, 9-katman set ile

Temel model ecloudtech/Erk-14B (Qwen3-14B üzerine kurulu) Hugging Face'ten yüklenir.

Deneyler (tek komut)

python scripts/02_linearization_sweep.py      # lineerleştirme degradasyon eğrisi (PPL)
python scripts/03_diagnostics.py              # mekanizma tanısı; gdn_init/ üretir
python scripts/04_placement.py                # yerleşim taraması (bitişik vs yayılmış)
python scripts/05_cotrain_mmlu_probe.py       # KL-damıtma ko-eğitim; gdn_cotrain/ üretir
python scripts/06_eval_mmlu_ci.py             # TurkishMMLU + paired bootstrap %95 GA
python scripts/07_eval_niah_prefill.py        # NIAH geri-çağırma + prefill verimliliği
python scripts/08_eval_morphbench.py          # TurkMorfBench
python scripts/09_kvcache_memory.py           # KV-cache belleği (GDN sabit-durum dahil)

Ham çıktılar

results/raw_predictions.json — TurkishMMLU'nun her sorusu için oracle ve hibrit doğruluk dizileri (900), ko-eğitim seçiminde kullanılan probe_idx (150) ve özetler. Held-out (150 seçim sorusu hariç, 750) güven aralığı bu dizilerden paired bootstrap ile yeniden üretilebilir:

import json, numpy as np
d = json.load(open("results/raw_predictions.json"))
o = np.array(d["oracle_dogruluk"]); h = np.array(d["hibrit_dogruluk"])
probe = set(d["probe_idx_secimde_kullanilan"])
held = np.array([i for i in range(len(o)) if i not in probe])
rng = np.random.default_rng(0)
diffs = [h[held[rng.integers(0,len(held),len(held))]].mean() - o[held[rng.integers(0,len(held),len(held))]].mean() for _ in range(5000)]
print(f"held-out fark {100*(h[held].mean()-o[held].mean()):+.2f}  GA95 [{100*np.percentile(diffs,2.5):.2f}, {100*np.percentile(diffs,97.5):.2f}]")
# -> held-out fark -0.67  GA95 [-2.93, 1.73]

Sürüm

transformers 5.13, flash-linear-attention 0.5.1, PyTorch 2.7.1 (cu118), tek A100. Model ağırlıkları: huggingface.co/ecloudtech/Erk-Linear.