2009-06-01 16 views

Répondre

3

réseaux de neurones récurrents (dont houblonnière filets sont un type particulier) sont utilisés pour plusieurs tâches dans l'apprentissage de la séquence:

  • prédiction des séquences (Mapper une histoire de la valeur des actions à la valeur attendue dans la prochaine timestep)
  • classement de séquence (carte chaque extrait audio complet à un haut-parleur)
  • d'étiquetage de séquence (carte un extrait audio à la phrase prononcée)
  • renfort non-markovien apprentissage (par exemple des tâches qui nécessitent de la mémoire profonde que le T-Maze banc Mark)

Je ne suis pas sûr de ce que vous entendez exactement par "reconnaissance de modèle", car il s'agit essentiellement d'un champ entier dans lequel s'inscrit chaque tâche pour laquelle les réseaux de neurones peuvent être utilisés.

+0

Pourriez-vous être un peu plus précis sur leur utilisation avec l'apprentissage de renforcement non-markovien? Vous dites qu'ils sont utilisés pour des tâches nécessitant une mémoire importante, mais le réseau de backprops multicouche ne ferait-il pas de même? Qu'est-ce qui rend les meilleurs pour le travail? Merci –

+0

Généralement, vous présentez les observations des k derniers pas de temps à une MLP pour l'associer à une action ou à une valeur. C'est quelque chose que vous pouvez appeler "k-markovian". Cependant, "mémoire profonde" fait référence à des situations où le nombre de timesteps que vous devez regarder en arrière n'est pas nécessairement limité. Dans ce cas, vous avez besoin d'un réseau récurrent qui peut (au moins théoriquement) remonter dans le temps un nombre infini de timesteps. Vous voudrez peut-être vérifier ce document: http://www.idsia.ch/~daan/papers/jof.pdf – bayer

0

Vous pouvez également utiliser le réseau Hopfield pour des problèmes d'optimisation.

+2

Peut-être que vous pouvez donner un exemple/référence. – runDOSrun

+0

Par exemple, Problème de voyageur voyageur ou chemin le plus court [lien] (http://www.mini.pw.edu.pl/~mandziuk/PRACE/TSP_DM.pdf) –

0

Vous pouvez pas commander ce dépôt ->Hopfield Network

Il vous un exemple pour le test d'un modèle après le train du réseau hors ligne. C'est le test

@Test 
public void HopfieldTest(){ 
    double[] p1 = new double[]{1.0, -1.0,1.0,-1.0,1.0,-1.0,1.0,-1.0,1.0}; 
    double[] p2 = new double[]{1.0, 1.0,1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0}; 
    double[] p3 = new double[]{1.0, 1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0}; 

    ArrayList<double[]> patterns = new ArrayList<>(); 
    patterns.add(p1); 
    patterns.add(p2); 

    Hopfield h = new Hopfield(9, new StepFunction()); 

    h.train(patterns); //train and load the Weight matrix 

    double[] result = h.test(p3); //Test a pattern 

    System.out.println("\nConnections of Network: " + h.connections() + "\n"); //show Neural connections 
    System.out.println("Good recuperation capacity of samples: " + Hopfield.goodRecuperation(h.getWeights().length) + "\n"); 
    System.out.println("Perfect recuperation capacity of samples: " + Hopfield.perfectRacuperation(h.getWeights().length) + "\n"); 
    System.out.println("Energy: " + h.energy(result)); 

    System.out.println("Weight Matrix"); 
    Matrix.showMatrix(h.getWeights()); 
    System.out.println("\nPattern result of test"); 
    Matrix.showVector(result); 

    h.showAuxVector(); 
} 

Après le test, vous pouvez voir

Running HopfieldTest 

Connections of Network: 72 

Good recuperation capacity of samples: 1 

Perfect recuperation capacity of samples: 1 

Energy: -32.0 

Weight Matrix 
0.0  0.0  2.0 -2.0  2.0  -2.0  0.0  0.0  0.0 
0.0  0.0  0.0  0.0  0.0  0.0  -2.0  2.0 -2.0 
2.0  0.0  0.0 -2.0  2.0  -2.0  0.0  0.0  0.0 
-2.0  0.0 -2.0  0.0  -2.0  2.0  0.0  0.0  0.0 
2.0  0.0  2.0 -2.0  0.0  -2.0  0.0  0.0  0.0 
-2.0  0.0 -2.0  2.0  -2.0  0.0  0.0  0.0  0.0 
0.0  -2.0  0.0  0.0  0.0  0.0  0.0  -2.0  2.0 
0.0  2.0  0.0  0.0  0.0  0.0  -2.0  0.0 -2.0 
0.0  -2.0  0.0  0.0  0.0  0.0  2.0  -2.0  0.0 

Pattern result of test 

1.0  1.0  1.0  -1.0  1.0  -1.0  -1.0  1.0  -1.0 
------------------------- 
The auxiliar vector is empty 

J'espère que cela peut vous aider à