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


• najczęściej używane
• 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:
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:
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:
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 |
![]() |
![]() |