v tomto příspěvku budu diskutovat o běžně používaných architekturách pro konvoluční sítě. Jak můžete vidět, téměř všechny CNN architektur sledovat stejné obecné principy návrhu postupně použití konvoluční vrstvy na vstupní, pravidelně převzorkování prostorové dimenze, zatímco zvýšení počtu funkce mapy.,

Zatímco klasické síťové architektury byly skládá jednoduše naskládané konvoluční vrstvy, moderní architektury prozkoumat nové a inovativní způsoby, jak pro výstavbu konvoluční vrstvy způsobem, který umožňuje více efektivní učení. Téměř všechny tyto architektury jsou založeny na opakovatelné jednotce, která se používá v celé síti.

tyto architektury slouží jako obecné pokyny pro návrh, které se praktikující strojového učení poté přizpůsobí řešení různých úkolů počítačového vidění., Tyto architektury slouží jako bohaté extraktory funkcí, které lze použít pro klasifikaci obrazu, detekci objektů, segmentaci obrazu a mnoho dalších pokročilejších úkolů.

Klasické síťové architektury (v ceně pro historické účely)

  • LeNet-5
  • AlexNet
  • VGG 16

Moderní síťové architektury

  • Založení
  • ResNet
  • ResNeXt
  • DenseNet

LeNet-5

Yann Lecun je LeNet-5 model byl vyvinut v roce 1998 identifikovat ručně psané číslice pro psč uznání v poštovní služby., Tento průkopnický model do značné míry představil konvoluční neuronovou síť, jak ji známe dnes.

Architektura

konvoluční vrstvy používají podmnožinu kanálů předchozí vrstvy pro každý filtr ke snížení výpočtu a vynutí přerušení symetrie v síti. Vrstvy subsamplingu používají formu průměrného sdružování.

Parametry: 60 000

Kniha: Gradient-based learning použita k rozpoznávání dokumentu

AlexNet

AlexNet byl vyvinut Alex Krizhevsky et al. v roce 2012 soutěžit v soutěži ImageNet., Obecná architektura je velmi podobná LeNet-5, i když tento model je podstatně větší. Úspěch tohoto modelu (který vzal první místo v roce 2012 v soutěži ImageNet) přesvědčila spoustu počítačového vidění společenství, aby se vážně podívat na hluboké učení pro počítačové vidění úkoly.

Architektura

Parametry: 60 milionů

Kniha: ImageNet Klasifikace s Hlubokým Konvoluční Neuronové Sítě

VGG-16

VGG sítě, představil v roce 2014, nabízí hlubší ještě jednodušší varianta konvoluční struktury je uvedeno výše., V době jeho zavedení byl tento model považován za velmi hluboký.

Architektura

Parametry: 138 milionů

Kniha: Velmi Hluboký Konvoluční Sítě pro Velké Rozpoznávání Obrazu

Založení (GoogLeNet)

V roce 2014, vědci na Google představil Vzniku sítě, která obsadila první místo v ImageNet 2014 soutěž pro klasifikaci a detekci problémů.

model je tvořen základní jednotkou označován jako „Počátek cell“, ve kterém jsme provést řadu závitů v různých měřítcích a následně souhrnné výsledky., Pro uložení výpočtu se používají 1×1 konvoluce ke snížení hloubky vstupního kanálu. Pro každou buňku se naučíme sadu filtrů 1×1, 3×3 a 5×5, které se mohou naučit extrahovat funkce v různých měřítcích ze vstupu. Max pooling se také používá, i když s“ stejným “ polstrováním, aby se zachovaly rozměry tak, aby byl výstup správně zřetězen.

tito vědci publikovali navazující článek, který představil účinnější alternativy k původní buňce Inception., Konvoluce s velkými prostorovými filtry (například 5×5 nebo 7×7) jsou prospěšné z hlediska jejich expresivity a schopnosti extrahovat funkce ve větším měřítku, ale výpočet je neúměrně drahý. Vědci poukázali na to, že konvoluce 5×5 může být levněji zastoupena dvěma naskládanými filtry 3×3.

zatímco filtr$ 5 \krát 5 \ krát C $ vyžaduje parametry $25C$, dva $3 \krát 3 \krát C$ filtry vyžadují pouze parametry$ 18C$. Abychom co nejpřesněji reprezentovali filtr 5×5, neměli bychom používat žádné nelineární aktivace mezi dvěma vrstvami 3×3., Bylo však zjištěno, že „lineární aktivace byla vždy nižší než použití rektifikovaných lineárních jednotek ve všech fázích faktorizace.“

