2011-05-13 2 views
18

Quelqu'un sait-il d'une bibliothèque avec une implémentation de travail de rétropropagation à travers le temps? Tout de Java/Python/C#/VB.NET/F # (de préférence le dernier) fera l'affaire!Retour propagation à travers le temps

+1

Je cherchais quelque chose comme ça il y a quelque temps, mais ma recherche s'est avérée vide. Si vous trouvez quelque chose, veuillez le poster pour que je puisse l'utiliser, aussi – inspectorG4dget

+2

Que voulez-vous dire par "backpropagation"? Sans une déclaration ou une définition de problème, il est difficile d'offrir une solution. –

+8

@Nicholas Carey: backpropagation à travers le temps est une stratégie de formation réseau neuronal – em70

Répondre

11

En supposant que vous utilisez déjà une bibliothèque pour BP, il devrait être plutôt facile d'implémenter BPTT en utilisant BP comme une étape du processus.

L'entrée Wikipedia pour BPTT [1] inclut un pseudo code pertinent. Mon propre point de départ, il y a environ 18 ans, était «The Truck Backer-Upper: un exemple d'auto-apprentissage dans les réseaux neuronaux» [2].

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

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

4

Je l'ai utilisé NeuronDotNet que pour un temps limité cependant. Il vous permet de créer un feed-back BackPropagation NN. J'ai particulièrement aimé leur utilisation de classes nommées intuitivement. Bonne chance!

Il s'agit d'une bibliothèque .net.

+1

Merci, mais backprop et BPTT sont différents – em70

+0

ah, ok mec .. bonne chance .. – jinsungy

+0

L'URL freehostia.com est défunte. La dernière version de NeuronDotNet, 3.0, peut être trouvée sur http://sourceforge.net/projects/neurondotnet/ mais attention, ce projet sourceforge est maintenant inactif. NeuronDotNet reste cependant un cadre relativement mature, on espère que quelqu'un prendra la garde du projet si seulement en mode maintenance. – mjv

2

Peut-être que pybrain ferait? Le docstring pour sa classe BackpropTrainer suggère qu'il fait rétropropagation à travers le temps:

class BackpropTrainer(Trainer): 
    """Trainer that trains the parameters of a module according to a 
    supervised dataset (potentially sequential) by backpropagating the errors 
    (through time).""" 
3

Je suis d'un langage Java, mais Encog a une implémentation .net ainsi (et est un cadre sérieux bon pour NNets, avec le soutien des séries chronologiques bien)

Puis Pas d'aide avec un framework F #, mais pour quel domaine codifiez-vous? Si c'est de la finance, je vais réaffirmer le "jeter un oeil à Encog"

0

J'ai eu de bonnes expériences avec Weka - À mon avis, l'une des meilleures et probablement la plus complète des bibliothèques d'apprentissage de la machine à usage général autour.

Vous pouvez certainement faire BPTT avec Weka - vous pouvez trouver un classificateur prêt à l'emploi qui fait ce que vous avez besoin, mais même si elle ne vous pouvez simplement enchaîner quelques unités de rétropropagation normales ensemble comme par le très bon wikipedia article on BPTT

Questions connexes