Hogyan segítenek az adatok hegesztés közben? – Egy adattudományi projekt lefolyása

Közhely, hogy „az adat az új olaj”, de abból a szempontból talán kevésszer hallani ezt a kijelentést, hogy az adatot, mint a vállalkozások motorját mozgató új üzemanyagot képzeljük el. Az adat vezérelt elemzés segít eldönteni, hogy egy szervezet lépést tart-e a versenytársakkal, vagy lemarad.

A vállalati és ügyféladatok valódi értékének feltárására és a legjobb döntések meghozatalára a gépi tanulás jelenti a megoldást. Egy hegesztő folyamat példáján keresztül megmutatjuk, hogy mik az alaplépések egy adatalapú, gépi tanulással fűszerezett projekt során.

A folyamat megértése, a cél kitűzése

Bármely adattudomáyi projekt talán legfontosabb szakasza a kezdeti üzleti megértés. Ez az a pont, ahol a projekt céljai üzleti szempontból is értelmezhetővé válnak. Ezen ismereteket adattudományi problémameghatározássá kell alakítani, majd a célok eléréséhez előzetes munkaterv kidolgozására kerül sor. Annak érdekében, hogy világossá váljék, mely adatokat és hogyan kell később elemezni, létfontosságú, hogy az adatokkal foglalkozó szakemberek teljes mértékben megértsék azt az üzletet, amelyre megoldást keresnek. Az üzleti megértés szakasza több kulcsfontosságú lépésből áll, beleértve az üzleti célok meghatározását, a helyzet felmérését, az adattudományi célok meghatározását és a projektterv elkészítését.

Jelen példánkban adott néhány fémdarab, melyek összehegesztéséből komplett biciklivázat alkotunk. A bicikliváz minőségének megbízhatósága nagyban függ az összekapcsoló hegesztések minőségétől, biztonságtechnikai okokból is kritikusnak számít ez a lépés. A hegesztés minősége többtényezős egyenlet: látható hibának számít például az alkotóelemek nem megfelelő illesztése vagy a hegesztési ív beégése, ezek a hibák viszonylag könnyen észrevehetők. Azonban emberi (vagy gépi) szem számára láthatatlan, hogy milyen erős maga a hegesztett kötés. 

A gyakorlatban ezt az erősséget csak roncsolásos teszt útján tudjuk megmérni, azaz valójában tönkretesszük a kész terméket azért, hogy megvizsgáljuk a minőségét. Az elkészült vázat kiemeljünk a gyártósorról, és az összes hegesztési pontját teszteljük. Ha nem megfelelő szakítóerőt mérünk, akkor a megbukott vázat  selejtnek minősítjük. Ezzel a módszerrel azonban két probléma merülhet fel: egyrészt feleslegesen végezzük el a vázon lévő összes hegesztést, ha már az első sem megfelelő minőségű, másfelől pedig a tesztelés maga módosíthatja a váz minőségét. Szükségünk lenne egy olyan rendszerre, ami nagy pontossággal meg tudja mondani nekünk, hogy mekkora lesz egy hegesztésnek a szakítóereje. A már a bevezetőben is említett megoldással, adatokra építkező gépi tanulással fogjuk ezt az erőt prediktálni.

Adatok rendelkezésre állása, kezelése és megértése

A gépi tanulási folyamat következő lépése az adatok beszerzése. Ez a gyűjtött adatok típusától és az adatok forrásától függ. Ezek lehetnek statikus adatok egy meglévő adatbázisból vagy valós idejű adatok egy IoT-rendszerből, vagy más adattárakból származó adatok. Releváns adatforrásokat kell azonosítani, és tiszta, jó minőségű adatot szükséges gyűjteni, amelynek kapcsolata a célváltozókkal érthető és megalapozott.

Az esettanulmány célja a hegesztési erő prediktálása, de mi alapján fogjuk ezt megtenni? Olyan adatokat kell gyűjtenünk, amik jól jellemzik a hegesztés folyamatát, és amikben megmutatkoznak olyan kisebb-nagyobb különbségek, amik alapján majd a szakítóerő megjósolható. Ilyen adat lehet például a hegesztési folyamat során alkalmazott erő, áram és feszültség, az éppen aktuális környezeti hatások, vagy akár a hegesztést végző operátor tapasztalata és fáradtsági szintje.

Adattisztogatás

A valós adat gyakran rendezetlen, redundáns, vagy hiányzó elemeket tartalmaz. Ahhoz, hogy adatokat vigyünk be a gépi tanulási modellbe, először meg kell tisztítanunk, elő kell készítenünk és manipulálnunk kell az adatokat. Ez a gépi tanulási munkafolyamat legmeghatározóbb lépése, és egyben a legtöbb időt is ez veszi igénybe. Az adatok bármilyen formátumúak lehetnek, sokféle helyről érkezhetnek. Az adatokat (tisztítás után) érvényes formátumúvá kell konvertálni, amelyek betáplálhatók a gépi tanulási algoritmusba. Végül ezeket az adatkészleteket tovább bontjuk tanuló és teszt adathalmazokra. A tanuló halmaz a modell betanításához használandó, a teszt halmaz a modell érvényesítésére szolgál. Gyakorlatban általában 20-80 százalékos arányban szokás tanuló és tesztadatra választani a rendelkezésre álló adatot. Fontos, hogy az adatokat nem lehet keverni vagy újra felhasználni a tesztelési és betanítási adatkészlethez.

