Convolutional Neural Networks Cheatsheet Star (Polski)

chcesz zobaczyć ten cheatsheet w swoim ojczystym języku? Możesz pomóc nam przetłumaczyć go na GitHub!,br>

Convolutional Neural Networks
Recurrent Neural Networks
Tips and tricks

by Afshine Amidi and Shervine Amidi

Overview

Architektura tradycyjnego CNN Convolutional neural networks, znany również jako CNNs, są specyficznym typem sieci neuronowych, które na ogół składają się z następujących warstw:

warstwa splotu i warstwa poolingu mogą być dostrojone w odniesieniu do hiperparametrów, które są opisane w następnych sekcjach.,

typy warstw

warstwa splotu (CONV) warstwa splotu (CONV) używa filtrów, które wykonują operacje splotu podczas skanowania danych wejściowych $i$ w odniesieniu do ich wymiarów. Jego hiperparametry zawierają rozmiar filtra $F$ i stride $s$. Wynikowe wyjście $O $ nazywa się mapą funkcji lub mapą aktywacji.

Uwaga: krok splotu można uogólnić na przypadki 1D i 3D.,

pooling (POOL) warstwa pooling (POOL) jest operacją downsamplingu, zwykle stosowaną po warstwie splotu, która wykonuje pewną niezmienność przestrzenną. W szczególności max i average pooling to specjalne rodzaje poolingu, w których bierze się odpowiednio maksymalną i średnią wartość.,ion wybiera maksymalną wartość bieżącego widoku

każda operacja łączenia uśrednia wartości bieżącego widoku Ilustracja d • zachowuje wykryte funkcje
• najczęściej używane • downsamples mapa funkcji
• używane w lenet

fully connected (FC) w pełni połączona warstwa (FC) działa na spłaszczonym wejściu, gdzie każde wejście jest podłączone do wszystkich neuronów., Jeśli występują, warstwy FC są zwykle znajdowane pod koniec architektur CNN i mogą być używane do optymalizacji celów, takich jak wyniki klas.

filtr hiperparametry

warstwa splotu zawiera filtry, dla których ważne jest poznanie znaczenia jego hiperparametrów.,

Wymiary filtra filtr o rozmiarze $F \ times f$ zastosowany do wejścia zawierającego kanały $C $ jest woluminem $f \ times F \ times C$, który wykonuje splot na wejściu o rozmiarze $i \ times i \ times C$ i tworzy mapę funkcji wyjściowej (zwaną również mapą aktywacji) o rozmiarze $o \times o \times 1$.

uwaga: zastosowanie $K$ filtrów o rozmiarze $F\times f$ powoduje wyświetlenie mapy funkcji o rozmiarze $o \times O \times K$.,

Stride w przypadku operacji convolutional lub pooling stride $s$ oznacza liczbę pikseli, o które przesuwa się okno po każdej operacji.

zero-padding Zero-padding oznacza proces dodawania $P$ zera do każdej strony granic wejścia.,dioda led poniżej:

strojenie hiperparametrów

zgodność parametru w warstwie splotowej poprzez zwrócenie uwagi $i$ długość rozmiaru woluminu wejściowego, $F$ Długość filtra, $P$ ilość wypełnienia zerowego, $S$ krok, a następnie rozmiar wyjściowy $O$ Mapy funkcji wzdłuż tego wymiaru jest podany przez:

\

zrozumienie złożoności modelu aby ocenić złożoność modelu, często przydatne jest określenie liczby parametrów, jakie będzie miała jego architektura., W danej warstwie konwolucyjnej sieci neuronowej odbywa się to w następujący sposób:

\

w poniższym przykładzie mamy $F_1 = F_2 = 3$ i $s_1 = S_2 = 1$, co daje $r_2 = 1 + 2\cdot 1 + 2\cdot 1 = 5$.

powszechnie używane funkcje aktywacyjne

Rectified Linear Unit layer (Relu) jest funkcją aktywacyjną $g$, która jest używana na wszystkich elementach głośności. Jego celem jest wprowadzenie nieliniowości do sieci., Jego warianty są podsumowane w poniższej tabeli:

Softmax krok softmax może być postrzegany jako uogólniona funkcja logistyczna, która przyjmuje jako wejście wektor wyników $x \ in \ mathbb{R}^n$ i wyprowadza wektor prawdopodobieństwa wyjścia $p \ in \ mathbb{R}^n$ za pomocą funkcji softmax na końcu architektury. Jest on zdefiniowany w następujący sposób:

\

wykrywanie obiektów

typy modeli istnieją 3 główne typy algorytmów rozpoznawania obiektów, dla których charakter tego, co jest przewidywane, jest inny., They are described in the table below:

tr>

Image classification Classification w., • wykrywa obiekt na obrazku
• przewiduje prawdopodobieństwo obiektu i gdzie się znajduje
• wykrywa do kilku obiektów na obrazku
• przewiduje prawdopodobieństwo obiektów i gdzie się znajdują
tradycyjny CNN uproszczony Yolo, R-CNN YOLO, R-CNN

wykrywanie w kontekście wykrywania obiektów stosowane są różne metody w zależności od tego, czy chcemy zlokalizować obiekt, czy też wykryć bardziej złożony kształt obrazu., Dwie główne podsumowano w poniższej tabeli:

przecięcie przez Unię przecięcie przez Unię, znane również jako $\textrm{IOU}$, jest funkcją, która określa, jak poprawnie ustawiona przewidywana Obwiednia $B_p$ znajduje się nad rzeczywistą obwiednią $b_a$. Jest on zdefiniowany jako:

\

