Bevezetés a mélytanulásba · Lecke 06

Konvolúciós neurális hálók és a gépi látás

A képek feldolgozásához külön felépítésű háló kell, amely tiszteletben tartja a kép térbeli szerkezetét. Ebben a leckében megnézzük, mi a konvolúció, hogyan keresnek mintázatot a szűrők, mire jó a pooling, hogyan áll össze mindebből egy konvolúciós háló, és milyen fő feladatokat old meg a gépi látás.

Vissza a tananyaghoz


Miért nem elég egy sűrű háló

Egy kép sok ezer, akár millió képpontból áll, és a szomszédos képpontok összefüggnek egymással. Élek, textúrák, formák mind lokális mintázatok. Ha egy képet egyszerűen kiterítenénk egyetlen hosszú számsorrá, és egy teljesen kapcsolt hálóra bíznánk, két baj lenne. Egyrészt hatalmas mennyiségű súlyra volna szükség, ami nehezen tanítható. Másrészt elveszne a térbeli szerkezet, pedig éppen az hordozza a képi információt. Ezért a gépi látás nem sűrű, hanem konvolúciós hálót használ, amely megőrzi és kihasználja a kép elrendezését.


A konvolúció

A konvolúció (convolution) lényege egy kis méretű szűrő (filter), más néven kernel, amelyet végigcsúsztatunk a képen. A szűrő minden pozícióban a lefedett képpontokkal súlyozott összeget képez, és az eredmény egy új rács, amit jellemzőtérképnek (feature map) nevezünk. Egy szűrő mindig ugyanazt a lokális mintázatot keresi, például egy adott irányú élt, bárhol is bukkan fel a képen. Ezt hívjuk súlymegosztásnak, mert ugyanazt a néhány súlyt alkalmazzuk a kép minden pontján. Ennek fontos következménye, hogy a háló akkor is felismeri a mintázatot, ha az a kép más részére csúszik el.


bemeneti kép a szűrő végigcsúszik szűrő súlyozott összeg jellemzőtérkép minden pozíció egy érték
A szűrő végigcsúszik a képen, és minden pozícióban súlyozott összeget képez. A sok érték együtt alkotja a jellemzőtérképet, amely megmutatja, hol jelenik meg a keresett mintázat.

Rétegek egymásra épülése

Egy konvolúciós réteg általában nem egyetlen, hanem sok szűrőt tanul, mindegyik más mintázatra érzékeny. Az első réteg egyszerű dolgokat ismer fel, éleket és színátmeneteket. A rákövetkező rétegek az előző réteg jellemzőtérképeit dolgozzák fel, így egyre összetettebb mintázatokat építenek, sarkokból formákat, formákból tárgyrészeket, végül egész tárgyakat. Ez pontosan az a hierarchia, amit az első leckében a mélytanulás lényegeként említettünk, itt a képek konkrét esetére alkalmazva.


Első rétegélek, színátmenetek
Középső rétegekformák, tárgyrészek
Felső rétegekegész tárgyak

Pooling

A konvolúció mellett a másik jellemző művelet a pooling, magyarul összevonás, amely a jellemzőtérképet kisebbre zsugorítja. A leggyakoribb változat a maximum pooling (max pooling), amely egy kis ablakon belül csak a legnagyobb értéket tartja meg. Ennek két haszna van. Egyrészt csökkenti az adat méretét, ezáltal a számításigényt és a súlyok számát is. Másrészt egyfajta tűrést ad, mert ha a mintázat kicsit elcsúszik, a maximum nagy eséllyel ugyanaz marad, így a háló kevésbé érzékeny a pontos helyzetre.


  1. KonvolúcióA szűrők végigpásztázzák a bemenetet, és jellemzőtérképeket állítanak elő.
  2. AktivációEgy nemlineáris függvény, jellemzően a ReLU, engedi át a jellemzőtérkép értékeit.
  3. PoolingAz összevonás kisebbre zsugorítja a térképet, és tűrést ad a kis eltolódásokra.
  4. OsztályozásTöbb ilyen blokk után egy teljesen kapcsolt réteg dönti el, mit ábrázol a kép.

kép konv + pool konv + pool konv + pool teljesen kapcsolt macska 0,86 kutya 0,09 egyéb 0,05
A tipikus konvolúciós háló felépítése. Konvolúciós és pooling blokkok követik egymást, a jellemzőtérkép egyre kisebb, végül egy teljesen kapcsolt réteg adja az osztályozás valószínűségeit.

A gépi látás fő feladatai

A konvolúciós hálók a gépi látás számos feladatában alapvetők. A képosztályozás egyetlen címkét ad az egész képnek, például hogy macska vagy kutya látható rajta. Az objektumdetektálás ezen túlmegy, és nem csak felismeri, hanem be is határolja, hol vannak a tárgyak a képen. A szemantikus szegmentálás még finomabb, minden egyes képpontot besorol egy kategóriába, így a kép pontos térképét adja arról, mi hol található. Mindhárom ugyanarra a konvolúciós alapra épül, csak a kimenet és a fej felépítése tér el.


← Előző lecke Következő lecke →

Workshop

AI Transformation Day

Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.

Érdekel a program →