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?


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')

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


4

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


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ę

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ą.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.