Bundesliga Match Fact Win Probability: Kvantifiera effekten av händelser i spelet på vinstchanser med hjälp av maskininlärning på AWS PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Bundesliga Match Fact Win Probability: Kvantifiera effekten av händelser i spelet på vinstchanser med hjälp av maskininlärning på AWS

Om tio år kommer klubbarnas tekniska kondition att vara en nyckelfaktor till deras framgång. Idag ser vi redan teknikens potential att revolutionera förståelsen av fotboll. xMål kvantifierar och tillåter jämförelse av målpotentialen för alla skottsituationer, medan xHot och EPV modeller förutsäger värdet av alla ögonblick i spelet. I slutändan tjänar denna och annan avancerad statistik ett syfte: att förbättra förståelsen för vem som vinner och varför. Ange den nya Bundesliga Match Fact: Win Probability.

I Bayerns andra match mot Bochum förra säsongen vände tabellen oväntat. Tidigt i matchen gör Lewandowski 1:0 efter bara 9 minuter. Ligans "grå mus" påminns omedelbart om sin 7:0-katastrof när de mötte Bayern för första gången den säsongen. Men inte den här gången: Christopher Antwi-Adjei gör sitt första mål för klubben bara 5 minuter senare. Efter att ha dragit in ett straffmål i den 38:e minuten verkar laget från Monaco di Bavaria förlamat och saker och ting började bryta ut: Gamboa muskotnötter Coman och avslutar med ett absolut mål, och Holtmann gör 4:1 nära paus med en dipper från vänster. Bayern hade inte tänkt så många mål i första halvlek sedan 1975 och kunde knappt gå ifrån med ett 4:2-resultat. Vem kunde ha anat det? Båda lagen spelade utan sina första målvakter, vilket för Bayern innebar att de missade kaptenen Manuel Neuer. Kan hans närvaro ha räddat dem från detta oväntade resultat?

På samma sätt tog Köln två extraordinära pingers under säsongen 2020/2021. När de mötte Dortmund hade de gått 18 matcher utan att vinna, medan BVB:s Haaland var en mästarklass i att göra mål den säsongen (23 på 22 matcher). Favoritrollen var tydlig, ändå tog Köln en tidig ledning med bara 9 minuter på klockan. I början av andra halvlek gjorde Skhiri ett karbonmål av sitt första: 0:2. Dortmund satte in anfallsstyrkan, skapade stora chanser och gjorde 1:2. Av alla spelare missade Haaland en barnvakt 5 minuter in i förlängningen och krönte Köln med de första 3 poängen i Dortmund efter nästan 30 år.

Senare under den säsongen överraskade Köln – som var sist i hemmatabellen – RB Leipzig, som hade all motivation att närma sig mästerskapsledaren Bayern. Motståndaren Leipzig pressade "Billy Goats" med ett lagsäsongsrekord på 13 skott på mål i första halvlek, vilket ökade deras redan höga chanser att vinna. Ironiskt nog gjorde Köln 1:0 med det första skottet på mål i minut 46. Efter att "Red Bulls" gjort en välförtjänt kvittering, sov de på ett inkast bara 80 sekunder senare, vilket ledde till att Jonas Hector gjorde mål för Köln om igen. Precis som Dortmund lade Leipzig nu all energi på offensiven, men det bästa de lyckades uppnå var att träffa stolpen på övertid.

För alla dessa matcher skulle experter och nybörjare ha gissat vinnaren felaktigt, även långt in i matchen. Men vilka är händelserna som ledde till dessa överraskande svängningar i spelets vinstsannolikhet? Vid vilken minut gick underdogens chans att vinna om favoritens när tiden tog slut? Bundesliga och AWS har arbetat tillsammans för att beräkna och illustrera utvecklingen av vinstchanser live under matcher, vilket gör det möjligt för fansen att se viktiga ögonblick av sannolikhetssvängningar. Resultatet är den nya maskininlärning (ML)-drivna Bundesliga Match Fact: Win Probability.

Hur fungerar det?

Den nya Bundesliga Match Fact Win Probability utvecklades genom att bygga ML-modeller som analyserade över 1,000 XNUMX historiska spel. Livemodellen tar uppskattningarna före matchen och justerar dem enligt matchförfarandet baserat på funktioner som påverkar resultatet, inklusive följande:

  • Mål
  • påföljder
  • Röda kort
  • Substitutioner
  • Tiden gick
  • Målchanser skapade
  • Dödspelssituationer

Livemodellen tränas med hjälp av en neural nätverksarkitektur och använder en Poisson-distributionsmetod för att förutsäga en mål-per-minut-hastighet r för varje lag, enligt beskrivningen i följande ekvation:

