Guide étape par étape de formation d'un perceptron multicouche pour le XOR cas dans Weka?

Je suis juste de commencer avec Weka et de la difficulté avec les premières étapes.

Nous avons eu notre formation:

@relation PerceptronXOR 
@attribut X1 numérique 
@attribut numérique X2 
@attribut de Sortie numérique 
@data 
1,1,-1 
-1,1,1 
1,-1,1 
-1,-1,-1 

Première étape que je veux faire est juste en train, puis de les classifier un ensemble à l'aide de la Weka gui.
Ce que j'ai fait jusqu'à présent:

À L'Aide De Weka 3.7.0.

  1. De démarrage de l'interface graphique.
  2. Explorer.
  3. Ouvrir le fichier -> choisir mon fichier arff.
  4. Classer onglet.
  5. De formation sur l'ensemble de bouton radio.
  6. Choisissez-> fonctions>multilayer_perceptron
  7. Cliquez sur le perceptron multicouche texte en haut pour ouvrir les paramètres.
  8. Ensemble de couches Cachées à '2'. (si l'interface graphique est sélectionné vrai,t sa montrer que c'est le bon réseau que nous voulons). Cliquez sur ok.
  9. cliquez sur démarrer.

sorties:

=== Information === 

Régime: weka.les classificateurs.fonctions.MultilayerPerceptron -L 0,3 -M 0,2-N 500 -V 0 -S 0 -E 20 -H 2 -R 
Relation: PerceptronXOR 
Instances: 4 
Attributs: 3 
X1 
X2 
Sortie 
Mode Test: évaluer sur les données de formation 

=== Classificateur modèle (formation complète set) === 

Linéaire Nœud 0 
Entrées Poids 
Seuil 0.21069691964232443 
Le nœud 1 1.8781169869419072 
Le nœud 2 -1.8403146612166397 
Sigmoïde Nœud 1 
Entrées Poids 
Seuil -3.7331156814378685 
Attrib X1 3.6380519730323164 
Attrib X2 -1.0420815868133226 
Sigmoïde Nœud 2 
Entrées Poids 
Seuil -3.64785119182632 
Attrib X1 3.603244645539393 
Attrib X2 0.9535137571446323 
Classe 
Entrée 
Le nœud 0 


Temps nécessaire pour construire le modèle: 0 secondes 

=== L'évaluation sur l'ensemble d'apprentissage === 
=== Récapitulatif === 

Le coefficient de corrélation 0.7047 
Moyenne de l'erreur absolue 0.6073 
La racine de l'erreur quadratique moyenne 0.7468 
Relative de l'erreur absolue 60.7288 % 
Relatif à la racine carrée de l'erreur 74.6842 % 
Total Nombre de Cas 4 

Il semble étrange que 500 itérations à 0,3 ne comprend pas l'erreur, mais 5000 @ 0.1, ce qui permet d'aller avec qui.

Maintenant utiliser le jeu de données de test:

@relation PerceptronXOR 
@attribut X1 numérique 
@attribut numérique X2 
@attribut de Sortie numérique 
@data 
1,1,-1 
-1,1,1 
1,-1,1 
-1,-1,-1 
0.5,0.5,-1 
-0.5,0.5,1 
0.5,-0.5,1 
-0.5,-0.5,-1 
  1. Bouton Radio 'a Fourni une trousse d'essai
  2. Sélectionnez mon jeu de test arff.
  3. Cliquez sur démarrer.
=== Information === 

Régime: weka.les classificateurs.fonctions.MultilayerPerceptron -L À 0,1 M 0,2-5000 N-V 0 -S 0 -E 20 -H 2 -R 
Relation: PerceptronXOR 
Instances: 4 
Attributs: 3 
X1 
X2 
Sortie 
Mode Test: l'utilisateur de test fourni: réglage de la taille inconnue (lecture incrémentielle) 

=== Classificateur modèle (formation complète set) === 

Linéaire Nœud 0 
Entrées Poids 
Seuil -1.2208619057226187 
Le nœud 1 3.1172079341507497 
Le nœud 2 -3.212484459911485 
Sigmoïde Nœud 1 
Entrées Poids 
Seuil 1.091378074639599 
Attrib X1 1.8621040828953983 
Attrib X2 1.800744048145267 
Sigmoïde Nœud 2 
Entrées Poids 
Seuil -3.372580743113282 
Attrib X1 2.9207154176666386 
Attrib X2 2.576791630598144 
Classe 
Entrée 
Le nœud 0 


Temps nécessaire pour construire le modèle: 0.04 secondes 

=== L'évaluation sur l'ensemble de test === 
=== Récapitulatif === 

Le coefficient de corrélation 0.8296 
Moyenne de l'erreur absolue 0.3006 
La racine de l'erreur quadratique moyenne 0.6344 
Relative de l'erreur absolue 30.0592 % 
Relatif à la racine carrée de l'erreur 63.4377 % 
Nombre Total de Cas 8 

Pourquoi est incapable de classer correctement?

Est juste parce qu'il est atteint un minimum local rapidement sur les données d'apprentissage, et de ne pas "savoir" que cela ne convient pas à tous les cas?

Questions.

  1. Pourquoi ne 500 @ 0.3 fonctionne pas? Me semble bizarre pour un problème simple.
  2. Pourquoi elle ne répond en rien sur le jeu de test.
  3. Comment puis-je passer d'un jeu à classer?
1. Si l'apprentissage de taux est trop élevé, il ne convergent pas. Même à 0.1 est un peu grand.

OriginalL'auteur dwjohnston | 2013-06-21