Architektura konwolucyjnej sieci neuronowej (CNN) to model głębokiego uczenia się przeznaczony do przetwarzania ustrukturyzowanych danych przypominających siatkę, takich jak obrazy. Składa się z wielu warstw, w tym warstw splotowych, pulujących i w pełni połączonych. Sieci CNN są bardzo skuteczne w zadaniach takich jak klasyfikacja obrazu, wykrywanie obiektów i segmentacja obrazu ze względu na ich możliwości hierarchicznej ekstrakcji cech.
VGG-16
Model VGG-16 to architektura splotowej sieci neuronowej (CNN) zaproponowana przez Visual Geometry Group (VGG) na Uniwersytecie Oksfordzkim. Charakteryzuje się głębokością, na którą składa się 16 warstw, w tym 13 warstw splotowych i 3 warstwy w pełni połączone. VGG-16 słynie ze swojej prostoty i skuteczności, a także zdolności do osiągania dobrych wyników w różnych zadaniach związanych z wizją komputerową, w tym w klasyfikacji obrazów i rozpoznawaniu obiektów. Architektura modelu obejmuje stos warstw splotowych, po których następują warstwy o maksymalnym łączeniu, o stopniowo rosnącej głębokości. Taka konstrukcja umożliwia modelowi naukę skomplikowanych, hierarchicznych reprezentacji cech wizualnych, co prowadzi do solidnych i dokładnych przewidywań. Pomimo swojej prostoty w porównaniu z nowszymi architekturami, VGG-16 pozostaje popularnym wyborem w wielu zastosowaniach głębokiego uczenia się ze względu na swoją wszechstronność i doskonałą wydajność.
ImageNet Large Scale Visual Recognition Challenge (ILSVRC) to coroczny konkurs z zakresu widzenia komputerowego, w którym zespoły radzą sobie z zadaniami obejmującymi lokalizację obiektów i klasyfikację obrazów. VGG16, zaproponowany przez Karen Simonyan i Andrew Zissermana w 2014 roku, w obu zadaniach osiągnął czołowe miejsca, wykrywając obiekty z 200 klas i klasyfikując obrazy w 1000 kategorii.
co sprawia, że komputer jest szybki

Architektura VGG-16
Ten model osiąga 92,7% w pierwszej piątce sprawdź dokładność zbioru danych ImageNet, który zawiera 14 milionów obrazów należących do 1000 klas.
Cel modelu VGG-16:
Zbiór danych ImageNet zawiera obrazy o stałym rozmiarze 224*224 i mają kanały RGB. Mamy więc tensor (224, 224, 3) jako nasz wkład. Model ten przetwarza obraz wejściowy i generuje wektor a 1000 wartości:
Wektor ten reprezentuje prawdopodobieństwo klasyfikacji dla odpowiedniej klasy. Załóżmy, że mamy model, który przewiduje, że obraz należy z prawdopodobieństwem do klasy 0 1 , Klasa 1 z prawdopodobieństwem 0,05 , klasa 2 z prawdopodobieństwem 0,05 , klasa 3 z prawdopodobieństwem 0,03 , klasa 780 z prawdopodobieństwem 0,72 , klasa 999 z prawdopodobieństwem 0,05 i wszystkie inne zajęcia z 0 .
zatem wektor klasyfikacji dla tego będzie następujący:
Aby mieć pewność, że te prawdopodobieństwa się sumują 1 , używamy funkcji softmax.
Ta funkcja softmax jest zdefiniowana w następujący sposób:
alfabet na cyfry
Następnie przenosimy do wektora 5 najbardziej prawdopodobnych kandydatów.
a nasz podstawowy wektor prawdy jest zdefiniowany w następujący sposób:
Następnie definiujemy naszą funkcję Error w następujący sposób:
indeks listy
Oblicza minimalną odległość pomiędzy każdą podstawową klasą prawdy a przewidywanymi kandydatami, gdzie funkcja odległości d jest zdefiniowana jako:
- d=0 jeśli
c_i=G_k - w przeciwnym razie d=1
Zatem funkcja straty w tym przykładzie wygląda następująco:
Ponieważ wszystkie kategorie prawdy podstawowej znajdują się w macierzy Przewidywanych pierwszych 5, więc strata wynosi 0.
VGG Architektura:
Architektura VGG-16 to głęboka splotowa sieć neuronowa (CNN) przeznaczona do zadań klasyfikacji obrazów. Został wprowadzony przez Visual Geometry Group na Uniwersytecie Oksfordzkim. VGG-16 charakteryzuje się prostotą i jednolitą architekturą, dzięki czemu jest łatwy do zrozumienia i wdrożenia.
niedeterministyczne automaty skończone
Konfiguracja VGG-16 składa się zazwyczaj z 16 warstw, w tym 13 warstw splotowych i 3 warstw w pełni połączonych. Warstwy te są zorganizowane w bloki, przy czym każdy blok zawiera wiele warstw splotowych, po których następuje warstwa maksymalnego łączenia danych do próbkowania w dół.

