Benchmark design ek systematic process hai jisme datasets, tasks, aur evaluation protocols create kiye jaate hain jo model capabilities ko reliably measure kar sakein. Evaluation rigor ensure karta hai ki performance claims reproducible hain, statistically valid hain, aur data leakage ya test sets pe overfitting ke artifacts nahi hain.
Performance P ek random variable hai jo depend karta hai:
Random seed s pe (initialization, data order, dropout)
Train/test split D pe (agar multiple splits exist karti hain)
Hyperparameters θ pe (aksar validation set ke zariye select kiye jaate hain)
Yeh kyun matter karta hai: Ek single number ek distribution se liya gaya point estimate hai. Uncertainty quantification ke bina, aap signal aur noise mein fark nahi kar sakte.
Different seeds ke saath n independent runs ke liye:
P1,P2,…,Pn∼Performance Distribution
Sample mean: Pˉ=n1∑i=1nPi
Sample standard deviation: sP=n−11∑i=1n(Pi−Pˉ)2
Best run hi kyun report nahi karte? Kyunki woh selection bias hai—aap distribution ki right tail se cherry-picking kar rahe ho. Yeh model ki true capability ko overestimate karta hai.
Claim: "Model A, Model B se better perform karta hai"
Null hypothesis H0: μA−μB=0 (true means mein koi difference nahi)
Independent samples ke liye test statistic:
t=nAsA2+nBsB2PˉA−PˉB
Yeh form kyun? Numerator effect size measure karta hai. Denominator noise measure karta hai (difference ka standard error). Bada ∣t∣ matlab difference H0 ke under unlikely hai.
Welch's approximation kyun? Kyunki hum equal variances assume nahi karte—Model A initialization ke liye Model B se zyada sensitive ho sakta hai.
p-value: H0 ke true hone par ∣t∣ itना bada observe karne ki probability.
Agar p<0.05, toh H0 reject karo aur conclude karo ki Model A, Model B se significantly differ karta hai.
Critical nuance: Statistical significance ≠ practical significance. 0.1% improvement statistically significant ho sakta hai enough runs ke saath, lekin applications ke liye meaningless ho sakta hai.
Standard error of the mean:
SEM=ns
jahan s sample standard deviation hai, n number of runs hai.
Kyun matter karta hai: Dikhata hai ki aapne mean ko kitni precisely estimate kiya hai. 1/n ke saath scale karta hai—uncertainty aadha karne ke liye aapko 4× zyada runs chahiye.
Bonferroni correction for multiple comparisons:
Agar m hypotheses test kar rahe ho, toh α ki jagah significance level α/m use karo.
Kyun: 20 models ko pairwise test karne se 190 comparisons milti hain. α=0.05 ke saath, aap expect karte ho 190×0.05≈10 false positives chance se! Bonferroni family-wise error rate control karta hai.
Socho tum ek teacher ho jo apni class ke liye math test bana rahe ho.
Bura test: Tum students ko exactly wohi problems dete ho jo class mein practice kiye the. Sabko 100% milta hai! Lekin kya unhone actually math seekhi, ya sirf woh specific problems memorize kar li? Tum bata nahi sakte.
Achha test: Tum unhe naye problems dete ho jo same concepts use karte hain. Ab tum dekh sakte ho ki kaun actually math samjhta hai aur kaun sirf memorize kiya.
Benchmarks AI models ke liye tests hain. Jab researchers kehte hain "mera model is test pe 95% laya", toh humein poochna chahiye:
Kya yeh achha test tha? (Kya usne real understanding measure ki ya sirf memorization?)
Kya unhone ek baar run kiya ya kai baar? (Agar aap multiple-choice test 10 baar lete ho aur guess karte ho, toh shayad ek baar luck se ace ho jaaye—iska matlab nahi ki tum material jaante ho!)
Kya model ne test se hi "padhai" ki? (Yeh cheating hai!)
Tricky part: Jaise-jaise AI smarter hoti jaati hai, purane tests bahut easy ho jaate hain. Jaise college students ko elementary school math se test karna—unhe 100% milega, lekin unki real abilities ke baare mein kuch pata nahi chalta.
Isliye benchmark designers ko baar-baar harder, fairer tests invent karne padte hain. Woh teachers jaisi hain, lekin robots ke liye!
6.5.01-Emerging-architectures - Naye architectures ko naye benchmarks chahiye; purane benchmarks unki capabilities stress nahi kar sakte
6.5.02-Interpretability-and-AI-safety - Evaluation rigor ek safety issue hai: humein jaanna chahiye ki models actually kya karte hain, na ki woh kya karte dikhte hain
2.4.02-Regularization-techniques - Benchmarks pe overfitting training data pe overfitting jaisi hai—dono ko regularization chahiye (zyada test sets, adversarial examples)
4.1.03-Evaluation-metrics - Metrics task objectives ke saath align hone chahiye warna tum galat cheez measure karte ho
#flashcards/ai-ml
Benchmark evaluation mein data leakage kya hai? :: Jab test set ki information model development ko influence kare (e.g., test data pe tune kiye gaye hyperparameters, ya test examples training data mein appear ho jaayein). Isse overestimated performance hoti hai jo generalize nahi hoti.
Best run ki jagah mean ± SEM kyun report karni chahiye?
Sirf best run report karna selection bias introduce karta hai—aap ek distribution ke maximum se sample kar rahe ho, mean se nahi. Yeh true model capability overestimate karta hai. Mean ± SEM dono central tendency aur uncertainty quantify karta hai.
Benchmark design mein negative control kya hai?
Test ka ek aisa version jisme model ko fail hona chahiye agar woh truly task solve kar raha hai (e.g., shuffled answer choices, adversarial distractors). Agar model phir bhi succeed karta hai, toh woh spurious correlations exploit kar raha hai, intended reasoning nahi kar raha.
Task contamination define karo aur isse kaise rokein :: Task contamination tab hoti hai jab test examples training data mein appear hote hain, reasoning seekhne ki jagah memorization allow karte hain. Rokne ke liye: (1) fuzzy deduplication, (2) date-based splits (purane data pe train, naye pe test), (3) test data ka programmatic generation jo training ke dauran exist hi nahi karta tha.
Bonferroni correction kya hai aur ise kab zaroorat hai?
m hypotheses test karte waqt, α ki jagah significance level α/m use karo. Multiple comparisons ke liye zaroori hai—correction ke bina, 20 models ko pairwise (190 comparisons) α=0.05 ke saath test karna ~10 false positives chance se deta hai.
Model performance ke liye 95% confidence interval kaise calculate karte hain?
n ≥ 30 runs ke liye: CI = mean ± 1.96·(std/√n). Chhote n ke liye: CI = mean ± t₀.₉₇₅,ₙ₋₁·(std/√n) Student's t-distribution use karke. Yeh true mean ke baare mein epistemic uncertainty quantify karta hai.
Test data ko randomly split karne ki jagah generation parameters se kyun split karte hain?
Random splits information leak kar sakti hain—test examples train examples se trivially similar ho sakte hain. Parameters se split karna (e.g., 2 objects pe train, 5 pe test) slightly out-of-distribution cases mein genuine generalization test karta hai, memorization nahi.