W odpowiedzi na to pytanie ...
Staram się nauczyć, jak używać i tworzyć sieci neuronowe do moich badań, a jedna kwestia nieco mi ucieka. Zdaję sobie sprawę, że ukryte warstwy są nieco niezbędną częścią tego, jednak utknąłem w dwóch punktach, których moje odniesienia nie tłumaczą z satysfakcją:
- Jaki jest dokładnie cel ukrytej warstwy?
- Jak określić, ile ukrytych warstw użyć?
Z tego, co zbieram, chodzi o „modelowanie” funkcjonalności w świecie rzeczywistym, ale jeśli to możliwe, chciałbym trochę wyjaśnić.
ne.neural-evol
ciebie
źródło
źródło
Odpowiedzi:
Ukryta warstwa służy do zwiększenia ekspresji sieci. Pozwala sieci reprezentować bardziej złożone modele niż to możliwe bez ukrytej warstwy.
Wybór liczby ukrytych warstw lub, bardziej ogólnie, wybór architektury sieci, w tym również liczby ukrytych jednostek w ukrytych warstwach, to decyzje, które powinny być oparte na danych dotyczących szkolenia i weryfikacji krzyżowej. Powinieneś wyszkolić sieć z określoną liczbą węzłów (aby rozpocząć, wypróbuj jedną ukrytą warstwę, z jedną jednostką na jednostkę wejściową) i przetestuj model.
Aby uzyskać pomoc, zobacz ten link: http://www.faqs.org/faqs/ai-faq/neural-nets/part3/section-10.html
źródło
Zakładam, że omawiamy proste sieci neuronowe ze sprzężeniem zwrotnym, tj. Perceptrony wielowarstwowe.
Pamiętaj, że mając więcej niż dwie ukryte warstwy, jesteś w głębokiej nauce i prawdopodobnie potrzebujesz niestandardowych algorytmów, aby trenować swoją sieć. Powodem jest to, że wsteczna propagacja wanilii cierpi z powodu problemu „zanikającego gradientu” w głębokich sieciach: gradient funkcji błędu zanika na warstwach blisko wejścia, a warstwy te prawie nie będą trenowane.
źródło