Rozumiem warstwy splotowe i łączące, ale nie widzę powodu w pełni połączonej warstwy w sieciach CNN. Dlaczego poprzednia warstwa nie jest bezpośrednio połączona z warstwą wyjściową?
19
Rozumiem warstwy splotowe i łączące, ale nie widzę powodu w pełni połączonej warstwy w sieciach CNN. Dlaczego poprzednia warstwa nie jest bezpośrednio połączona z warstwą wyjściową?
Dane wyjściowe z warstw splotowych reprezentują cechy wysokiego poziomu w danych. Chociaż dane wyjściowe można spłaszczyć i połączyć z warstwą wyjściową, dodanie warstwy w pełni połączonej jest (zwykle) tanim sposobem uczenia się nieliniowych kombinacji tych cech.
Zasadniczo warstwy splotowe zapewniają znaczącą, niskowymiarową i nieco niezmienną przestrzeń cech, a w pełni połączona warstwa uczy się (być może nieliniowej) funkcji w tej przestrzeni.
UWAGA: Konwersja z warstw FC na warstwy konwekcyjne jest banalna. Konwersja tych górnych warstw FC na warstwy Konwek może być pomocna, jak opisano na tej stronie.
Uznałem tę odpowiedź Anil-Sharma na Quora za pomocną.
Możemy podzielić całą sieć (do klasyfikacji) na dwie części:
Wyodrębnianie cech : w konwencjonalnych algorytmach klasyfikacji, takich jak maszyny SVM, używaliśmy do wydobywania cech z danych, aby klasyfikacja działała. Warstwy splotowe służą temu samemu celowi, co ekstrakcja cech. Sieci CNN przechwytują lepszą reprezentację danych, dlatego nie musimy wykonywać inżynierii funkcji.
Klasyfikacja : Po wyodrębnieniu funkcji musimy sklasyfikować dane do różnych klas, można to zrobić za pomocą w pełni połączonej sieci neuronowej (FC). Zamiast w pełni połączonych warstw możemy również użyć konwencjonalnego klasyfikatora, takiego jak SVM. Na ogół jednak dodajemy warstwy FC, aby model był w stanie trenować od początku do końca.
źródło