Andersonův úhel
Grafické procesory mohou být lepší, ne jen rychlejší, při trénování hlubokých neuronových sítí

Výzkumníci z Polska a Japonska, kteří spolupracovali se Sony, našli důkazy, že systémy strojového učení trénované na grafických procesorech (GPU) místo procesorů (CPU) mohou obsahovat méně chyb během trénovacího procesu a produkovat lepší výsledky, což popírá běžné chápání, že GPU prostě provádějí tyto operace rychleji, nikoli lépe.
Výzkum, nazvaný Vliv nejistoty GPU na trénování předpovědních hlubokých neuronových sítí, pochází z Fakulty psychologie a kognitivních věd na Univerzitě Adama Mickiewicze a dvou japonských univerzit, společně se Sony Computer Science Laboratories.
Studie naznačuje, že ‘nejistoty’, které hluboké neuronové sítě vykazují v různých hardwarových a softwarových konfiguracích, favorizují dražší (a stále vzácnější) grafické procesory, a zjistili, že hluboká neuronová síť trénovaná výhradně na CPU produkovala vyšší chybovost přes stejné číslo epoch (početkrát, kolik systém zpracovává trénovací data během relace).

V tomto doplňkovém příkladu z dokumentu vidíme (dolní dvě řádky), podobnou kvalitu výsledků získanou z různých GPU, a (první řádek), horší výsledky získané z různých jinak velmi schopných CPU. Zdroj: https://arxiv.org/pdf/2109.01451.pdf
Divné jevy
Tyto předběžné výsledky se nevztahují rovnoměrně na všechny populární algoritmy strojového učení, a v případě jednoduchých autoencoderových architektur, se jev neobjevuje.
Nicméně práce naznačuje možnou ‘únikovou rychlost’ pro účinnost trénování v komplexních neuronových sítích, kde pokrytí stejných operací při nižší rychlosti a delších trénovacích časech nezíská očekávanou rovnocennost výkonu, kterou by mělo mít matematické iterativní rutiny.
Výzkumníci naznačují, že tento rozdíl ve výkonu by mohl být specifický pro určitý typ neuronových sítí, a že neurčité aspekty zpracování specifického pro GPU, často považované za překážku, která bude nakonec překonána, nemusí pouze poskytovat významné výhody, ale mohly by být nakonec záměrně začleněny do pozdějších systémů. Dokument také naznačuje, že výsledky by mohly poskytnout hlubší vhled do mozkového zpracování.
Identifikace zvláštností, které zvyšují efektivitu a kvalitu výsledků tímto způsobem na GPU, má potenciál pro získání hlubšího vhledu do ‘černé skříňky’ architektur AI, a dokonce pro zlepšení výkonu CPU – i když目前, základní příčiny jsou nejasné.
Autoencoder vs. PredNet
Při studiu anomálií výzkumníci použili základní autoencoder a také Predictivní neuronovou síť Harvardovy univerzity PredNet, výzkum z roku 2016, který byl navržen pro prozkoumání a pokus o replikaci chování lidské mozkové kůry.
Oba systémy jsou hluboké neuronové sítě navržené pro syntézu vhodných obrazů prostřednictvím nesupervizovaného učení (s daty, ze kterých byly odstraněny štítky), ačkoli autoencoder lineárně zpracovává jeden obraz na dávku, který by poté produkoval výstup jako další obraz v opakujícím se potrubí. Autoencoder byl trénován na MNIST databázi rukopisného písma.

Autoencoder ve výzkumných testech byl trénován na MNIST databázi, která se skládá z 60 000 trénovacích obrazů o rozměrech 28×28 pixelů, anti-aliasingu pro šedou indukci, stejně jako 10 000 testovacích obrazů.
Naproti tomu PredNet vyhodnocuje komplexní video vstup, a v případě tohoto výzkumu, byl trénován na FPSI dataset, který obsahuje rozsáhlé videozáznamy z těla nosiče na den v Disney Worldu v Orlandu, Floridě (Disney byl jedním z výzkumných asociátů na dokumentu z roku 2012).

Sekvence obrazů z FPSI, zobrazující první osobní pohledy na den v Disney Worldu.
Dvě architektury jsou velmi odlišné z hlediska složitosti. Autoencoder je navržen pro rekonstrukci obrazů spíše než pro předpověď cílových hodnot. Naproti tomu PredNet má čtyři vrstvy, z nichž každá se skládá z reprezentačních neuronů, které používají konvoluční dlouhou krátkodobou paměť (LSTM).
Vrstvy produkují kontextové předpovědi, které jsou poté porovnány s cílem, aby produkovaly chybový termín, který se propaguje po celé síti. Obě modely využívají nesupervizované učení.

Jednoduchá, lineární architektura autoencoderu a více labyrintní a rekursivní síť PredNetu.
Oba systémy byly testovány na různých hardwarových a softwarových konfiguracích, včetně CPU bez GPU (Intel i5-4590, i7-6800K, i5-7600K, nebo AMD Ryzen-5-3600) a CPU s GPU (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 super, AMD Ryzen-5-3600 + RTX-2070 super, nebo i5-9400 + Titan-RTX).
Interaktivní prohlížeč procesu htop byl použit k zajištění, že veškeré trénování probíhalo buď na jednom vláknu (na Intel i7-6800K), na čtyřech vláknech (na Intel i5-4590 a i5-7600K), nebo na šesti vláknech (na AMD Ryzen-5-3600).
Sedla
Na autoencoderu byl průměrný rozdíl napříč všemi konfiguracemi, s a bez cuDNN, nebyl významný. Pro PredNet byly výsledky více překvapivé, s pozoruhodnými rozdíly v hodnocení ztráty a kvality mezi trénováním CPU a GPU.

Průměrné výsledky ztráty pro trénování PredNetu na čtyřech CPU a osmi GPU, se sítí trénovanou na 5000 video rámcích ve 250 dávkách, s průměrnou ztrátou pro posledních 1000 rámců (50 dávek) znázorněnou. cuDNN byl vypnut.
Výzkumníci uzavírají, že ‘Ačkoli mechanismus není jasný, hardwarový GPU parece mít schopnost zlepšit trénování DNN.’
Výsledky naznačují, že GPU mohou být lepší při vyhýbání se sedlům – oblastem v gradientním sestupu, které popisují dno svahu.

Nadir svahů v gradientním sestupu je ‘sedlo’, pojmenované zřejmými důvody. Zdroj: https://www.pinterest.com.au/pin/436849232581124086/
Sedla, ačkoli jsou překážkou, byly většinou odmítnuty jako snadno obejitelné v nedávném myšlení o optimalizaci stochastického gradientního sestupu (SGD), ale nový dokument naznačuje, že nejenže GPU mohou být jedinečně vybaveny pro vyhýbání se jim, ale že vliv sedel by měl být perhaps přehodnocen.












