Domanda

sto porting del codice C che coinvolge una rete neurale artificiale a Java. Ho deciso di utilizzare la Encog quadro .

desidero mia rete avere un neurone polarizzazione (che utilizza sinapsi ponderata ed emette sempre 1.0) collegato a livelli nascosti e lo strato di uscita; essi sono contrassegnati con verde in questo grafico .

Come si può creare una tale rete di programmazione? Nel caso in ogni pregiudizio neurone ha un proprio livello? Ho cercato di creare un'istanza di un BasicLayer per ogni neurone pregiudizi, ma questo non sembra avere alcun effetto, anche se lo strato è collegato tramite un WeightedSynapse .

Grazie,

Martin Wiboe

È stato utile?

Soluzione

Ok, so questo! Sono uno degli sviluppatori Encog primari. :)

Abbiamo migliorato il supporto per quella a Encog 2.4 (che è in versione beta), ma anche la versione attuale supporta questo. In Encog 2.3 pregiudizi si chiama soglia. Creare così i livelli specificando che TU VUOI valori di soglia. Fondamentalmente questo crea gli ingressi di polarizzazione per ciascuno degli strati specificato avente valori di soglia sopra. Costruisco tutto in stesso livello perché migliora le prestazioni, il tutto funziona lo stesso.

In realtà abbiamo avuto una discussione su questo, e ci stanno rendendo più chiaro nel Encog 2.4. È possibile leggere la discussione qui.

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top