Frage

Ich porte einen C -Code mit einem künstlichen neuronalen Netzwerk für Java. Ich habe beschlossen, das zu benutzen Encog Framework.

Ich möchte, dass mein Netzwerk ein Bias -Neuron hat (das gewichtete Synapsen verwendet und immer 1.0 ausgibt), die mit verborgenen Schichten und der Ausgangsschicht verbunden sind. Sie sind mit grün markiert in Diese Grafik.

Wie kann ich ein solches Netzwerk programmatisch erstellen? Sollte jeder Bias -Neuron eine eigene Schicht haben? Ich habe versucht, a zu instanziieren BasicLayer Für jeden Voreingenommenheit Neuron, aber dies scheint keinen Effekt zu haben, obwohl die Schicht über a verbunden ist Gewichtspartner.

Vielen Dank,

Martin Wiboe

War es hilfreich?

Lösung

Okay, ich kenne diesen! Ich bin einer der primären Encog -Entwickler. :)

Wir haben die Unterstützung für das in Encog 2.4 (das in Beta) verbessert, aber selbst die aktuelle Version unterstützt dies. In Encog 2.3 wird die Verzerrung als Schwellenwert bezeichnet. Erstellen Sie also Ihre Ebenen an, dass Sie Schwellenwerte wünschen. Im Grunde erzeugt dies die Vorspannungseingänge für jede der Schichten, die Sie angeben, auf die Sie angeben. Ich baue alles in die gleiche Ebene auf, weil es die Leistung verbessert und alles gleich funktioniert.

Wir hatten tatsächlich eine Diskussion darüber und machen es in Encog 2.4 klarer. Sie können die Diskussion hier lesen.

http://www.heatonresearch.com/node/1477

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top