Pregunta

Estoy portando algún código C que involucre una red neuronal artificial a Java. He decidido usar el Marco encog.

Me gustaría que mi red tuviera una neurona de sesgo (que utiliza sinapsis ponderadas y siempre sale 1.0) conectada a capas ocultas y la capa de salida; Están marcados con verde en este gráfico.

¿Cómo puedo crear una red de este tipo mediante programación? ¿Debería cada neurona de sesgo tener su propia capa? He tratado de instanciar un Sencillo para cada neurona sesgo, pero esto no parece tener ningún efecto a pesar de que la capa está conectada a través de un Sinpso pesado.

Gracias,

Martin Wiboe

¿Fue útil?

Solución

¡Está bien, sé este! Soy uno de los principales desarrolladores de Encog. :)

Mejoramos el soporte para eso en Encog 2.4 (que está en beta), sin embargo, incluso la versión actual lo admite. En Encog 2.3, el sesgo se llama umbral. Así que cree sus capas especificando que desea valores de umbral. Básicamente, esto crea las entradas de sesgo para cada una de las capas en las que especifica tener valores de umbral. Lo construyo todo en la misma capa porque mejora el rendimiento, todo funciona igual.

De hecho, tuvimos una discusión sobre esto, y lo estamos dejando más claro en Encog 2.4. Puedes leer la discusión aquí.

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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top