MathPredictions

Sådan fungerer vores forudsigelser

Hvert tal på dette site er resultatet af én kæde, der kører ens for hver eneste kamp. Ingen redaktør vælger kampene, intet menneske overskriver en sandsynlighed, og intet trækkes stille tilbage, efter at det er tabt.

Kort fortalt: angrebs- og forsvarsvurderinger, vægtet efter hvor nye kampene er, beregnes ud fra flere sæsoners resultater, omsættes til en komplet fordeling over mulige slutresultater, holdes op mod det, spilmarkedet prissætter, og afregnes til sidst offentligt mod det faktiske resultat. Afsnittene nedenfor gennemgår hvert af disse trin.

Data bagved

Modellen beregnes på flere sæsoners afsluttede kampe i alle de turneringer, der dækkes her: slut- og pausestillinger, vundne og tildelte hjørnespark samt de skud og den boldbesiddelse, datafeedet leverer, og som driver kontekstpanelerne på siderne og hjørnesparksmodellens reservekæde. Ved siden af ligger et øjebliksbillede af bookmakerodds, taget når en forudsigelse genereres og opdateret, så længe kampen stadig er åben. Esport og virtuelle eller simulerede turneringer udelukkes via et manuelt vedligeholdt register og ikke ved navnematch, så deres resultater aldrig kan forurene et rigtigt holds vurdering.

Tidsvægtede angrebs- og forsvarsvurderinger

Hvert hold bærer en angrebsvurdering og en forsvarsvurdering — hvor meget det skaber, og hvor meget det tillader i forhold til sine egne omgivelser. De to beregnes samlet med iterativ proportional tilpasning, en løser på lukket form, der skifter mellem angreb og forsvar, indtil hele puljen gengiver den målproduktion, der faktisk er observeret i den, mens hver historisk kamp diskonteres med en eksponentiel aktualitetskerne. Den seneste form dominerer, og ældre sæsoner falmer glidende i stedet for at blive skåret væk ved en vilkårlig sæsongrænse. Beregningen sker inden for puljer pr. land, som holder et lands rækker og dets nationale pokalturneringer samlet: pokalkampe bliver dermed broer mellem rækkerne, og et oprykkerhold ankommer med en vurdering, det har optjent mod rigtige modstandere, i stedet for med et blankt stykke papir.

Når datagrundlaget er tyndt

Rå vurderinger overreagerer på små stikprøver, så hver enkelt trækkes mod sin puljes referenceværdi i forhold til det belæg, der ligger bag — et empirisk bayesiansk skridt, der forhindrer, at en klub med en håndfuld registrerede kampe ser uovervindelig ud, fordi to af dem endte 4-0. Rækkernes basisniveauer får samme behandling mod puljegennemsnittet, hvilket forhindrer, at en lille turnering inde i en stor pulje driver af sted på støj. Styrken af det træk afhænger af den effektive stikprøvestørrelse og ikke af antallet af kampe, så kraftigt diskonterede gamle kampe vejer med rette mindre.

Fra vurderinger til en fordeling over slutresultater

For hver kamp giver de to holds vurderinger og turneringens hjemme- og udebasisniveauer et forventet antal mål til hver side. Disse forventninger foldes ud til et komplet sandsynlighedsgitter over slutresultater — hvert plausibelt resultat fra 0-0 og opefter — med Dixon-Coles-korrektionen for den veldokumenterede afhængighed mellem de to scorer i målfattige kampe, altså præcis der, hvor uafhængige Poisson-modeller tager fejl, og præcis der, hvor fodbolden faktisk lever. Kampresultat, korrekt resultat, over/under mål, begge hold scorer, dobbeltchance og asiatisk handicap aflæses alle af det samme normaliserede gitter. To markeder, vi offentliggør, kan derfor ikke modsige hinanden: prisen på over/under og prisen på korrekt resultat er den samme fordeling set to gange.

At læse markedet rigtigt

Hvor der findes bookmakerodds, tages de ikke for pålydende. Offentliggjorte odds indeholder bookmakerens margin, så den fjernes først, og oddsene omregnes til fair sandsynligheder. Handicap- og totallinjer løses derefter som et system for de to størrelser, markedet reelt udtrykker — styrkeforskellen mellem holdene og det forventede antal mål —, hvilket er et langt mere stabilt signal end nogen enkelt odds. Kvartlinjer prissættes med en kerne med delt indsats, der behandler halv gevinst og halvt tab præcist, i stedet for at blive rundet til nærmeste hele linje, som de fleste offentliggjorte modeller stiltiende gør.

En dedikeret hjørnesparksmodel

Hjørnespark udledes ikke af mål. De har deres egne angrebs- og forsvarsvurderinger — vundne og tildelte hjørnespark, beregnet med den samme tidsvægtede løser —, fremskrives for hver side og prissættes derefter mod kampens præcise hjørnesparkslinje via en diskretiseret kontinuert fordeling frem for en opslagstabel. Er et holds hjørnesparkshistorik for tynd til at stole på, falder modellen tilbage ad en fastlagt kæde: først vurderingerne, så livestatistikken fra kampen, så markedet alene. Hvis ingen af disse niveauer klarer tærsklen, melder modellen, at der ikke er data, i stedet for at opfinde et tal.

Præcisionsvægtet kombination

Model og marked kombineres med præcisionsvægtning ud fra den effektive stikprøvestørrelse: for hold med tynd historik bærer markedet det meste af vægten, i dybt dækkede rækker gør modellen det, og overgangen er glidende frem for en kontakt. Når der efter den kombination stadig er et værdigab på 5 % eller mere, markeres spillet som value — modellen hævder en fordel, som oddsene ikke afspejler, og siger det offentligt før kampstart, hvor det kan efterprøves bagefter.

Kalibrering og test uden for stikprøven

Intet går i luften, fordi en backtest ser godt ud. Modellen valideres på cirka en halv million historiske kampe med streng adskillelse uden for stikprøven: vurderingerne beregnes udelukkende på det, der kunne vides før hvert kampstart, og udfaldene bedømmes på log-loss og Brier-score — egentlige scoringsregler, der straffer selvsikre fejlskøn i stedet for at belønne dem — sammen med træfprocenten mod linjen og opdelte kalibreringskurver, der tjekker, om en forudsigelse på 60 % rent faktisk går ind omkring 60 % af gangene. En version, der ikke rammer sine acceptgrænser, kommer ikke i luften.

Ingen håndplukning

Hver eneste kvalificerede kamp i rigtig fodbold får en forudsigelse — ingen udvælgelse af de nemme. Forudsigelser fryses 30 minutter før kampstart, og hvert frosset spil afregnes mod slutresultatet og tælles med i den offentlige træfstatistik, både gevinster og tab.