To bylo také prokázáno, že 3×3 konvoluce může být dále rozložen do následujících 3×1 a 1×3 závitů.

Zevšeobecňovat tento pohled, můžeme efektivněji počítat $n \times n$ konvoluce jako $1 \times n$ konvoluce následuje $n \times 1$ konvoluce.

Architektura

pro zlepšení celkového výkonu sítě se v síti přidávají dva pomocné výstupy., Později bylo zjištěno, že nejstarší pomocný výstup neměl žádný zřetelný vliv na konečnou kvalitu sítě. Přidání pomocné výstupy primárně prospěch konci představení modelu, sbíhajících se na mírně lepší hodnotu než stejné síťové architektury bez pomocné větve. Předpokládá se, že přidání pomocných výstupů mělo regularizační účinek na síť.

níže je uvedena revidovaná, hlubší verze sítě Inception, která využívá efektivnější buňky Inception.,

Parametry: 5 milionů (V1) a 23 milionů eur (V3)

Dokumenty:

  • hlouběji se závity
  • Přehodnocení Vzniku Architektury pro Počítačové Vidění

ResNet

Hluboké zbytkové sítě byly průlomový nápad, který umožnil rozvoj mnohem hlubší sítích (stovky vrstev oproti desítek vrstev).

Je všeobecně přijímaný princip, že hlouběji sítě jsou schopné učení, složitější funkce a reprezentace vstupu, který by měl vést k lepšímu výkonu., Mnoho vědců však pozorovalo, že přidání dalších vrstev nakonec mělo negativní vliv na konečný výkon. Toto chování nebylo intuitivně očekáváno, jak vysvětlují autoři níže.

uvažujme mělčí architekturu a její hlubší protějšek, který na ni přidává další vrstvy. Existuje řešení od stavby do hlubších model: přidány vrstvy mapování identity, a ostatní vrstvy jsou zkopírovány ze se dozvěděl, menší model., Existence tohoto postavené řešení naznačuje, že hlubší model by měl produkovat vyšší vzdělávání chyby než jeho menší protějšek. Ale experimenty ukazují, že náš současný řešitelů na ruku, jsou schopni najít řešení, která jsou srovnatelně dobré, nebo lepší, než řešení postavené (nebo není schopen k tomu, aby v možné době).,

Tento jev je označován autory jako degradaci problém – narážel na skutečnost, že i když lepší parametr inicializace techniky a šarže normalizace umožňují hlubší sítí se sbíhají, se často sbíhají na vyšší chybovost, než jejich menší protějšky. V limitu jednoduše stohování více vrstev degraduje konečný výkon modelu.,

autoři navrhují nápravu tohoto problému degradace zavedením zbytkových bloků, ve kterých se mezilehlé vrstvy bloku naučí zbytkovou funkci s odkazem na vstup bloku. Tuto zbytkovou funkci můžete považovat za krok zdokonalení, ve kterém se naučíme upravovat mapu vstupních funkcí pro funkce vyšší kvality. To se porovnává s „prostou“ sítí, ve které se očekává, že se každá vrstva naučí nové a odlišné mapy funkcí., V případě, že žádné upřesnění je potřeba, střední vrstvy se může naučit postupně upravit jejich váhy směrem k nule tak, že zbytkový blok představuje totožnost funkce.

Poznámka: později bylo zjištěno, že mírná modifikace původní navrhované jednotky nabízí lepší výkon efektivnějším umožněním šíření gradientů v síti během tréninku.,

Široká reziduální sítě
i když původní ResNet papír zaměřil se na vytvoření síťové architektury umožnit hlubší struktury, o zmírnění degradace problém, jiní badatelé, neboť poukázal na to, že rostoucí sítě je šířka (hloubka kanálu), může být efektivnější způsob, jak rozšířit celkovou kapacitu sítě.

Architektura

každý barevný blok vrstev představuje řadu konvolucí stejné dimenze., Mapování funkcí je pravidelně downsampled Striped konvolucí doprovázené zvýšením hloubky kanálu zachovat časovou složitost na vrstvu. Tečkované čáry označují zbytková spojení, ve kterých promítáme vstup pomocí konvoluce 1×1 tak, aby odpovídala rozměrům nového bloku.

