Обратное распространение во времени - PullRequest
18 голосов
/ 13 мая 2011

Кто-нибудь знает библиотеку с работающей реализацией обратного распространения через время? Подойдет любой из Java / Python / C # / VB.NET / F # (желательно последний)!

Ответы [ 8 ]

11 голосов
/ 13 мая 2011

Предполагая, что вы уже используете некоторую библиотеку для BP, (TM) должно быть довольно просто реализовать BPTT с использованием BP в качестве шага в этом процессе.

Запись в Википедии для BPTT [1] включает в себя соответствующиепсевдокод.

Моей отправной точкой, около 18 лет назад, была «Бэккер-аппер: пример самообучения в нейронных сетях» [2].

[1] http://en.wikipedia.org/wiki/Backpropagation_through_time

[2] http://www -isl.stanford.edu / ~ widrow / paper / c1989thetruck.pdf

4 голосов
/ 13 мая 2011

Я использовал NeuronDotNet только в течение ограниченного времени.Позволяет создать прямую обратную связь BackPropagation NN.Мне особенно понравилось их использование интуитивно названных классов.Удачи!

Это библиотека .net.

3 голосов
/ 20 мая 2011

Я из Java-фона, но Encog также имеет реализацию .net (и является действительно хорошей средой для NNets с хорошей поддержкой временных рядов)

Не можете помочь с инфраструктурой F #, но для какого домена вы кодируете? Если это финансы, я подтвердлю "взглянуть на Encog"

2 голосов
/ 18 мая 2011

Может быть, Pybrain подойдет? Строка документа для его класса BackpropTrainer предполагает, что он выполняет обратное распространение во времени:

class BackpropTrainer(Trainer):
    """Trainer that trains the parameters of a module according to a
    supervised dataset (potentially sequential) by backpropagating the errors
    (through time)."""
1 голос
/ 18 мая 2011

А как насчет этого ? Просто поиск Google, чтобы помочь ...

0 голосов
/ 16 сентября 2016

Вы можете использовать функцию TensorFlow dynamic_rnn() ( API doc ).Учебное пособие TensorFlow по рекуррентным нейронным сетям поможет.

Кроме того, этот замечательный пост в блоге предоставляет хорошее введение в прогнозирование последовательностей с использованием TensorFlow.Вот еще одно сообщение в блоге с некоторым кодом для прогнозирования временного ряда.

0 голосов
/ 23 мая 2011

Я сделал алгоритм обратного распространения в Java довольно давно.Я загрузил его в GitHub, может быть, вы найдете его полезным: https://github.com/bernii/NeuralNetwokPerceptronKohonen

Позвольте мне сейчас, если это было полезно:)

0 голосов
/ 21 мая 2011

У меня был хороший опыт работы с Weka - На мой взгляд, одна из лучших и почти наверняка наиболее полных библиотек машинного обучения общего назначения.

Вы, конечно, можете сделать BPTT с Weka - вы можете найти готовый классификатор, который делает то, что вам нужно, но даже если нет, вы можете просто объединить несколько нормальных единиц обратного распространения в соответствии с очень хорошей статьей в Википедии о BPTT

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...