ALENKA REPINA
Napovedovanje prestopne
provizije nogometnih igralcev
– strojno učenje v praksi
Področje strojnega učenja (Machine Learning) prehaja v svojo zrelo fazo. Podatkovni produkti, kot so priporočilni sistemi in prepoznavanje slik, so del našega vsakdanjika. A kako takšen podatkovni produkt nastane?
Postopek izdelave si oglejmo na primeru.
Napovedovanja vrednosti se lotimo s pomočjo prediktivnih modelov. O čem sploh govorimo, ko govorimo o modelih? Model ni nič drugega kot poenostavljena reprezentacija realnosti. Strojno učenje poskuša realnost ponazoriti s pomočjo matematičnih modelov.
Prestopno provizijo torej poskušamo razložiti s pomočjo številk in odnosov med njimi. Provizija narašča s številom golov igralca v pretekli sezoni. Strelci dosegajo večje provizije kot obrambni igralci. Več kot ima igralec rumenih kartonov, manjša je provizija.
Vse to so legitimne hipoteze. Vendar je treba preveriti njihovo pravilnost. Za to pa potrebujemo podatke.
Spremljate nogomet?
Prek poletja smo z zanimanjem brali
novice o prestopih nogometnih igralcev.
Kaj ko bi lahko izdelali podatkovni produkt,
ki napove višino prestopne provizije
nogometnega igralca?
Podatki – temelji prediktivnih modelo
Preden se lotimo pridobivanja, je priporočljivo izdelati seznam vseh podatkov, ki bi lahko vplivali na prestopne provizije. Pri tem naj se čim manj omejujemo. Marsikaterega podatka ne bo mogoče pridobiti, a naj to ne bo ovira za uvrstitev na seznam. Do podatka lahko pridemo tudi posredno – tako da ga izračunamo iz dostopnih podatkov.
Pri tem je pomoč domenskega strokovnjaka nepogrešljiva. Strokovnjak ima poglobljeno znanje, ki ga ljubitelji nogometa običajno nimamo. V primeru nogometašev smo se osredotočili na šest skupin podatkov:
- osnovne karakteristike igralca: starost, igralna pozicija, nacionalnost itd.,
- status igralca v klubu: kolikokrat je igralec v prvi enajsterici,
- dosežki igralca na igrišču: število golov, število podaj itd., popularnost igralca: število sledilcev na socialnih omrežjih, kot so Facebook, Instagram, Twitter itd.,
- zdravstveno stanje igralca: zgodovina poškodb,
- povprečno število minut igre na tekmo itd.,
- podatki o trenutnem klubu igralca: finančna vrednost kluba, finančna vrednost lige, rangiranje kluba na UEFAlestvici itd.
Poleg tega potrebujemo tudi podatke o prestopnih provizijah iz preteklih let. Prestopne provizije v prihodnosti lahko napovemo le s pomočjo provizij iz preteklosti.
Raziskovalna analiza podatkov
Eden od ključnih pogojev za izdelavo kakovostnega prediktivnega modela je poglobljeno razumevanje problema, ki ga želimo rešiti. To pomeni, da moramo dobro razumeti podatke, ki vplivajo na prestopne provizije nogometašev.
Pri tem si pomagamo z raziskovalno analizo podatkov (Exploratory Data Analysis ali EDA). EDA je metodologija, ki nam omogoča boljše razumevanje podatkov s pomočjo njihove vizualizacije. Osnovni gradniki EDA so grafi in sumarne statistike.
EDA nam omogoča, da najdemo odgovore na ključna vprašanja, ki si jih moramo zastaviti. Imamo v podatkih napačne vrednosti, morda katere vrednosti manjkajo? Kakšna je distribucija vrednosti – kakšne so minimalna, maksimalna in povprečna vrednost za določen podatek? Kako so podatki med seboj povezani – obstajajo med posameznimi podatki relacije?
Odgovori, pridobljeni s pomočjo EDA, so bistveni za razumevanje, kateri podatki vplivajo na prestopne provizije, in so zato primerni za uvrstitev v model.
»Izbira pravih podatkov je najpomembnejši, a tudi najbolj podcenjen korak v procesu strojnega učenja. Boljši podatki so pomembnejši kot boljši algoritmi. «
Will Cukierski
Kaggle.com
Izdelava modela
Do začetka izdelave modela nas loči še ne korak. Izbrati je treba najprimernejši algoritem za naš problem. Na področju strojnega učenja imamo celo vrsto algoritmov – eni so primerni za detekcijo neželene elektronske pošte, drugi so bolj primerni za prepoznavanje čustev na človeškem obrazu.
Algoritem je navodilo, s katerim se rešuje neki problem. Običajno je zapisan kot seznam korakov, ki pripeljejo do rešitve problema. Primer algoritma je razvrščanje številk od najmanjše do največje.
V našem primeru želimo napovedati vrednost prestopne provizije. Za ta problem je najbolj primerna linearna regresija. Linearna regresija je ena najpogosteje uporabljenih statističnih metod. Zapišemo jo na način:
Y=β0 + β1x + ϵ
Poskusimo vrednost prestopne provizije pojasniti s številom golov. Rezultat prikažemo vizualno na način:
Napoved prestopne provizije le na osnovi števila golov je zelo poenostavljena. Za zanesljivo napoved potrebujemo več podatkov. A nekje je treba začeti.
Zlato pravilo izdelave prediktivnih modelov je: začnemo enostavno, nato model postopoma nadgrajujemo in s tem povečujemo kompleksnost. Enostavno linearno regresijo nadgradimo tako, da dodajamo nove podatke. Dobimo multiplo linearno regresijo:
Y=β0 + β1x1 + β2x2 + β3x3 + … + βkxk + ϵ
Za izgradnjo modelov lahko uporabimo različne pristope, ki nam olajšajo delo. Data Scientisti za ta namen uporabljajo programske jezike, kot sta R in Python. Če niste vešči programiranja, lahko uporabite tudi za to namenjena orodja, kot je Microsoft Machine Learning Studio.
Testiranje modela
Smo tik pred ciljem. Preveriti moramo še, kako uspešen je model pri napovedovanju prestopnih provizij. Natančnost modela testiramo na podatkih iz preteklosti.
Če model pravilno napove prestopne provizije iz preteklega leta, potem obstaja velika verjetnost, da bodo pravilne tudi napovedi za prihodnje leto.
Kaj pa če z napovedmi nismo zadovolji?
Nič hudega. Izdelava modela je iterativni proces. Vračanje korak ali dva nazaj je bolj pravilo kot izjema. Vztrajnost in pripravljenost za eksperimentiranje sta ključnega pomena za uspešno izdelavo prediktivnih modelov.