lunes, 25 de julio de 2011

Redes neuronales

Las redes neuronales artificiales es un método desarrollable en computadoras que sirve para análisis de datos de una forma parecida a como el cerebro animal realiza el procesamiento.

Básicamente se trata de una interconexión de neuronas. Cada una de ellas puede tener múltiples entras y salidas. Las salidas puede variar de acuerdo a las entradas activadas disponibles. Cada neurona puede tratar diferente la activación de una entrada. Por  ejemplo, basándonos en la figura de de abajo, la entrada 1 de la capa oculta puede enviar una salida positiva a la capa de salida cuando todas sus entradas son activas mientras que la neurona 2 de la capa oculta puede enviar una salida negativa cuando todas sus entradas son activas.

image

Dependiendo de la neurona, a cada entrada se le puede asignar un peso diferente haciendo que incremente la salida o que la inhiban completamente.

Esto puede hacer que una red neuronal sea muy compleja, dependiendo del número de entradas, salidas, neuronas y capas.

  1. Cada neurona puede ser modelada como una simple sumadora de entradas o tan compleja como una serie de ecuaciones diferenciales o cualquier otro modelo que reaccione a las entradas y proporcione una salida.
  2. La red también se puede hacer de modo que la información fluya en solo una dirección o de modo que fluya en forma cíclica hasta alcanzar la salida.
  3. Todas las neuronas puede ser actualizadas simultáneamente o con retardos entre las señales.
  4. Las respuestas de las neuronas a las entradas puede ser determinística o aleatoria.

En fin, las variaciones pueden ser interminables.

Existen modelos de redes neuronales ya probados o teóricamente ejecutables. Algunos son muy lentos, o requieren procesos de entrenamiento que no existen lo que los hace imprácticos para aplicaciones en la vida real.

ENTRENAMIENTO DE UNA RED NEURONAL

Entrenar redes es seleccionar los pesos o procedimientos dentro de cada neurona para obtener una salida deseada con un determinado set de entradas.

Por ejemplo, si una red va a ser empleada para detección de cáncer por medio de imágenes. Su entrenamiento consistirá en un set de imágenes que se sabe provienen de casos de cáncer e imágenes que provienen de sujetos sanos. El entrenamiento consistirá en determinar los pesos de cada entrada y el modelo de la neurona para determinar que imágenes provienen de sujetos sanos y cuales provienen de sujetos enfermos. Por regla general, el set de imágenes de entrenamiento no pueden ser usadas después para evaluar el sistema ya que formaron parte del entrenamiento.  Sin embargo, existen ciertas técnicas que permiten usarlas aunque con menor grado de fiabilidad.

 

Referencias:

1) Timonthy Masters, Practical neural networks recipes in c++, 1993

2)  Nicholas Jay Cotton, A neural network implementation on embedded systems. accesed on 26 July 2011. http://etd.auburn.edu/etd/bitstream/handle/10415/2244/Dissertation%20Final.pdf?sequence=4

3) Wikipedia, Red neuronal artificial, http://es.wikipedia.org/wiki/Red_neuronal_artificial

Related Posts Plugin for WordPress, Blogger...