LSTM lub inny pakiet RNN dla R.

10

Widziałem imponujący wynik z modeli LSTM produkujących teksty podobne do Szekspira. Zastanawiałem się, czy istnieje pakiet LSTM dla R. Poszukałem go, ale znalazłem tylko pakiety dla Pythona i Julii. (może jest jakiś problem z wydajnością, który wyjaśnia, dlaczego te programy są bardziej preferowane niż R) Czy wiesz o pakiecie LSTM (lub przynajmniej RNN) dla R? Jeśli istnieje, czy istnieją jakieś samouczki dotyczące ich używania?

Viktor
źródło
Przykładowy link do takich wyników: karpathy.github.io/2015/05/21/rnn-effectiveness (nie jestem pewien, czy to ten, który widziałeś)
Neil Slater
@NeilSlater Tak, to jedna fajna implementacja, którą widziałem, ale niestety nie dla R.
Viktor
Zaktualizowałem swoją odpowiedź, aby wspomnieć o dostępnych algorytmach LSTM i GRU w rnn .
Bastiaan Quast,

Odpowiedzi:

5

Zobacz pakiet rnn (pełne ujawnienie, jestem autorem). Implementuje wielowarstwowe RNN, GRU i LSTM bezpośrednio w R, tj. Nie stanowi podstawowej biblioteki C ++, więc powinieneś być w stanie przeczytać kod i zrozumieć, co się dzieje.

install.packages('rnn')

Wersja CRAN jest dość aktualna, ale wersja GitHub jest najnowocześniejsza i można ją zainstalować za pomocą:

if (!require('devtools')) install.packages('devtools')
devtools::install_github('bquast/rnn')
Bastiaan Quast
źródło
Dzięki za miły pakiet! Właśnie zacząłem z tym eksperymentować. Zastanawiam się, czy dokonałeś porównania prędkości z innymi implementacjami.
Viktor
jeśli jest w R, to czy jest naprawdę wolny?
ran8
nie bardzo, jest wystarczająco szybki do rozsądnej pracy, istnieją ograniczenia pamięci ofc
Bastiaan Quast
5

Keras jest teraz dostępny również dla R. Oto przykład LSTM z interfejsem API R.

captainpete
źródło
4

Znalazłem tę stronę, ale pakiet R wydaje się nie być open source: link.

dom
źródło
2
Wydaje się obiecujące. Według autora, opublikuje go w CRAN po zakończeniu.
Viktor,
3

Konieczne może być rozszerzenie innego pakietu w celu zaimplementowania LSTM i RNN w R. Oto kilka pakietów na początek:

  • deepnet Implementuje różnorodne architektury głębokiego uczenia
  • darch Głęboka architektura
  • H2O Firma typu open source z pakietami do głębokiego uczenia się
Brian Spiering
źródło
2

Możesz rzucić okiem na mxnet . Jest to rozproszona biblioteka do głębokiego uczenia się. Obsługuje C ++, python, scala i R. Istnieje wiele przykładów z R. Tutaj masz przykład LSTM w R z tą biblioteką.

hoaphumanoid
źródło