výše uvedený diagram vizualizuje architekturu ResNet 34., Pro ResNet 50 model, jsme jednoduše vyměnit každé dvě vrstvy zbytkového bloku s tři vrstvy zúžení bloku, který používá 1×1 závitů snížit a následně obnovit hloubka kanálu, umožňující snížení výpočtové zatížení při výpočtu 3×3 konvoluce.,

Parametry: 25 milionů eur (ResNet 50)

Dokumenty:

  • Hluboké Zbytkové Učení pro Rozpoznávání Obrazu
  • Identita Mapování v Hluboké Zbytkové Sítě
  • Široký Reziduální Sítě

ResNeXt architektura je rozšíření hluboké zbytkové síti, která nahradí standardní reziduální blok s jedním, který využívá „split-změnit-sloučit“ strategii (tj. rozvětvené cesty v buňce) používané v počátečních modelech., Jednoduše, spíše než provedení závitů přes celou vstupní funkce mapa, blok, vstup se promítá do řady nižší (kanál) dimenzionální reprezentace, které jsme samostatně aplikovat několik konvoluční filtry před sloučením výsledků.

Tato myšlenka je velmi podobná skupina závitů, což byl nápad navrhl v AlexNet papíru jako způsob, jak sdílet výpočet konvoluce přes dvě Gpu. Spíše než vytváření filtrů s plnou hloubkou kanálu vstupu, vstup je rozdělen kanálově do skupin s každým, jak je uvedeno níže.,

bylo zjištěno, že použití seskupených konvolucí vedlo k určité specializaci mezi skupinami, kde se jednotlivé skupiny zaměřovaly na různé charakteristiky vstupního obrazu.

ResNeXt papíru odkazuje na počet poboček nebo skupin jako mohutnost z ResNeXt buňky a provádí řadu experimentů, aby pochopili, relativní nárůst výkonu mezi rostoucí mohutnost, hloubku a šířku sítě. Experimenty ukazují, že zvýšení kardinálnosti je účinnější ve prospěch výkonu modelu než zvýšení šířky nebo hloubky sítě., Experimenty také naznačují, že “ zbytková spojení jsou užitečná pro optimalizaci, zatímco agregované transformace jsou (užitečné) silnější reprezentace.“

Architektura

Architektura ResNeXt jednoduše napodobuje modely ResNet a nahrazuje bloky ResNet pro blok ResNeXt.

Kniha: Souhrnné Reziduální Transformace pro Hluboké Neuronové Sítě,

DenseNet

myšlenka husté konvoluční sítě je jednoduchá: to může být užitečné referenční funkce map z dříve v síti., Mapa funkcí každé vrstvy je tedy zřetězena na vstup každé po sobě jdoucí vrstvy v hustém bloku. To umožňuje pozdějším vrstvám v síti přímo využívat funkce z dřívějších vrstev, což podporuje opětovné použití funkcí v síti. Autoři uvádějí ,že “ zřetězení funkcí-mapy naučené různými vrstvami zvyšují rozdíly ve vstupu následujících vrstev a zvyšují efektivitu.“

Když jsem poprvé narazil na tento model, myslel jsem, že bude mít absurdní počet parametrů pro podporu hustých spojení mezi vrstvami., Vzhledem k tomu, že síť je schopna přímo používat jakoukoli předchozí mapu funkcí, autoři zjistili, že mohou pracovat s velmi malými hloubkami výstupního kanálu(tj. 12 filtrů na vrstvu), což výrazně snižuje celkový počet potřebných parametrů. Autoři odkazují na řadu filtry používané v každý konvoluční vrstva jako „tempo růstu“, $k$, protože každá následující vrstva bude mít $k$ více kanálů, než poslední (v důsledku hromadění a spojením všech předchozích vrstev na vstupu).,

ve srovnání s modely ResNet se uvádí, že Densenety dosahují lepšího výkonu s menší složitostí.

Architektura

Pro většinu experimentů v novinách, autoři napodobil obecné ResNet model architektury, jednoduše vymění v hustém bloku jako opakované jednotky.

parametry:

  • 0,8 milionu (DenseNet-100, K=12)
  • 15.,3 miliony (DenseNet-250, k=24)
  • 40 milionů eur (DenseNet-190, k=40)

Kniha: Hustě Propojené Konvoluční Sítě
Video: CVPR 2017 Best Paper Award: Hustě Propojené Konvoluční Sítě,

Další čtení