Pierwsze kroki z sieciami neuronowymi do prognozowania

16

Potrzebuję zasobów, aby zacząć korzystać z sieci neuronowych do prognozowania szeregów czasowych. Obawiam się zaimplementowania jakiejś pracy, a następnie stwierdzenia, że ​​znacznie przekroczyły potencjał swoich metod. Więc jeśli masz doświadczenie z metodami, które sugerujesz, będzie to jeszcze bardziej niesamowite.

Richard Hardy
źródło
Pamiętaj, że NN są raczej ... przestarzałe.
2
@Jason, NN zostały scharakteryzowane jako „regresja bez etyki”, ponieważ nie tylko nadmiernie się dopasowują, ale popełniają błąd polegający na „wierzeniu w dane”, a nie „kwestionowaniu danych pod kątem spójności sygnału”
IrishStat
13
NN nie są całkowicie przestarzałe. Posiadają najlepsze wyniki w kilku ważnych testach, którymi zajmuje się obecnie społeczność ML. Są również najlepszym wielofunkcyjnym przybliżeniem z funkcją różnicowania. Sprawdź pracę grup Bengio, Hinton i Lecun z ostatnich 5 lat.
bayerj 21.04.11
1
Czytam artykuł Bengio i Lecun i to trochę zmienia zdanie, ale to, co robią, jest zupełnie inne niż historyczne sieci neuronowe. OP chce pracować z szeregami czasowymi, gdzie istnieje kilka metod, które mogą współpracować z szeregami czasowymi jednowymiarowymi i faktycznie dostarczają przydatnych informacji o szeregach czasowych (przychodzą mi na myśl DLM). Jeśli masz dane poza samym szeregiem czasowym, możesz użyć różnych innych metod (LM itp.), Które są proste i również pouczające. Po co używać czarnej skrzynki z nieoznakowanymi tarczami, skoro można zrobić coś zrozumiałego?
Wayne
8
Oczywiście sieci neuronowe używane w latach 80. / 90. różnią się od dzisiejszych i wciąż są bardzo aktywnym obszarem badań. Ponadto nigdy nie korzystasz z sieci neuronowych, jeśli zależy Ci na interpretacji. Korzystasz z nich, gdy zależy Ci na błędzie prognozy. Sieci neuronowe są szybkie i rozwiązują problemy, przy których inne metody zawodzą. Są ładne, ponieważ są proste z perspektywy pojęciowej ze względu na brak jakichkolwiek założeń dotyczących danych, które modelujesz (z wyjątkiem szumu Gaussa, gdy jest używany z kwadratem błędu). Mają swoje zalety i wady.
bayerj

Odpowiedzi:

10

Oto dobre szybkie wprowadzenie: wprowadzenie do sieci neuronowych. Zauważ, że R ma funkcjonalność sieci neuronowej, więc nie musisz poświęcać czasu na samodzielne wdrażanie NN, dopóki nie sprawdzisz go i nie zdecydujesz, że wygląda obiecująco dla twojej aplikacji.

Sieci neuronowe nie są przestarzałe, ale przeszły przez kilka cykli szumu, a następnie, gdy zdały sobie sprawę, że nie robią wszystkiego, jak twierdzono, ich reputacja spada na pewien czas (jesteśmy obecnie w jednym z nich) . Sieci neuronowe są dobre w niektórych zadaniach i ogólnie są lepsze w przypadku zadań, w których człowiek może wykonać podobne zadanie, ale nie może dokładnie wyjaśnić, jak to robią.

Sieci neuronowe nie dają ci wglądu w system, którego używasz do analizy, nawet po ich przeszkoleniu i dobrym działaniu. Oznacza to, że mogą przewidzieć, co się stanie (w przypadku niektórych systemów), ale nie powiedzą dlaczego. W niektórych przypadkach jest w porządku. W innych nie jest to w porządku. Zasadniczo, jeśli chcesz, a zwłaszcza jeśli znasz już zasady działania czegoś, możesz użyć innych technik.

Ale w przypadku niektórych zadań działają dobrze.

W szczególności dla szeregów czasowych zobacz dyskusję na tym pytaniu: Właściwy sposób wykorzystania rekurencyjnej sieci neuronowej do analizy szeregów czasowych

rossdavidh
źródło
6

Chociaż koncentruje się on na statystycznym rozpoznawaniu wzorców, a nie na prognozowaniu szeregów czasowych, zdecydowanie zaleciłbym książkę Chrisa Bishopa Neural Networks for Pattern Recognition, ponieważ jest to najlepsze wprowadzenie do sieci neuronowych w ogóle i myślę, że dobrym pomysłem byłoby zdobycie radzić sobie z potencjalnymi pułapkami związanymi z korzystaniem z sieci neuronowych w prostszym kontekście, w którym problemy są łatwiej zwizualizowane i zrozumiane. Następnie przejdź do książki o powtarzających się sieciach neuronowych autorstwa Mandica i Chambersa . Książka biskupa jest klasykiem, nikt nie powinien używać sieci neuronowych do niczego, dopóki nie poczuje się pewnie, że rozumie materiały zawarte w tej książce; ANN sprawia, że ​​zbyt łatwo jest strzelić sobie w stopę!

Nie zgadzam się również z mbq, nn nie są przestarzałe, podczas gdy wiele problemów można lepiej rozwiązać za pomocą modeli liniowych lub bardziej nowoczesnych technik uczenia maszynowego (np. Metody jądra), są pewne problemy, w których działają dobrze, a inne metody nie. To wciąż narzędzie, które powinno znajdować się w naszych zestawach narzędzi.

Dikran Torbacz
źródło