Digiarjessa-blogi

NHL:n Stanley Cup -voittajan ennustaminen koneoppimisavusteisella simulaatiolla

nhl-ennuste

NHL:n vuotuisissa pudotuspeleissä on mukana liigan 16 parasta joukkuetta. Näistä muodostetaan 8 otteluparia, jotka pelaavat toisiaan vastaan. Kun joukkue voittaa 4 ottelua, se etenee seuraavalle kierrokselle, jossa puolet joukkueista on tippunut ja otteluparit jaetaan uudelleen. Parin kuukauden jälkeen selviää voittaja. Reilu järjestelmä, jossa paras ja voimakkain selviää kukkulan kuninkaaksi nostamaan pokaalia, eikö vain?

Todellisuudessa, kun kaksi suunnilleen tasavahvaa joukkuetta kohtaavat, monet pienet asiat vaikuttavat lopputulokseen ja sattumalla on suuri rooli. Jääkiekko-otteluiden ennustamisessa 65 % osumatarkkuutta voidaan pitää jo todella hyvänä tuloksena. Tämä kertoo, että yksittäisen ottelun voittoon vaikuttavat merkittävästi asiat, joiden mittaaminen on vaikeaa, jopa mahdotonta. Koska pudotuspeleissä joukkueiden tasoerot ovat pienimmillään, on ennustaminen vieläkin vaikeampaa. Johtuen korona-ajasta, otteluiden lopputulokset ovat oletettavasti historiallisen ennalta-arvaamattomia.

Ratkaisumme Stanley Cup -voittajan ennustamiseen oli koneoppimisavusteinen simulaatio. Koneoppimisen tarkoituksena oli hyödyntää sellaisia tilastoja runkosarjasta (Regular Season) ja käynnissä olevista pudotuspeleistä, jotka ennakoivat otteluvoittoja. Luotu koneoppimismalli laskee voittotodennäköisyydet molemmille joukkueille yksittäiseen pudotuspeliotteluun. Otteluiden voittaja arvotaan hyödyntäen laskettuja voittotodennäköisyyksiä. Koneoppimista hyödyntäen simuloimme koko turnauksen läpi 10000 kertaa. 10000 simulaatiosta voimme laskea Stanley Cupin voittotodennäköisyydet jokaiselle joukkueelle. Simulaatio suoritettiin jokaisen pelatun ottelukierroksen jälkeen uudestaan.

Koneoppimismallissa hyödynsimme ”model stacking” -ratkaisua, jossa hyödynnetään rinnakkain useita erilaisia malleja. Hyödynsimme yhteensä kuutta erilaista luokittelualgoritmia, jotka luovat omat ennusteensa ottelun voittajasta. Näitä ennusteita käytetään uusina datapisteinä, kun niistä tehdään lopullinen ennuste, jota kutsutaan ”stacked model”- termillä.

Koneoppimisella operatiivisia ratkaisuja, simuloinnilla vastauksia strategiaan

Laskemme siis koneoppimisalgoritmilla joukkueiden todennäköisyydet yhden ottelun voittamiseen. Tämän jälkeen simulaatio arpoo voittajan ja ”pelaa” samalla tavoin kaikki turnauksen ottelut. Simulaation avulla voimme imitoida ja mallintaa pudotuspelien ottelurakennetta tilastollisesti. Koneoppiminen on siis tehokas työkalu, kun haluamme tunnistaa yksittäisiä datapisteitä, kuten mihin segmenttiin asiakas X kuuluu, tai oliko asiakaspalaute negatiivista vai positiivista. Koneoppiminen ja syväoppiminen sopii myös operatiivisten työkalujen luomiseen, esim. chatbotit ja itseajavat autot.

Simulaatiolla voimme mallintaa monimutkaisia, sattumanvaraisia tapahtumaketjuja. Esimerkiksi globaalin pandemian leviäminen on monimutkainen ongelma, jossa toisiinsa vaikuttavat, sattumanvaraisesti etenevät tartuntaketjut ovat loogisinta mallintaa simulaatiolla. Toinen esimerkki simulaatio-ongelmasta voisi olla yrityksen makroympäristössä tapahtuvien muutosten vaikutus liikevaihtoon tai alihankkijoiden toimintakykyyn.

Alla oleva kuva avaa yleisellä tasolla, hieman yksinkertaistaen simuloinnin ja koneoppimisen eroja.

Simulation_vs_ML

Mielenkiintoisia huomiota Stanley Cup -ennusteesta

Koneoppiminen vaatii dataa. Toisinaan, erityisesti urheilussa kaiken datan kerääminen on mahdotonta. Esimerkiksi pelaajien tunteet, väsymys, perheongelmat, media ja loukkaantumiset voivat vaikuttaa otteluiden lopputuloksiin.

Koska tämän projektin rajoissa meillä ei ollut mahdollisuutta kerätä kaikkea tätä dataa, ei koneoppimisalgoritmimme myöskään osannut edellä mainittuja asioita hyödyntää ennusteessa. Kun Boston menetti ykkösmaalivahtinsa Tuukka Raskin, algoritmimme ei osannut huomioida Raskin poissaoloa. Tämä johti Bostonille liian positiiviseen ennusteeseen. Sama tapahtui myös ainakin Tampa Bayn kohdalla välierissä.

