Bundesliga Match Fact Skill: Kvantificiranje kakovosti nogometašev z uporabo strojnega učenja na AWS

Izvorno vozlišče: 1195672

V nogometu, tako kot v mnogih športih, so bile razprave o posameznih igralcih vedno del zabave. "Kdo je najboljši strelec?" ali "Kdo je kralj branilcev?" so vprašanja, o katerih oboževalci večno razpravljajo, družbeni mediji pa to razpravo krepijo. Samo pomislite, da imajo samo Erling Haaland, Robert Lewandowski in Thomas Müller skupaj 50 milijonov sledilcev na Instagramu. Številni oboževalci se zavedajo neverjetne statistike, ki jo ustvarijo zvezdniki, kot sta Lewandowski in Haaland, vendar so takšne zgodbe le vrh ledene gore.

Upoštevajte, da ima skoraj 600 igralcev pod pogodbo v Bundesligi in vsaka ekipa ima svoje prvake – igralce, ki se predstavijo, da na tekmi pokažejo določeno veščino. Poglejte na primer Michaela Gregoritscha iz FC Augsburg. Od tega pisanja (21. tekma) je v sezoni 21/22 dosegel pet golov, kar ni nekaj, zaradi česar bi ga kdo omenil v pogovoru o odličnih strelcih. Toda poglejmo podrobneje: če seštejete pričakovane vrednosti golov (xGoals) vseh priložnosti za zadetek, ki jih je Gregoritsch imel v tej sezoni, je številka, ki jo dobite, 1.7. To pomeni, da je za +194 % presegel svoje mete na gol in dosegel 3.2 zadetka več od pričakovanega. Za primerjavo, Lewandowski je bil boljši le za 1.6 gola (+7%). Kakšen podvig! Jasno je, da Gregoritsch v Augsburg prinaša posebno znanje.

Kako torej osvetliti vse skrite zgodbe o posameznih bundesligaških igralcih, njihovih veščinah in vplivu na izide tekem? Vstopite v novo Bundesliga Match Fact, ki ga poganja AWS in se imenuje Skill. Spretnost je bila razvita s poglobljeno analizo DFL in AWS za identifikacijo igralcev z veščinami v štirih posebnih kategorijah: iniciator, finišer, zmagovalec žoge in sprinter. Ta objava zagotavlja globok potop v te štiri veščine in razpravlja o tem, kako so implementirane v infrastrukturo AWS.

Še ena zanimiva točka je, da so se do zdaj Bundesliga Match Facts razvijali neodvisno drug od drugega. Skill je prvi Bundesliga Match Fact, ki združuje rezultate več Bundesliga Match Facts v realnem času z uporabo pretočne arhitekture, zgrajene na Amazon Managed Streaming Kafka (Amazon MSK).

Pobudnik

Pobudnik je igralec, ki izvede veliko število dragocenih prvih in drugih podaj. Za prepoznavanje in količinsko opredelitev vrednosti teh asistenc smo uvedli novo metriko xAssist. Izračuna se tako, da se sledi zadnji in predzadnji podaji pred strelom na gol ter tem dejanjem dodeli ustrezna vrednost xGoals. Dober pobudnik ustvarja priložnosti v zahtevnih okoliščinah z uspešnim dokončanjem prehodov z visoko stopnjo težavnosti. Za oceno, kako težko je dokončati dano vozovnico, uporabimo naše obstoječe xPass model. Pri tej meritvi namerno izključujemo prečke in proste strele, da bi se osredotočili na igralce, ki ustvarjajo priložnosti za zadetek s svojimi natančnimi asistencami iz odprte igre.

Ocena spretnosti se izračuna z naslednjo formulo:

Poglejmo za primer trenutnega pobudnika Rank 1, Thomasa Müllerja. Od tega pisanja (9.23. tekma) je zbral vrednost xAssist 21, kar pomeni, da so njegove podaje za naslednje igralce, ki so streljali na gol, ustvarile skupno vrednost xGoal 9.23. Razmerje xAssist na 90 minut je 0.46. To je mogoče izračunati iz njegovega celotnega igralnega časa v trenutni sezoni, ki je izjemen – več kot 1,804 minut igralnega časa. Kot drugo asistenco je ustvaril skupno vrednost 3.80, kar pomeni 0.19 sekundne asistence na 90 minut. Skupaj je bilo 38 od njegovih 58 prvih asistenc težkih podaj. In kot druga asistenca, 11 od njegovih 28 podaj je bilo prav tako težkih. S to statistiko se je Thomas Müller katapultiral na prvo mesto na lestvici iniciatorjev. Za primerjavo so v naslednji tabeli prikazane vrednosti trenutnih treh najboljših.

.. xAssist xAssistper90 xSecondAssist xSecondAssistper90 DifficultPassesAssisted DifficultPassesAssisted2 Končni rezultat
Thomas Müller – 1. mesto 9.23 0.46 3.80 0.18 38 11 0.948
Serge Gnabry – 2. mesto 3.94 0.25 2.54 0.16 15 11 0.516
Florian Wirtz – 3. mesto 6.41 0.37 2.45 0.14 21 1 0.510

Finišer

Finišer je igralec, ki je izjemno dober pri doseganju golov. Ima visoko učinkovitost strelov in dosega veliko golov glede na svoj čas igre. Spretnost temelji na dejanskih doseženih golih in njihovi razliki s pričakovanimi cilji (xGoals). To nam omogoča, da ocenimo, ali so priložnosti dobro izkoriščene. Predpostavimo, da imata dva napadalca enako število golov. Sta enako močna? Ali pa eden od njiju dosega zadetek iz lahkih okoliščin, medtem ko drugi konča v zahtevnih situacijah? Na to lahko odgovorimo z učinkovitostjo strelov: če doseženi goli presegajo število xgolov, je igralec preveč uspešen in je učinkovitejši strelec od povprečja. Z velikostjo te razlike lahko količinsko opredelimo, v kolikšni meri je učinkovitost strelca višja od povprečja.

Ocena spretnosti se izračuna z naslednjo formulo:

Za finišerja se bolj osredotočamo na cilje. Naslednja tabela ponuja podrobnejši pregled trenutnih treh najboljših.

.. Cilji GoalsPer90 ShotEfficiency Končni rezultat
Robert Lewandowski – 1. mesto 24 1.14 1.55 0.813
Erling Haaland – 2. mesto 16 1.18 5.32 0.811
Patrik Schick – 3. mesto 18 1.10 4.27 0.802

Robert Lewandowski je v tej sezoni dosegel 24 golov, kar ga uvršča na prvo mesto. Čeprav ima Haaland večjo učinkovitost strelov, to še vedno ni dovolj, da bi bil Haaland prvi na lestvici, saj dajemo večjo težo doseženim golom. To kaže, da ima Lewandowski velik dobiček tako od kakovosti kot od količine prejetih podaj, čeprav dosega izjemno dobre rezultate. Patrick Schick je dosegel dva zadetka več kot Haaland, vendar ima nižjo stopnjo zadetkov na 90 minut in nižjo učinkovitost strelov.

Sprinter

Šprinter ima fizično sposobnost, da doseže visoke najvišje hitrosti, in to pogosteje kot drugi. V ta namen ocenimo povprečne največje hitrosti v vseh igrah igralčeve trenutne sezone in med drugimi meritvami vključimo pogostost sprintov na 90 minut. Sprint se šteje, če igralec teče z minimalno hitrostjo 4.0 m/s več kot dve sekundi in v tem času doseže najvišjo hitrost najmanj 6.3 m/s. Trajanje sprinta je označeno s časom med prvim in zadnjim trenutkom, ko je dosežen prag 6.3 m/s, in mora biti dolg vsaj 1 sekundo, da se potrdi. Šteje se, da je bil nov sprint izveden šele, ko je tempo ponovno padel pod prag 4.0 m/s.

Ocena spretnosti se izračuna z naslednjo formulo:

Formula nam omogoča, da ocenimo številne načine, na katere lahko gledamo na sprinte igralcev, in gremo dlje od gledanja na najvišje hitrosti, ki jih ti igralci dosežejo. Na primer, Jeremiah St. Juste ima trenutni rekord sezone 36.65 km/h. Če pa pogledamo pogostost njegovih sprintov, ugotovimo, da v povprečju sprinta le devetkrat na tekmo! Alphonso Davies na drugi strani morda ni tako hiter kot St. Juste (najvišja hitrost 36.08 km/h), vendar izvede osupljivih 31 sprintov na tekmo! Veliko pogosteje šprinta z veliko višjo povprečno hitrostjo, kar odpira prostor svoji ekipi na igrišču.

Zmagovalec žoge

Igralec s to sposobnostjo povzroči izgubo žoge nasprotni ekipi, tako skupno kot glede na njegov igralni čas. Zmaga v velikem številu zemeljskih in zračnih dvobojev, pogosto ukrade ali prestreže žogo, s čimer si ustvari varno kontrolo žoge in možnost za svojo ekipo za protinapad.

Ocena spretnosti se izračuna z naslednjo formulo:

Od tega pisanja je zmagovalec prve žogice Danilo Soares. Skupaj ima 235 obrambnih dvobojev. Od 235 obrambnih dvobojev jih je dobil 75, nasprotnike pa premagal v obračunu. To sezono je prestregel 51 žog na svojem igralnem položaju kot obrambni branilec, kar mu daje približno 32-odstotno stopnjo zmage. V povprečju je prestregel 2.4 žoge na 90 minut.

Primer spretnosti

Skill Bundesliga Match Fact nam omogoča, da razkrijemo sposobnosti in prednosti bundesligaških igralcev. Lestvica spretnosti postavlja igralce v središče pozornosti, ki so bili prej morda neopaženi na lestvicah običajnih statistik, kot so goli. Za primer vzemite igralca, kot je Michael Gregoritsch. Gregoritsch je napadalec FC Augsburga, ki je bil na 21. tekmi šesti na lestvici finišerjev. Doslej je dosegel pet golov, kar ga ne bi uvrstilo na vrh nobene lestvice strelcev. Vendar mu je to uspelo v le 663 odigranih minutah! Eden od teh golov je bil pozni izenačujoči gol v 97. minuti, s katerim se je Augsburg izognil porazu v gosteh v Berlinu.

Skozi Skill Bundesliga Match Fact lahko prepoznamo tudi različne kvalitete vsakega igralca. Eden od primerov tega je zvezdnik Dortmunda Erling Haaland, ki si je prav tako prislužil značko sprinterja in finišerja in je trenutno šesti med sprinterji Bundeslige.

Vse te metrike temeljijo na podatkih o gibanju igralca, podatkih o golih, podatkih o dejanjih žoge in podatkih o podajah. Te informacije obdelujemo v podatkovnih cevovodih in pridobivamo potrebne relevantne statistične podatke za posamezno veščino, kar nam omogoča izračun razvoja vseh meritev v realnem času. Številni zgoraj omenjeni statistični podatki so normalizirani glede na čas na igrišču, kar omogoča upoštevanje igralcev, ki imajo malo časa za igranje, a so neverjetno dobri, ko igrajo. Kombinacije in uteži metrik so združene v en sam rezultat. Rezultat je razvrstitev za vse igralce glede veščin štirih igralcev. Igralci, ki se uvrstijo med najboljših 10, prejmejo značko spretnosti, ki pomaga oboževalcem hitro prepoznati izjemne kvalitete, ki jih prinašajo svojim moštvom.

Izvedba in arhitektura

Dejstva o tekmah Bundeslige, ki so bila razvita do te točke, so neodvisna drug od drugega in se zanašajo le na vnos podatkov o položaju in dogodkih ter lastnih izračunih. Vendar se to spremeni za novo Bundesliga Match Fact Skill, ki izračunava lestvice spretnosti na podlagi podatkov, pridobljenih z obstoječimi Match Facts, kot sta na primer xGoals ali xPass. Izid enega dogodka, po možnosti neverjeten gol z nizkimi možnostmi za uvrstitev, lahko pomembno vpliva na uvrstitev v sposobnosti finišerjev. Zato smo zgradili arhitekturo, ki vedno zagotavlja najsodobnejšo uvrstitev spretnosti, kadar koli pride do posodobitve osnovnih podatkov. Da bi dosegli posodobitve veščin v realnem času, uporabljamo Amazon MSK, upravljano storitev AWS za Apache Kafka, kot rešitev za pretakanje podatkov in sporočanje. Na ta način lahko različna Bundesliga Match Facts sporočajo najnovejše dogodke in posodobitve v realnem času.

Osnovna arhitektura za Skill je sestavljena iz štirih glavnih delov:

  • An Brezstrežniška gruča Amazon Aurora shrani vse rezultate obstoječih dejstev ujemanja. To vključuje na primer podatke za vsako podajo (kot je xPass, igralec, predvideni sprejemnik) ali met (xGoal, igralec, gol), ki se je zgodil od uvedbe Bundesliga Match Facts.
  • Osrednji AWS Lambda funkcija zapiše rezultate Bundesliga Match Fact v bazo podatkov Aurora in obvesti druge komponente, da je prišlo do posodobitve.
  • Lambda funkcija za vsako posamezno spretnost izračuna razvrstitev spretnosti. Te funkcije se izvajajo vsakič, ko so na voljo novi podatki za izračun določene spretnosti.
  • Grozd Amazon MSK Kafka služi kot osrednja točka komunikacije med vsemi temi komponentami.

