Elektrotehniški vestnik 87(4): 156-164, 2020 Izvirni znanstveni prispevek Uporaba vektorskih vložitev pri modeliranju poteka košarkarske tekme Petar Vračar Univerza v Ljubljani, Fakulteta za računalništvo in informatiko, Večna pot 113, 1000 Ljubljana, Slovenija E-pošta: petar.vračar@fri.uni-lj.si Povzetek. Pri modeliranju razvoja košarkarske tekme potrebujemo značilke za opis nasprotnikov. Običajno v ta namen uporabimo kazalce zmogljivosti ekip, ki jih definirajo domenski eksperti. V članku predstavimo uporabo vektorskih vlozitev za avtomatsko generiranje značilk v latentnem prostoru. V eksperimentalnem delu primerjamo modele, naučene na ekspertnih in avtomatsko zgrajenih značilkah. Rezultati kazejo, da modeli, naučšeni v latentnem atributnem prostoru generirajo verodostojne simulačije. Po drugi strani ti modeli niso dobri napovedovalči zmagovalča tekme, kar sugerira, da so latentni atributi samo delno zajeli zmogljivosti ekip. Ključne besede: modeliranje športa, globoke nevronske mreze, vektorska vlozitev, markovski pročes, simuliranje tekem Applying vector embeddings for basketball modeling Modeling progression of a basketball game requires features to describe abilities of opposing teams. The team skills are usually specified using expert-defined statistics. In the paper we present a method for an automatic construction of features embedded in a latent space. In our experimental evaluation we compare models trained with expert-defined and with automatically constructed features. The results show that the models trained with latent features generate plausible game simulations. These models, on the other hand, are not good at predicting the winner, which suggests that the latent features only partially capture the team capabilities. Keywords: sports modelling, deep neural network, vector embedding, Markov process, match simulation 1 UVOD športna analitika je področje statistične obdelave podatkov, ki z analizo doseženih rezultatov in s projekcijo bodoce uspešnosti poskuša nosilcem odlocanja ponuditi kompetitivno prednost v svetu športa. Metode podatkovnega rudarjenja in strojnega ucenja se uporabljajo na razlicnih področjih športne analitike - od napovedovanja izida tekem ([1], [2], [3]), preko kvantitativnega ocenjevanja zmogljivosti ekip [4], modeliranja takticnih odlocitev [5], do preucevanja zakonitosti in prvin športne igre ([6], [7], [8], [9]). Pregled metod podatkovnega rudarjenja v športu najdemo v [10]. V clanku se ukvarjamo s prakticnim problemom, kako iz kronolosških zapisov o poteku kosšarkarskih tekem (t. i. podatki play-by-play) izdelati statisticni model za generiranje verodostojnih simulacij tekem med izbranima ekipama. verodostojen in natancšen simulator Prejet 9. marec, 2020 Odobren 30. junij, 2020 sšportnih tekem je lahko sestavni del ekspertnega sistema, namenjenega trenerjem in strokovnemu osebju v klubih, ki bi ga uporabljali kot orodje za analizo, usmerjeno k izboljsševanju kakovosti igre in dosezšenih rezultatov. Generirane simulacije morajo biti predvsem skladne s pravili košarke. Zajemati morajo tudi znacilne vzorce poteka dogodkov, ki sledijo iz ustaljenih takticnih prijemov in specifike trenutne situacije na tekmi (na primer, ekipa v rezultatskem zaostanku dvigne tempo igre, postane bolj agresivna in prevzema vec tveganja). Ne nazadnje, generirane simulacije morajo odrazati tudi znacilnosti ekip, ki igrajo simulirane tekme. Slednja lastnost implicira potrebo po znacilkah za opis zmogljivosti košarkarskih ekip. Preproste znacilke so podane v obliki osnovnih opisnih statistik (ang. box score), ki temeljijo na štetju kljucnih dogodkov na odigranih tekmah. z bogatenjem zapisov o poteku tekem so se razvile tudi bolj sofisticirane znacilke ucinkovitosti igre, ki so praviloma rocšno dolocšene na podlagi ekspertnega znanja o športu ([11], [12], [4])). Z raziskovalnega stališca je zanimiva moznost avtomatskega grajenja atributnega prostora za opis znacšilnosti ekip, ki ne potrebuje ekspertnega predznanja. V nasprotju z metodo [13], ki sestavi atributni prostor v eksplicitni obliki, v cšlanku predstavimo metodo za tvorbo latentnega opisa zmogljivosti ekip na podlagi vektorskih vlozšitev (angl. embedding). Vektorska vlozitev je preslikava, ki diskretnim entitetam priredi numericšno predstavitev v zveznem (nizkodi-menzionalnem) prostoru. V strojnem ucenju se vektorske vlozitve uporabljajo za iskanje ustrezne predstavitve podatkov za dani ucni problem. Nedavni veliki preboji na podrocju obdelave naravnega jezika temeljijo na uporabi vektorske vlozitve besed [14], ki zajame semanticne relacije med besedami in jih implicitno zakodira v VEKTORSKE VLOŽITVE PRI MODELIRANJU KOŠARKE 157 njihovo geometrijsko upodobitev v vektorskem prostoru. V zadnjih letih se podobni pristopi uporabljajo na področjih, ki zahtevajo obdelavo strukturiranih podatkov, kot so grafi [15] ali proteini [16]. 2 Pregled področja Stern [17] je uporabil 493 tekem ameriške profesionalne košarkarske lige (NBA) ter na podlagi trenutnih izidov ob koncu posameznih četrtin zgradil model Brownovega gibanja razvoja rezultata. Model se je izkazal kot dober napovedovalec verjetnosti zmage na osnovi podane trenutne razlike v rezultatu. Model ni uposšteval mocši ekip niti ni modeliral posesti zšoge. Goldman in Rao [6] sta uporabila podoben model za proučevanje učinka psihološkega pritiska na kakovost izvedbe. Modelirali so tudi stabilnost napovedane verjetnosti zmage v odvisnosti od majhnih sprememb trenutnega rezultata in jo uporabili za ocenjevanje pomembnosti situacije za končni razplet tekme. Gabel in Redner [18] sta uporabila model naključnega sprehoda za opisovanje različnih statističnih lastnosti gibanja rezultata med potekom košarkarske tekme. Pokazala sta, da je igralni čas med zadetki eksponentno porazdeljen in je pročes doseganja točk brez spomina. Ugotovila sta tudi, da imajo lastne vrline ekip majhen vpliv na splosšno sliko gibanja rezultata. Merrit in Clauset [7] sta modelirala dinamiko gibanja rezultata na povprečšni tekmi v različšnih timskih sšportih (košarka, ameriški nogomet in hokej). Uporabila sta dva stohastičšna pročesa. Prvi pročes proizvaja zadetke, medtem ko drugi pročes določa, katera ekipa je dosegla točške. Ugotovila sta tudi, da je model sposoben zelo natančšno predvideti končšni izid tekme samo na podlagi opazene dinamike nekaj prvih zadetkov. Shirley [19] je modeliral razvoj košarkarske tekme z diskretno markovsko verigo. Stanje je zakodiral v obliki trirazsezšnega vektorja. Prva komponenta določša ekipo, ki ima zogo. Druga komponenta določa način, kako je ekipa prišla do zoge. Tretja komponenta predstavlja število točk, dosezenih ob prihodu v to stanje. Shirley je za vsako ekipo zgradil svoj model na podlagi njenih opisnih statistik in pokazal, da je tak model dober napovedovaleč verjetnosti zmage opazovane ekipe proti povprečšnemu nasprotniku. Shirley je opisal tudi mozšnost učenja modela iz opisov poteka tekem (in ne na podlagi opisnih statistik) ob upoštevanju moči posameznih ekip, toda zaradi pomanjkanja podatkov tega ni izvedel. Strumbelj in Vračar [20] sta izhajala iz Shirleyevega modela, le da sta impličitno razširila prostor stanj z atributi za opis moči ekip. Na ta način sta matriko prehoda med stanji Shirleyjevega modela izrazila v odvisnosti od karateristik ekip in tako pridobila splosšen model za simuliranje tekem med poljubnima nasprotnikoma. Za opisovanje moči ekip sta uporabila zbirne statistike na podlagi štirih faktorjev [11]. Verjetnosti prehodov med stanji sta modelirala z multinomialno logistično regresijo, pri čemer sta vsako vrstico tranzicijske matrike obravnavala kot ločen klasifikacijski problem (stanja so neodvisna zaradi markovske lastnosti procesa). Ker stanja modela ne vsebujejo informacije o poteku igralnega casa, je simulacije konec po vnaprej dolocenem številu prehodov. Vracar in sod. [21] so prevzeli idejo o parametrizaciji verjetnosti prehodov med stanji z znacilkami za opis zmogljivosti ekip in jo nadgradili z dodatno razsširitvijo opisa prostora stanj s parametri, ki podajajo kontekst trenutka v razvoju tekme. Modelirali so tudi potek igralnega casa med napovedanimi dogodki. S temi nad-graditvami so bolje zajeli dinamiko razvoja igre, kar so tudi empiricno pokazali. Isti avtorji so razvili postopek za avtomatsko ge-neriranje atributnega prostora [13]. Osnovna ideja temelji na identifikaciji mnozšic podobnih dogodkov, pri cemer se podobnost nanaša na neposredno sosešcino (prejšnji in naslednji dogodek) v zaporedju dogodkov na košarkarskih tekmah. Atribute so definirali kot verjetnosti prehoda med identificiranimi mnozicami podobnih dogodkov. Eksperimentalno so pokazali, da so modeli, dobljeni z ucenjem na podlagi avtomatsko generiranih atributov, po kakovosti napovedovanja primerljivi z modeli, naucenimi z ekspertnimi atributi. Alcorn [22] je uporabil tehniko vektorskih vlozšitev za latentno predstavitev igralcev poklicne bejzbolske lige MLB. Dobljeno prezentacijo je uporabil za razvršcanje igralcev in modeliranje izida naslednjega meta. 3 Metodologija 3.1 Modeliranje poteka košarkarske tekme Na razvoj športne tekme lahko gledamo kot na realizacijo stohasticšnega procesa, ki se v diskretnih korakih sprehaja v (zveznem) prostoru stanj S. Modeliranje je racunsko manj zahtevno, ce predpostavimo, daje proces brez spomina, tj. daje prihodnje stanje procesa odvisno samo od sedanjega stanja. Po drugi strani je jasno, da je realnost veliko bolj kompleksna in da dosedanjega poteka tekme ne moremo popolnoma zanemariti pri napovedovanju nadaljnjih dogodkov. Predpostavko o mar-kovski lastnosti procesa zato nekoliko omilimo s tem, da v opis stanja zakodiramo tudi povzetek zgodovine, ki je relevanten za nadaljevanje procesa. V splošnem je mozno prostor stanj S zakodirati v obliki vektorja, sestavljenega iz spremenljivk treh tipov, to so (1) slucajne spremenljivke, ki neposredno vplivajo na razvoj dogodkov na tekmi, (2) spremenljivke, ki vplivajo na razvoj dogodkov na tekmi, vendar niso slucajne (so posledica prejšnjih dogodkov na tekmi), in (3) parametri, ki vplivajo na potek tekme, vendar se njihova vrednost med tekmo ne spreminja. Pri modeliranju poteka košarkarske tekme smo prostor stanj S zakodirali v obliki vektorja: (Evt, Dur, Qtr, Time, PtsDiff, a, h). 158 VRAČAR Slučajna spremenljivka Evt predstavlja naslednji dogodek, ki se bo zgodil na tekmi. Množica mogočih vrednosti je prikazana v tabeli 1. Slučajna spremenljivka Dur predstavlja igralni čas (v sekundah), ki bo pretekel do naslednjega dogodka. Komponente Qtr, Time in PtsDiff niso slučajne spremenljivke, temveč povzemajo že odigrani del tekme. (Časovni vidik povzemata komponenti Qtr (trenutna četrtina) in Time (preostali čas v sekundah do izteka trenutne četrtine). Najbolj relevanten povzetek dosedanjega poteka tekme - trenutni rezultat (podan kot razlika v kosih z vidika domačega moštva) - je predstavljen s komponento PtsDiff. Motivačija za vključitev komponent Qtr, Time in PtsDiff v opis stanja so empirične študije ([20], [18], [7]), ki potrjujejo ekspertno znanje in intuičijo, da se dinamika igre spreminja v odvisnosti od trenutnega konteksta, ki ga določata predvsem čas do konča tekme in trenutni izid (na primer, ekipa v rezultatskem zaostanku igra bistveno drugače v končniči kot na poloviči tekme). V prejšnji raziskavi smo pokazali tudi, da neupoštevanje trenutnega konteksta povzročša generiranje nerealističšnih simulačij [21]. Končno, vektorja a in h predstavljata opis zmogljivosti gostujoče (away) oziroma domače (home) ekipe. Vključitev vektorjev a in h v opis stanja je samoumevna, saj zelimo, da se v generiranih simulači-jah tekem odražajo karakteristike izbranih nasprotnikov. Zmogljivosti ekip lahko izrazimo v prostoru ekspertnih atributov (če je ta na voljo) oziroma konstruiramo ustrezni atributni prostor v ekpličitni (na primer z uporabo metode iz [13]) ali impličitni obliki (glej razdelek 3.3). Zaradi enostavnosti predpostavimo, da se zmogljivosti ekip a in h ne spreminjajo med trajanjem posamezne tekme (čeprav se lahko spreminjajo med sezono). Simulačijo košarkarske tekme generiramo s slučajnim sprehodom (x0, x1,..., xf), kjer stanji x0 in xf ustrezata začetku in konču tekme. Naj bo f (y|x) verjetnostna porazdelitev naslednjega stanja y v odvisnosti od trenutnega stanja x. V opisu vsakega stanja sta samo dve slučajni spremenljivki, Evt in Dur, zato lahko z uporabo veriznega pravila pogojno porazdelitev f (y|x) poenostavimo in izrazimo v obliki: f(y|x) = fEvt(y(Evt) |x)fDur(y(D"r)|x,y(Evi)) (1) Pogojno porazdelitev iz enačbe (1) očenimo s pomočjo dveh modelov: model MEvt očenjuje marginalno pogojno porazdelitev naslednjega dogodka ob podanem opisu trenutnega stanja, model MDur pa očenjuje čas med dvema dogodkoma glede na opis trenutnega stanja in naslednji dogodek. Vzorčenje iz porazdelitve f (y|x) izvedemo s postopnim nastavljanjem vrednosti posameznim komponentam iz opisa naslednjega stanja y. Najprej izberemo vrednost komponente Evt z vzorčenjem napovedi modela MEvt, ki na vhodu prejme opis trenutnega stanja x. Nato izberemo vrednost komponente Dur z vzorčenjem napovedi modela MDur, ki na vhodu poleg opisa trenutnega stanja x prejme tudi prej izbrano Tabela 1: Mnoziča dogodkov za košarko. Oznaka dogodka Opis AJB, HJB Gostujoča / Domača ekipa je dobila sodniški met. AINB, HINB Gostujoča / Domača ekipa je vrnila žogo v igro. AORB, HORB Gostujoča / Domača ekipa je dobila skok v napadu. AOREB, HOREB Gostujoča / Domača ekipa je dobila ekipni skok v napadu. ADRB, HDRB Gostujoča / Domača ekipa je dobila skok v obrambi. ADREB, HDREB Gostujoča / Domača ekipa je dobila ekipni skok v obrambi. A2PA, H2PA Gostujoča / Domača ekipa je zgrešila met za 2 točki. A2PM, H2PM Gostujoča / Domača ekipa je zadela met za 2 točki. A3PA, H3PA Gostujoča / Domača ekipa je zgrešila met za 3 točke. A3PM, H3PM Gostujoča / Domača ekipa je zadela met za 3 točke. AFTiA, HFTiA Gostujoča / Domača ekipa je zgrešila prvega izmed i preostalih prostih metov (i € [1... 3]). AFTiM, HFTiM Gostujoča / Domača ekipa je zadela prvega izmed i preostalih prostih metov (i € [1... 3]). ATO, HTO Gostujoča / Domača ekipa je zapravila zogo. AV, HV Gostujoča / Domača ekipa je storila prekršek. AF, HF Gostujoča / Domača ekipa je storila osebno napako. vrednost Evt. Zdaj nastavimo vrednosti komponentam Qtr, Time in PtsDiff, saj lahko te rekonstruiramo neposredno na podlagi komponent Evt in Dur. Ker se, po predpostavki, vrednosti komponent a in h med tekmo ne spreminjajo, je s tem določen čeloten opis naslednjega stanja y. 3.2 Modeliranje z eksplicitnim opisom zmogljivosti ekip Modela MEvt in MDur sta medseboj neodvisna, zato ju lahko učimo vsakega posebej. Pred učenjem je treba izbrati atributni prostor za predstavitev zmogljivosti ekip. V tem razdelku je opisan postopek učenja modelov v primeru, ko so zmogljivosti ekip podane v ekspličitni obliki (na primer z ekspertnimi statistikami na podlagi štirih faktorjev). Napovedovanje naslednjega dogodka (model MEvt) obravnavamo kot klasifikačijski problem. Učno mnozičo za gradnjo modela MEvt sestavimo tako, da vhodne podatke play-by-play (kronolosško zaporedje ključšnih dogodkov na dejanskih tekmah) prevedemo v zaporedje prehodov v izbranem prostoru stanj. En učni primer predstavlja tranzičijo med zaporednima dogodkoma. Vsaki komponenti vektorja za kodiranje stanj ustreza en atribut (stolpeč) v učšni mnozšiči, razen komponentam za opis zmogljivosti ekip, ki sta sama vektorja in se raztezata čez več stolpčev (vsak element teh vektorjev predstavlja svoj atribut oziroma konkretno statistiko). Izsek vhodnih podatkov play-by-play je prikazan v tabeli VEKTORSKE VLOŽITVE PRI MODELIRANJU KOŠARKE 159 2. Učna množica, sestavljena na podlagi tega izseka, je prikazana v tabeli 3. Opis zmogljivosti ekip določimo za vsako tekmo posebej. Vrednosti atributov za tekočo tekmo izračunamo na podlagi statistik, ki jih je opazovana ekipa dosegla na ze odigranih tekmah (na primer uporabimo povprečne vrednosti statistik). Pri izračunu atributov za opisovanje domačega moštva upoštevamo samo tekme, ki jih je ta ekipa odigrala doma (ne glede na nasprotnika). Prav tako pri izračšunu atributov za gostujočšo ekipo uposštevamo samo tekme, ki so jih odigrali v gosteh (ne glede na nasprotnika). Ž ločeno obravnavo domačih in gostujočših tekem impličitno uposštevamo prednost domačšega igrisščša. Odločšitveno drevo z multinomialno logističšno regre-sijo v listih se je izkazalo kot ustrezna izbira za model MEvt [21]. Hierarhična struktura odločitvenega drevesa uspesšno povzame diskretna pravila igre in razdeli prostor stanj na disjunktne podmnoziče, ki predstavljajo (v logičnem smislu) dovoljena nadaljevanja poteka dogodkov. Tako se izognemo neveljavnim prehodom v prostoru stanj (tistim, ki so v nasprotju s pravili igre). Dodatna prednost drevesnih modelov je njihova razumljivost za domenskega eksperta. Napovedovanje čšasa med dvema dogodkoma (model MDur) je v osnovi regresijski problem, saj čiljna spremenljivka lahko zavzame poljubno zvezno vrednost med 0 in 24 (omejitev dolzine napada, izrazena v sekundah). Po drugi strani pa lahko čas med dvema dogodkoma obravnavamo tudi kot ordinalno diskretno spremenljivko zaradi vsesplosšne sekundne granulačije čšasa v podatkih play-by-play. Učna mnoziča za model MDur je po strukturi skoraj identična tisti za MEvt (glej tabelo 3) - razlika je dodatni stolpeč Dur, ki označuje čas prehoda iz trenutnega dogodka (atribut PrevEvt) v napovedan dogodek (atribut Evt) in predstavlja čiljno spremenljivko. Regresijsko drevo se je izkazalo kot ustrezen model za MDur [21]. Hierarhična struktura drevesa razdeli problemski prostor glede na par dogodkov: tistega, ki se je nazadnje zgodil, in tistega, ki je napovedan, da se bo naslednji zgodil. Posamezne napovedi o pretoku igralnega časa med omenjenima dogodkoma pa dobimo z vzorčenjem iz empirične porazdelitve primerov v listih drevesa. Prednost uporabe ekspličitnega atributnega prostora za opis zmogljivosti ekip je v tem, da modela MEvt in MDur, potem ko sta naučena, ni treba naknadno posodabljati (na primer ob večjih spremembah v zmogljivosti nekaterih ekip, kot so posškodbe ključšnih igralčev ali prihod okrepitev). Vse morebitne spremembe v zmogljivosti ekip bodo zajete v vrednostih atributov. Modela MEvt in MDur bosta v svojih napovedih upoštevala novo situačijo brez potrebe po dodatnem učenju. 3.3 Modeliranje brez opisa zmogljivosti ekip V tem razdelku je predstavljen nacin ucenja modelov MEvt in MDur brez eksplicitnega opisa zmogljivosti ekip. Osnovna ideja temelji na uporabi tehnike vektorske vložitve, ki med učenjem ciljne funkcije hkrati išče bolj ustrezno reprezentacijo vhodnih podatkov. Na sliki 1 je prikazana arhitektura nevronske mreže za ucenje modela MEvt. Na vhodu sta domaca (sloj I3) in gostujoca ekipa (sloj I4) predstavljeni z uporabo enicnega kodiranja (angl. one-hot encoding) - vsaka ekipa je predstavljena z binarnim vektorjem, katerega edini nenicšelni element je na poziciji, ki enolicšno dolocša opazovano ekipo. Na podoben nacin je na vhodu predstavljen tudi nominalen atribut PrevEvt (sloj Ii). Preostale atribute (Qtr, Time, PtsDiff in PrevDur), ki so na vhodu sloja I2, obravnavamo kot zvezne. Vsi skriti sloji (H1 do H5) so polno povezani in uporabljajo aktivacijsko funkcijo ReLU (Rectified Linear Unit). Izhod (sloj O1) je prav tako polno povezan, uporablja aktivacijsko funkcijo softmax in predstavlja verjetnostno porazdelitev napovedi kategoricšne ciljne spremenljivke Evt. Po koncanem ucenju mreze utezi na povezavah med sloji I3 in H3 ter I4 in H4 predstavljajo vektorsko vlozitev domace oziroma gostujoce ekipe. Zaradi enicnega kodiranja ekip se v nevrone na skritih nivojih H3 in H4 vpišejo samo vrednosti vhodnih nevronov, ki ustrezajo izbranima ekipama. Iz tega razloga lahko sloja H3 in H4 obravnavamo kot skrito oziroma implicitno atributno predstavitev ekip. Da bi dobili cim bolj robusten model MEvt, ucenje mreze izvedemo z naslednjim iterativnim postopkom, pri katerem gradimo cedalje kompleksnejše modele. V prvem koraku izvedemo ucenje nevronske mreze, ki je sestavljena iz slojev I1 in H1 ter polno povezanega izhodnega sloja O1. Ta mreza se nauci veljavnih sosledij dogodkov. V drugem koraku izvedemo ucenje nevronske mreze, sestavljene iz slojev I1, I2, H1 in H2 ter polno povezanega izhodnega sloja O1, pri cemer zacetne vrednosti vhodnih utezši v sloj H1 nastavimo na vrednosti iz mreze, naucene v prvem koraku. Tako dobimo model, ki uposšteva lokalni kontekst pri napovedovanju naslednjega dogodka. V tretjem koraku izvedemo ucenje celotne nevronske mreze, pri cemer zacetne vrednosti vstopnih utezi v sloja H1 in H2 nastavimo na vrednosti iz mreze, naucene v drugem koraku. Tako dobimo celoten model MEvt, ki pri napovedovanju naslednjega dogodka upošteva tudi latentno predstavitev ekip. Napovedovanje casa med dogodki (model MDur) tokrat obravnavamo kot 25-razredni klasifikacijski problem (zaloga vrednosti ciljne spremenljivke Dur, ki predstavlja cšasovni interval v sekundah, so cela sštevila na intervalu od 0 do 24). Osnovna motivacija za takšen pristop je moznost vzorcenja iz napovedane verjetnostne porazdelitve za ciljno spremenljivko, kar omogocša generiranje bolj pestrih in s tem tudi bolj realisticnih l6G VRACAR Tabela 2: Izsek podatkov play-by-play iz prve četrtine tekme NBA, odigrane 28. marca 2010 med gostujočim Denverjem in domačim Orlandom. En zapis vsebuje podatek o četrtini (stolpec Qtr), času do konca četrtine (stolpec Time), ekipi (stolpec Team) in igralcu (stolpec Player), ki je izvedel akcijo (stolpec Action). Stolpec Score vsebuje oznako vodilne ekipe in trenutni rezultat. Qtr Time Team Player Action Score 6:5l DEN N Hilario 2 Point Miss DEN lG-8 6:48 DEN A Afflalo Offensive Rebound DEN lG-8 6:4G ORL D Howard Foul DEN lG-8 6:4G DEN N Hilario 1 Point Free Throw DEN ll-8 6:4G DEN N Hilario Missed Free Throw DEN ll-8 6:38 ORL M Barnes Defensive Rebound DEN ll-8 Tabela 3: Učni primeri, ki ustrezajo dogodkom play-by-play iz tabele 2. Posamezna vrstica predstavlja tranzicijo in dogodka PrevEvt v Evt (ciljna spremenljivka). Stolpci od Aatti do Aatt™ predstavljajo vrednosti atributov, ki opisujejo zmogljivosti gostujoče ekipe. Podobno stolpci od Hatt1 do Hatt^ opisujejo zmogljivosti domače ekipe. Stolpci Qtr, Time in PtsDiff predstavljajo četrtino, čas do konca četrtine (v sekundah) in trenutno razliko v rezultatu (z vidika domače ekipe) ob začetku tranzicije. Stolpec PrevDur je čas trajanja prejšnje tranzicije (tiste, ki je pripeljala do dogodka PrevEvt). Aatti ... Aattw Hatti ... Hatt«, Qtr Time PtsDiff PrevDur PrevEvt Evt ai ai ai ai ai aw aw aw hi hi hi hi hi h hw h 4ll 4G8 4GG 4GG 4GG A2PA AORB AORB HF HF AFT2M AFT2M AFTlA AFTlA HDRB a w a w h w h w h w PrevEvt Qtr -»O Time -»O PtsDiff -»O PrevDur -»O HomeTeam Evt AwayTeam Slika 1: Arhitektura nevronske mreže za klasifikacijski problem napovedovanja naslednjega dogodka na tekmi (model MEvt). simulacij. Arhitektura nevronske mreže za model MDur je zelo podobna tisti, prikazani na sliki 1. Prva razlika je v tem, da ima vhodni sloj I\ dvakrat vec nevronov in prejema enicno kodirane vrednosti nominalnih atributov PrevEvt in Evt (prejšnji in naslednji dogodek na tekmi). Druga razlika je izhodni sloj O\, ki ima zdaj 25 nevronov. Ucenje mreze za model MDur prav tako izvedemo z iterativnim postopkom, ki je analogen tistemu za učenje modela MEvt. Pomanjkljivost opisanega pristopa za učenje modelov MEvt in MDur z vektorsko vlozitvijo je v statičnosti latentne predstavitve ekip. Ce zelimo z modeloma zajeti spremembe v zmogljivosti ekip, ju je treba dodatno učiti in tako prilagoditi latentno predstavitev novi situaciji. Robustnost dodatnega učenja modelov povečamo tako, da fiksiramo sloja H1 in H2 ter s tem dovolimo mrezi posodobitev le latentnih predstavitev ekip. 4 Eksperimentalna evalvacija Za eksperimentalno evalvacijo predstavljenih metod smo uporabili podatke play-by-play tekem, odigranih v rednem delu osmih sezon lige NBA (od 2008/09 do 2015/16). Podatke smo pridobili na spletnem naslovu stats.nba.com. 4.1 Pimerjava različnih modelov za MEvt Primerjali smo različne modele po točnosti napovedovanja naslednjega dogodka na košarkarski tekmi (za podrobnejši opis glej [13]). HOMEvt je najpreprostejši med obravnavanimi modeli za MEvt. Verjetnostna porazdelitev naslednjega dogodka je modelirana kot relativna frekvenca mogocših nadaljevanj, pogojena s trenutnim dogodkom (preostale atribute iz učne mnozice ignoriramo). Naslednji trije modeli so v obliki odločitvenega drevesa z multinomialno logistično regresijo v listih. Korensko vozlisšcše drevesa je pri vseh modelih rocšno izbrano in predstavlja nebinarno razbitje problemskega prostora glede na trenutni dogodek (predstavlja ga vrednost atributa PrevEvt), ustrezna poddrevesa pa so avtomatsko H H 5 VEKTORSKE VLOŽITVE PRI MODELIRANJU KOŠARKE 161 zgrajena z rekurzivno binarno delitvijo, pri čemer se kot mera za izbiro delitvenega kriterija uporablja ocena MDL [23]. Gradnja drevesa se ustavi, ko število primerov v vozlišču pade pod 500 ali ko nobeno razbitje ni kompresivno glede na oceno MDL. Logistični modeli v listih drevesa uporabljajo celoten nabor atributov iz učne mnozice, na podlagi katere je drevo zgrajeno. QTDEvt je model, naucen na podmnozici atributov, ki se nanasšajo samo na lokalni kontekst tekme (cetrtina, cas do konca cetrtine, razlika v rezultatu, trajanje prejšnje akcije in trenutni dogodek), medtem ko se opisi zmogljivosti ekip ignorirajo. FFEvt je model, naucen na podlagi vseh atributov v ucni mnozici, vkljucno z zmogljivostmi ekip. Slednje so opisane z ekspertnimi atributi, znanimi kot štirje faktorji [11]. ACAEvt je model, podoben zgornjemu, le da so atributi za opisovanje zmogljivosti ekip dobljeni avtomatsko z uporabo metode iz [13]. Definicijo atributov smo sestavili na podlagi 3.690 tekem iz treh sezon NBA (od 2008/09 do 2010/11). Žadnji model v primerjavi je naš novi model NNEvt, ki ustreza nevronski mrezi, prikazani na sliki 1. Število nevronov na slojih H3 in H4 je nastavljeno na 4 (vektorska vlozitev v štiridimenzionalni prostor). Število nevronov na preostalih skritih slojih smo izbrali empiricšno, in sicer: Hi(38), H2(42) in H5(50). Celotna mreza ima 8.024 prostih parametrov. Ža ucenje mreze smo uporabili 40 iteracij (angl. epoch) pri velikosti serije (angl. batch size) 128. Vse modele razen NNEvt smo ucili na tekmah iz dveh zaporednih sezon, testirali pa na naslednji, tretji sezoni. Pri tem so vrednosti atributov v ucnih primerih izracunane za vsako sezono posebej (tj. zmogljivosti ekip na zacšetku ene sezone se ne navezujejo na njihovo uspesšnost v predhodni sezoni). Model NNEvt smo najprej naucili na vseh tekmah ene sezone, nato smo ga testirali na naslednji sezoni. Testiranje smo izvedli po igralnih dneh. Po koncšanem testiranju modela na tekmah tekocšega igralnega dneva smo model posodobili z dodatnim ucenjem na tistih tekmah. Ža vsak testni primer so vsi obravnavani modeli vrnili verjetnostno porazdelitev dogodka, ki se bo naslednji zgodil na tekmi. Razlicnost med vrnjenimi predikcijami in dejanskimi dogodki smo ocenili z Brierjevo mero [24]. Rezultati so prikazani v tabeli 4. Iz rezultatov lahko sklepamo, da je model HOMEvt bistveno slabsši od preostalih modelov, ki so po uspesšnosti napovedovanja naslednjega dogodka precej primerljivi. Model QTDEvt je presenetljivo dober napovedovalec naslednjega dogodka, ceprav ne upošteva znacilnosti ekip. Iz tega lahko sklepamo, da lokalni kontekst trenutka bolj vpliva na naslednji dogodek kot znacilnosti ekip - to zlasti drzi za ligo NBA, kjer so razlike med ekipami nacšrtno precej majhne, da bi se spodbujala negotovost tekmovanja. V obeh sezonah se Tabela 4: Povprecne vrednosti ocene Brier score, izmerjene pri napovedovanju naslednjega dogodka v rednem delu tekme (cetrtine 1-4) rednega dela sezon NBA 2014/15 in 2015/16. Standardna napaka pri vseh rezultatih je 5.5 x 10-4. 2014/15 2015/16 Model Brier score Brier score HOMEvt 0.5806 0.5795 QTDEvt 0.5666 0.5658 FFEvt 0.5670 0.5661 ACAEvt 0.5674 0.5665 NNEvt 0.5651 0.5646 N = 591397 N = 596345 je kot najboljši izkazal model NNEvt. 4.2 Analiza verodostojnosti generiranih simulacij Ža generiranje simulacij poteka kosšarkarske tekme potrebujemo par modelov: MEvt za napovedovanje naslednjega dogodka in MDur za napovedovanje, koliko igralnega casa pretece do nastopa tega dogodka. V nadaljevanju predstavljamo uporabljene modele za MDur. HOMDur je najpreprostejši med obravnavanimi modeli. Cš as med zaporednima dogodkoma modelira z vzorcenjem iz populacije vseh prehodov (opaženih v ucšni mnozšici) med tema dogodkoma. HOMADur je podoben modelu HOMDur, le da locšeno modeliramo koncšnico (zadnjih 60 sekund) od preostanka cšetrtine. Motivacija za ta pristop je ugotovitev, da se dinamika igre bistveno spremeni v koncšnicah cetrtin [21]. Naslednji trije modeli so v obliki regresijskega drevesa. Prva dva nivoja drevesne strukture sta rocšno dolocšena in razdelita problemski prostor glede na predhodni dogodek (korensko vozlisšcše) in napovedani naslednji dogodek (vozlisšcše pod korenom). Preostanek drevesa pa je avtomatsko zgrajen z rekurzivno delitvijo po kriteriju najmanjsših kvadratov na podlagi celotnega nabora atributov iz ucšne mnozšice. Gradnja drevesa se ustavi, ko v listu ostane premalo ucšnih primerov, pri cemer se prag eksperimentalno doloci na podlagi valida-cijske mnozice. Predikcijo modela v obliki diskretne verjetnostne porazdelitve igralnega casa med zaporednima dogodkoma dobimo iz empiricšne porazdelitve primerov v listih drevesa. QTDDur je model, naucšen na podmnozšici atributov, ki se nanasšajo samo na lokalni kontekst tekme (cšetrtina, cšas do konca cšetrtine, razlika v rezultatu, trajanje prejšnje akcije, trenutni in naslednji dogodek), medtem ko se opisi zmogljivosti ekip ignorirajo. FFDur je model, naucen na celotnem naboru atributov vkljucno z atributi za opis zmogljivosti ekip. Uporabljeni so ekspertni atributi na podlagi sštirih faktorjev [11]. ACADur je prav tako model, naucšen na celotnem naboru atributov, le da so tokrat atributi za opisovanje 162 VRAČAR zmogljivosti ekip dobljeni z avtomatskim postopkom iz [13]. Uporabljeni atributi so zgrajeni z namenom napovedovanja časa med zaporednima dogodkoma na tekmi. Definicija atributov je zgrajena na podlagi 3690 tekem iz treh NBA sezon (od 2008/2009 do 2010/2011). NNDur je nevronska mreza, ki modelira cas med dogodkoma na podlagi vektorske vlozitve v štiridimenzionalni prostor. Stevilo nevronov na skritih slojih je bilo izbrano empirično: Hi(76), H2(80), H3(4), H4(4) in H5(88). Celotna mreza ima 22.637 prostih parametrov. Za učenje mreze smo uporabili 40 iteracij pri velikosti serije 128. Vse modele smo učili na podoben način kot pri napovedovanju naslednjega dogodka. Drevesne modele smo po učenju porezali na globino, ki optimizira kakovost napovedi na validačijski mnoziči (redni del sezone 2010/11). Z različnimi pari modelov MEvt-MDur smo gene-rirali 10 simulačij za vsako tekmo iz sezon 2014/15 in 2015/16. Tako smo z vsakim parom modelov dobili 23.800 simulačij*. Generirane simulačije smo nato primerjali z dejanskimi tekmami. Verodostojnost generiranih simulačij smo najprej oče-nili s pomočjo tradičionalnih zbirnih statistik (angl. box sčore), ki predstavljajo števče osnovnih dogodkov na posamezni tekmi. Primerjali smo porazdelitev vrednosti zbirnih statistik iz simuliranih tekem s porazdelitvami na dejanskih tekmah. Kot mero različnosti med diskretnima porazdelitvama S (empirično dobljena iz generiranih simulačij) in E (empirično dobljena iz dejanskih tekem) smo uporabili Kullbačk-Leibleijevo (KL) divergenčo, ki jo lahko interpretiramo kot količino izgubljene infor-mačije, ko za aproksimačijo porazdelitve E uporabimo porazdelitev S. V tabeli 5 je prikazana parna primerjava različnih modelov glede na vrednost KL-divergenče med porazdelitvami osnovnih košarkarskih statistik. V naslednjem eksperimentu smo generirane simulačije primerjali z empiričnimi rezultati na podlagi nekaterih karakteristik dinamike igre in gibanja rezultata (dolzina posesti, čas med zaporednima košema, dolzina niza zaporednih košev, število izmenjav vodilnega na tekmi in podobno), ki sta jih predstavila Gabel in Redner [18]. Parna primerjava med nekaterimi modeli je prikazana v tabeli 6. Rezultati sugerirajo, da najbolj verodostojne simulačije glede na predstavljene kriterije generirata kom-binačiji NNEvt-HOMDur in NNEvt-HOMADur. Manj prepričljive simulačije generirajo modeli, ki ne uposštevajo konteksta (HOMEvt-HOMDur) oziroma značilnosti ekip (QTDEvt-QTDDur). 4.3 Napovedovanje zmagovalca Kakovost napovedovanja zmagovalča lahko uporabimo kot še eno mozno očeno verodostojnosti generi- * Teoretično bi morali dobiti 24.600 simulačij, toda začetnih tekem v sezoni ni mogoče simulirati z modeli, ki uporabljajo ekspličitne opise zmogljivosti ekip, saj za nje ne moremo določiti vrednosti atributov. ranih simulacij. Od dobrega simulatorja pričakujemo, da bodo izidi generiranih tekem v povprečju skladni z rezultati dejanskih tekem. Posamezen par modelov MEvt-MDur smo ovrednotili glede na kakovost napovedovanja zmagovalca tekme s pomočjo naslednjega postopka. Za vsako tekmo iz sezon 2014/15 in 2015/16 smo generirali po 1.000 simulacij. Delez simuliranih tekem, ki jih je zmagalo domače moštvo, smo uporabili kot verjetnostno napoved za zmago domačina. Nato smo uporabili Brierjevo mero za oceno kakovosti napovedi kot povprečno kvadratno razliko med napovedanimi verjetnostmi zmag domačinov in dejanskimi izidi tekem. Iz testa smo izločili dejanske tekme, ki so po rednem delu končane brez zmagovalča. Tako smo kakovost napovedovanja zmagovalča za sezono 2014/15 določili na podlagi 1.117 parov, medtem ko smo za sezono 2015/16 uporabili 1.113 parov (od teoretičnih 1.230 tekem, odigranih v posameznih sezonah). Dobljeni rezultati so zbrani v tabeli 7. Najboljsši napovedovaleč zma-govalča je par FFEvt-FFDur, ki je naučen z uporabo ekspertnih atributov. Nekoliko slabši je par ACAEvt-ACADur, naučen z avtomatsko generiranimi atributi. Modela HOMEvt-HOMDur in QT D Evt-QT D Dur sta pričakovano najslabša, saj ne upoštevata dejanskih karakteristik ekip in vedno napovedujeta povprečšen izid. Pri tem eksperimentu sta para NNEvt-NNDur in NNEvt-HOMADur dosegla relativno slab rezultat, kar sugerira, da je latentni opis ekip samo delno zajel njihove zmogljivosti. Za primerjavo, model, ki vedno napove zmago domačšina v skladu z delezšem domačših zmag v učšnih podatkih, za sezono 2014/15 doseze klasifikačijsko točnost 0.58 in povprečno Brierjevo mero 0.244 (± 0.0001). Za sezono 2015/16 pa so rezultati tega modela: klasifikačij-ska točnost 0.59 in povprečna Brierjeva mera 0.242 (± 0.0001). Najboljši javni vir napovedi športnih izidov so kvote stavnič. Stavna borza Betfair je za sezono 2014/15 dosegla klasifikačijsko točšnost 0.71 in povprečšno Brierjevo mero 0.196 (± 0.0051). 5 Sklep V članku je predstavljena metodologija za modeliranje razvoja košarkarske tekme. Izhajali smo iz markovskega modela, pri čšemer smo prostor stanj razsširili z opisom trenutnega konteksta tekme. Tako smo v opis stanja vključšili tudi del zgodovine razvoja tekme in s tem omilili markovsko lastnost modela. Verjetnost prehoda aproksimiramo z dvema modeloma, ki zaporedno (in pogojeno eden na drugega) napovedujeta posamezne dele opisa naslednjega stanja. Metodologija je uporabna pri modeliranju vseh sšportov, ki jih lahko dobro opisšemo s stanji in prehodi med njimi. Predstavili smo postopek za avtomatsko generiranje latentnega atributnega prostora za opis zmogljivosti ekip, VEKTORSKE VLOŽITVE PRI MODELIRANJU KOŠARKE 163 Tabela 5 : Parna primerjava glede na vrednost KL-divergence med porazdelitvami osnovnih košarkarskih statistik, ki so izmerjene na dejanskih in simuliranih tekmah (zdruZeni sezoni NBA 2014/15 in 2015/16). Zapis oblike X : Y v i-ti vrstici in j-tem stolpcu pomeni, da je v neposredni primerjavi i-ti model boljši X-krat, j-ti model pa Y-krat. Zaradi enostavnosti zapisa so uporabljene kratice parov modelov. Oznake HOM, QTD, F F, ACA in NN predstavljajo pare istoimenskih modelov MEvt-MDur. Oznaka NH predstavlja par NNEvt-HOMuur, oznaka NHA pa par NNEvt-HOMAuur. HOM QTD FF ACA NN NH NHA HOM - 16 8 13 : 11 8 : 16 9 : 15 6 : 18 5 19 QTD 8 : 16 - 4 : 20 3 : 21 4 : 20 3 : 21 3 21 FF 11 13 20 4 - 9 : 15 10 : 14 6 : 18 4 20 ACA 16 8 21 3 15 : 9 - 12 : 12 7 : 17 5 19 NN 15 9 20 4 14 : 10 12 : 12 - 10 : 14 9 15 NH 18 6 21 3 18 : 6 17 : 7 14 : 10 - 7 17 NHA 19 5 21 3 20 : 4 19 : 5 15 : 9 17 : 7 - Tabela 6: Parna primerjava glede na vrednost KL-divergence med porazdelitvami kosšarkarskih statistik za opis dinamike doseganja tock, ki so izmerjene na dejanskih in simuliranih tekmah (zdruzeni sezoni NBA 2014/15 in 2015/16). Oblika zapisov in kratice so enake kot v tabeli 5. HOM QTD FF ACA NN NH NHA HOM - 4 4 2 6 2 6 5 :3 1 7 0 8 QTD 4 4 - 2 6 3 5 5 :3 2 6 2 6 FF 6 2 6 2 - 4 4 5 :3 2 6 1 7 ACA 6 2 5 3 4 4 - 5 :3 2 6 1 7 NN 3 5 3 5 3 5 3 5 - 1 6 1 6 NH 7 1 6 2 6 2 6 2 6 :1 - 5 2 NHA 8 0 6 2 7 1 7 1 6 :1 2 5 - Tabela 7: Evalvacija parov MEvt-MDur na podlagi napovedovanja zmagovalca, izmerjeno na tekmah rednega dela lige NBA v sezonah 2014/15 in 2015/16. Klasifikacijska točnost in povprečna Brierjeva mera se nanašata na napovedano verjetnost zmage domačega moštva. Vrednosti v oklepajih predstavljajo standardno napako._ 2014/15 2015/16 Model Tocnost Brier score Tocnost Brier score HOMEvt-HOMDur 0.58 0.244 (± 0.0022) 0.59 0.243 (± 0.0019) QT D Evt-QT D Dur 0.58 0.244 (± 0.0026) 0.59 0.241 (± 0.0022) FFEvt-FFDur 0.65 0.215 (± 0.0042) 0.65 0.214 (± 0.0043) AC AEvt-AC ADur 0.63 0.223 (± 0.0043) 0.65 0.217 (± 0.0044) NNEvt-NNDur 0.61 0.231 (± 0.0038) 0.61 0.232 (± 0.0034) NNEvt-HOMADur 0.62 0.230 (± 0.0038) 0.61 0.231 (± 0.0033) N = 1117 N = 1113 ki temelji na tehniki vektorskih vložitev. Eksperimentalna evalvacija, izvedena na sezonah lige NBA 2014/15 in 2015/16, je pokazala, da modeli, naučeni v latentnem atributnem prostoru, generirajo verodostojne simulacije. Po drugi strani so ti modeli izkazali nizko točnost napovedovanja zmagovalca, kar sugerira, da je latentni opis samo delno zajel zmogljivosti ekip. V nadaljnjem delu bomo preizkušali različne nastavitve dimenzionalnosti latentnega prostora pri vektorski vlozitvi ekip. Preizkušali bomo še drugačne arhitekture nevronske mrezše kakor tudi sam postopek in parametre učenja. Literatura [1] R. T. Štefani, "Improved least squares football, basketball, and soččer predičtions," IEEE transactions on systems, man, and cybernetics, vol. 10, no. 2, pp. 116-123, 1980. [2] R. D. Baker and I. G. McHale, "Forecasting exact scores in National Football League games," International Journal of Forecasting, vol. 29, no. 1, pp. 122-130, 2013. [3] H. Manner, "Modeling and forecasting the outcomes of nba basketball games," Journal of Quantitative Analysis in Sports, vol. 12, no. 1, pp. 31-41, 2016. [4] J. Kubatko, D. Oliver, K. Pelton, and D. T. Rosenbaum, "A starting point for analyzing basketball statistics," Journal of Quantitative Analysis in Sports, vol. 3, no. 3, pp. 1-22, 2007. [5] N. Hirotsu and M. Wright, "Using a markov process model of an association football match to determine the optimal timing of substitution and tactical decisions," Journal of the Operational Research Society, vol. 53, no. 1, pp. 88-96, 2002. [6] M. Goldman and J. M. Rao, "Effort vs. concentration: the asymmetric impact of pressure on NBA performance," in Proceedings MIT Sloan sports analytics conference, pp. 1-10, 2012. [7] S. Merritt and A. Clauset, "Scoring dynamics across professional team sports: tempo, balance and predictability," EPJ Data Science, vol. 3, no. 1, p. 1, 2014. [8] A. Clauset, M. Kogan, and S. Redner, "Safe leads and lead changes in competitive team sports," Physical Review E, vol. 91, no. 6, p. 062815, 2015. [9] A. Bocskocsky, J. Ezekowitz, and C. Stein, "The hot hand: A new 164 VRAČAR approach to an old 'fallacy'," in 8th Annual MIT Sloan Sports Analytics Conference, pp. 1-10, 2014. [10] R. P. Schumaker, O. K. Solieman, and H. Chen, "Predictive modeling for sports and gaming," in Sports Data Mining, pp. 5563, Springer, 2010. [11] D. Oliver, Basketball on paper: rules and tools for performance analysis. Potomac Books, Inc., 2004. [12] J. Hollinger, Pro Basketball Prospectus 2003-2004. Brassey's, 2003. [13] P. Vracar, E. Strumbelj, and I. Kononenko, "Automatic attribute construction for basketball modelling," Knowledge and Information Systems, vol. 62, no. 2, pp. 541-570, 2020. [14] T. Mikolov, K. Chen, G. Corrado, and J. Dean, "Efficient estimation of word representations in vector space," arXiv preprint arXiv:1301.3781, 2013. [15] A. Grover and J. Leskovec, "node2vec: Scalable feature learning for networks," in Proceedings of the 22nd ACM SIGKDD international conference on Knowledge discovery and data mining, pp. 855-864, 2016. [16] E. Asgari and M. R. Mofrad, "Continuous distributed representation of biological sequences for deep proteomics and genomics," PloS one, vol. 10, no. 11, 2015. [17] H. S. Stern, "A Brownian motion model for the progress of sports scores," Journal of the American Statistical Association, vol. 89, no. 427, pp. 1128-1134, 1994. [18] Alan Gabel, Sidney Redner, et al. Random walk picture of basketball scoring. Journal of Quantitative Analysis in Sports, 8(1):1416, 2012. [19] K. Shirley, "A Markov model for basketball," in New England Symposium for Statistics in Sports, 2007. [20] E. Strumbelj and P. Vracar, "Simulating a basketball match with a homogeneous Markov model and forecasting the outcome," International Journal of Forecasting, vol. 28, no. 2, pp. 532542, 2012. [21] P. Vracar, E. Strumbelj, and I. Kononenko, "Modeling basketball play-by-play data," Expert Systems with Applications, vol. 44, pp. 58-66, 2016. [22] M. A. Alcorn, "2vec: statistic-free talent modeling with neural player embeddings," MIT Sloan Sports Analytics Conference, 2016. [23] I. Kononenko, "On biases in estimating multi-valued attributes," in Ijcai, vol. 95, pp. 1034-1040, 1995. [24] G. W. Brier, "Verification of forecasts expressed in terms of probability," Monthly Weather Review, vol. 75, pp. 1-3, 1950. Petar Vracar je leta 2017 doktoriral s področja računalništva in informatike na Univerzi v Ljubljani. Je asistent na Fakulteti za računalništvo in informatiko. Raziskovalno se ukvarja z uporabo metod strojnega učenja pri modeliranju športnih dogodkov. Poleg izdelave verodostojnih simulatorjev je zainteresiran za razvoj metod za avtomatsko očenjevanje zmogljivosti ekip brez uporabe domenskega predznanja.