AI-For-Beginners/translations/cs/lessons/4-ComputerVision/07-ConvNets/CNN_Architectures.md

5.8 KiB

Dobře známé architektury CNN

VGG-16

VGG-16 je síť, která v roce 2014 dosáhla 92,7% přesnosti v klasifikaci ImageNet top-5. Má následující strukturu vrstev:

ImageNet Layers

Jak můžete vidět, VGG využívá tradiční pyramidovou architekturu, což je sekvence vrstev konvoluce a pooling.

ImageNet Pyramid

Obrázek z Researchgate

ResNet

ResNet je rodina modelů navržená Microsoft Research v roce 2015. Hlavní myšlenkou ResNet je použití reziduálních bloků:

Obrázek z tohoto článku

Důvodem použití identity pass-through je, aby naše vrstva předpovídala rozdíl mezi výsledkem předchozí vrstvy a výstupem reziduálního bloku - odtud název reziduální. Tyto bloky se mnohem snáze trénují a je možné vytvořit sítě s několika stovkami těchto bloků (nejběžnější varianty jsou ResNet-52, ResNet-101 a ResNet-152).

Tuto síť si také můžete představit jako schopnou přizpůsobit svou složitost datové sadě. Na začátku, když začínáte síť trénovat, jsou hodnoty vah malé a většina signálu prochází vrstvami identity. Jak trénink pokračuje a váhy se zvětšují, význam parametrů sítě roste a síť se přizpůsobuje tak, aby poskytla potřebnou expresivní sílu pro správnou klasifikaci tréninkových obrázků.

Google Inception

Architektura Google Inception posouvá tuto myšlenku o krok dál a buduje každou vrstvu sítě jako kombinaci několika různých cest:

Obrázek z Researchgate

Zde je třeba zdůraznit roli konvolucí 1x1, protože na první pohled nedávají smysl. Proč bychom měli procházet obrázek filtrem 1x1? Musíte si však uvědomit, že konvoluční filtry pracují také s několika hloubkovými kanály (původně - RGB barvy, v následných vrstvách - kanály pro různé filtry) a konvoluce 1x1 se používá k míchání těchto vstupních kanálů pomocí různých trénovatelných vah. Může být také považována za downsampling (pooling) přes dimenzi kanálů.

Zde je dobrý blogový příspěvek na toto téma a původní článek.

MobileNet

MobileNet je rodina modelů s redukovanou velikostí, vhodná pro mobilní zařízení. Použijte je, pokud máte omezené zdroje a můžete obětovat trochu přesnosti. Hlavní myšlenkou je tzv. hloubkově separovatelná konvoluce, která umožňuje reprezentovat konvoluční filtry jako kompozici prostorových konvolucí a konvoluce 1x1 přes hloubkové kanály. To výrazně snižuje počet parametrů, což činí síť menší a také snadněji trénovatelnou s menším množstvím dat.

Zde je dobrý blogový příspěvek o MobileNet.

Závěr

V této kapitole jste se naučili hlavní koncept za neuronovými sítěmi pro počítačové vidění - konvolučními sítěmi. Architektury používané v reálném světě pro klasifikaci obrázků, detekci objektů a dokonce i generování obrázků jsou všechny založeny na CNN, jen s více vrstvami a některými dalšími tréninkovými triky.

🚀 Výzva

V přiložených noteboocích jsou poznámky na konci o tom, jak dosáhnout vyšší přesnosti. Udělejte několik experimentů a zjistěte, zda můžete dosáhnout vyšší přesnosti.

Kvíz po přednášce

Přehled & Samostudium

I když se CNN nejčastěji používají pro úlohy počítačového vidění, obecně jsou dobré pro extrakci vzorů s pevnou velikostí. Například pokud pracujeme se zvuky, můžeme také chtít použít CNN k hledání specifických vzorů v audio signálu - v takovém případě by filtry byly jednorozměrné (a tato CNN by se nazývala 1D-CNN). Také se někdy používá 3D-CNN k extrakci funkcí v vícerozměrném prostoru, například určitých událostí, které se odehrávají na videu - CNN může zachytit určité vzory změn funkcí v průběhu času. Udělejte si přehled a samostudium o dalších úlohách, které lze s CNN provádět.

Úkol

V tomto laboratorním cvičení máte za úkol klasifikovat různé plemena koček a psů. Tyto obrázky jsou složitější než dataset MNIST, mají vyšší rozměry a je zde více než 10 tříd.

Prohlášení:
Tento dokument byl přeložen pomocí služby pro automatický překlad Co-op Translator. Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.