6

Quiero tener una red neuronal artificial:Cómo implementar una red neuronal artificial en Delphi?

  • 42 neuronas de entrada
  • 168 neuronas ocultas
  • 7 neuronas de salida

Esta red es jugar el juego de "Conecta Cuatro" . Al final de cada juego, la red recibe comentarios (¿resultado/victoria del juego?).

aprendizaje se debe hacer con el aprendizaje diferencia temporal.

Mis preguntas:

  • ¿Qué valores deben estar en mi arsenal recompensa?
  • Y por último: ¿Cómo puedo aplicar a mi juego ahora?

Muchas gracias por adelantado!

+14

¿Qué quiere decir con "qué pasa"? Tú dinos. ¿Qué pasa con esto? ¿No compila? ¿Compila pero da errores cuando lo ejecuta? ¿Simplemente no da la salida correcta? Es mucho más fácil ayudar con preguntas como esta cuando nos das algo para seguir. –

+1

¡Compila bien en Delphi 2010! – IElite

+2

@ user89818, después de responder la pregunta de Mason y corregir el error encontrado por Sertac: Comience de a poco, no puede probar con 217 neuronas en total, disminuya el número a algo mucho, mucho más pequeño; Configure una buena hoja de trabajo de Excel, ejecute su programa en el depurador y para cada paso actualice la hoja de trabajo de Excel * a mano * y compare los valores con lo que ve en Delphi. Esto ayudará a detectar cualquier error de lógica. –

Respuesta

4
+0

Enlaces interesantes. El primero es delphi específico, aunque los otros no. Sin embargo, tuve problemas para cargar el primer enlace. ¿Tienes otro para NeuroVCL? Parece que los archivos DCU (binarios) para Delphi 5 son proporcionados por el autor, pero no hay fuentes, lo que hace que este NeuroVCL sea una curiosa curiosidad histórica para cualquiera que no tenga Delphi 5 o 6. Enlace alternativo: http: //solair.eunet .rs/~ ilicv/free_eng.html –

+0

Gracias :) Buenos enlaces, pero como estoy buscando algunos consejos para preparar MI implementación, no puedo usar esto. Y: quiero implementar el algoritmo TD (lambda) para el aprendizaje, mientras que todos los enlaces tienen implementada la retro-propagación simple. – caw

+0

FANN también tiene soporte para Delphi: http://sourceforge.net/projects/fann – avra

1

Si está interesado en utilizar una biblioteca de terceros (gratis para productos no comerciales, estoy muy contento con algunas herramientas de esta empresa http://www.mitov.com/html/intelligencelab.html (aunque nunca he usado su laboratorio de inteligencia, solo herramientas de video) .)

+0

¡Gracias! Podría ser realmente interesante para otros usuarios, pero en mi caso, necesito mi propia implementación;) – caw

4

Primer golpe es: está asignando '0' a t en 'main', pero el límite bajo de sus matrices es '1', por lo que está accediendo a un elemento no existente en los bucles, de ahí el AV

Si habilitó la verificación de rango en las opciones del compilador, obtendría un error de comprobación de rango y probablemente habría encontrado el motivo anteriormente.

BTW, ya que no tengo idea de lo que está haciendo el código, posiblemente no notaría ningún otro error en este momento ...

+0

Gracias por informar este pequeño error. Lo he corregido en el código anterior – caw

0

Fast Artificial Neural Network (FANN) es una buena biblioteca de código abierto, su sido optimizado y utilizadas por una comunidad grande, con un montón de apoyo y enlaces delphi.

Se recomienda el uso de dependencias en esta área, si no entiende completamente lo que hace, el más mínimo detalle puede tener un gran impacto en el funcionamiento de una red neuronal; así que mejor dedique su tiempo a la implementación de la red y luego a cualquier otra cosa.

0

Otros enlaces que pueden ser útiles para usted:

http://delphimagic.blogspot.com.ar/2012/12/red-neuronal-backpropagation.html (incluye el código fuente) Codificación de una red neuronal backpropagation con dos neuronas de entrada, dos salidas y una capa oculta. La muestra proporciona dos conjuntos de datos que se puede entrenar a la red y ver cómo un aprendizaje preciso reducir al mínimo el error que se muestra en un gráfico. La modificación del programa puede cambiar el número de veces que la red se capacitó con los datos de prueba (épocas)

Cuestiones relacionadas