Koneoppimisen hyödyntäminen Counter-Strike 2 -ammattilaisotteluiden lopputulosten ennustamisessa
Liuhanen, Nicolas (2024)
Liuhanen, Nicolas
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2024051712936
https://urn.fi/URN:NBN:fi:amk-2024051712936
Tiivistelmä
Tämän opinnäytetyön tavoitteena on selvittää, kuinka tarkasti erilaisilla koneoppimismalleilla kyetään ennustamaan Counter-Strike 2 pelin PGL CS2 Major Copenhagen 2024 otteluiden voittajia. Työssä käydään läpi, kuinka Python ohjelmointikielellä luotiin ohjelma, jolla käytettävä data saatiin verkkoharavoitua ja kuinka data esikäsiteltiin ja analysoitiin ennen koneoppimismallien ajamista. Käytettävä data muodostui aluksi neljästä datakehyksestä, mutta datakehysten uudelleen muotoilulla saatiin lopulta aikaiseksi yksi datakehys opetusdatalle ja yksi harjoitusdatalle. Opetusdata koostui 687 ottelun tilastoista ja harjoitusdata 73 ottelusta.
Työssä päädyttiin käyttämään logistisen regression, päätöspuun, satunnaismetsän ja naiivin Bayesin koneoppimismalleja. Valittujen koneoppimismallien ja niiden suorituskykyä mitanneisiin mittareihin perehdytään ennen tuloksien vertailua. Tuloksia pyrittiin vertailemaan osuvuuden, tarkkuuden, herkkyyden, F1-arvon ja sekaannusmatriisien avulla.
Tuloksista saatiin selville, että naiivin bayesin kategorinen koneoppimismalli suoriutui ottelujen lopputuloksen ennustamisessa parhaiten saavuttaen 66 % osuvuuden. Satunnaismetsä saavutti 64 % osuvuuden, mutta sen muut suorituskykyä mitanneet arvot paljastivat, että malli ei ollut käyttökelpoinen. Tuloksista nähtiin, että pelaajakohtainen data, jota tässä työssä käytettiin mallien opettamiseen ei ollut optimaalinen. Joukkuekohtaista dataa hyödyntämällä voitaisiin saavuttaa parempia tuloksia. Kaiken kaikkiaan Counter-Strike otteluissa on niin paljon satunnaisuutta, että todella tarkkojen mallien rakentaminen on todella haastavaa.
Työssä päädyttiin käyttämään logistisen regression, päätöspuun, satunnaismetsän ja naiivin Bayesin koneoppimismalleja. Valittujen koneoppimismallien ja niiden suorituskykyä mitanneisiin mittareihin perehdytään ennen tuloksien vertailua. Tuloksia pyrittiin vertailemaan osuvuuden, tarkkuuden, herkkyyden, F1-arvon ja sekaannusmatriisien avulla.
Tuloksista saatiin selville, että naiivin bayesin kategorinen koneoppimismalli suoriutui ottelujen lopputuloksen ennustamisessa parhaiten saavuttaen 66 % osuvuuden. Satunnaismetsä saavutti 64 % osuvuuden, mutta sen muut suorituskykyä mitanneet arvot paljastivat, että malli ei ollut käyttökelpoinen. Tuloksista nähtiin, että pelaajakohtainen data, jota tässä työssä käytettiin mallien opettamiseen ei ollut optimaalinen. Joukkuekohtaista dataa hyödyntämällä voitaisiin saavuttaa parempia tuloksia. Kaiken kaikkiaan Counter-Strike otteluissa on niin paljon satunnaisuutta, että todella tarkkojen mallien rakentaminen on todella haastavaa.
