Rnn (программное обеспечение)
Rnn — открытое программное обеспечение для машинного обучения, реализующее архитектуры рекуррентные нейронные сети, такие как LSTM и GRU, на языке программирования R. Пакет rnn был загружен более 100 000 раз (только с серверов RStudio)[1].
Пакет rnn распространяется через CRAN[2] по открытой лицензии GPL v3.
Общие сведения
| rnn | |
|---|---|
| Автор | Бастиан Кваст |
| Написана на | R |
| Операционные системы | macOS, Linux, Windows |
| Первый выпуск | 30 ноября 2015 |
| Последняя версия | 1.9.0 (22 апреля 2023) |
| Кандидат в релизы | 1.9.0.9000 (22 апреля 2023) |
| Репозиторий | github.com/bquast/rnn |
| Лицензия | GPL v3 |
| Сайт | cran.r-project.org/web/p… |
Пример работы
Пример ниже из документации rnn показывает, как обучить рекуррентную нейронную сеть для поразрядного сложения двоичных чисел.
# установка пакета rnn и зависимости sigmoid
install.packages('rnn')
# загрузка пакета rnn
library(rnn)
# создание входных данных
X1 = sample(0:127, 10000, replace=TRUE)
X2 = sample(0:127, 10000, replace=TRUE)
# создание выходных данных
Y <- X1 + X2
# перевод из десятичного в двоичный код
X1 <- int2bin(X1, length=8)
X2 <- int2bin(X2, length=8)
Y <- int2bin(Y, length=8)
# объединение входных данных в один тензор
X <- array( c(X1,X2), dim=c(dim(X1),2) )
# обучение модели
model <- trainr(Y=Y,
X=X,
learningrate = 1,
hidden_dim = 16 )
Trained epoch: 1 - Learning rate: 1
Epoch error: 0.839787019539748
sigmoid
Отзывы и применение
С выходом версии 0.3.0 в апреле 2016 года[4] пакет стал шире использоваться в производственных и научных задачах. Несколько месяцев спустя на блоге The Beginner Programmer был опубликован обзор, в котором отмечалось: «R предоставляет простой и очень удобный пакет с названием rnn для работы с рекуррентными нейронными сетями»[5], что способствовало дальнейшему росту популярности[6].
В книге Neural Networks in R Баладжи Венкатесварана и Джузеппе Чиабурро подробно рассматривается применение rnn для демонстрации рекуррентных нейронных сетей в R[7][8]. Пакет также используется в учебном курсе r-exercises.com «Neural network exercises»[9][10].
Согласно журналу загрузок зеркала RStudio CRAN[11], пакет загружают в среднем около 2000 раз в месяц с данных серверов[12], всего с момента первого выпуска загрузок было более 100 000[13], а по информации RDocumentation.org это помещает пакет в 15-й процентиль самых популярных пакетов для R[14].
Примечания
- ↑ Quast, Bastiaan GitHub - bquast/rnn: Recurrent Neural Networks in R. (30 августа 2019). Дата обращения: 19 сентября 2019. Архивировано 8 октября 2025 года.
- ↑ Quast, Bastiaan; Fichou, Dimitri rnn: Recurrent Neural Network (27 мая 2019). Дата обращения: 5 января 2020. Архивировано 5 января 2020 года.
- ↑ Quast, Bastiaan sigmoid: Sigmoid Functions for Machine Learning (21 июня 2018). Дата обращения: 5 января 2020. Архивировано 5 января 2020 года.
- ↑ Quast, Bastiaan RNN: Recurrent Neural Networks in R releases (3 января 2020). Дата обращения: 5 января 2020. Архивировано 8 октября 2025 года.
- ↑ Mic The Beginner Programmer: Plain vanilla recurrent neural networks in R: waves prediction. The Beginner Programmer (5 августа 2016). Дата обращения: 5 января 2020. Архивировано 5 января 2020 года.
- ↑ LSTM or other RNN package for R. Data Science Stack Exchange. Дата обращения: 5 июля 2018. Архивировано 5 июля 2018 года.
- ↑ Neural Networks with R (англ.), O'Reilly (1 September 2017). Архивировано 2 октября 2018 года. Дата обращения: 2 октября 2018.
- ↑ Ciaburro, Giuseppe. Neural Networks with R: Smart models using CNN, RNN, deep learning, and artificial intelligence principles : [англ.] / Giuseppe Ciaburro, Balaji Venkateswaran. — Packt Publishing Ltd, 2017-09-27. — ISBN 978-1-78839-941-8.
- ↑ Touzin, Guillaume R-exercises – Neural networks Exercises (Part-3). www.r-exercises.com (21 июня 2017). Дата обращения: 5 января 2020. Архивировано 5 января 2020 года.
- ↑ Touzin, Guillaume Neural networks Exercises (Part-3) (амер. англ.). R-bloggers (21 июня 2017). Дата обращения: 5 января 2020. Архивировано 5 января 2020 года.
- ↑ RStudio CRAN logs.
- ↑ CRANlogs rnn package. Архивировано 11 января 2024 года.
- ↑ CRANlogs rnn package. Архивировано 18 сентября 2024 года.
- ↑ RDocumentation rnn.
Ссылки
- https://github.com/bquast/rnn — репозиторий на GitHub
- https://cran.r-project.org/package=rnn — страница rnn на CRAN