LSTM или другой пакет RNN для R

10

Я видел впечатляющий результат от моделей LSTM, производящих тексты, подобные Шекспиру. Мне было интересно, существует ли пакет LSTM для R. Я гуглил его, но нашел только пакеты для Python и Julia. (возможно, есть некоторая проблема с производительностью, которая объясняет, почему эти программы более предпочтительны, чем R). Знаете ли вы о пакете LSTM (или, по крайней мере, RNN) для R? Если есть, есть ли учебники для их использования?

Виктор
источник
Пример ссылки на такие результаты: karpathy.github.io/2015/05/21/rnn-effectiveness (не уверен, что это тот, который вы видели)
Нил Слэйтер
@NeilSlater Да, это одна хорошая реализация, которую я видел, но, к сожалению, не для Р.
Виктор
Я обновил свой ответ, чтобы упомянуть теперь доступные алгоритмы LSTM и GRU в rnn .
Бастиан Quast

Ответы:

5

Посмотрите на пакет rnn (полное раскрытие, я автор). Он реализует многослойные RNN, GRU и LSTM непосредственно в R, то есть не в базовой библиотеке C ++, поэтому вы также должны иметь возможность читать код и понимать, что происходит.

install.packages('rnn')

Версия CRAN довольно актуальна, но версия GitHub является передовой и может быть установлена ​​с помощью:

if (!require('devtools')) install.packages('devtools')
devtools::install_github('bquast/rnn')
Бастиан Quast
источник
Спасибо за хороший пакет! Я только начал экспериментировать с этим. Интересно, сравнивали ли вы скорость с другими реализациями?
Виктор
если его в R это действительно медленно?
августа
не совсем, это достаточно быстро для разумной работы, существуют ограничения памяти
Bastiaan Quast
4

Я нашел эту страницу, но пакет R, кажется, не с открытым исходным кодом: ссылка.

дом
источник
2
Это кажется многообещающим. По словам автора, он будет публиковать его на CRAN, когда закончите.
Виктор
3

Возможно, вам придется расширить другой пакет для реализации LSTM и RNN в R. Вот несколько пакетов, с которых можно начать:

  • deepnet Реализует множество архитектур глубокого обучения
  • Дарч Глубокая архитектура
  • H2O Компания с открытым исходным кодом с пакетами глубокого обучения
Брайан Спиринг
источник
2

Возможно, вы захотите взглянуть на mxnet . Это распределенная библиотека для глубокого изучения. Он поддерживает C ++, python, scala и R. Есть много примеров с R. Здесь у вас есть пример LSTM в R с этой библиотекой.

hoaphumanoid
источник