LSTM ou autre package RNN pour R

10

J'ai vu un résultat impressionnant de modèles LSTM produisant Shakespeare comme des textes. Je me demandais si un package LSTM existe pour R. Je l'ai recherché sur Google, mais je n'ai trouvé que des packages pour Python et Julia. (Peut-être qu'il y a un problème de performances qui explique pourquoi ces programmes sont plus préférés que R) Connaissez-vous un package LSTM (ou au moins un RNN) pour R? S'il existe, existe-t-il des tutoriels pour les utiliser?

Viktor
la source
Exemple de lien de tels résultats: karpathy.github.io/2015/05/21/rnn-effectiveness ( je ne sais pas si c'est celui que vous avez vu)
Neil Slater
@NeilSlater Oui, c'est une belle implémentation que j'ai vue mais malheureusement pas pour R.
Viktor
J'ai mis à jour ma réponse pour mentionner les algorithmes LSTM et GRU maintenant disponibles dans rnn .
Bastiaan Quast

Réponses:

5

Jetez un œil au paquetage rnn (divulgation complète, je suis l'auteur). Il implémente un RNN, GRU et LSTM multicouches directement dans R, c'est-à-dire pas une bibliothèque C ++ sous-jacente, vous devriez donc également être en mesure de lire le code et de comprendre ce qui se passe.

install.packages('rnn')

La version CRAN est assez à jour, mais la version GitHub est à la pointe de la technologie et peut être installée en utilisant:

if (!require('devtools')) install.packages('devtools')
devtools::install_github('bquast/rnn')
Bastiaan Quast
la source
Merci pour le joli paquet! Je viens de commencer à l'expérimenter. Je me demande si vous avez fait une comparaison de vitesse avec d'autres implémentations.
Viktor
si c'est en R c'est vraiment lent?
ran8
pas vraiment, c'est assez rapide pour un travail raisonnable, il y a des limitations de mémoire ofc
Bastiaan Quast
5

Keras est également disponible pour R. Voici un exemple de LSTM avec l'API R.

capitainepete
la source
4

J'ai trouvé cette page, mais le package R ne semble pas être open source: lien.

dom
la source
2
Cela semble prometteur. Selon l'auteur, il le publiera sur CRAN une fois terminé.
Viktor
3

Vous devrez peut-être étendre un autre package pour implémenter LSTM et RNN dans R. Voici quelques packages pour vous aider à démarrer:

  • deepnet implémente une variété d'architectures d'apprentissage en profondeur
  • darch Une architecture profonde
  • H2O Une entreprise open source avec des packages d'apprentissage en profondeur
Brian Spiering
la source
2

Vous voudrez peut-être jeter un œil à mxnet . Il s'agit d'une bibliothèque distribuée pour l'apprentissage en profondeur. Il prend en charge C ++, python, scala et R. Il existe de nombreux exemples avec R. Ici, vous avez un exemple de LSTM dans R avec cette bibliothèque.

hoaphumanoïde
la source