Wat het getal betekent
Een schatting van 0,20 xG staat volgens dit model voor ongeveer 20 doelpunten uit 100 vergelijkbare schoten. Dit is geen exacte kans voor een bepaalde speler. De verzonnen situatie vereenvoudigt de werkelijke context.
Bron en populatie
We gebruiken StatsBomb Open Data met waargenomen doelpunten en niet-doelpunten; de xG van de bron is nooit de doelvariabele. De populatie bestaat uit schoten met de voet van mannen in open spel. Kopballen, strafschoppen en andere situaties zijn uitgesloten van de training. Eventframes vormen de primaire waarneming; eventuele 360-gegevens garanderen niet dat alle verdedigers zichtbaar zijn. Situaties zonder zichtbare keeper en singuliere gevallen op de doellijn worden uitgesloten, zonder imputatie.
StatsBomb Open DataAcht positievariabelen
Geometrie beschrijft de kans; aantallen en afstanden beschrijven waargenomen tegenstanders. De schotdriehoek is de begrensde driehoek tussen het schot en de doelpalen. Posities worden in meters uitgedrukt, onafhankelijk van SVG. Zonder verdedigers wordt de velddiagonaal als speciale afstandswaarde gebruikt, naast het expliciete aantal. Andere aanvallers, identiteit, voorkeursvoet, techniek, snelheid en tijdscontext worden niet meegenomen.
| Variabele | Onderbouwing |
|---|---|
| Schotafstand (m) | Afstand tot het midden van het doel. |
| Openingshoek van het doel (°) | Opening tussen de doelpalen. |
| Zijdelingse afwijking (m) | Zijdelingse asymmetrie zonder onderscheid tussen links en rechts. |
| Weergegeven verdedigers | Aantal weergegeven tegenstanders. |
| Verdedigers in schotdriehoek | Bezetting van de schotdriehoek. |
| Dichtstbijzijnde verdediger (m) | Nabijheid van de dichtstbijzijnde waargenomen tegenstander. |
| Keeper tot doel (m) | Positie van de keeper ten opzichte van het doel. |
| Keeper tot schot (m) | Afstand tussen keeper en schot. |
Training, selectie en vastzetten
Volledige wedstrijden worden gescheiden voor training, kalibratie, selectie en test, zodat events uit dezelfde wedstrijd niet over groepen worden verdeeld. De begrensde zoekprocedure gebruikt vijf folds, uitsluitend op de trainingsdata; de schaling voor logistische regressie wordt binnen elke fold aangepast. Drie logistische regressies onderzoeken geometrie, verdedigers en alle variabelen afzonderlijk. Ondiepe XGBoost-bomen testen niet-lineaire interacties. Er is geen klassenbalancering of hertraining na selectie.
| Deelverzameling | Wedstrijden | Schoten | Doelpunten |
|---|---|---|---|
| Kalibratie | 183 | 3.440 | 314 |
| Selectie | 180 | 3.643 | 324 |
| Eindtest | 363 | 7.160 | Niet geopend tijdens selectie |
| Training | 1.087 | 20.777 | 1.966 |
De vooraf vastgelegde regel selecteerde XGBoost op basis van de waargenomen prestaties en een grens voor verslechtering van de Brier-score om eenvoud te verkiezen. De selectie-intervallen bewezen geen doorslaggevende superioriteit. Sigmoïdekalibratie voldeed niet aan de criteria voor toepassing. Vastzetten betekent dat invoer, voorbewerking, bomen en kalibratie worden vastgelegd voordat de eindtest wordt geopend; de interface voert alleen die parameters uit.
- XGBoost
- 300 bomen · diepte 2 · leersnelheid 0,05 · minimaal gewicht van een kindknoop 5
- Kalibratie
- Geen herkalibratie (identiteit)
Validatie en eindtest
Log loss bestraft onjuiste kansen die met grote zekerheid worden voorspeld; Brier meet de gekwadrateerde kansfout. Lager is beter. Selectie kiest het model; de eindtest beoordeelt het reeds vastgelegde model en is niet gebruikt om het opnieuw af te stellen. De 95%-intervallen worden berekend door volledige wedstrijden opnieuw te bemonsteren, zodat afhankelijkheid tussen schoten behouden blijft.
Selectie — niet de eindtest
| Model | Schoten | Doelpunten | Log loss | Brier |
|---|---|---|---|---|
| Constante doelfrequentie | 3.643 | 324 | 0,300265 | 0,08106 |
| Logistisch: geometrie | 3.643 | 324 | 0,245876 | 0,069567 |
| Logistisch: verdedigers | 3.643 | 324 | 0,240204 | 0,067658 |
| Volledige logistische regressie | 3.643 | 324 | 0,238355 | 0,067612 |
| Volledig XGBoost | 3.643 | 324 | 0,235208 | 0,066974 |
Eindtest apart gehouden tot het vastzetten
| Model | Schoten | Doelpunten | Log loss | Brier |
|---|---|---|---|---|
| Volledig XGBoost | 7.160 | 655 | 0,239965 | 0,068339 |
| Volledige logistische regressie | 7.160 | 655 | 0,242871 | 0,069261 |
| Constante doelfrequentie | 7.160 | 655 | 0,306008 | 0,083122 |
Gepaarde verschillen op de eindtest
XGBoost min referentie: negatieve waarden zijn gunstig voor XGBoost. De totale intervallen zijn op deze test gunstig voor het kandidaatmodel; dit garandeert geen voordeel in elke deelgroep of overdraagbaarheid naar andere competities of situaties.
| Referentie | Score | Verschil | 95%-interval |
|---|---|---|---|
| Constante doelfrequentie | Brier | -0,014783 | [-0,017492; -0,012139] |
| Constante doelfrequentie | Log loss | -0,066043 | [-0,075388; -0,056869] |
| Volledige logistische regressie | Brier | -0,000922 | [-0,001781; -0,000067] |
| Volledige logistische regressie | Log loss | -0,002906 | [-0,005424; -0,000343] |
Kalibratie en kleine steekproeven
De diagonaal staat voor overeenstemming tussen het voorspelde gemiddelde en de waargenomen frequentie. Balken tonen op wedstrijden gebaseerde 95%-intervallen van de waargenomen frequentie; open punten markeren intervallen met weinig schoten. Geen interval met voldoende gegevens werd gemarkeerd, maar hoge kansen hebben weinig voorbeelden en onderbouwen geen nauwkeurigheid voor extreme situaties.
| Voorspellingsinterval | Schoten | Voorspeld gemiddelde | Waargenomen frequentie | 95%-interval | Weinig gegevens |
|---|---|---|---|---|---|
| 0%–10% | 5.324 | 3,5% | 3,7% | 3,1% – 4,2% | Voldoende gegevens |
| 10%–20% | 818 | 14,3% | 13,6% | 11,2% – 15,9% | Voldoende gegevens |
| 20%–30% | 429 | 24,8% | 21,7% | 17,9% – 25,6% | Voldoende gegevens |
| 30%–40% | 282 | 34,4% | 33,7% | 28,2% – 39,6% | Voldoende gegevens |
| 40%–50% | 164 | 44,4% | 47% | 39,6% – 53,5% | Voldoende gegevens |
| 50%–60% | 69 | 54,7% | 49,3% | 37,3% – 60,3% | Weinig gegevens |
| 60%–70% | 41 | 64% | 58,5% | 44,2% – 73,3% | Weinig gegevens |
| 70%–80% | 17 | 74,2% | 82,4% | 62,5% – 100% | Weinig gegevens |
| 80%–90% | 9 | 85,3% | 55,6% | 20% – 87,5% | Weinig gegevens |
| 90%–100% | 7 | 91,8% | 100% | 100% – 100% | Weinig gegevens |
Ook de ongunstige deelgroep telt
Met twee verdedigers binnen de schotdriehoek presteerde XGBoost op deze test slechter dan de volledige logistische regressie. Dit betreft het aantal in de driehoek, niet het totaal op het veld. Dit resultaat blijft zichtbaar; algemene gemiddelden wissen lokale tekortkomingen niet uit.
Schoten: 815 · Voldoende gegevens
| Score | Verschil | 95%-interval |
|---|---|---|
| Brier | 0,000877 | [-0,000344; 0,002305] |
| Log loss | 0,005375 | [0,000098; 0,011708] |
Illustratieve situaties en overdraagbaarheid
De beschrijvende referentie gebruikt nabije voorbeelden in gestandaardiseerde variabelen uit uitsluitend de trainingsdata, met een drempel van 99% en een aparte groep zonder verdedigers. We publiceren geen referentierijen; de interface berekent daarom niet voor elke wijziging de gezamenlijke ondersteuning door trainingsdata. Vier beginsituaties in open spel vallen buiten deze referentie; binnen de referentie vallen bewijst evenmin realisme. Zeldzame situaties blijven verkenbaar. Vergelijkingen zijn geen causale effecten; gedeeltelijke zichtbaarheid, weinig verdedigers en andere domeinen beperken de interpretatie.
Uitvoering en reproduceerbaarheid
TypeScript berekent dezelfde acht invoervariabelen als de Python-pijplijn. De loader valideert en bewaart onveranderlijke parameters; XGBoost behoudt float32-vergelijkingen en -accumulatie binnen een tolerantie van 1e-7. Kleine verplaatsingen kunnen dezelfde boomuitkomst behouden. Ongeldige invoer of niet-beschikbare modellen krijgen geen vervangende heuristiek. Strafschoppen gebruiken de vaste conventie van 0,76, los van het aangeleerde model.
De wetenschappelijke beoordeling is met beperkingen aanvaard; verspreiding van het exacte modelbestand is beoordeeld voor gratis, niet-commercieel gebruik. De oorspronkelijke automatische status blijft ‘beoordeling nodig’; beoordeling geeft geen toestemming voor publicatie. Private training en volledige reproductie zijn lokaal uitgevoerd en gerapporteerd. De aggregaten en controles zijn beoordeeld zonder de private data opnieuw te verwerken.
Identiteit en beoordeling
- Modelbestand
- 758526873b8a3a2681f655c064dee52f8bd33749accd499d015420dbe8e11b9a
- Trainingsrun
- 222909fe801f4865897fea3541e023fed626f6736dca6ef69ceada1f7c57945a
- Bewijs
- e579e10f9699077ddf05e7433af5ed63edf0e03c3ea8c7ca295844951d74ea08
- Wetenschappelijke beoordeling · 11 okt 2026
- Aanvaard met beperkingen
- Oorspronkelijke automatische status
- Beoordeling nodig
- Toestemming voor publicatie
- Nee
- Eindtest apart gehouden tot het vastzetten
- 7.160 Schoten · 655 Doelpunten