Odpowiedzi:
Nie ma bezpośredniego sposobu na znalezienie optymalnej ich liczby: ludzie empirycznie próbują zobaczyć (np. Za pomocą weryfikacji krzyżowej). Najpopularniejsze techniki wyszukiwania to wyszukiwanie losowe, ręczne i wyszukiwanie w siatce.
Istnieją bardziej zaawansowane techniki, takie jak procesy Gaussa, np. Optymalizacja hiperparametrów sieci neuronowej za pomocą procesów Gaussa do klasyfikacji aktu dialogu , IEEE SLT 2016 .
Aby uzyskać bardziej inteligentne podejście niż wyszukiwanie losowe lub wyczerpujące, możesz wypróbować algorytm genetyczny, taki jak NEAT http://nn.cs.utexas.edu/?neat . Nie ma to jednak gwarancji znalezienia globalnych optymów, jest to po prostu algorytm optymalizacji oparty na wydajności i dlatego jest podatny na utknięcie w lokalnych optymach.
Paper Szegedy C, Vanhoucke V, Ioffe S, i in. Ponowne przemyślenie architektury początkowej dla wizji komputerowej [J]. nadruk arXiv arXiv: 1512.00567, 2015. podaje kilka ogólnych zasad projektowania:
Unikaj reprezentacyjnych wąskich gardeł, szczególnie na początku sieci;
Zrównoważyć szerokość i głębokość sieci. Optymalną wydajność sieci można osiągnąć poprzez zrównoważenie liczby filtrów na stopień i głębokości sieci. Zwiększenie zarówno szerokości, jak i głębokości sieci może przyczynić się do poprawy jakości sieci. Jednak optymalną poprawę dla stałej ilości obliczeń można osiągnąć, jeśli oba zostaną zwiększone równolegle. Budżet obliczeniowy powinien zatem zostać rozdzielony w sposób zrównoważony między głębokość i szerokość sieci.
Te sugestie nie mogą jednak zapewnić optymalnej liczby neuronów w sieci.
Nadal istnieją jednak badania nad kompresją modeli, np. Uczenie się strukturyzacji sparsity (SSL) Deep Neural Networks , SqueezeNet , sieć przycinania, które mogą rzucić nieco światła na optymalizację neuronów na pojedynczą warstwę.
Zwłaszcza w uczeniu strukturalnej sparsity głębokich sieci neuronowych dodaje Group Lasso
termin regulujący w funkcji straty w celu uregulowania struktur (tj. Filtrów, kanałów, kształtów filtrów i głębokości warstw) DNN, co oznacza wyzerowanie niektórych składników ( tj. filtry, kanały, kształty filtrów i głębokość warstwy) struktury sieci i osiąga niezwykłe zwartość i przyspieszenie sieci, przy zachowaniu niewielkiej utraty dokładności klasyfikacji.
Wiesz, kiedy masz zbyt wiele neuronów, zaczyna się od dopasowania. Oznacza to, że nie działa dobrze, ponieważ NN próbuje aktywować się w przypadku najbardziej idealnego dopasowania, które jest niemożliwe. Jak dwa różne koty z taką samą ilością atomów lub, mówiąc inaczej, jest to detektor NN, który aktywuje się tylko na zdjęciu twojego zwierzaka i nic więcej. Chcesz mieć szerszy zakres aktywacji nn. Jak na każdym zdjęciu kota.
Przeregulowanie to problem, który nie ma prawdziwej szybkiej naprawy. Możesz zacząć od zbyt małej liczby, a następnie dodawać kolejne. Lub zacznij od dużej ilości, a następnie usuwaj je, aż zadziała.