Anchor Boxing Anchor boxing to technika używana do przewidywania nakładających się obwiedni., W praktyce sieć może przewidywać więcej niż jedno pole jednocześnie, gdzie każde pole predykcji jest ograniczone do danego zbioru właściwości geometrycznych. Na przykład, pierwsza PREDYKCJA może być prostokątnym pudełkiem o danej formie, podczas gdy druga będzie innym prostokątnym pudełkiem o innej formie geometrycznej.

tłumienie nie-max technika tłumienia nie-max ma na celu usunięcie duplikatów nakładających się obwiedni tego samego obiektu poprzez wybranie najbardziej reprezentatywnych. Po usunięciu wszystkich pól o przewidywanym prawdopodobieństwie niższym niż 0.,6, następujące kroki są powtarzane, gdy pozostały pola:

dla danej klasy,
• Krok 1: Wybierz pole z największym prawdopodobieństwem przewidywania.
• Krok 2: Odrzuć dowolne pole posiadające $ \ textrm{IOU}\geqslant0. 5$ z poprzednim polem.

YOLO patrzysz tylko raz (YOLO) jest algorytmem wykrywania obiektów, który wykonuje następujące kroki:

• Krok 1: Podziel obraz wejściowy na $G\times g$ siatka.,
• Krok 2: dla każdej komórki siatki Uruchom CNN, który przewiduje $y$ w następującej postaci:

\ ^t \ in \ mathbb{R}^{G \ times g \ times K\times(5+p)}}\]

gdzie $p_c$ jest prawdopodobieństwem wykrycia obiektu, $b_x,b_y,b_h,B_W$ są właściwościami wykrytego boudingu, $c_1,…, c_p$ jest jednokrotną reprezentacją, która z klas $p$ została wykryta, a $k$ jest liczbą pól zakotwiczenia.
• Krok 3: Uruchom algorytm tłumienia non-max, aby usunąć potencjalne duplikaty nakładających się obwiedni.,

r-CNN Region with Convolutional Neural Networks (R-CNN) to algorytm wykrywania obiektów, który najpierw segmentuje obraz w celu znalezienia potencjalnych istotnych obwiedni, a następnie uruchamia algorytm wykrywania w celu znalezienia najbardziej prawdopodobnych obiektów w tych obwiedniach.,

Uwaga: chociaż oryginalny algorytm jest kosztowny obliczeniowo i powolny, nowsze architektury umożliwiły działanie algorytmu szybciej, takie jak szybki R-CNN i szybszy R-CNN.

weryfikacja i rozpoznawanie twarzy

typy modeli dwa główne typy modeli podsumowano w tabeli poniżej:

iv id=”271f6b80fa”

one shot learning one shot learning to algorytm weryfikacji twarzy, który wykorzystuje ograniczony zestaw treningowy do nauki funkcji podobieństwa, która określa, jak różne są dwa podane obrazy. Funkcja podobieństwa zastosowana do dwóch obrazów jest często notowana $d (\textrm{image 1}, \textrm{image 2}).,$

\


neural style transfer

motywacja celem Neural style Transfer jest wygenerowanie obrazu $g$ na podstawie danej treści $C$ i danego stylu $s$.,

Aktywacja w danej warstwie $l$, aktywacja jest zaznaczona $a^{}$ i ma wymiary $n_h\times n_w\times n_c$

\(C)}-A^{(G)}||^2}\]

\}=\sum_{i=1}^{n_H^{}}\sum_{j=1}^{n_w^{}} a_ {IJK}^{} a_ {IJK”}^{}}\]

Uwaga: macierz stylów dla obrazu stylu i wygenerowanego obrazu są oznaczone odpowiednio $G^{(S)}$ I $G^{(G)}$.,

\}(S,G)=\frac{1}{(2n_Hn_wn_c)^2}||G^{(S)}-G^{(G)}||_F^2=\frac{1}{(2n_Hn_wn_c)^2}\sum_{k,k”=1}^{n_c}\Big(G_{kk”}^{(S)}-G_{kk”}^{(G)}\Big)^2}\]div

funkcja kosztów ogólnych funkcja kosztów ogólnych jest zdefiniowana jako kombinacja funkcji kosztów zawartości i stylu, ważonych parametrami $ \ alpha,\beta$, w następujący sposób:

\

Uwaga: wyższa wartość $\alpha$ sprawi, że model będzie bardziej dbał o zawartość, a wyższa wartość $\beta$ sprawi, że będzie bardziej dbał o styl.,

architektury wykorzystujące sztuczki obliczeniowe

Generative adversarial Network Generative adversarial networks, znane również jako Gan, składają się z generatywnego i dyskryminacyjnego modelu, w którym model generatywny ma na celu wygenerowanie najbardziej prawdziwych wyników, które zostaną wprowadzone do dyskryminacyjnego, który ma na celu odróżnienie wygenerowanego i prawdziwego obrazu.

Uwaga: przypadki użycia wykorzystujące warianty Gan obejmują tekst do obrazu, generowanie muzyki i syntezę.,

ResNet pozostała Architektura sieci (zwana również ResNet) wykorzystuje pozostałości bloków z dużą liczbą warstw, co ma na celu zmniejszenie błędu treningowego. Blok resztkowy ma następujące równanie charakteryzujące:

\}=g(a^{}+z^{})}\]

sieć Inception Architektura ta wykorzystuje moduły inception i ma na celu wypróbowanie różnych kombinacji w celu zwiększenia jej wydajności poprzez dywersyfikację funkcji. W szczególności używa triku$ 1\times1$, aby ograniczyć obciążenie obliczeniowe.

weryfikacja twarzy rozpoznawanie twarzy
• czy to właściwa osoba?,
* Wyszukiwanie jeden do jednego
• czy jest to jedna z $K$ osób w bazie danych?
• Wyszukiwanie jeden do wielu

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *