A fordított folyamat mint tanult Markov lánc
Az előre folyamat rögzített és nem tanul, a fordított folyamat (reverse process) ezzel szemben pontosan az, amit a háló megtanul. Ez is egy Markov lánc, de az ellenkező irányba halad. Tiszta zajból indul, és lépésenként egyre kevésbé zajos képhez jut, egészen a kész képig. A DDPM tanulmány szerint minden egyes visszalépés szintén egy Gauss átmenet, aminek a paramétereit a háló becsli meg. A modell tehát nem egy ugrással próbál zajból képet varázsolni, hanem sokszor alkalmazza ugyanazt a kis zajtalanító lépést, pontosan tükrözve az előre folyamat sok apró zajosító lépését.
A zajt becsüljük, nem a képet
A DDPM tanulmány egyik legfontosabb felismerése az, hogy a hálónak nem a tiszta képet érdemes megjósolnia, hanem a hozzáadott zajt. A háló bemenete egy zajos kép és annak a lépésnek a sorszáma, ahol éppen tartunk, a kimenete pedig a becslés arról, hogy mennyi és milyen zaj került rá. Ha a zajbecslés jó, akkor azt a megfelelő arányban kivonva a képből egy kicsit tisztább képet kapunk. Ez a zajbecslő megközelítés, amit a szakirodalom epszilon becslésnek (epsilon prediction) nevez, egyszerűbbé és stabilabbá teszi a tanulást, mint ha közvetlenül a képet próbálnánk megjósolni. A becsült zajból egyszerű számítással áll elő a következő, kevésbé zajos kép.
Miért kell a lépés sorszáma
Egyetlen háló látja el az összes lépést, nem tanítunk ezerféle külön hálót. Ahhoz azonban, hogy a háló tudja, éppen hol tart a folyamatban, meg kell mondanunk neki a lépés sorszámát. Ez azért fontos, mert a folyamat elején, amikor a kép már majdnem tiszta, egészen más finom igazításra van szükség, mint a folyamat elején, amikor még szinte minden zaj. A lépés sorszáma egy beágyazott formában érkezik a hálóba, és ettől ugyanaz a háló másképp viselkedik a különböző zajszinteken. Így egyetlen megtanult zajtalanító lépés rugalmasan alkalmazkodik a folyamat minden szakaszához.
Az U-Net architektúra
A DDPM tanulmány a zajbecslő hálóhoz U-Net architektúrát használ. Az U-Net neve az U betűre utaló alakjából ered. A háló először fokozatosan összenyomja a képet, egyre kisebb, de egyre elvontabb belső leírásokat készít, majd ugyanígy fokozatosan visszanagyítja azt a kimeneti méretre. Ami az U-Netet különösen alkalmassá teszi erre a feladatra, azok az úgynevezett átugró kapcsolatok (skip connections). Ezek a lenyomó és a visszanagyító oldal azonos szintjeit kötik össze, így a finom, helyi részletek nem vesznek el a tömörítés során. Ez a képfeldolgozásban bevált forma, mert egyszerre kezeli a kép nagy léptékű szerkezetét és az apró részleteket, ami pontosan a zajtalanításhoz kell.
A lényeg egy mondatban. A fordított folyamat sok tanult zajtalanító lépésből áll, és minden lépésben ugyanaz az U-Net zajbecslő háló mondja meg, mennyi zajt kell kivonni a képből, a lépés sorszámától függően.
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 →