Która warstwa zużywa więcej czasu na szkolenie CNN? Warstwy splotu vs warstwy FC


11

Która warstwa w Convolutional Neural Network zużywa maksymalny czas na trening? Warstwy splotowe czy w pełni połączone? Możemy wziąć architekturę AlexNet, aby to zrozumieć. Chcę zobaczyć zerwanie czasu treningu. Chcę względnego porównania czasu, abyśmy mogli wziąć dowolną stałą konfigurację GPU.

Odpowiedzi:


11

UWAGA: Wykonałem te obliczenia spekulacyjnie, więc niektóre błędy mogły się wkraść. Poinformuj o wszelkich takich błędach, aby móc je poprawić.

Ogólnie w każdym CNN maksymalny czas szkolenia przypada na propagację wsteczną błędów w warstwie w pełni połączonej (zależy od wielkości obrazu). Zajmują także maksymalną pamięć. Oto slajd ze Stanford na temat parametrów sieci VGG:

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Wyraźnie widać, że w pełni połączone warstwy przyczyniają się do około 90% parametrów. Zajmują więc maksymalną pamięć.

(3)∗3)∗3))(3)∗3)∗3))224∗224224∗224∗(3)∗3)∗3))64224∗22464∗224∗224∗(3)∗3)∗3))≈87∗106

56∗56∗25656∗56(3)∗3)∗256)56∗56256∗56∗56∗(3)∗3)∗256)≈1850∗106

strjaremi=1

dohzannmilsoutput∗(pjaxmilOutputhmijasolht∗pjaxmilOutputwjareth)∗(fajaltmirhmijasolht∗fajaltmirwjareth∗dohzannmilsjanput)

Dzięki szybkim procesorom graficznym jesteśmy w stanie łatwo poradzić sobie z tymi ogromnymi obliczeniami. Ale w warstwach FC należy załadować całą macierz, co powoduje problemy z pamięcią, co na ogół nie ma miejsca w przypadku warstw splotowych, więc trening warstw splotowych jest nadal łatwy. Wszystkie te muszą zostać załadowane do samej pamięci GPU, a nie do pamięci RAM procesora.

Oto także tabela parametrów AlexNet:

wprowadź opis zdjęcia tutaj

A oto porównanie wydajności różnych architektur CNN:

wprowadź opis zdjęcia tutaj

Proponuję zapoznać się z wykładem CS231n Wykład 9 Uniwersytetu Stanforda, aby lepiej zrozumieć zakamarki architektury CNN.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.