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?


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

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


4

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


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

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.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.