Előtanított modellek

Architektúra jelentése

Egy neurális háló architektúrája magába foglalja, hogy a háló hány rétegből áll, milyen típusú rétegek követik egymást, és azok hogyan kapcsolódnak egymáshoz. A különböző architektúrák más-más feladatokat tudnak jól ellátni, különböző típusú mintázatok felismerésében jeleskednek. Képfeldolgozásban népszerű a ResNet, VGG és MobileNet, objektumdetektálásra a YOLO és a Faster R-CNN variánsai elterjedtek. Képszegmentálási feladatokra gyakran használják az U-Net architektúrát, de újabban népszerűek a SAM modellek is.

Előtanított modellek

Egy neurális háló betanítása nagy mennyiségű adatot és számítási kapacitást igényel, ezért gyakori a mások által előtanított modellek használata. Ezeket a modelleket már korábban betanították nagy méretű, általános célú adathalmazokon (például ImageNet vagy COCO), de egészen specifikus adathalmazokon tanult modellek is széles körben elérhetők az interneten akár ingyenesen is.

Gerinc és fej

Egy neurális háló architektúrája gyakran két fő részre bontható, gerincre (backbone) és fejre (head). A gerinc feladata a jellemzőkinyerés, és tipikusan a rétegek nagy része ide sorolható. Fokozatosan egyre összetettebb mintákat ismernek fel az egymást követő rétegek. A neurális háló utolsó néhány rétege a fej, amely a konkrét feladathoz szükséges kimenetet állítja elő, például osztályozáshoz eloszlást, lokalizációhoz koordinátákat.

Két vagy több fej:

Előfordulhat, hogy egy neurális háló egyszerre több feladatra képes, többféle kimenetet ad, ilyenkor egy közös gerinchez több különálló fej tartozik. Egy objektumdetektáló architektúra például egyszerre határozza meg az objektum típusát és a befoglaló téglalap koordinátáit. Az egyik fej az osztályozást végzi, a másik regressziós feladatot lát el. A fejek így a közös gerinc által a kinyert jellemzőket eltérő módon hasznosítják.

Nyak:

Néhány modell részeinek bemutatásakor annak összetettsége miatt megkülönböztetnek egy harmadik részt, amelynek neve nyak (neck). Gyakran ide sorolható a Feature Pyramid Network (FPN), amely a backbone által kinyert jellemzőket több skálán értelmezi, lehetővé téve különböző méretű objektumok detektálását.

Transfer learning

Az előtanított modellek már képesek alapvető mintázatok (élek, textúrák és formák) felismerésére, ezért egy új feladatnál nem kell a tanítást az elejéről kezdeni. Egy előtanított modell tudását tovább bővítve jelentősen csökken a szükséges adatmennyiség és a tanítási idő, és általában jobb pontosság érhető el. A gyakorlatban úgy néz ki a transfer learning folyamata, hogy miközben a gerinc be van fagyasztva, az új feladatra alkalmas fej néhány epoch-on keresztül tanulja az új adatokat, és ezzel meg is valósult a transfer learning.

Fine-tuning

A finomhangolás a transfer learning kiterjesztése. Ilyenkor nemcsak a fej van tanítva, hanem a gerinc néhány utolsó rétege is feloldásra kerül, így folytatódik a tanítás az új adathalmaz segítségével. A fine-tuning során a modell jobban alkalmazkodhat az adott problémához, amellyel tovább emelkedhet a pontosság.