PDA

View Full Version : [Frage] Perceptron Ergebnis?


gpro
18-06-2005, 15:16
Was kommt euch für perceptrontarget1 als Gewichtsvektor heraus?
Ich krieg (-4, 6.2628, 3.3863) kommt mir aber nicht richtig vor wenn ich mir den Plot ansehe.
Mein Algorithmus stimmt denke ich, aber ich bin nicht sicher ob ich die Daten richtig homogenisiert habe. Hab einfach eine Spalte mit Einsen den Daten hinzugefügt. Weiß einer ob das stimmt?
So stehts zwar im Skript aber dann wird bei jedem Schritt w = w + xi*yi das Theta um eins kleiner was ja nicht wirklich Sinn macht oder? :confused:

Cassandra
18-06-2005, 16:05
Was kommt euch für perceptrontarget1 als Gewichtsvektor heraus?
Ich krieg (-4, 6.2628, 3.3863) kommt mir aber nicht richtig vor wenn ich mir den Plot ansehe.
Ich komme auf (-2.0000, 3.3934, 1.6769). Das sieht zumindest so wie ich das plotte richtig aus. Mein Algorithmus sollte auch funktionieren, da er zumindest für die einfachen Probleme (AND, OR) die richtigen Gewichte liefert.
Mein Algorithmus stimmt denke ich, aber ich bin nicht sicher ob ich die Daten richtig homogenisiert habe. Hab einfach eine Spalte mit Einsen den Daten hinzugefügt. Weiß einer ob das stimmt?
Das habe ich auch so gemacht.
Wieviele Epochen lässt du es laufen? Vielleicht sind es einfach zu wenige?
Die Daten habe in der Hälfte geteilt um ein Trainings- und ein Testset zu erhalten. Wie hast du das gemacht? (für mein Ergebnis habe ich 4000 Iterationen angegeben)

dann wird bei jedem Schritt w = w + xi*yi das Theta um eins kleiner was ja nicht wirklich Sinn macht oder?
Das verstehe ich jetzt mal nicht...wieso wird das Theta kleiner?

wolk
20-06-2005, 16:22
@gpro: hab auch dieses ergebnis, aber warum ist es ca doppelt so groß wie das von Cassandra ?? gibts dafür eine erklärung ? oder is es zufall ?

@AND OR XOR Problem:
sieht euer gewichtsvektor so aus wie im skriptum (AND) oder weicht er ab ?

Cassandra
20-06-2005, 16:36
@AND OR XOR Problem:
sieht euer gewichtsvektor so aus wie im skriptum (AND) oder weicht er ab ?

Hmm...das war mir gar nicht aufgefallen, dass im Skriptum ein Gewicht für das AND-Problem angegeben ist...Ich komme da eigentlich auf ganz andere Daten, nämlich (-4, 2, 3).
Kommt ihr auf die gleichen Gewichte wie im Skriptum ? Irgendeine Idee was bei mir da falsch laufen könnte ?

lg,
Cassandra

wolk
20-06-2005, 16:44
genau diese werte krieg ich auch
es funktioniert mit diesen werten zwar für das AND problem aber im skriptum steht :
(-1.5, 1, 1)

@perceptrondata
perceptrontarget1 : 9 epochen
-4.0000
6.2628
3.3863

perceptrontarget2: tja, endlos, hab bei 10000 aufgehört
-2.0000
2.9662
1.6623
und 56 passten nicht

kommt das hin ?

wolk
20-06-2005, 17:53
eigentlich will ich ja nur die hyperebene plotten -> wie kommt man von w auf die gerade ?

im fall vom AND-Problem: w = -4, 3, 3 oder laut skriptum -1.5, 1, 1
wie komm ich jetzt von diesen werten auf die gerade ??

danke

buschti
20-06-2005, 19:19
eigentlich will ich ja nur die hyperebene plotten -> wie kommt man von w auf die gerade ?


Du mußt Dir nur überlegen, daß die Entscheidungsgrenze dort ist, wo der Output des Perceptrons 0 ist. Wenn Du 2 Punkte hast, für die das zutrifft, mußt Du die beiden nur verbinden.

Den ersten Punkt kannst Du z.B. im Plot an der Stelle x=0 setzen. Dann brauchst Du nur den passenden y-Wert dazu: einsetzen in Diskriminantenfunktion und lösen.

Hoffe, das war verständlich.

wolk
20-06-2005, 22:11
eh klar, danke

Plantschkuh!
20-06-2005, 23:06
Ich krieg (-4, 6.2628, 3.3863)
Ich komme auf (-2.0000, 3.3934, 1.6769).
Kommt das nicht aufs selbe? Die beiden Vektoren unterscheiden sich (pi mal Daumen) nur in der multiplikativen Konstanten 2. Wenn man beide mit dem selben Vektor skalar multipliziert, kommt auch ein Wert raus, der sich nur in dieser positiven Konstanten unterscheidet. Das Vorzeichen ist das selbe, es wird also jeder Punkt gleich klassifiziert. Sogar der Margin unterscheidet sich nur um diese multiplikative Konstante.

Behaupt ich jetzt mal.

wolk
21-06-2005, 10:07
ja in diesem fall sollte es das gleiche sein, aber beim AND-Problem verläuft die entscheidungsgrenze nicht gleich
(-4 2 3) ist nicht gleich (-1,5 1 1) -> anderer winkel der gerade

Plantschkuh!
21-06-2005, 12:38
Das macht ja auch nicht unbedingt was. Jede (nicht senkrecht) fallende Gerade ist -- bei geeigneter Positionierung -- eine Entscheidungsgrenze für das AND-Problem. Es gibt nur eine, die optimal ist in dem Sinn, daß sie die Margins maximiert, aber korrekt klassifizieren tun andere auch.

ein_stein2000
22-06-2005, 01:32
wir bekommen auch die gleichen ergebnisse ... sollte also stimmen