Dessa hastigheter kan ses som en uppskattning av ett lags styrka och beräknas med hjälp av en serie täta lager baserat på indata. Baserat på dessa priser och skillnaden mellan motståndarna, beräknas sannolikheterna för vinst och oavgjort i realtid.

Ingången till modellen är en 3-tupel av ingångsfunktioner, aktuell målskillnad och återstående speltid i minuter.

Den första komponenten av de tre inmatningsdimensionerna består av en funktionsuppsättning som beskriver den aktuella spelhandlingen i realtid för båda lagen i prestationsmått. Dessa inkluderar olika aggregerade lagbaserade xG-värden, med särskild uppmärksamhet på skotten som tagits under de sista 15 minuterna före förutsägelsen. Vi behandlar även röda kort, straffar, hörnsparkar och antalet farliga frisparkar. En farlig frispark klassas som en frispark närmare än 25m till motståndarens mål. Under utvecklingen av modellen utvärderade vi, förutom inflytandet från tidigare Bundesliga Match Fact xGoals, också effekten av Bundesliga Match Fact Skill i modellen. Detta innebär att modellen reagerar på utbyte av toppspelare – spelare med märken i färdigheterna Finisher, Initiator eller Ball winner.

Bundesliga Match Fact Win Probability: Kvantifiera effekten av händelser i spelet på vinstchanser med hjälp av maskininlärning på AWS PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Vinnsannolikhet exempel

Låt oss titta på en match från innevarande säsong (2022/2023). Följande graf visar vinstsannolikheten för matchen mellan Bayern München och Stuttgart från matchdag 6.

Bundesliga Match Fact Win Probability: Kvantifiera effekten av händelser i spelet på vinstchanser med hjälp av maskininlärning på AWS PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Modellen före matchen beräknade en vinstsannolikhet på 67 % för Bayern, 14 % för Stuttgart och 19 % för oavgjort. När vi tittar på matchens gång ser vi ett stort genomslag av gjorda mål i minuterna 36′, 57′ och 60′. Fram till den första övertidsminuten var ställningen 2:1 för Bayern. Endast ett lyckat straffslag av S. Grassy i minut 90+2 säkrade oavgjort. Win Probability Live Model korrigerade därför dragningsprognosen från 5 % till över 90 %. Resultatet är en oväntad sen svängning, med Bayerns vinstsannolikhet som minskar från 90 % till 8 % på 90+2 minuter. Grafen är representativ för svängningen i atmosfären i Allianz Arena den dagen.

Hur implementeras det?

Win Probability förbrukar händelsedata från en pågående match (målhändelser, regelbrott, röda kort och mer) samt data som produceras av andra matchfakta, som xGoals. För realtidsuppdateringar av sannolikheter använder vi Amazon Managed Streaming Kafka (Amazon MSK) som en central dataströmnings- och meddelandelösning. På så sätt kan händelsedata, positionsdata och utdata från olika Bundesliga Matchfakta kommuniceras mellan containrar i realtid.

Följande diagram illustrerar arbetsflödet från början till slut för Win Probability.

Bundesliga Match Fact Win Probability: Kvantifiera effekten av händelser i spelet på vinstchanser med hjälp av maskininlärning på AWS PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Insamlad matchningsrelaterad data tas in via en extern leverantör (DataHub). Metadata för matchningen tas in och bearbetas i en AWS Lambda fungera. Positioner och händelsedata tas in via en AWS Fargate behållare (MatchLink). All intagen data publiceras sedan för konsumtion i respektive MSK-ämnen. Hjärtat av Win Probability Match Fact sitter i en dedikerad Fargate-behållare (BMF WinProbability), som körs under respektive matchning och förbrukar all nödvändig data som erhållits genom Amazon MSK. ML-modellerna (live och före match) är utplacerade på Amazon SageMaker Serverlösa slutpunkter. Serverlösa slutpunkter startar automatiskt beräkningsresurser och skalar dessa beräkningsresurser beroende på inkommande trafik, vilket eliminerar behovet av att välja instanstyper eller hantera skalningspolicyer. Med denna betal-per-användningsmodell är Serverless Inference idealisk för arbetsbelastningar som har inaktiva perioder mellan trafiken. När det inte finns några Bundesliga-matcher kostar det ingen kostnad för lediga resurser.

Strax innan avspark genererar vi vår första uppsättning funktioner och beräknar vinstsannolikheterna före matchen genom att anropa PreMatch SageMaker-slutpunkten. Med dessa PreMatch-sannolikheter initierar vi sedan livemodellen, som reagerar i realtid på relevanta händelser i spelet och kontinuerligt frågas för att få aktuella vinstsannolikheter.

