Krautkanal.com

Veröffentlicht am 2014-12-27 20:16:55 in /prog/

/prog/ 6261: Mlp teilt durch null

ggavrilo Avatar
ggavrilo:#6261

Guten Abend, kennt sich jemand mit der Programmierung von Multilayer Perceptrons aus?
Ich habe eine eigene Implementierung geschrieben, aber immer wenn ich ihm komplexere Sachverhalte beibringen möchte teilt es durch 0.
Das passiert bei der Berechnung der Ableitung der sigmoiden Aktivierungsfunktion.
Ich hoffe jemand kann mir helfen :D

ripplemdk Avatar
ripplemdk:#6262

Nein

Shriiiiimp Avatar
Shriiiiimp:#6263

Schreib Unit-Tests.

dwardt Avatar
dwardt:#6264

Wie soll man dir - ohne Quellcode und nur auf Basis deiner schwammingen Fehlerbeschreibung - helfen?

Offensichtlich hast du einen Bug drin und daher solltest du anstatt den Sachverhalt unvollständig und nicht nachvollziehbar auf einem Imageboard zu posten, lieber Tests einrichten, mit denen du deinen Fehler besser eingrenzen kannst.

krdesigndotit Avatar
krdesigndotit:#6297

Wieso musst du das Ding ableiten?

adammarsbar Avatar
adammarsbar:#6298

>>6297
dieser nicht-OP-Bernd vermutet mal, dass damit Backpropagation gemacht werden soll.
http://de.wikipedia.org/wiki/Backpropagation
Darum auch
> sigmoiden Aktivierungsfunktion
weil man die im Gegensatz zu einer harten Schwelle differenzieren kann.

Metadiskussion, da nichts wirklich beitragend: Die Konzepte sind doch mittlerweile auch echt alt. Und ich glaube nicht, dass ein echtes Gehirn auch nur annähernd so lernt. Gibt es da keine klügeren Ansätze mittlerweile?

mugukamil Avatar
mugukamil:#6302

>>6261
>Das passiert bei der Berechnung der Ableitung der sigmoiden Aktivierungsfunktion.

Kann gar nicht sein, außer du hast sie irgendwie komisch implementiert.

sigmoid(x) = 1 / (1 + exp(-x))
Das kann schon mal nicht 0 werden, außer bei imaginären x, was mit double Werten schwer geht.

Ableitung:
sigmoid'(x) = (1 - sigmoid(x)) * sigmoid(x)
Hier wird gar nichts geteilt.

cmzhang Avatar
cmzhang:#6304

>jemand mit der Programmierung von Multilayer Perceptrons aus?

Nein, aber ich kenne die Theorie dahinter gut genug, um mich nicht damit beschäftigen zu wollen.

Protip: Baue erst ein einzelnes Perzeptron.