Implementieren und Zeichnen eines Perzeptrons in MATLAB

8

Ich überprüfe einen Code aus dem Toronto-Perzeptron-MATLAB-Code

>

Der Code ist

%Vor%

Ich habe also gelesen, wie man diese Funktion auf die Datenmatrix X und das Ziel Y anwendet, aber ich weiß, dass ich nicht weiß, wie man diese Funktion benutzt, um einen Vektor von Gewichten zu erhalten, damit er klassifizieren kann.

Könnten Sie bitte ein Beispiel geben und es erklären?

Ich habe es versucht

%Vor%

Danke

Danke für die Antworten, ich habe noch eins, wenn ich das Y = [0, 1] ändere, was passiert mit dem Algorithmus ?.

Also, irgendwelche Eingabedaten funktionieren nicht mit Y = [0,1] mit diesem Code des Perzeptrons richtig ?,

----------------------------- BEARBEITEN -------------- ----------

Noch eine Frage, wenn ich die Linie zeichnen möchte, die die 2 Klassen teilt , ich weiß, dass wir das lineare Gleichungssystem bekommen können, das mit Gewichten zu tun hat, aber wie, Was könnte ich tun? Ich versuche etwas wie

%Vor%     
cMinor 03.02.2011, 03:24
quelle

3 Antworten

17

Sie sollten zuerst verstehen, was die einzelnen Eingaben bedeuten:

  • X ist die Eingabematrix von Beispielen der Größe M x N, wobei M die Dimension des Merkmalsvektors und N die Anzahl der Stichproben ist. Da das Perzeptron-Modell für die Vorhersage Y=w*X+b ist, müssen Sie eine zusätzliche Dimension in X angeben, die konstant ist und normalerweise auf 1 gesetzt wird, sodass der b -Begriff in X "eingebaut" ist. Im Beispiel unten für X habe ich den letzten Eintrag von X in allen Beispielen auf 1 gesetzt.
  • Y ist die korrekte Klassifizierung für jede Stichprobe aus X (die Klassifikation, die das Perzeptron lernen soll), also sollte es ein N-dimensionaler Zeilenvektor sein - eine Ausgabe für jedes Eingabebeispiel. Da das Perzeptron ein binärer Klassifikator ist, sollte es nur zwei verschiedene mögliche Werte haben. Wenn Sie im Code nachsehen, wird nach dem Vorzeichen der Vorhersage gesucht, das Ihnen sagt, dass die erlaubten Werte von Y -1,+1 (und nicht 0,1 zum Beispiel) sein sollten.
  • w ist der Gewichtsvektor, den Sie zu lernen versuchen.

Versuchen Sie also, die Funktion mit

aufzurufen %Vor%

BEARBEITEN

Verwenden Sie den folgenden Code, um das perceptron alg aufzurufen und die Ergebnisse grafisch zu sehen:

%Vor%     
Itamar Katz 03.02.2011, 14:11
quelle
10

Wenn Sie interessiert sind, hier ist ein kleines Perceptron-Demo, das auf eine ziemlich einfache Weise geschrieben wurde:

%Vor%     
William Payne 04.02.2011 13:52
quelle
1

versuche das:

%Vor%     
memyself 03.02.2011 13:57
quelle