# LSTM or other RNN package for R

I saw some impressive result from LSTM models producing Shakespeare like texts. I was wondering if an LSTM package exists for R. I googled for it but only found packages for Python and Julia. (maybe there are some performance issue which explains why these programs are more preferred over R) Do You know about an LSTM (or at least an RNN) package for R? If exists are there any tutorials for using them?

Have a look at the rnn package (full disclosure, I am the author). It implements a multilayer RNN, GRU, and LSTM directly in R, i.e. not an underlying C++ library, so you should also be able to read the code and understand what is going on.

install.packages('rnn')


The CRAN version is quite up to date, but the GitHub version is bleeding edge and can be installed using:

if (!require('devtools')) install.packages('devtools')
devtools::install_github('bquast/rnn')

• Thanks for the nice package! I just started experimenting with it. I wonder if you have made any speed comparison with other implementations. – Viktor Feb 3 '17 at 10:54
• if its in R is it really slow? – ran8 Apr 8 at 22:58
• not really, it's fast enough for reasonable work, there are ofc memory limitations – Bastiaan Quast Apr 11 at 10:17

I found this page, but the R package seems not to be open source : link.

• It seems promising. According to the author he will publish it on CRAN when finished. – Viktor Sep 10 '15 at 9:15

Keras is also now available for R. Here's an example of an LSTM with the R API.

You might have to extend another package to implement LSTM and RNN in R. Here are some packages to get you started:

• deepnet Implements a variety of deep learning architectures
• darch A deep architecture
• H2O An open-source company with deep learning packages

You might want to take a look at mxnet. It is a distributed library for deep learning. It supports C++, python, scala and R. There are many examples with R. Here you have an example of LSTM in R with this library.