Úvod do konvolučních neuronových sítí

Konvoluční neuronové sítě, také známé jako CNN nebo ConvNet, patří do kategorie umělých neuronových sítí používaných pro zpracování obrazu a vizualizaci. Umělá inteligence používá k plnění úkolu hluboké učení. Neuronové sítě jsou hardware nebo software naprogramovaný jako neurony v lidském mozku. Tradiční neuronová síť pořizuje jako vstupy pouze obrazy se sníženým rozlišením. CNN řeší tento problém uspořádáním svých neuronů jako čelního laloku lidských mozků. Předběžné zpracování na CNN je ve srovnání s jinými algoritmy velmi menší. Konvoluce, lineární matematická operace je používána na CNN. V jedné z vrstev používá konvoluci namísto obecného násobení matic.

Vrstvy v konvolučních neuronových sítích

Níže jsou vrstvy konvolučních neuronových sítí:

1. Vstupní vrstva obrázku

Vstupní vrstva poskytuje vstupy (většinou obrázky) a provádí se normalizace. Zde je třeba uvést velikost vstupu.

2. Konvoluční vrstva

Konvoluce se provádí v této vrstvě a obraz se dělí na perceptrony (algoritmus), vytvářejí se lokální pole, což vede ke kompresi perceptronů na mapy funkcí jako matice o velikosti mx n.

3. Vrstva nelinearity

Zde se mapy funkcí berou jako vstupní a aktivační mapy se uvádějí jako výstup pomocí aktivační funkce. Aktivační funkce je obecně implementována jako sigmoidní nebo hyperbolické tečné funkce.

4. Rektifikační vrstva

Tato vrstva, která je klíčovou součástí CNN, urychluje trénink bez snížení přesnosti. Provádí absolutně hodnotnou operaci prvků na aktivačních mapách.

5. Usměrněné lineární jednotky (ReLU)

ReLU kombinuje nelineární a rektifikační vrstvy na CNN. Tím se provádí operace prahu, kde se záporné hodnoty převádějí na nulu. ReLU však nemění velikost vstupu.

6. Spojovací vrstva

Shromážděná vrstva se také nazývá downsampling vrstva, protože to je zodpovědné za zmenšení velikosti aktivačních map. Na vstupní objem se aplikuje filtr a krok stejné délky. Méně významná data jsou touto vrstvou ignorována, a proto se rozpoznávání obrazu provádí v menší reprezentaci. Tato vrstva omezuje přeplňování. Protože se pomocí sdružovací vrstvy snižuje množství parametrů, snižují se také náklady. Vstup je rozdělen na obdélníkové oblasti sdružování a vypočítá se buď maximální, nebo průměrný, což následně vrátí maximum nebo průměr. Max Pooling je populární.

7. Layout Layer

Tato vrstva náhodně nastaví vstupní vrstvu na nulu s danou pravděpodobností. Po této operaci bude vynecháno více výsledků v různých prvcích. Tato vrstva také pomáhá redukovat přebytek. Díky tomu bude síť zbytečná. V této vrstvě nedochází k učení. Tato operace se provádí pouze během školení.

8. Plně připojená vrstva

Aktivační mapy, které jsou výstupem předchozích vrstev, se v této vrstvě promění v rozdělení pravděpodobnosti třídy. Vrstva FC násobí vstup váhovou maticí a přidá vektor zkreslení.

9. Výstupní vrstva

Po vrstvě FC následuje vrstva softmax a klasifikace. Funkce softmax se použije na vstup. Klasifikační vrstva vypočítává funkci křížové entropie a ztráty pro klasifikační problémy.

10. Regresní vrstva

V této vrstvě je vypočítána polovina střední čtvercové chyby. Tato vrstva by měla následovat po vrstvě FC.

Architektura konvoluční neuronové sítě

Níže je uvedena architektura konvolučních neuronových sítí:

1. LeNet

