Misplaced Pages

rnn (software)

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Machine Learning framework written in the R language
rnn
Original author(s)Bastiaan Quast
Initial release30 November 2015 (2015-11-30)
Stable release1.9.0 / 22 April 2023; 20 months ago (2023-04-22)
Preview release1.9.0.9000 / 22 April 2023; 20 months ago (2023-04-22)
Repositorygithub.com/bquast/rnn
Written inR
Operating systemmacOS, Linux, Windows
Size564.2 kB (v. 1.9.0)
LicenseGPL v3
Websitecran.r-project.org/web/packages/rnn/

rnn is an open-source machine learning framework that implements recurrent neural network architectures, such as LSTM and GRU, natively in the R programming language, that has been downloaded over 100,000 times (from the RStudio servers alone).

The rnn package is distributed through the Comprehensive R Archive Network under the open-source GPL v3 license.

Workflow

Demonstration of RNN package

The below example from the rnn documentation show how to train a recurrent neural network to solve the problem of bit-by-bit binary addition.

> # install the rnn package, including the dependency sigmoid
> install.packages('rnn')
> # load the rnn package
> library(rnn)
> # create input data 
> X1 = sample(0:127, 10000, replace=TRUE)
> X2 = sample(0:127, 10000, replace=TRUE)
> # create output data
> Y <- X1 + X2
> # convert from decimal to binary notation 
> X1 <- int2bin(X1, length=8)
> X2 <- int2bin(X2, length=8)
> Y  <- int2bin(Y,  length=8)
> # move input data into single tensor
> X <- array( c(X1,X2), dim=c(dim(X1),2) )
> # train the model
> model <- trainr(Y=Y,
+                 X=X,
+                 learningrate   =  1,
+                 hidden_dim     = 16  )
Trained epoch: 1 - Learning rate: 1
Epoch error: 0.839787019539748

sigmoid

The sigmoid functions and derivatives used in the package were originally included in the package, from version 0.8.0 onwards, these were released in a separate R package sigmoid, with the intention to enable more general use. The sigmoid package is a dependency of the rnn package and therefore automatically installed with it.

Reception

With the release of version 0.3.0 in April 2016 the use in production and research environments became more widespread. The package was reviewed several months later on the R blog The Beginner Programmer as "R provides a simple and very user friendly package named rnn for working with recurrent neural networks.", which further increased usage.

The book Neural Networks in R by Balaji Venkateswaran and Giuseppe Ciaburro uses rnn to demonstrate recurrent neural networks to R users. It is also used in the r-exercises.com course "Neural network exercises".

The RStudio CRAN mirror download logs show that the package is downloaded on average about 2,000 per month from those servers , with a total of over 100,000 downloads since the first release, according to RDocumentation.org, this puts the package in the 15th percentile of most popular R packages .

References

  1. Quast, Bastiaan (2019-08-30), GitHub - bquast/rnn: Recurrent Neural Networks in R., retrieved 2019-09-19
  2. Quast, Bastiaan; Fichou, Dimitri (2019-05-27), rnn: Recurrent Neural Network, archived from the original on 2020-01-05, retrieved 2020-01-05
  3. Quast, Bastiaan (2018-06-21), sigmoid: Sigmoid Functions for Machine Learning, archived from the original on 2020-01-05, retrieved 2020-01-05
  4. Quast, Bastiaan (2020-01-03), RNN: Recurrent Neural Networks in R releases, retrieved 2020-01-05
  5. Mic (2016-08-05). "The Beginner Programmer: Plain vanilla recurrent neural networks in R: waves prediction". The Beginner Programmer. Archived from the original on 2020-01-05. Retrieved 2020-01-05.
  6. "LSTM or other RNN package for R". Data Science Stack Exchange. Retrieved 2018-07-05.
  7. "Neural Networks with R". O'Reilly. September 2017. ISBN 9781788397872. Archived from the original on 2018-10-02. Retrieved 2018-10-02.
  8. Ciaburro, Giuseppe; Venkateswaran, Balaji (2017-09-27). Neural Networks with R: Smart models using CNN, RNN, deep learning, and artificial intelligence principles. Packt Publishing Ltd. ISBN 978-1-78839-941-8.
  9. Touzin, Guillaume (2017-06-21). "R-exercises – Neural networks Exercises (Part-3)". www.r-exercises.com. Archived from the original on 2020-01-05. Retrieved 2020-01-05.
  10. Touzin, Guillaume (2017-06-21). "Neural networks Exercises (Part-3)". R-bloggers. Archived from the original on 2020-01-05. Retrieved 2020-01-05.
  11. "RStudio CRAN logs".
  12. "CRANlogs rnn package".
  13. "CRANlogs rnn package".
  14. "RDocumentation rnn".

External links

R (programming language)
Features
Implementations
Packages
Interfaces
People
Organisations
Publications
Numerical-analysis software
Free
Discontinued
Proprietary
Deep learning software
Open source
Proprietary
Categories: