Koneoppimismalli on algoritmi, joka oppii esimerkkidatasta muodostamaan sÀÀnnön tai âmallinâ havaittujen ilmiöiden tunnistamiseen. TĂ€ssĂ€ projektissa malli opetetaan mittausdatan avulla tunnistamaan, millainen servon liikerata on normaalitilassa. Liikerata pÀÀtellÀÀn liikkeen aikaisesta kiihtyvyys-/vĂ€rinĂ€datasta ja ohjauskulmasta.
Malli pitÀÀ kouluttaa itse, koska valmiita yleismalleja ei ole suoraan saatavilla tÀhÀn laite- ja mittausasetelmaan. Mittausdatan muoto, anturin kiinnitys, kuorma ja mekaaniset toleranssit vaikuttavat signaaliin niin paljon, ettÀ malli tÀytyy sovittaa omaan dataan.
Inferenssi voidaan ajaa reunalaitteessa (Edge), jolloin pÀÀtös saadaan lÀhellÀ datan syntyÀ pienellÀ viiveellÀ eikÀ ratkaisun toiminta ole riippuvainen verkkoyhteydestÀ. Toinen tapa olisi tehdÀ pÀÀtös pilvessÀ esimerkiksi API-kutsulla, mutta silloin pÀÀtös riippuu yhteydestÀ ja palvelun viiveestÀ, ja lisÀksi raakadatan siirtotarve kasvaa.
Malli on koulutettu kÀyttÀmÀllÀ servon liikkeen aikaista mittausdataa, jotta normaali liike voidaan tunnistaa. Raakadata puhdistetaan ja siitÀ muodostetaan piirteet (featuret), joiden avulla malli oppii nÀkemÀÀn, millainen on normaali kÀyttÀytyminen. TÀmÀn jÀlkeen piirteet skaalataan StandardScaler-muunnoksella. Data jaetaan train/test niin, ettÀ kokonaiset ajot pysyvÀt erillÀÀn.
Datan jakamisella estetÀÀn datavuoto (data leakage), eli tilanne jossa testidataan âvuotaaâ tietoa koulutusdatasta esimerkiksi siten, ettĂ€ sama mittausajo (tai sen osa) pÀÀtyy sekĂ€ trainiin ettĂ€ testiin. TĂ€llöin malli nĂ€yttÀÀ paperilla paremmalta kuin se todellisuudessa on, koska se ei enÀÀ testaa aidosti uutta dataa.
Varsinaisena anomaliamallina kÀytetÀÀn IsolationForest-menetelmÀÀ, koska se toimii ohjaamattomana (unsupervised) mallina. Koulutuksen lopputuloksena talletetaan malli, skaalain ja piirrejÀrjestys, jotta sama esikÀsittely ja sarakejÀrjestys voidaan tehdÀ Edge-laitteessa.
Ratkaisu noudattaa selkeÀÀ ML-putkea (data â feature engineering â skaalain â malli â scoring/pÀÀtös).
TÀmÀ kuvaa kÀytÀnnössÀ mallin koulutusputkea. Varsinainen MLOps (esim. automaattinen uudelleenkoulutus, artefaktien versiointi ja jatkuva monitorointi) voidaan lisÀtÀ myöhemmin, kun tuotantodata ja pÀivitysprosessi on mÀÀritelty.
IsolationForest on valittu tĂ€hĂ€n, koska se on kevyt ja tehokas poikkeamien tunnistusmenetelmĂ€, joka toimii ohjaamattomana (unsupervised) mallina. MenetelmĂ€ muodostaa useita satunnaistettuja pÀÀtöspuita ja âeristÀÀâ havainnot jakamalla piirre-avaruuden osiin. Poikkeavat pisteet erottuvat tyypillisesti lyhyemmillĂ€ eristyspoluilla kuin normaalit. TĂ€mĂ€ sopii hyvin tilanteeseen, jossa kerĂ€tÀÀn pÀÀosin normaalia dataa ja halutaan löytÀÀ siitĂ€ poikkeavat ajot tai mittauspisteet ilman manuaalista labelointia.
TÀmÀ malli sopii yleisesti ennakoivan kunnonvalvonnan ratkaisuihin, joissa halutaan havaita poikkeamia sÀhkömekaanisesta liikkeestÀ (esim. servot, moottorit, pumput, lineaaritoimilaitteet) ja tunnetaan vain normaalia dataa liikkeestÀ. Toinen tapa olisi kÀyttÀÀ esim. luokittelumallia (classification), mutta haasteena tÀssÀ on opettaa mallilla kaikki ne poikkeamat. Nyt halutaan vain tietÀÀ, onko servon liikerata normaali vai epÀnormaali.
Nykyinen toteutus on rakennettu end-to-end demon ja menetelmÀn todentamisen ympÀrille, eikÀ kÀytössÀ ole kattavaa ground truth -labelointia. TÀmÀn vuoksi arviointi painottuu score-jakaumien stabiilisuuteen, ajokertakohtaiseen vaihteluun ja siihen, ettÀ poikkeamat ovat teknisesti jÀrkeviÀ.
JatkokehityksessÀ keskeistÀ on kerÀtÀ lisÀÀ dataa eri olosuhteista, tehdÀ poikkeamien manuaalista validointia otokselle, sekÀ rakentaa hallittu malli- ja artefaktiversiointi (pÀivitysprosessi) driftin ja ympÀristömuutosten hallintaan.