LeNet byl představen pro optické a rozpoznávání znaků v dokumentech v roce 1998. Je malý a ideální pro běh v procesoru. LeNet je malý a snadno pochopitelný. To je postaveno na třech hlavních myšlenkách: lokální receptivní pole sdílená závaží a prostorové podvzorkování. Síť ukazuje nejlepší interní reprezentaci prvotních obrazů. Má tři konvoluční vrstvy, dvě sdružující vrstvy, jednu plně spojenou vrstvu a jednu výstupní vrstvu. Jedna konvoluční vrstva byla okamžitě následována sdružovací vrstvou. Všechny vrstvy jsou vysvětleny výše.

2. AlexNet

AlexNet byl vyvinut v roce 2012. Tato architektura popularizovala CNN v počítačovém vidění. Má pět konvolučních a tři plně propojené vrstvy, kde je ReLU aplikován po každé vrstvě. Využívá výhod obou vrstev, protože konvoluční vrstva má málo parametrů a dlouhý výpočet a je to opak pro plně spojenou vrstvu. Přeplnění bylo velmi omezeno rozšířením a výpadkem dat. AlexNet byl hlubší, větší a konvoluční vrstvy nejsou odděleny sdružovací vrstvou ve srovnání s LeNet.

3. ZF Net

ZF Net byl vyvinut v roce 2013, což byla upravená verze AlexNet. Velikost střední konvoluční vrstvy byla rozšířena a zmenšení kroku a konvoluční vrstvy první konvoluční vrstvy. Právě rozpoznal nedostatky AlexNet a vyvinul lepší. Všechny vrstvy jsou stejné jako AlexNet. ZF Net upravuje parametry vrstvy, jako je velikost filtru nebo krok AlexNet, což umožňuje snížit chybovost.

4. ExpediaNet

Tato architektura byla vyvinuta v roce 2014. Počáteční vrstva je základním konceptem. Tato vrstva pokrývá větší oblast, ale zaznamenává malé informace o obrázku. Pro zlepšení výkonu se v google.cz používá devět počátečních modulů. Protože počáteční vrstva je náchylná k přeplnění, používá se zde více nelinearit a méně parametrů. Maximální sdružovací vrstva se používá ke zřetězení výstupu předchozí vrstvy. Tato architektura má 22 vrstev a parametry jsou 12x menší. To je přesnější než AlexNet, také rychlejší. Míra chyb je poměrně nižší. Průměrná sdružovací vrstva se používá na konci místo plně připojené vrstvy. Výpočet se sníží, hloubka a šířka se zvětší. Mnoho počátečních modulů je připojeno, aby se dostalo hlouběji do architektury. GoogleNet překonal všechny ostatní architektury vyvinuté do roku 2014. Pro tuto architekturu je k dispozici několik následných verzí.

5. VGG Net

To bylo zlepšení oproti ZFNet a následně přes AlexNet. Má 16 vrstev s 3 × 3 konvolučními vrstvami, 2 × 2 spojovacími vrstvami a plně spojenými vrstvami. Tato architektura přijímá nejjednodušší síťovou strukturu, ale má většinu parametrů.

6. ResNet

Architektura zbytkových sítí byla vyvinuta v roce 2015. Využívá dávkovou normalizaci a přeskočí použití vrstev FC. Tato architektura používá 152 vrstev a používá přeskočení připojení. ResNet se nyní většinou používá ve všech algoritmech hlubokého učení.

Závěr

Facebook používá CNN pro značkování obrázků, Amazon pro doporučení produktů a Google pro vyhledávání mezi uživatelskými fotografiemi. To vše se provádí s větší přesností a účinností. Pokrok v hlubokém učení dosáhl stádia, kdy byl vyvinut CNN a pomáhá mnoha způsoby. Jak se komplikovaná CNN stává, pomáhá při zlepšování účinnosti.

Doporučený článek

Toto je průvodce konvoluční neuronovou sítí. Zde diskutujeme Úvod do konvolučních neuronových sítí a jejich vrstev spolu s architekturou. Další informace naleznete také v dalších navrhovaných článcích -

  1. Klasifikace neuronové sítě
  2. Strojové učení vs neuronová síť
  3. Přehled algoritmů neuronové sítě
  4. Rekurentní neuronové sítě (RNN)
  5. Implementace neuronových sítí
  6. Top 6 Porovnání mezi CNN vs RNN

Kategorie: