पाठ 6 / 29

शोर और Confidence Intervals

जानें pass rate सिर्फ़ संयोग से कितना हिल सकता है।

20 मामलों पर 80%, 80% नहीं है

छोटे test set पर मापा pass rate वास्तविक अनिश्चितता वाला अनुमान है। दस में आठ और सौ में अस्सी दोनों 80% हैं, पर पहला बहुत कम बताता है। Confidence interval आपके डेटा से संगत सच्ची दरों की सीमा दिखाता है। एक सरल तरीक़ा bootstrap है: test मामलों को replacement के साथ कई बार resample करें, हर बार pass rate निकालें, और बीच का 95% लें। व्यावहारिक परिणाम: 20 मामलों के साथ अंतराल 35 प्रतिशत-बिंदु फैल सकता है, इसलिए "5-बिंदु सुधार" कुछ नहीं कहता; 500 मामलों के साथ यह लगभग 7 बिंदु तक सिकुड़ता है। उन अंतरों के लिए पर्याप्त मामले जुटाएँ जिनकी आपको परवाह है, scores के बग़ल में अंतराल रिपोर्ट करें, और शोर से छोटे अंतर पर विजेता घोषित न करें। मॉडल आउटपुट की randomness और विचरण जोड़ती है, इसलिए महत्वपूर्ण तुलनाओं के लिए हर मामला कई बार चलाएँ।

वही 80% तीन आकारों पर, चलाकर

मैंने यह सादे Python 3 (सिर्फ़ standard library) से चलाया। निश्चित seed वाला bootstrap 16/20 के लिए लगभग 0.60 से 0.95, 80/100 के लिए 0.72 से 0.88 और 400/500 के लिए 0.77 से 0.83 का 95% अंतराल देता है। वही pass rate ज़्यादा मामलों के साथ कहीं अधिक निश्चित है।

import random

def bootstrap_ci(outcomes, n_boot=2000, seed=0):
    rng = random.Random(seed)
    n = len(outcomes)
    means = sorted(sum(rng.choice(outcomes) for _ in range(n)) / n for _ in range(n_boot))
    return means[int(0.025 * n_boot)], means[int(0.975 * n_boot)]

for n, passed in ((20, 16), (100, 80), (500, 400)):          # the same 80% pass rate at three test-set sizes
    outcomes = [1] * passed + [0] * (n - passed)
    lo, hi = bootstrap_ci(outcomes)
    print(f"{n:4d} cases, {passed / n:.0%} pass -> 95% interval {lo:.2f} to {hi:.2f}  (width {hi - lo:.2f})")

Output:

  20 cases, 80% pass -> 95% interval 0.60 to 0.95  (width 0.35)
 100 cases, 80% pass -> 95% interval 0.72 to 0.88  (width 0.16)
 500 cases, 80% pass -> 95% interval 0.77 to 0.83  (width 0.07)

Scores के बग़ल में अंतराल रिपोर्ट करें

"92% (88 से 95)" "92%" से बहुत अलग कहानी कहता है।

त्वरित जाँच: Test set बढ़ने पर confidence interval का क्या होता है?

  • वह ठीक वैसा ही रहता है
  • वह चौड़ा होता है
  • वह ग़ायब हो जाता है
  • वह सिकुड़ता है, इसलिए छोटे अंतर पहचाने जा सकते हैं
Answer

वह सिकुड़ता है, इसलिए छोटे अंतर पहचाने जा सकते हैं — ज़्यादा मामलों का अर्थ सच्ची दर के बारे में कम अनिश्चितता।