Anomaliatunnistus EdgeAI-laitteelle

SisÀllysluettelo

1. Miksi tÀmÀ tehtiin

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.

2. MitÀ tÀssÀ tapahtuu

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.

3. Miten toteutettu

Ratkaisu noudattaa selkeÀÀ ML-putkea (data → feature engineering → skaalain → malli → scoring/pÀÀtös).

  1. Datan kerÀys: Data kerÀtÀÀn servon liikeradan mittaus -laitteelta ja tallennetaan pilveen. Jokainen tiedosto sisÀltÀÀ yhden mittausajon. TÀssÀ dataa on kerÀtty yhdeksÀn mittausjakson ajalta (9 ajokertaa). Kussakin ajokerrassa on tyypillisesti 54 mittausta.
  2. Datan puhdistus: Datasta tÀytetÀÀn puuttuvat arvot ja anturista aiheutuvat epÀnormaalit arvot suodatetaan.
  3. feature engineering: Dataan lisÀtÀÀn laskennallisesti keskiarvoistuksia, jotka auttavat mallia nÀkemÀÀn paremmin servon liikeradan ominaisuudet.
  4. Skaalaus: Numeroarvot skaalataan, jottei mikÀÀn arvo pÀÀse jyrÀÀmÀÀn mallissa.
  5. Datasettien jako: Datat jaetaan train/test setteihin, jotta mallin testaaminen aidolla uudella datalla olisi luotettavampaa.
  6. Mallin koulutus: IsolationForest -malli koulutetaan kerÀtyllÀ ja muokatulla datalla.
  7. Validointi: Lopuksi arvioidaan onko malli kelvollinen kÀyttöön.

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.

4. Mihin tÀtÀ voi kÀyttÀÀ

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.

5. Rajaukset ja jatkokehitys

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.