Főoldal

"Mérnököt a mérnöktől"

A Schönherz Bázis összeköti az állást kereső és állást kínáló mérnököket.

CV küldés

Küldj önéletrajzot! Gyorsan, egyszerűen.
Megjegyzésbe írd be a pozíció nevét.
CV küldés

Iratkozz fel hírlevelünkre!

Hírek

Deep Learning gyorstalpaló érdeklődőknek
Deep Learning gyorstalpaló érdeklődőknek

A mesterséges intelligencia (MI, AI-Artificial Intelligence) és a gépi tanulás (ML-Machine Learning) a legkeresettebb témák egyike.

Az “MI” kifejezéssel nap mint nap találkozunk. Számtalan feltörekvő fejlesztő szájából hangzik el, hogy MI-vel szeretne foglalkozni, a cégvezetők pedig MI-t akarnak alkalmazni a szolgáltatásaikban. Ám a legtöbbször ők sincsenek tisztában azzal, mi is az az MI.

A cikk végére tisztázzuk az MI és az ML alapjait. Valamint ami még fontosabb, hogy a Deep Learning-et, az MI legelterjedtebb típusát is bemutatjuk.


Háttérinformációk

Az első lépés a megértés felé vezető úton, hogy lássuk a különbséget az alapvető kifejezések között.


Mesterséges intelligencia vs. gépi tanulás


A mesterséges intelligencia az emberi intelligencia lemásolása számítógépekben. Az MI kutatásának hajnalán a szakemberek specifikus feladatokra akarták lemásolni az emberi intelligenciát - pl. egy játékot játszani. Rengeteg szabály betáplálása után a gép a a korlátozott számú lehetséges eseményből kiválasztotta azokat, amelyek megfeleltek a szabályoknak.


A gépi tanulás azt jelenti, hogy a gép előre lefektetett szabályok helyett nagy adathalmazok alapján tanul. Az MI lehetővé teszi, hogy a gépek maguktól tanuljanak. Ehhez a modern rendszerek hatalmas számítási teljesítményét használja ki, így nagy tömegű adatot dolgozhat fel.


Ellenőrzött vs nemellenőrzött tanulás


Az ellenőrzött tanulás során felcímkézett adathalmazokat használunk, ahol a bemenetekhez megadjuk az elvárt kimenetet. Amikor ellenőrzött tanulással tanítunk be egy MI-t, akkor megadjuk az adott bemenethez tartozó elvárt kimenetet. Ha az MI által adott kimenet helytelen, akkor javítja a számításait. Ezt addig ismétli, amíg az egész adathalmazra az elvárt eredményt nem adja. Erre egy példa az időjárás-előrejelző MI. Történelmi adatok alapján tanul. A betanító adatoknak vannak bemenetei (légnyomás, páratartalom, szélsebesség...) és kimenetei (hőmérséklet...).


A nemellenőrzött tanulás során jelöletlen adathalmazokat alkalmazunk. Ilyenkor az MI magától osztályozza a beérkező adatokat. Utóbbira példa lehet egy e-kereskedelmi oldal. Ez nem címkézett adatok alapján tanul, hanem osztályozza a bemenő adatokat és megmondja, milyen típusú felhasználó milyen termékek vásárlására hajlamos.


Akkor hogy is működik a Deep Learning?


Most már készen állsz, hogy megértsd, hogyan működik a DL. A Deep Learning egy gépi tanulási módszer. Használatával egy bemenő adathalmazzal betaníthatunk egy MI-t. Ezt ellenőrzött és nemellenőrzött módon is megtehetjük.

A Deep Learning működését egy hipotetikus repülőjegy-árbecslő szolgáltatáson keresztül ismerjük meg. Ellenőrzött módszerrel fogjuk betanítani.


Azt akarjuk, hogy az árbecslőnk a következő bemenetek alapján állapítsa meg az árat (az egyszerűség kedvéért csak egy irányt nézünk):

  • Kiindulási reptér
  • Érkezési reptér
  • Utazási időpont
  • Légitársaság


Neurális hálózatok


Nézzünk bele az MI-nk agyába. Akár csak az állatoké, a becslőnk agya is neuronokból áll. Körök jelölik őket és kölcsönösen össze vannak kötve.


                                                                             

                                        


A neuronok három különböző csoportra oszlanak:

  • Bemeneti réteg
  • Rejtett réteg(ek)
  • Kimeneti réteg


A bemeneti réteg fogadja a bemeneti adatokat. Esetünkben 4 neuron található itt: kiindulási reptér, érkezési reptér, utazási időpont, légitársaság. Innen az első rejtett rétegbe jut az információ. A rejtett rétegek matematikai számításokat végeznek a bemeneteken. A neurális hálók tervezésének egyik kihívása a rejtett rétegek és neuronjaik számának meghatározása. A “Deep” a Deep Learning kifejezésben arra utal, hogy egynél több rejtett réteg van a hálózatban. A kimeneti réteg adja meg a kimeneti adatokat, esetünkben a becsült árakat.


                                                                           


Szóval hogy is számítja ki az árbecslést? A Deep Learing csodája itt kezdődik. A neuronok közötti összes kapcsolat súlyozva van. A súly jelenti az adott input fontosságát. A kezdeti súlyokat véletlenszerűen állítják be. Egy jegyár meghatározásakor az indulási idő egy erősebb faktor, így a hozzá kapcsolódó neuronok súlya nagyobb lesz. Minden neuronhoz tartozik egy aktivációs függvény. Ezek matematikai magyarázat nélkül nehezen érthetőek. Egyszerűen szólva ennek egyik célja a neuronok kimenetének “standardizálása”. Amint a bemenő adat végigjárt minden belső réteget, a kimenő rétegen kapjuk vissza az eredményt. Egész egyszerű, ugye?


A neurális háló betanítása


Az MI betanítása a Deep Learning legnehezebb része. Miért is?


  1. Nagy adathalmaz szükséges
  2. Nagy számítási kapacitás szükséges


Az árbecslőnkhöz történelmi adatok kellenek a jegyárakról. Az indulási idők és repterek hatalmas száma miatt a jegyárak listája is hatalmas lesz. Az MI betanításához sok inputot kell adnunk neki, az eredményt pedig összehasonlítani a történelmi adatokkal. Mivel még nincs betanítva, ezek nem fognak egyezni. Ahogy bejárjuk az adathalmazunkat, felvehetünk egy függvényt, ami megmutatja az MI kimenetének eltérését a helyes eredményektől. Ez a hibafüggvény. Ideális esetben azt akarjuk, hogy a hibafüggvényünk nulla legyen, ekkor az MI kimenetei egyeznek az adathalmazunk kimeneteivel.


Hogyan csökkenthetjük a hibafüggvényt?


Módosíthatjuk a neuronok közötti súlyok értékét. Változtathatnánk őket véletlenszerűen, amíg a hibafüggvényünk le nem csökken, de ez nem lenne túl hatékony. Ehelyett a gradiens leereszkedés nevű módszert használjuk. A gradiens leereszkedés segítségével megkereshetjük egy függvény minimumát, esetünkben a hibafüggvényét. Ez úgy működik, hogy minden iteráció után kissé megváltoztatja a súlyokat. A hibafüggvény egy adott súlyhalmazhoz tartozó gradiense (deriváltja) megmutatja, hogy melyik irányban van a minimum. A minimum megtalálásához sokszor kell bejárnunk az adathalmazt, ezért van szükség nagy számítási kapacitásra.

                                                                         


A súlyok optimalizálása a gradiens leereszkedéssel automatikusan történik, így ha betanítjuk a jegyárbecslőnket, már képes lesz megbecsülni a jövőbeli árakat. Hát ezért csodás a Deep Learning!


(Forrás)

***

Ha Te is kreatív, kihívásokkal teli mérnök állást keresel minõségi munkáltatónál, jó helyen jársz, mert a Schönherz Bázis épp azért jött létre, hogy Neked segítsen.
Gyere, nézz szét aktuális állásaink között!