|
Download prereg.md from bunyamineymen/rag-gate-stats-code: direct link, hf CLI and curl.
- Browser
- Download file 6.37 kB
-
https://huggingface.co/bunyamineymen/rag-gate-stats-code/resolve/main/prereg.md
- Command line
-
hf download hf://bunyamineymen/rag-gate-stats-code/prereg.md
-
curl -L -o prereg.md https://huggingface.co/bunyamineymen/rag-gate-stats-code/resolve/main/prereg.md
6.37 kB
| # Ön-kayıt — Proje 01: Regression gate istatistiği | |
| Bu dosya ilk tam koşudan önce yazıldı (2026-10-17). Her koşu, dosyanın SHA-256 özetini `results/env.json` içine yazar. Koşudan sonra bu dosyada yapılan her değişiklik makalede "ön-kayıttan sapma" olarak raporlanır. | |
| ## 1. Sabitler | |
| | Parametre | Değer | | |
| |---|---| | |
| | Ana seed | `20261017` | | |
| | Veri | BEIR NFCorpus, FiQA-2018, SCIDOCS; `test` qrels | | |
| | Popülasyon | Test qrels'te `score > 0` olan en az bir belgesi bulunan sorgular | | |
| | Belge metni | `title + " " + text` | | |
| | Dense modeller | `BAAI/bge-small-en-v1.5` (sorgu öneki: model kartındaki retrieval talimatı), `sentence-transformers/all-MiniLM-L6-v2`, `intfloat/e5-small-v2` (`query: ` / `passage: `); `max_seq_length = 256`; L2-normalize, iç çarpım | | |
| | BM25 | `bm25s`, İngilizce stopword listesi, stemmer yok, varsayılan k1/b | | |
| | Exact sistemler | `bm25`, `bge`, `minilm`, `e5`; FAISS `IndexFlatIP`; top-100 | | |
| | HNSW sistemleri | `hnsw_ef{16,32,64,128}_s{0..9}`: bge-small vektörleri, FAISS `IndexHNSWFlat`, M=16, efConstruction=200, tek iş parçacığıyla inşa, ekleme sırası seed'e göre permütasyon; top-10 (FAISS `ef = max(efSearch, k)` kullandığı için k=10) | | |
| | Türetilmiş sistemler | `del05`, `del10`: `bge` top-100'den korpusun seed'li %5 / %10'u çıkarılır, kalan ilk 10 kullanılır. `ctl01`, `ctl02`, `ctl03`, `ctl05`: `bge`'den seed'li sırayla seçilen ve Recall@5 > 0 olan sorgularda ilgili belgeler top-10 dışına itilir (o sorgunun metrikleri 0 olur); popülasyon ΔRecall@5 hedefe (−0.01 / −0.02 / −0.03 / −0.05) ulaşınca durulur | | |
| | Metrikler | Recall@5 (birincil), nDCG@10 (ikincil), Recall@10 ve MRR@10 (rapor) | | |
| | Golden set boyutu | n ∈ {25, 50, 100, 200, 300}, yalnız n ≤ N/2 | | |
| | Alt örnek | R = 2000, iadesiz; aynı alt örnekler bütün senaryo ve gate'lerde kullanılır | | |
| | Bootstrap | B = 2000, percentile yöntemi; tek yönlü α = 0.05 | | |
| | Non-inferiority marjı | m ∈ {0.01, 0.02, 0.03} | | |
| | Eşiğe uzaklık | d ∈ {−0.05, −0.04, …, +0.05}; τ = m_gerçek − d | | |
| | Headroom (G1, senaryo çiftleri) | h ∈ {0.02, 0.05}; τ = m_gerçek(A) − h | | |
| | Gerçek tanımları | (a) sonlu popülasyon: tüm N sorgu. (b) yarı bölme: seed'li permütasyonla iki yarı; alt örnek A yarısından, gerçek B yarısında ölçülür | | |
| | Latency | Yalnız FiQA; 2 iş parçacığı (HF CPU Basic profili); sistemler `bm25`, `bge`, `minilm`, `e5`, `hnsw_ef16_s0`, `hnsw_ef128_s0`; her koşu öncesi 20 sorgu ısınma; 10 koşu; her koşuda sorgu sırası seed'li karıştırılır | | |
| ## 2. Gate tanımları | |
| - **G1 mutlak eşik:** PASS ⇔ m̂_B ≥ τ. | |
| - **G2 naif delta:** PASS ⇔ m̂_B − m̂_A ≥ −m. | |
| - **G3 paired non-inferiority:** dᵢ = metrik_B,ᵢ − metrik_A,ᵢ; PASS ⇔ dᵢ ortalamasının tek yönlü %95 percentile bootstrap alt sınırı ≥ −m. | |
| - **G3u unpaired:** A ve B bağımsız bootstrap ağırlıklarıyla yeniden örneklenir; ortalama farkının alt sınırı ≥ −m ise PASS. | |
| - **G3′ sign-flip:** H0: ortalama(d) ≤ −m. d + m üzerinde 2000 işaret çevirmesi; p < 0.05 ise PASS. | |
| - **GL latency:** PASS ⇔ P95'in tek yönlü %95 quantile bootstrap üst sınırı ≤ SLA. | |
| Bir senaryo çifti için "kabul edilebilir" gerçeği: Δ_gerçek ≥ −m. Yanlış FAIL = kabul edilebilir iken FAIL; yanlış PASS (kaçırma) = kabul edilemez iken PASS. | |
| ## 3. Hipotezler ve karar kuralları | |
| Birincil analiz: Recall@5, gerçek tanımı (a). Gerçek tanımı (b) ve nDCG@10 aynı kurallarla ikincil olarak raporlanır. | |
| | # | Hipotez | Destek kuralı | | |
| |---|---|---| | |
| | H1 | Küçük golden sette, gerçek değer eşiğe yakınken G1 sık yanılır. | n = 100 ve \|d\| = 0.02 (iki işaret) için `bm25`, `bge`, `minilm`, `e5` havuzlanmış G1 hata oranının Wilson %95 alt sınırı ≥ 0.15; en az 2/3 veri setinde. | | |
| | H2 | Baseline eşiğin rahatça üstündeyken G1 gerçek regresyonu kaçırır (headroom maskeleme). | Senaryo `bge → ctl03`, h = 0.05, n = 100: G1 PASS oranı ≥ 0.50 **ve** alt örnek başına (G1 PASS − G3 PASS, m = 0.02) farkının ortalamasının %95 normal CI alt sınırı > 0; en az 2/3 veri setinde. | | |
| | H3 | Aynı α'da eşleştirme, kabul edilebilir değişikliklerde yanlış FAIL'i azaltır. | No-op ailesi (`hnsw_ef16_s0 → s1..s9` ve `hnsw_ef128_s0 → s1..s9`, havuzlanmış), m = 0.02, n ∈ {50, 100}: alt örnek başına (G3u FAIL − G3 FAIL) farkının ortalamasının %95 CI alt sınırı > 0; her iki n için, en az 2/3 veri setinde. | | |
| | H4 | HNSW ekleme sırası exact aramada olmayan bir metrik oynaması yaratır ve bu oynama ef_search arttıkça azalır. | (i) ef = 16'da seed'ler arası ikili \|ΔRecall@10\| dağılımının 95. persentili > 0, bütün veri setlerinde; (ii) bu persentil ef ∈ {16, 32, 64, 128} boyunca artmaz (monoton azalan veya sabit), en az 2/3 veri setinde. | | |
| | H5 | P95 tahmini P50'den belirgin şekilde daha belirsizdir. | 6 sistemin en az 4'ünde: (i) koşu içi göreli CI genişliği oranı (P95 / P50) medyanı ≥ 2; (ii) koşular arası CV(P95) > CV(P50). | | |
| Raporlanan ama hipotez olmayan analizler: G2'nin yanlış PASS oranı; G3′ ile G3 uyumu; analitik MDE ile simülasyon gücü arasındaki sapma; GL ve nokta-tahminli latency gate'inin yanlış FAIL oranları; gerçek tanımı (b) sonuçları. | |
| ## 4. Spec v0.1'den sapmalar (koşudan önce) | |
| 1. **H3 yeniden tanımlandı.** G2 hata oranını kontrol etmediği için "aynı α'da G3 vs G2" karşılaştırması tanımsız. H3 artık eşleştirmenin etkisini (G3 vs G3u) ölçüyor; G2 betimsel raporlanıyor. | |
| 2. **HNSW için hnswlib yerine FAISS `IndexHNSWFlat`.** hnswlib'in Windows için hazır wheel'i yok; FAISS zaten bağımlılık. "Seed" = ekleme sırası permütasyonu; inşa tek iş parçacığıyla yapılır. | |
| 3. **Python 3.12** (uv ile kurulu; 3.11 yerine). | |
| 4. **Karar kayıtları özet olarak saklanır:** (k PASS, R) ve seed. Alt örnek indeksleri seed'den yeniden üretilebilir; satır satır karar tablosu yayımlanmaz. | |
| 5. **Latency yalnız FiQA'da** ölçülür (en büyük korpus; süre bütçesi). | |
| 6. **`max_seq_length = 256`** bütün dense modellerde (CPU süresi). Model kalitesi bu projenin iddiası değil. | |
| 7. **HNSW top-10** (FAISS ef = max(efSearch, k); top-100 istenirse ef_search etkisiz kalır). | |