Toisaalta koneoppimisella pystymme löytämään ilmiöitä, jotka ihmiselle ovat näkymättömiä. Esimerkiksi Vancouver oli meidän algoritmimme mukaan erittäin vahva joukkue heikosta runkosarjan kokonaistuloksesta huolimatta. Sen muut tilastot runkosarjasta sekä 2020 pudotuspeleistä indikoivat kykyä voittaa otteluita. Moni varmasti hämmästyi nähdessään Vancouverin puolivälierien alussa toiseksi todennäköisempänä Stanley Cup -mestarina. Joukkue kumminkin pystyi kyseisessä ottelusarjassa nousemaan 1–3 tappioasemasta 3-3 tilanteeseen, vaikkakin hävisi viimeisen ottelunsa.

Vahvan joukkueen menestyksellä on vaikutusta kaikkien joukkueiden menestykseen turnauksessa. Kun puolivälierät alkoivat, otteluparin Boston-Tampa Bay -joukkueilla oli alla olevan kuvan mukaisesti yhteensä 38 % todennäköisyys Stanley Cup -voittoon. Kaikki muut joukkueet (6 joukkuetta, 3 otteluparia) saivat ennusteessa yhteensä vain 62 % mahdollisuuden Stanley Cupiin. Boston voitti Game 1, mutta hävisi kaikki seuraavat ottelunsa. Koska kaikilla joukkueilla on riski kohdata Boston tulevilla kierroksilla, ja suuri mahdollisuus hävitä Bostonia vastaan, nousevat kaikkien joukkueiden osakkeet pelkästään sen takia, että Boston on tippumassa. Sama ilmiö pätee tietenkin myös toisin päin; kun vahvat joukkueet voittavat otteluita, se hankaloittaa Bostonin ja Tampa Bayn Stanley Cup mahdollisuuksia.

Boston_ja_tampa_vs_muut

Puolivälierissä tapahtui poikkeuksellinen tilanne, kun koneoppimismallin ennakkosuosikit olivat kaikissa ottelupareissa 1–3 tappioasemassa neljän ottelun jälkeen. Ne tarvitsivat siis 3 peräkkäistä voittoa päästäkseen jatkoon. Kolikkoa heittämällä kolme peräkkäistä kruunaa tulee 12,5 % todennäköisyydellä. Jos mukaan laskee myös välierien ja finaalin arvonnan, 1–3 tappioasemasta mestaruuteen nousee vain noin 3 % todennäköisyydellä, jos voittajat valitaan kolikonheitolla.

Urheilussa joukkueilla on kumminkin tasoeroja. Voi myös olla, että vahvan joukkueen tiukka ottelusarja puolivälierissä vaikuttaa joukkueen tuloskuntoon tulevissa otteluissa. Koneoppimisalgoritmi pystyy huomioimaan nämä seikat. Myös, jos ennakkosuosikkijoukkue voittaa 1–3 tappioasemasta, se kohtaa harvemmin muita vahvoja joukkueita seuraavilla kierroksilla, koska ne ovat todennäköisesti tippuneet 1–3 tappioasemassa. Tällainen strateginen tapahtumaketjujen tulkinta onnistuu simuloimalla. Alla olevasta kuvasta näemme, että ennakkosuosikkijoukkueet, jotka olivat 1–3 tappioasemassa, voittavat Stanley Cupin yhteensä 31 % todennäköisyydellä. Jos otteluiden voittajat arvottaisiin kolikkoa heittämällä, olisi neljän ennakkosuosikin yhteenlaskettu voittoprosentti vain 12,5 %.

ennakkosuosikit_vs_altavastaajat

Heikoilla joukkueilla on tappioasemassa tekemätön paikka. New York Islanders oli algoritmimme mukaan välierien heikoin joukkue ja se oli kahden ottelun jälkeen 0–2 tappioasemassa Tampa Bayta vastaan. Kolmannessa ottelussa se onnistui voittamaan Tampa Bayn, jonka seurauksena Tampan mahdollisuudet Stanley Cup -voittoon tippuivat lähes 10 %-yksikköä. Mielenkiintoinen havainto on, että yli puolet Tampan menettämistä prosenteista meni otteluparille Dallas – Vegas. Tämä siksi, että vaikka New York Islanders pääsee voittonsa myötä todennäköisemmin finaaliin, se ei pysty realisoimaan finaalipaikkaansa mestaruudeksi yhtä usein, kuin kaikki muut joukkueet. New York Islandersia vastaan Dallasilla ja Vegasilla on helpompi tie mestaruuteen.

Tampa_vs_dallas_ja_vegas_vs_new_york

Simuloinnilla, koneoppimisella ja koneoppimisavusteisella simuloinnilla voidaan vastata sekä urheiluaiheisiin kysymyksiin, että liiketoimintakysymyksiin. Näitä menetelmiä hyödyntäessä on hyvä hahmottaa, minkälaisia tuloksia niillä pystyy saamaan. Tämä Stanley Cup -analyysi oli varsin yksinkertainen esimerkki koneoppimisesta ja simuloinnista. Sen tarkoituksena on auttaa ymmärtämään näiden menetelmien hyötyjä ja vaikutuksia. Se auttaa myös toivottavasti hahmottamaan, minkälaisiin ongelmiin jokapäiväisessä työssä ja liike-elämässä pystymme näillä analytiikkamenetelmillä vastaamaan.

Seuraa ennustettamme >>

 


analytiikka   tekoäly   koneoppiminen


Tilaa blogikirjoitukset sähköpostiisi