Nie znalazłem zadowalającej odpowiedzi na to w Google .
Oczywiście, jeśli dane, które mam, są rzędu milionów, to głębokie uczenie się jest drogą.
Przeczytałem, że kiedy nie mam dużych zbiorów danych, może lepiej jest zastosować inne metody uczenia maszynowego. Podany powód jest nadmierny. Uczenie maszynowe: tj. Patrzenie na dane, ekstrakcje funkcji, tworzenie nowych funkcji z tego, co jest gromadzone itp. Rzeczy, takie jak usuwanie silnie skorelowanych zmiennych itp. Cała maszyna ucząca się 9 metrów.
Zastanawiam się: dlaczego sieci neuronowe z jedną ukrytą warstwą nie są panaceum na problemy z uczeniem maszynowym? Są to uniwersalne estymatory, nadmiernym dopasowaniem można zarządzać za pomocą rezygnacji, regularyzacji l2, regularyzacji l1, normalizacji partii. Szybkość treningu nie stanowi problemu, jeśli mamy zaledwie 50 000 przykładów treningu. Są lepsze w czasie testu niż, powiedzmy, losowe lasy.
Dlaczego więc nie - wyczyścić dane, przypisać brakujące wartości, tak jak zwykle, wyśrodkować dane, ujednolicić dane, wrzucić je do zestawu sieci neuronowych z jedną ukrytą warstwą i zastosować regularyzację, aż nie zobaczysz nadmiernego dopasowania, a następnie trenuj do końca. Brak problemów z eksplozją gradientów lub znikaniem gradientów, ponieważ jest to tylko 2-warstwowa sieć. Jeśli potrzebne są głębokie warstwy, oznacza to, że należy nauczyć się cech hierarchicznych, a następnie inne algorytmy uczenia maszynowego również nie są dobre. Na przykład SVM jest siecią neuronową z tylko utratą zawiasów.
Doceniony zostanie przykład, w którym jakiś inny algorytm uczenia maszynowego byłby lepszy od starannie uregulowanej 2-warstwowej (może 3?) Sieci neuronowej. Możesz podać mi link do problemu, a ja wytrenowałbym najlepszą sieć neuronową, jaką mogę, i możemy zobaczyć, czy 2-warstwowe lub 3-warstwowe sieci neuronowe nie spełniają żadnego innego algorytmu uczenia maszynowego.