De beräknade sannolikheterna skickas sedan tillbaka till DataHub för att tillhandahållas andra MatchFacts-konsumenter. Sannolikheter skickas också till MSK-klustret till ett dedikerat ämne, för att konsumeras av andra Bundesliga Matchfakta. En Lambda-funktion förbrukar alla sannolikheter från respektive Kafka-ämne och skriver dem till en Amazon-Aurora databas. Dessa data används sedan för interaktiva visualiseringar i nästan realtid med hjälp av Amazon QuickSight.

Bundesliga Match Fact Win Probability: Kvantifiera effekten av händelser i spelet på vinstchanser med hjälp av maskininlärning på AWS PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Sammanfattning

I det här inlägget visade vi hur den nya Bundesliga Match Fact Win Probability visar effekten av händelser i spelet på chanserna att ett lag vinner eller förlorar en match. För att göra det bygger vi på och kombinerar tidigare publicerade Bundesliga Matchfakta i realtid. Detta gör att kommentatorer och fans kan upptäcka ögonblick av sannolikhetssvängningar och mer under livematcher.

Det nya Bundesliga Match Fact är resultatet av en djupgående analys av Bundesligas fotbollsexperter och AWS-dataforskare. Vinstsannolikheter visas i livetickern för respektive matcher i den officiella Bundesliga-appen. Under en sändning ges vinstsannolikheter till kommentatorer via databerättelsesökare och visas visuellt för fansen vid viktiga ögonblick, som när underdogen tar ledningen och nu är mest sannolikt att vinna matchen.

Vi hoppas att du gillar detta helt nya Bundesliga Match Fact och att det ger dig nya insikter i spelet. För att lära dig mer om partnerskapet mellan AWS och Bundesliga, besök Bundesliga på AWS!

Vi är glada över att lära oss vilka mönster du kommer att upptäcka. Dela dina insikter med oss: @AWScloud på Twitter, med hashtaggen #BundesligaMatchFacts.


Om författarna

simon rolfes spelade 288 Bundesliga-matcher som central mittfältare, gjorde 41 mål och vann 26 landskamper för Tyskland. För närvarande fungerar Rolfes som Managing Director Sport på Bayer 04 Leverkusen, där han övervakar och utvecklar spelarlistan, scoutingavdelningen och klubbens ungdomsutveckling. Simon skriver också spalter varje vecka Bundesliga.com om den senaste Bundesliga matchfakta som drivs av AWS. Där erbjuder han sin expertis som före detta spelare, kapten och TV-analytiker för att belysa inverkan av avancerad statistik och maskininlärning i fotbollsvärlden.

Tareq Haschemi är konsult inom AWS Professional Services. Hans färdigheter och expertområden inkluderar applikationsutveckling, datavetenskap, maskininlärning och big data. Han stödjer kunder i att utveckla datadrivna applikationer inom molnet. Innan han kom till AWS var han även konsult inom olika branscher som flyg och telekommunikation. Han brinner för att möjliggöra för kunder på deras data/AI-resa till molnet.

Javier Poveda-Panter är en Data Scientist för EMEA sportkunder inom AWS Professional Services-teamet. Han gör det möjligt för kunder inom området för åskådarsporter att förnya sig och dra nytta av sin data, och leverera högkvalitativa användar- och fansupplevelser genom maskininlärning och datavetenskap. Han följer sin passion för ett brett utbud av sport, musik och AI på fritiden.

Luuk Figdor är en Sports Technology Advisor i AWS Professional Services-teamet. Han arbetar med spelare, klubbar, ligor och medieföretag som Bundesliga och Formel 1 för att hjälpa dem berätta historier med data med hjälp av maskininlärning. På fritiden gillar han att lära sig allt om sinnet och skärningspunkten mellan psykologi, ekonomi och AI.

Gabriel Zylka är en maskininlärningsingenjör inom AWS Professional Services. Han arbetar nära kunderna för att påskynda deras molnanpassningsresa. Specialiserad på MLOps-domänen fokuserar han på att producera maskininlärningsarbetsbelastningar genom att automatisera end-to-end maskininlärningslivscykler och hjälpa till att uppnå önskade affärsresultat.

Jakub Michalczyk är dataforskare på Sportec Solutions AG. För flera år sedan valde han mattestudier framför fotboll, eftersom han kom fram till att han inte var tillräckligt bra på det sistnämnda. Nu kombinerar han båda dessa passioner i sin professionella karriär genom att tillämpa maskininlärningsmetoder för att få en bättre inblick i detta vackra spel. På fritiden tycker han fortfarande om att spela sjumannafotboll, titta på kriminalfilmer och lyssna på filmmusik.

Tidsstämpel:

Mer från AWS maskininlärning