Mapa architektury VGG-16
Oto zestawienie architektury VGG-16 na podstawie dostarczonych szczegółów:
- Warstwa wejściowa:
- Wymiary wejściowe: (224, 224, 3)
- Warstwy splotowe (64 filtry, filtry 3×3, to samo wypełnienie):
- Dwie kolejne warstwy splotowe, każda po 64 filtry i rozmiar filtra 3×3.
- To samo wypełnienie służy do zachowania wymiarów przestrzennych.
- Maksymalna warstwa łączenia (2×2, krok 2):
- Warstwa maksymalnego łączenia o rozmiarze basenu 2×2 i kroku 2.
- Warstwy splotowe (128 filtrów, filtry 3×3, to samo wypełnienie):
- Dwie kolejne warstwy splotowe, każda po 128 filtrów i rozmiarze filtra 3×3.
- Maksymalna warstwa łączenia (2×2, krok 2):
- Warstwa maksymalnego łączenia o rozmiarze basenu 2×2 i kroku 2.
- Warstwy splotowe (256 filtrów, filtry 3×3, to samo wypełnienie):
- Dwie kolejne warstwy splotowe, każda po 256 filtrów i rozmiarze filtra 3×3.
- Warstwy splotowe (512 filtrów, filtry 3×3, to samo wypełnienie):
- Dwa zestawy trzech kolejnych warstw splotowych po 512 filtrów każda i rozmiarze filtra 3×3.
- Maksymalna warstwa łączenia (2×2, krok 2):
- Warstwa maksymalnego łączenia o rozmiarze basenu 2×2 i kroku 2.
- Stos warstw splotowych i maksymalne łączenie:
- Dwie dodatkowe warstwy splotowe po poprzednim stosie.
- Rozmiar filtra: 3×3.
- Spłaszczenie:
- Spłaszcz wyjściową mapę cech (7x7x512) do wektora o rozmiarze 25088.
- W pełni połączone warstwy:
- Trzy w pełni połączone warstwy z aktywacją ReLU.
- Pierwsza warstwa z rozmiarem wejściowym 25088 i rozmiarem wyjściowym 4096.
- Druga warstwa z rozmiarem wejściowym 4096 i rozmiarem wyjściowym 4096.
- Trzecia warstwa z rozmiarem wejściowym 4096 i rozmiarem wyjściowym 1000, co odpowiada 1000 klasom w wyzwaniu ILSVRC.
- Aktywacja Softmax jest stosowana do wyjścia trzeciej w pełni połączonej warstwy w celu klasyfikacji.
Architektura ta jest zgodna z dostarczonymi specyfikacjami, łącznie z wykorzystaniem funkcji aktywacji ReLU i ostatecznymi prawdopodobieństwami wyjściowymi w pełni połączonej warstwy dla 1000 klas przy użyciu aktywacji Softmax.
Konfiguracja VGG-16:
Główna różnica pomiędzy konfiguracjami C i D VGG-16 polega na zastosowaniu rozmiarów filtrów w niektórych warstwach splotowych. Podczas gdy obie wersje wykorzystują głównie filtry 3×3, w wersji D zdarzają się przypadki, w których zamiast nich używane są filtry 1×1. Ta niewielka różnica skutkuje różnicą w liczbie parametrów, przy czym wersja D ma nieco większą liczbę parametrów w porównaniu do wersji C. Jednakże obie wersje zachowują ogólną architekturę i zasady modelu VGG-16.

Inna konfiguracja VGG
Lokalizacja obiektu na obrazie:
Aby przeprowadzić lokalizację, musimy zastąpić wynik klasy współrzędnymi lokalizacji ramki ograniczającej. Położenie ramki ograniczającej jest reprezentowane przez wektor 4-D (współrzędne środka (x, y), wysokość, szerokość). Istnieją dwie wersje architektury lokalizacji, jedna to obwiednia współdzielona pomiędzy różnymi kandydatami (wyjściem jest 4 wektor parametrów), a drugi to ramka ograniczająca specyficzna dla klasy (wyjście to 4000 wektor parametrów). W artykule eksperymentowano z obydwoma podejściami do architektury VGG -16 (D). Tutaj musimy również zmienić stratę z utraty klasyfikacji na funkcje straty regresji (takie jak MSE ), które penalizują odchylenie przewidywanej straty od podstawowej prawdy.
Wyniki: Architektura VGG-16 okazała się jedną z najlepszych w konkursie ILSVRC 2014. Zajęła drugie miejsce w zadaniu klasyfikacyjnym z pięcioma największymi błędami klasyfikacyjnymi wynoszącymi 7,32% (tylko za GoogLeNet z błędem klasyfikacji 6,66% ). Został także zwycięzcą zadania lokalizacyjnego z 25,32% błąd lokalizacji.
Ograniczenia VGG 16:
- Uczenie się jest bardzo powolne (oryginalny model VGG był trenowany na karcie graficznej Nvidia Titan przez 2-3 tygodnie).
- Rozmiar wyszkolonych wag imageNet VGG-16 wynosi 528 MB. Zajmuje więc sporo miejsca na dysku i przepustowości, co czyni go nieefektywnym.
- 138 milionów parametrów prowadzi do problemu eksplodujących gradientów.
Dalsze ulepszenia: Wprowadzono sieci Resnet, aby zapobiec problemowi eksplodujących gradientów, który wystąpił w VGG-16.