Naslednji diagram ponazarja ta potek dela. Vsako dejstvo o tekmi Bundeslige nemudoma pošlje sporočilo o dogodku Kafki, kadar koli pride do posodobitve dogodka (kot je posodobljena vrednost xGoals za dogodek udarca). Funkcija centralnega dispečerja Lambda se samodejno sproži vsakič, ko Bundesliga Match Fact pošlje takšno sporočilo in te podatke zapiše v bazo podatkov. Nato pošlje drugo sporočilo preko Kafke, ki vsebuje nove podatke nazaj Kafki, ki služi kot sprožilec za posamezne funkcije izračuna spretnosti. Te funkcije uporabljajo podatke iz tega sprožilnega dogodka in osnovnega grozda Aurora za izračun in objavo najnovejših razvrstitev spretnosti. Za bolj poglobljen vpogled v uporabo Amazon MSK v tem projektu si oglejte objavo v spletnem dnevniku Set Piece Threat.

Povzetek

V tem prispevku smo pokazali, kako nova Bundesliga Match Fact Skill omogoča objektivno primerjavo igralcev Bundeslige na štirih osnovnih dimenzijah igralcev, pri čemer gradi na in združuje prejšnje neodvisne Bundesliga Match Facts v realnem času. To komentatorjem in navijačem omogoča, da odkrijejo prej neopažene igralske sposobnosti in osvetlijo vloge, ki jih opravljajo različni igralci Bundeslige.

Novo Bundesliga Match Fact je rezultat poglobljene analize nogometnih strokovnjakov Bundeslige in podatkovnih znanstvenikov AWS, da bi destilirali in kategorizirali kvalitete nogometašev na podlagi objektivnih podatkov o uspešnosti. Značke spretnosti igralcev so prikazane v postavi in ​​na straneh s podrobnostmi o igralcih v aplikaciji Bundesliga. V oddaji igralske veščine posredujejo komentatorjem prek iskalnik podatkovnih zgodb in vizualno prikazan navijačem ob zamenjavi igralca in ko se igralec premakne navzgor med ustreznih prvih 10.

Upamo, da boste uživali v tem povsem novem dejstvu o tekmah Bundeslige in da vam nudi nov vpogled v igro. Če želite izvedeti več o partnerstvu med AWS in Bundesligo, obiščite Bundesliga na AWS!


O avtorjih

Simon Rolfes odigral 288 tekem bundeslige kot osrednji vezist, dosegel 41 golov in 26 nastopil za Nemčijo. Trenutno je Rolfes športni direktor pri Bayer 04 Leverkusen, kjer nadzira in razvija seznam profesionalnih igralcev, skavtski oddelek in razvoj mladih v klubu. Simon piše tudi tedenske kolumne na Bundesliga.com o najnovejših dejstvih o tekmah Bundeslige, ki jih poganja AWS

Luuk Figdor je višji strokovnjak za športno tehnologijo v skupini AWS Professional Services. Sodeluje z igralci, klubi, ligami in medijskimi podjetji, kot sta Bundesliga in Formula 1, da bi jim pomagal pripovedovati zgodbe s podatki z uporabo strojnega učenja. V prostem času se rad uči vse o umu in presečišču med psihologijo, ekonomijo in umetno inteligenco.

Pascal Kühner je razvijalec aplikacij v oblaku v skupini za profesionalne storitve AWS. Sodeluje s strankami v različnih panogah, da jim pomaga doseči njihove poslovne rezultate prek razvoja aplikacij, DevOps in infrastrukture. Zelo je navdušen nad športom in v prostem času rad igra košarko in nogomet.

Tareq Haschemi je svetovalec znotraj AWS Professional Services. Njegove veščine in strokovna področja vključujejo razvoj aplikacij, podatkovno znanost, strojno učenje in velike podatke. S sedežem v Hamburgu podpira stranke pri razvoju podatkovno vodenih aplikacij v oblaku. Preden se je pridružil AWS, je bil tudi svetovalec v različnih panogah, kot sta letalstvo in telekomunikacije. Strastno ga zanima omogočanje strankam na njihovem potovanju podatkov/AI v oblak.

Jakub Michalczyk je podatkovni znanstvenik pri Sportec Solutions AG. Pred nekaj leti je izbral študij matematike namesto igranja nogometa, saj je ugotovil, da mu slednje ni dovolj. Zdaj združuje obe strasti v svoji poklicni karieri z uporabo metod strojnega učenja, da bi pridobil boljši vpogled v to čudovito igro. V prostem času še vedno rad igra mali nogomet, gleda kriminalke in posluša filmsko glasbo.

Javier Poveda-Panter je Data Scientist za športne stranke v regiji EMEA v skupini AWS Professional Services. Strankam na področju gledaliških športov omogoča inovacije in izkoriščanje njihovih podatkov, s pomočjo strojnega učenja in podatkovne znanosti zagotavlja visokokakovostne izkušnje uporabnikov in navijačev. V prostem času sledi svoji strasti do širokega nabora športov, glasbe in umetne inteligence.

Časovni žig:

Več od Strojno učenje AWS