A hegesztési folyamat során keletkezett különböző adatokat először párba kell állítanunk az adott hegesztési ponthoz tartozó mért szakítóerő nagyságával, majd a szükséges tisztítási procedúrán kell végig haladnunk. Ennek a fázisnak a hossza és a nehézsége nagyban függ az adatgyűjtés módjától, az adatok rendelkezésre állásától és persze a nagyságától. Ilyen tisztítási feladat lehet például a különböző mértékegységek egységesítése, vagy az időzónák összesimítása. A munka során különösen ügyelnünk kell arra, hogy a különböző megfigyelésekhez tartozó adatok nehogy összekeveredjenek, illetve arra, hogy minden transzformáció indokolt és érthető legyen minden résztvevő számára.

Modellépítés, tanítási fázis

A gépi tanulási munkafolyamat következő lépése a modell betanítása. A modell betanításához különböző gépi tanulási algoritmusokat (pl. döntési fák, neurális hálók, legközelebbi szomszédok módszere) használunk a betanítási adatkészleten. Ezek az algoritmusok matematikai modellezést használnak a viselkedések megtanulásához és előrejelzéséhez.

Mivel a szakító erő egy numerikus folytonos érték (azaz a számtengelyen tetszőleges pozitív értéket felvehet), ezért ebben a helyzetben úgynevezett regressziós modellek összehasonlítása, és azok közül a leghatékonyabbnak a kiválasztása a feladatunk. A regressziós modellek az ismert bemenetek és a folytonos értékű kimenet között keres az emberi szem számára láthatatlan – de legalábbis nehezen észrevehető – kapcsolatot. Számos ismert regressziós modell áll rendelkezésre a különböző gépi tanulási platformokon, tehát nem kell aggódnunk a tanulási folyamat fejlesztésén.

Tesztelés, az eredmények kiértékelése

A modell betanítása után tesztelnünk és validálnunk kell a további feldolgozáshoz. A korábban kijelölt tesztadat felhasználásával ellenőrizhetjük a modell pontosságát. Ha az eredmények nem kielégítőek, a modellt tovább kell javítani. A modellt újra és újra betanítjuk és fejlesztjük addig, amíg az eredmények kielégítőek nem lesznek. Ebbe a finomhangolási folyamatba az üzleti feleket is bevonjuk figyelembe véve az ő észrevételeiket is. A kiválasztatott algoritmus tanulási jellemzőit, azaz a hiperparamétereket hangolva javíthatjuk a modell prediktáló erejét, növelhetjük a pontosságot.

Az eredmények kiértékelése közben nem elég pusztán a megérzéseinkre hagyatkozni, be kell vezetnünk olyan mérőszámokat, amelyek objektív képet adnak a modellek összehasonlításához. Ilyen mérőszám például az átlagos százalékos eltérés, aminek nagy előnye, hogy a többi gyakran használt mértékkel szemben figyelembe veszi a célértékek nagyságát is. Józan ésszel végiggondolva ez nem elhanyagolható, hiszen teljesen más teljesítményű lehet két modell ugyanakkora átlagos hibával.

Képzeljünk el két feladatot: az egyik esetben a holnapi átlaghőmérsékletet kell megjósolnunk, a másikban pedig egy IT óriás holnapi részvénypiaci árát. A hőmérséklet prediktálása esetén egy 20°C-os nap esetén a 10°C-os eltérés 50 százalékos hibának felel meg, míg, ha az adott IT cég részvényei 3000 dollár körül mozognak, akkor egy 10 dolláros eltérés csupán 0,33 százalékos eltérést jelent. Ebből is látszik, hogy mennyire fontos a jól megválasztott mérőszám. A célérték, azaz a tűréshatár pedig egy 100 százalékban személyes vélemény, mindig az üzleti felhasználó dönti el, hogy mekkora hibahatár alatt nyilvánítja elég jónak a predikciót.

Záró lépések

Amint betanítjuk a modellt, máris telepíthető és gyártási folyamatba helyezhető, valós ipari környezetben nyújtott teljesítőképességének tesztelése céljából. Az itt felvázolt gépi tanulási projektkeret meglehetősen szabványos folyamat. Amint egy csapat a saját problémáival végigmegy ezen a folyamaton, a szereplők elkezdenek felfedezni néhány további gépi tanulási lépést, amelyek hasznosak lehetnek az adott projekt szempontjából. Például az adatok tisztogatása során újabb és újabb kérdéseket találhatunk, amelyeket az üzleti cél pontos megértése végett kell megválaszolni. A modell hangolása során ráébredhetünk, hogy több vagy másmilyen adatra van szükségünk, és így tovább. A legfontosabb az, hogy folytassuk az iterációt, amíg meg nem találjuk a projekthez leginkább illő modellt.
 

Borítókép: Pete Wright // Unsplash