1

Regelmäßig sollte ein einfaches neuronales Netzwerk zum Lösen von XOR 2 Eingänge haben, 2 Neuronen in versteckter Schicht, 1 Neuron in Ausgangsebene.Warum hat dieses neuronale XOR-Netzwerk 2 Ausgänge?

jedoch die folgende Beispiel-Implementierung hat zwei Ausgangsneuronen, und ich verstehe es nicht:

https://github.com/deeplearning4j/dl4j-examples/blob/master/dl4j-examples/src/main/java/org/deeplearning4j/examples/feedforward/xor/XorExample.java

Warum hat der Autor legte zwei Ausgangsneuronen da drin?

Edit: Autor des Beispiels bemerkte, dass er 4 Neuronen in versteckter Schicht, 2 Neuronen in der Ausgangsschicht verwendet. Aber ich verstehe immer noch nicht warum, warum eine Form von {4,2} statt {2,1}?

+2

Er erklärte es in den Kommentaren an der Spitze. (Es ist eine andere Frage, wie gut diese Erklärung in Bezug auf formale Mathematik ist) – sascha

+1

Für alle zukünftigen Fragen, JFYI, gibt es eine aktive Entwickler-Community auf dem Gitter-Kanal: https://gitter.im/deeplearning4j/deeplearning4j – tremstat

+0

ja, das Chatroom ist interessant, half mir ein Kerl aus, wie die Aktivierungsfunktion mit Verlustfunktion – johnlowvale

Antwort

1

Dies wird eine heiße Codierung genannt. Die Idee ist, dass Sie ein Neuron pro Klasse haben. Jedes Neuron gibt die Wahrscheinlichkeit dieser Klasse an.

Ich weiß nicht, warum er 4 versteckte Neuronen verwendet. 2 sollte ausreichen (wenn ich mich richtig erinnere).

+0

Ich finde ein-hot Codierung nur gut, wenn wir don Ich habe nicht zu viele Klassen, um zu klassifizieren. – johnlowvale

+0

yeah, ich weiß nicht, warum er auch 4 versteckte Neuronen benutzt, ich habe 2 geändert und es funktioniert immer noch perfekt! – johnlowvale

+0

@johnlowvale Was machst du bei vielen Klassen? –

1

Der Autor verwendet am Ende die Evaluierungsklasse (für Statistiken darüber, wie oft das Netzwerk das richtige Ergebnis liefert). Diese Klasse benötigt ein Neuron pro Klassifikation, um korrekt zu arbeiten, d. H. Ein Ausgabeneuron für wahr und eins für falsch.

+1

Ich fragte 1 Kerl auf deeplearning4j Chatroom, sagte er, es ist wegen der Softmax-Aktivierungsfunktion in der Ausgangsschicht – johnlowvale

Verwandte Themen