jueves, 13 de marzo de 2014

redes neuronales

Las Redes Neuronales son un campo muy importante dentro de la Inteligencia Artificial. Inspirándose en el comportamiento conocido del cerebro humano (principalmente el referido a las neuronas y sus conexiones), trata de crear modelos artificiales que solucionen problemas difíciles de resolver mediante técnicas algorítmicas convencionales. 
      En esta página web trataremos de acercar al visitante a este tema, mostrando las bases neurológicas y matemáticas, los principales modelos vigentes y ejemplos interactivos que solucionan algunos problemas de forma eficaz.

LA NEURONA BIOLÓGICA

        Fue Ramón y Cajal (1888) quién descubrió la estructura celular (neurona) del sistema nervioso. Defendió la teoría de que las neuronas se interconectaban entre sí de forma paralela, y no formando un circuito cerrado como el sistema sanguíneo.
         Una neurona consta de un cuerpo celular (soma) de entre 10 y 80 mm, del que surge un denso árbol de ramificaciones (dendritas) y una fibra tubular (axón) de entre 100 mm y un metro.
De alguna forma, una neurona es un procesador de información muy simple:
·        Canal de entrada: dendritas.
·        Procesador: soma.
·        Canal de salida: axón.
         Una neurona cerebral puede recibir unas 10.000 entradas y enviar a su vez su salida a varios cientos de neuronas.
 La conexión entre neuronas se llama sinapsis. No es una conexión física, si no que hay unos 2 mm de separación. Son conexiones unidireccionales, en la que la transmisión de la información se hace de forma eléctrica en el interior de la neurona y de forma química entre neuronas; gracias a unas sustancias específicas llamadas neurotransmisores.
 No todas las neuronas son iguales, existen muchos tipos diferentes según el número de ramificaciones de sus dendritas, la longitud del axón y otros detalles estructurales. Sin embargo, como hemos visto, todas ellas operan con los mismos principios básicos.

 

MODELO DE NEURONA ARTIFICIAL

         El modelo de Rumelhart y McClelland (1986) define un elemento de proceso (EP), o neurona artificial, como un dispositivo que a partir de un conjunto de entradas, xi (i=1...n) o vector x, genera una única salida y.
Esta neurona artificial consta de los siguientes elementos:
    ·        Conjunto de entradas o vector de entradas x, de n componentes
·        Conjunto de pesos sinápticos wij. Representan la interacción entre la neurona presináptica j y la postsináptica i.
·        Regla de propagación d(wij,xj(t)): proporciona el potencial postsináptico, hi(t).
·        Función de activación ai(t)=f(ai(t-1), hi(t)): proporciona el estado de activación de la neurona en función del estado anterior y del valor postsináptico.
·        Función de salida Fi(t): proporciona la salida yi(t), en función del estado de activación.
         Las señales de entrada y salida pueden ser señales binarias (0,1 – neuronas de McCulloch y Pitts), bipolares (-1,1), números enteros o continuos, variables borrosas, etc.
La regla de propagación suele ser una suma ponderada del producto escalar del vector de entrada y el vector de pesos:
 También se usa a menudo la distancia euclídea entre ambos vectores:
         Existen otro tipo de reglas menos conocidas como la distancia de Voronoi, de Mahalanobis, etc.
La función de activación no suele tener en cuenta el estado anterior de la neurona, sino sólo el potencial hi(t). Suele ser una función determinista y, casi siempre, continua y monótona creciente. Las más comunes son la función signo (+1 si hi(t)>0, -1 en caso contrario), la función semilineal y las funciones sigmoides:
   
        La función de salida suele ser la identidad. En algunos casos es un valor umbral (la neurona no se activa hasta que su estado supera un determinado valor).
        Con todo esto, el modelo de neurona queda bastante simplificado:


RED NEURONAL ARTIFICIAL

         Una red neuronal artificial (RNA) se puede definir (Hecht – Nielssen 93) como un grafo dirigido con las siguientes restricciones:
  1. Los nodos se llaman elementos de proceso (EP).
  2. Los enlaces se llaman conexiones y funcionan como caminos unidireccionales instantáneos
  3. Cada EP puede tener cualquier número de conexiones.
  4. Todas las conexiones que salgan de un EP deben tener la misma señal.
  5. Los EP pueden tener memoria local.
  6. Cada EP posee una función de transferencia que, en función de las entradas y la memoria local produce una señal de salida y / o altera la memoria local.
  7. Las entradas a la RNA llegan del mundo exterior, mientras que sus salidas son conexiones que abandonan la RNA.

ARQUITECTURA DE LAS RNA

      La arquitectura de una RNA es la estructura o patrón de conexiones de la red. Es conveniente recordar que las conexiones sinápticas son direccionales, es decir, la información sólo se transmite en un sentido.
En general, las neuronas suelen agruparse en unidades estructurales llamadas capas. Dentro de una capa, las neuronas suelen ser del mismo tipo. Se pueden distinguir tres tipos de capas:
·        De entrada: reciben datos o señales procedentes del entorno.
·        De salida: proporcionan la respuesta de la red a los estímulos de la entrada.
·        Ocultas: no reciben ni suministran información al entorno (procesamiento interno de la red).
Generalmente las conexiones se realizan entre neuronas de distintas capas, pero puede haber conexiones intracapa o laterales y conexiones de realimentación que siguen un sentido contrario al de entrada-salida.



APRENDIZAJE DE LAS RNA

 Es el proceso por el que una RNA actualiza los pesos (y, en algunos casos, la arquitectura) con el propósito de que la red pueda llevar a cabo de forma efectiva una tarea determinada.
 Hay tres conceptos fundamentales en el aprendizaje:
 Paradigma de aprendizaje: información de la que dispone la red.
Regla de aprendizaje: principios que gobiernan el aprendizaje.
Algoritmo de aprendizaje: procedimiento numérico de ajuste de los pesos.
         Existen dos paradigmas fundamentales de aprendizaje:
Supervisado: la red trata de minimizar un error entre la salida que calcula y la salida deseada (conocida), de modo que la salida calculada termine siendo la deseada.
No supervisado o autoorganizado: la red conoce un conjunto de patrones sin conocer la respuesta deseada. Debe extraer rasgos o agrupar patrones similares.
        En cuanto a los algoritmos de aprendizaje, tenemos cuatro tipos:
            Minimización del error: reducción del gradiente, retropropagación, etc. La modificación de pesos está orientada a que el error cometido sea mínimo.
 Boltzmann: para redes estocásticas, donde se contemplan parámetros aleatorios.
 Hebb: cuando el disparo de una célula activa otra, el peso de la conexión entre ambas tiende a reforzarse (Ley de Hebb).
 Competitivo: sólo aprenden las neuronas que se acercan más a la salida deseada.

No hay comentarios:

Publicar un comentario