Post-mortem segmentu Very Low: dlaczego skuteczność 46,8% nie była błędem kalibracji
TL;DR — Nasz najwęższy przedział ufności (prawdopodobieństwo wygranej od 50,0% do 55,0%, segment "Very Low") zamknął sezon ze skutecznością 46,83% (59W–67L, n=126) wobec skalibrowanej wartości oczekiwanej równej 52,48%. Ta luka rzędu 6,4 pp na pierwszy rzut oka wyglądała na załamanie kalibracji. Tak jednak nie było. Dokładny test dwumianowy, dekompozycja Brier według Murphy'ego, analiza dryfu zmiennych towarzyszących oraz bootstrap z 10 000 iteracji prowadzą do tego samego wniosku: deficyt jest statystycznie nieodróżnialny od szumu, skumulowany niemal w całości w 14-dniowym oknie przed trade deadline i wynika z błędu rozdzielczości (model nie ma sygnału do wykorzystania, a nie generuje błędny sygnał), a nie z błędu wiarygodności (błędnie skalibrowane prawdopodobieństwa). Odrzuciliśmy ponowną kalibrację metodą Platta oraz modyfikację cech. Wdrożyliśmy w zamian operacyjną zmianę reguł tierów.
Podsumowanie wykonawcze
Każdy model wdrożony na produkcji generuje w końcu wynik, który wygląda podejrzanie. Pytanie nigdy nie brzmi „czy to wygląda źle” — lecz czy ta anomalia przetrwa weryfikację hipotezą zerową. W tym wpisie przedstawiamy pełny audyt, jaki przeprowadziliśmy dla najsłabiej wypadającego przedziału ufności modelu XGBoost_TOP17_v1.4_Platt po pełnym sezonie typowań NBA na żywo, oraz wyjaśniamy, dlaczego — po dziewięciu etapach testów statystycznych — nie zmieniliśmy w samym modelu zupełnie nic.
Wersja skrócona: n=126 to zbyt mała próba, by skazać klasyfikator, a specyfika tego gorszego wyniku (dwutygodniowe skupisko, rozdzielczość Murphy'ego bliska zeru, brak korelacji z którąkolwiek z 17 cech wejściowych) wskazuje na wariancję próby i z natury niskosygnałowy obszar decyzyjny, a nie na uszkodzony pipeline.
Symptom
Nasza produkcyjna logika tierów grupuje każdą predykcję według parametru winner_probability w cztery przedziały: Very Low (50,0% do 55,0%), Low, Medium oraz High. Przedział Very Low stanowi z założenia krawędź wyjścia modelu sąsiadującą z rzutem monetą — obejmuje mecze, w których klasyfikator uważa, że ma pewną przewagę nad naiwnym podziałem 50/50, ale bardzo niewielką.
Na koniec sezonu aktywny model skalowany metodą Platta (XGBoost_TOP17_v1.4_Platt, 742 rozliczone mecze) wykazał w segmencie Very Low następujące rezultaty:
| Metryka | Wartość |
|---|---|
| Rozmiar próby (n) | 126 meczów (16,98% wolumenu aktywnego modelu) |
| Bilans | 59W – 67L |
| Obserwowana skuteczność | 46,83% |
| Średnie przewidywane prawdopodobieństwo (cel nominalny) | 52,48% |
| Obserwowana luka vs cel | −5,65 pp |
| Obserwowana luka vs punkt środkowy (52,5%) | −5,67 pp |
Przedział ufności z trafnością poniżej poziomu losowego to wynik, który wywołuje natychmiastowy odruch: dopasować ponownie parametry A i B Platta, sprawdzić pipeline cech pod kątem dryfu, a może przeprowadzić ponowny trening. Zanim jednak cokolwiek z tego ruszyliśmy, poddaliśmy ten wynik standardowej procedurze weryfikacji istotności statystycznej.
To, że dany przedział nie osiąga wartości docelowej, jest faktem. To, czy ten fakt stanowi dowód na istnienie błędu, jest osobnym pytaniem — i zarazem pytaniem, którego nikt nie zadaje przed otwarciem pull requesta.
Kalibracja a wariancja
Najpierw moc testu statystycznego
Przed weryfikacją istotności sprawdziliśmy, czy test miał w ogóle odpowiednią moc, aby wykryć rzeczywisty efekt przy tej wielkości próby. Przy n = 126 i alpha = 0,05 (test jednostronny), moc wykrycia realnego spadku z 52,5% do 46,8% wynosiła zaledwie 35,6% — co oznacza, że nawet gdyby spadek był rzeczywisty, przeoczylibyśmy go w około dwóch trzecich przypadków. Osiągnięcie standardowej mocy 80% dla luki tej wielkości wymagałoby n ≈ 479 rozliczonych meczów — prawie czterech pełnych sezonów wolumenu tieru Very Low przy obecnym tempie.
To nie dowodzi, że luka jest wyłącznie szumem. Oznacza to jednak, że odczyt z pojedynczego sezonu nigdy nie powinien być traktowany jako rozstrzygający w którąkolwiek stronę.
Dokładny test dwumianowy i test ilorazu wiarygodności
Przeprowadziliśmy dokładny dwustronny test dwumianowy porównujący obserwowany bilans (59W–67L) zarówno ze skalibrowanym celem modelu, jak i z teoretycznym poziomem losowym:
H₀: p = 0.5248 (cel skalibrowany) p = 0.2125
H₀: p = 0.5000 (poziom losowy) p = 0.5331
Żaden z nich nie osiąga poziomu alpha = 0,05. Wynik zweryfikowaliśmy testem ilorazu wiarygodności, porównując empiryczny estymator MLE (p̂ = 0,4683) ze skalibrowanym celem:
LLR = 2 · [ℓ(p̂) - ℓ(p₀)] = 1.6153, χ²(df=1), p = 0.2038
Ten sam werdykt: brak podstaw do odrzucenia H0. Dokładny 95% przedział ufności Cloppera-Pearsona dla obserwowanego bilansu wynosi [37,88%, 55,92%] — 18-punktowe pasmo, które w pełni obejmuje zarówno cel 52,48%, jak i poziom losowy 50,00%.
Zestawienie czterech metod wyznaczania przedziałów
Ponieważ szerokość przedziału ma w tym przypadku większe znaczenie niż jakikolwiek pojedynczy estymator punktowy, nie ograniczyliśmy się do jednej metody. Przepuściliśmy bilans 59/126 przez cztery niezależne konstrukcje 95% przedziału oraz nieparametryczny bootstrap z 10 000 powtórzeń:
| Metoda | Typ | 95% Dolna | 95% Górna | Szerokość (pp) | Pokrywa 52,48%? |
|---|---|---|---|---|---|
| Bootstrap empiryczny (B = 10 000) | Nieparametryczny | 38,10% | 55,56% | 17,46 | ✅ |
| Wilson Score | Parametryczny, bez ciągłości | 38,34% | 55,50% | 17,17 | ✅ |
| Clopper-Pearson | Dokładne odwrócenie dwumianu | 37,88% | 55,92% | 18,04 | ✅ |
| Wald (Aproks. normalna) | Asymptotyczny normalny | 38,11% | 55,54% | 17,43 | ✅ |
Wszystkie cztery metody są zgodne w granicach 0,46 punktu procentowego na obu krańcach — wyznaczony przedział nie jest artefaktem konkretnego przybliżenia. Wszystkie cztery pokrywają zarówno cel kalibracji, jak i poziom równowagi. Na poziomie ufności 99% pasmo bootstrapowe rozszerza się do [35,71%, 57,94%], a rozkład samego resamplingu wskazuje, że 26,3% prób osiąga lub przekracza poziom losowy, a 9,0% osiąga lub przekracza cel 52,48% — co stanowi typowe zjawisko z ogona rozkładu, a nie anomalię.
Błąd standardowy bootstrapu empirycznego dla tej próby wynosi 4,44 punktu procentowego. Cały przedział tieru Very Low ma szerokość zaledwie 5,0 punktów procentowych. Pojedynczy błąd standardowy pokrywa niemal pełną rozpiętość tego tieru — co samo w sobie niesie kluczową informację i powraca w sekcji Wytyczne produkcyjne poniżej.
Rozbiór sygnału: wiarygodność a rozdzielczość
Brak istotności statystycznej wskazuje, że luka mogła być szumem. Nie wyjaśnia jednak, dlaczego ten segment zachowuje się w taki sposób. W tym celu sięgnęliśmy po dekompozycję Brier score według Murphy'ego (1973):
Brier Score = Reliability (błąd kalibracji)
- Resolution (dyskryminacja)
+ Uncertainty (entropia wskaźnika bazowego)
Wiarygodność (Reliability) mierzy, czy deklarowane prawdopodobieństwa odpowiadają obserwowanym częstościom (wada kalibracji). Rozdzielczość (Resolution) mierzy, czy model w ogóle potrafi uporządkować wyniki wewnątrz danego przedziału (wada dyskryminacji). Są to odmienne typy defektów wymagające innych działań — pierwszy sugeruje „dostosuj sigmoidę”, drugi mówi „w tym miejscu nie ma już sygnału do wydobycia”.
Szczegółowe dane dla segmentu Very Low:
| Komponent | Wartość | Interpretacja |
|---|---|---|
| Brier Score | 0.2531 | Błąd całkowity, podwyższony względem pułapu niepewności |
| Reliability (błąd, ↓ oznacza lepszy) | 0.0067 | Niewielki — prawdopodobieństwa są w miarę rzetelne |
| Resolution (sygnał, ↑ oznacza lepszy) | 0.0022 | Bliska zera — niemal brak dyskryminacji |
| Uncertainty (maks. entropia przy tym wskaźniku bazowym) | 0.2490 | Teoretyczny dół dla pasma rzutu monetą |
Ciekawi Cię, jak model wygląda poza tym przedziałem?
Segment "Very Low" to tylko jeden wąski wycinek — zobacz pełną krzywą kalibracji dla każdego zakresu prawdopodobieństwa przewidywanego przez model.
Rozdzielczość stanowi zaledwie około 0,9% pułapu niepewności. Dla porównania, w całym wdrożeniu aktywnego modelu (N = 742), rozdzielczość wynosi 7,5% niepewności przy dodatnim wskaźniku Brier Skill Score równym +0.0674. W samym przedziale Very Low wskaźnik ROC AUC spada do 0.4698 — poziomu statystycznie nieodróżnialnego od rzutu monetą, wobec 0.6684 w ujęciu globalnym.
Model nie kłamie w kwestii swojej pewności w tym przedziale. Mówi prawdę: wie niewiele więcej niż wynika z rzutu monetą, a dekompozycja Brier dowodzi, że komunikuje to rzetelnie — drobny błąd rezydualny wynika niemal całkowicie z braku rozdzielczości, a nie z braku wiarygodności.
Sprawdziliśmy również jednorodność wewnętrzną — czy deficyt skupił się w jednym podprzedziale, czy rozłożył równomiernie. Test chi-kwadrat w trzech podprzedziałach ([0.500, 0.517) przy 50,0%, [0.517, 0.533) przy 44,9%, [0.533, 0.550) przy 46,1%) dał wynik p = 0.8896: podprzedziały są statystycznie jednorodne. Podział pasma na pół przy wartości 52,5% ujawnia jednak ostrzejszy kontrast: dolna połowa ([50.0%, 52.5%), n = 62) osiągnęła 51,61%, czyli wynik dokładnie w punkt, podczas gdy górna połowa ([52.5%, 55.0%), n = 64) uzyskała zaledwie 42,19%, generując praktycznie cały obserwowany deficyt. Średni gradient sigmoidy w tym paśmie, ∂P/∂z ≈ 0.2492, potwierdza, że model działa w tym obszarze z maksymalną wrażliwością na zaburzenia surowego wyniku — dokładnie tam, gdzie niewielka ilość szumu wywołuje największe wahania prawdopodobieństwa.
Sekcja czasowa i analiza zmiennych towarzyszących
Ostre obsunięcie, nie chroniczny dryf
Analiza 14-dniowych okien kroczących w przekroju całego sezonu natychmiast zlokalizowała źródło deficytu. Pomiędzy 20 stycznia a 2 lutego 2026 r. — w oknie przed trade deadline, kiedy rotacje w NBA są najbardziej niestabilne — segment Very Low zanotował bilans 5W–16L (23,81%) w 21 meczach, co dało deficyt netto rzędu −11 spotkań w ciągu zaledwie dwóch tygodni. Dokładny test Fishera porównujący to okno z pozostałymi 105 grami sezonu wykazał p = 0.0298, co stanowi statystycznie istotne odchylenie.
Co kluczowe, nie był to szum specyficzny wyłącznie dla tego tieru: segmenty kontrolne (o pewności od Low do High) w tym samym oknie odnotowały swoją najniższą skuteczność w całym sezonie (58,5%) — była to ogólnoligowa zmienność wokół trade deadline, a nie defekt segmentu Very Low.
Wyłączając całkowicie to 14-dniowe okno, bilans tego segmentu poza załamaniem wynosi 54W–51L (51,43%) w pozostałych 105 meczach — dokładnie wewnątrz projektowanego przedziału [50,0%, 55,0%] i bez statystycznej różnicy względem celu 52,48% (p = 0.8456).
Uzgadnianie przedziałów jako spójna historia: każda sprawdzona przez nas metoda — dokładny test dwumianowy, Wilson, Clopper-Pearson, Wald, bootstrap z 10 000 prób — umieszcza rzeczywistą skuteczność tego segmentu bezpiecznie wewnątrz projektowanego przedziału, gdy uwzględni się dwutygodniowy szok, który dotknął w tym samym czasie wszystkie pozostałe tiery.
Suma skumulowana (CUSUM) reszt predykcji (εi = yi − p̂i) osiągnęła dołek na poziomie −9,81 meczu poniżej oczekiwań w dniu 7 marca 2026 r., po czym systematycznie odrabiała straty — osiągając szczyt na poziomie 61,5% (8W–5L) na początku kwietnia i stabilizując się na poziomie co najmniej 50% przez resztę wiosny.
Brak sygnatury cech i brak dryfu zmiennych towarzyszących
Dwie niezależne linie dowodowe wykluczają awarię cech lub pipeline'u:
Regresja resztowa. Przeprowadziliśmy regresję reszt wyników εi = yi − p̂i względem wszystkich 17 standaryzowanych cech modelu za pomocą OLS, wyłącznie w ramach segmentu Very Low. Statystyka F na poziomie całego modelu dała wynik p = 0.8216 przy skorygowanym R-kwadrat wynoszącym −0.0463. Żaden z 17 współczynników nie osiągnął istotności statystycznej (najlepszy kandydat, away_tov_pct_l10, zaledwie p = 0.2138). Gdyby jakakolwiek konkretna cecha — asymetria odpoczynku, ostatnia efektywność, historia bezpośrednich starć — napędzała ten błąd, ujawniłaby się tutaj jako istotny predyktor kierunku błędu. Żadna z nich tego nie robi.
Stabilność populacji. Porównując rozkłady cech między pierwszą a drugą połową sezonu za pomocą wskaźnika PSI (Population Stability Index) oraz dwupróbowych testów KS, stwierdziliśmy, że kluczowe zmienne wejściowe były stacjonarne: b2b_diff (PSI = 0.0107), away_optimal_rest (PSI = 0.0017), pf_l10_diff (PSI = 0.0396), pie_diff (PSI = 0.0591) — wszystkie znacznie poniżej progu stabilności 0,10, a wartości skrajne z ogonów (|z|>3) nie przekraczały 2% w żadnej cesze. Garść zmiennych, które istotnie się przesunęły (home_l, PSI = 1.7666; h2h_dominance, PSI = 3.4364; home_e_net_rating, PSI = 0.3631), to dokładnie to, czego należy oczekiwać w naturalnym toku sezonu — rosnąca liczba rozegranych meczów, redukcja wczesnosezonowego szumu w starciach H2H wraz z powtarzaniem rywalizacji ligowych oraz powiększające się różnice w tabeli, gdy czołówka oddala się od zespołów tankujących. Żadne z tych zjawisk nie jest objawem wycieku danych ani uszkodzenia pipeline'u.
Ujawnił się natomiast jeden wzorzec strukturalny o charakterze opisowym, niebędący defektem: mecze w segmencie Very Low nieproporcjonalnie często dotyczą sytuacji, gdy drużyna gości jest na papierze silniejsza od gospodarzy (w_diff: −1,42 vs +1,04 w próbie kontrolnej, KS p < 0.0001). Ponieważ wyuczony przez model prior przewagi własnego parkietu działa w poprzek takiej dynamiki meczu, spotkania te z samej konstrukcji lądują bezpośrednio na marginesie 50–55% — a gdy model w tym konkretnym paśmie popiera drużynę gości, celność spada do 43,4% (23W–30L) w porównaniu do 49,3% (36W–37L), gdy stawia na gospodarzy. To realny, w pełni wytłumaczalny efekt populacyjny, a nie błąd — mecze o wąskim marginesie i odwróconej jakości są z natury najtrudniejszymi pozycjami do wytypowania w całym terminarzu dla każdego prognosty.
Synteza diagnostyczna
Podsumowanie czterech ścieżek analitycznych:
| Wymiar | Główna metryka | Dowody | Werdykt |
|---|---|---|---|
| 1. Istotność statystyczna | Test dwumianowy p = 0,2125 (cel), p = 0,5331 (poziom losowy) | 95% CI [37,9%, 55,9%] w pełni obejmuje cel 52,48% | Zgodne z szumem skończonej próby — brak podstaw do odrzucenia H0 |
| 2. Dekompozycja sygnału | Brier = 0,2531 (Rel = 0,0067, Res = 0,0022, Unc = 0,2490) | Brak zdolności separacji wewnątrz tieru; gradient ∂P/∂z ≈ 0,2492 | Błąd rozdzielczości, a nie błąd wiarygodności/kalibracji |
| 3. Charakterystyka deficytu | Spadek do 23,8% (n = 21) vs 51,4% poza spadkiem (n = 105), Fisher p = 0,0298 | Całość deficytu −11 wygranych nastąpiła w 14-dniowym oknie przed deadline'em | Ograniczone w czasie, ostre załamanie, brak trwałego dryfu |
| 4. Koncentracja w segmencie | Podział na podprzedziały: 51,6% (n = 62) vs 42,2% (n = 64) | Deficyt skupiony w górnej części; cechy terminarza stabilne (PSI < 0,05) | Zlokalizowana wariancja podprzedziału, brak systematycznego błędu |
Cztery niezależne kierunki analizy — testy istotności, rozkład sygnału, izolacja czasowa oraz analiza populacji cech — prowadzą do tożsamego wniosku z czterech różnych stron. Taka zbieżność pozwala zamienić przypuszczenie „to prawdopodobnie szum” w uzasadnioną decyzję inżynierską.
Wytyczne produkcyjne
To element analizy post-mortem, w którym łatwo o błędne wnioski. Po zobaczeniu wyniku na czerwono pierwszym odruchem jest chęć zrobienia czegoś — przekalibrowania parametrów Platta, dodania cech, dotrenowania modelu na przesuniętym oknie. W tym przypadku każde z tych działań byłoby błędem, a oto uzasadnienie dlaczego:
| Ścieżka naprawcza | Status | Uzasadnienie |
|---|---|---|
| Rekalibracja Platta | ❌ Odrzucono | Parametry skalowania (A, B) działają poprawnie — p=0,2125, równomierne pokrycie prawdopodobieństwa w [0,50, 0,55). Ponowne dopasowanie na próbie n=126 zaburzonej znanym 14-dniowym szokiem doprowadziłoby do przeuczenia na szumie i zniekształciło kalibrację w sąsiednim tierze, który obecnie działa poprawnie. |
| Przebudowa przestrzeni cech | ❌ Odrzucono | Kluczowe cechy są stacjonarne (PSI < 0,10), reszty nie wykazują korelacji z żadną z 17 zmiennych wejściowych (ogólne p=0,8216), a zaobserwowane przesunięcia wynikają z naturalnego cyklu życia sezonu, a nie anomalii. Nie ma tu wady na poziomie cech do naprawienia. |
| Nadzór nad tierami w produkcji | ✅ Zatwierdzono | Problem ma charakter operacyjny, a nie architektoniczny: traktowanie przedziału [50,0%, 55,0%) jako użytecznego sygnału pomija fakt, że jego błąd standardowy (4,44 pp) jest niemal tak szeroki jak cały przedział (5,0 pp), a rozdzielczość Murphy'ego wynosi statystycznie zero. |
Wdrożyliśmy trzy konkretne zmiany:
- Reklasyfikacja tieru. Przedział [50,0%, 55,0%) nosi obecnie etykietę "Neutral / No-Action" zamiast aktywnego tieru predykcyjnego. Publikacja predykcji na produkcji wymaga minimalnego prawdopodobieństwa P ≥ 0,5500.
- Bufor niepewności. Ponieważ empiryczny błąd standardowy (4,44 pp) niemal pokrywa się z całą szerokością tieru, wymagamy obecnie marginesu bezpieczeństwa wynoszącego co najmniej 1,28 × SE ≈ 5,7 pp powyżej 50,0% — co odpowiada około 90% jednostronnemu buforowi ufności — zanim predykcja zostanie oznaczona jako operacyjna przewaga.
- Wyłącznik awaryjny zmienności. Flaga monitorująca śledzi teraz przeciążenie terminarza w stylu końcówki stycznia: jeśli krocząca 14-dniowa skuteczność tierów kontrolnych spadnie poniżej 60%, progi ufności są automatycznie podnoszone we wszystkich niższych tierach do momentu ustąpienia anomalii.
Żadne z tych działań nie wymagało ingerencji w wagi modelu. Klasyfikator zachowywał się dokładnie tak, jak powinien zachowywać się dobrze skalibrowany model na granicy własnej pewności: informował zgodnie z prawdą, że dysponuje znikomym sygnałem — to my zbudowaliśmy decyzję produktową w oparciu o tę uczciwość, oczekując wyższej pewności, niż pozwalała na to matematyka.
Ogólna lekcja: pojedynczy przedział nieosiągający swojego celu w trakcie jednego sezonu sam w sobie nie jest dowodem na cokolwiek. Zanim dotkniesz modelu, zadaj pytania w określonej kolejności: czy luka jest statystycznie odróżnialna od szumu; jeśli nie jest odróżnialna, czy sam profil deficytu (grupowanie w czasie, korelacja z cechami, struktura podprzedziałów) wciąż wymaga zbadania; i dopiero po wyczerpaniu obu tych ścieżek „ponowny trening” staje się odpowiedzią, a nie bezmyślnym odruchem.
Dołącz do podróży
Preview Tier
Zobacz 1-2 prognozy dziennie
Za darmo
Core Tier
Dostęp do wszystkich prognoz z poziomami pewności
€9.90/miesiąc
Insight Tier
Pełna metodologia, zaawansowana analityka, dane kalibracji
€24.90/miesiąc
Każda prognoza ma sygnaturę czasową. Każdy wynik jest śledzony. Każda metryka wydajności jest publiczna.
Ponieważ w świecie deklaracji o 80%, szczerość na poziomie 67,5% jest przewagą konkurencyjną.
Pytania dotyczące metodologii lub cech modelu? Strona metodologii opisuje pełny zestaw cech, pipeline treningowy i podejście do kalibracji. Panel kalibracji pokazuje wyniki Briera, ECE i diagramy niezawodności aktualizowane po każdym meczu.