LSTM oder ein anderes RNN-Paket für R.

10

Ich habe ein beeindruckendes Ergebnis von LSTM-Modellen gesehen, die Shakespeare-ähnliche Texte produzieren. Ich habe mich gefragt, ob ein LSTM-Paket für R existiert. Ich habe danach gegoogelt, aber nur Pakete für Python und Julia gefunden. (Möglicherweise gibt es ein Leistungsproblem, das erklärt, warum diese Programme R vorgezogen werden.) Kennen Sie ein LSTM-Paket (oder zumindest ein RNN-Paket) für R? Wenn vorhanden, gibt es Tutorials für deren Verwendung?

Viktor
quelle
Beispiellink für solche Ergebnisse: karpathy.github.io/2015/05/21/rnn-effectiveness (nicht sicher, ob dies einer ist, den Sie gesehen haben)
Neil Slater
@NeilSlater Ja, das ist eine nette Implementierung, die ich gesehen habe, aber leider nicht für R.
Viktor
Ich habe meine Antwort aktualisiert, um die jetzt verfügbaren LSTM- und GRU-Algorithmen in rnn zu erwähnen .
Bastiaan Quast

Antworten:

5

Schauen Sie sich das rnn-Paket an (vollständige Offenlegung, ich bin der Autor). Es implementiert ein mehrschichtiges RNN, GRU und LSTM direkt in R, dh keine zugrunde liegende C ++ - Bibliothek, sodass Sie auch in der Lage sein sollten, den Code zu lesen und zu verstehen, was vor sich geht.

install.packages('rnn')

Die CRAN-Version ist ziemlich aktuell, aber die GitHub-Version ist auf dem neuesten Stand und kann installiert werden mit:

if (!require('devtools')) install.packages('devtools')
devtools::install_github('bquast/rnn')
Bastiaan Quast
quelle
Danke für das schöne Paket! Ich habe gerade angefangen, damit zu experimentieren. Ich frage mich, ob Sie einen Geschwindigkeitsvergleich mit anderen Implementierungen durchgeführt haben.
Viktor
Wenn es in R ist, ist es wirklich langsam?
ran8
nicht wirklich, es ist schnell genug für vernünftige Arbeit, es gibt ofc Speicherbeschränkungen
Bastiaan Quast
5

Keras ist jetzt auch für R verfügbar. Hier ist ein Beispiel für ein LSTM mit der R-API.

Captainpete
quelle
4

Ich habe diese Seite gefunden, aber das R-Paket scheint kein Open Source: Link zu sein.

dom
quelle
2
Es scheint vielversprechend. Nach Angaben des Autors wird er es nach Abschluss auf CRAN veröffentlichen.
Viktor
3

Möglicherweise müssen Sie ein anderes Paket erweitern, um LSTM und RNN in R zu implementieren. Hier sind einige Pakete, um Ihnen den Einstieg zu erleichtern:

  • deepnet Implementiert eine Vielzahl von Deep-Learning-Architekturen
  • darch Eine tiefe Architektur
  • H2O Ein Open-Source-Unternehmen mit Deep-Learning-Paketen
Brian Spiering
quelle
2

Vielleicht möchten Sie einen Blick auf mxnet werfen . Es ist eine verteilte Bibliothek für tiefes Lernen. Es unterstützt C ++, Python, Scala und R. Es gibt viele Beispiele für R. Hier haben Sie ein Beispiel für LSTM in R mit dieser Bibliothek.

Hoaphumanoid
quelle