Redes Neuronales
Enviado por adsarahi • 23 de Febrero de 2014 • 2.722 Palabras (11 Páginas) • 347 Visitas
2 Las Redes Neuronales:
En este capítulo se va a describir uno de los métodos de clasificación más utilizados por su potencia, su fácil implementación y su flexibilidad: las Redes Neuronales (RN). Por estas características es el método que hemos utilizado en este proyecto para obtener resultados a partir de nuestros experimentos con el fin de poder clasificar los argumentos de entrada a la Red Neuronal como buenos o malos para nuestros propósitos.
2.1 Introducción
Las Redes Neuronales constituyen una familia muy variada de arquitecturas. Están basadas en el modelo cerebral: las neuronas establecen conexiones entre ellas (sinapsis), de manera que cuando un animal recibe un estímulo, ciertas conexiones se refuerzan más que otras, provocando una cierta respuesta. Siempre que el animal reciba un estímulo (entrada) similar, generará la misma respuesta (aprendizaje): se puede decir que el cerebro reconoce diferentes patrones.
Este comportamiento es fácilmente caracterizable mediante un modelado matemático (simulación). El tratamiento de la información (computación) no va a ser el tradicional: se basa en la evolución temporal del sistema y en la interpretación de ciertos parámetros (información). El sistema se compone de un número elevado de unidades muy simples (neuronas) altamente interconectadas: el paralelismo es masivo. Se puede decir que una neurona es un tipo de autómata (sistema dinámico), de ahí el carácter temporal. Las Redes Neuronales artificiales pueden aprender modificando el “peso” de las conexiones entre las unidades; así es posible distinguir patrones.
La idea de las Redes Neuronales es definir una función a partir de la cual poder distinguir patrones con los datos de salida: dependiendo del valor obtenido catalogamos la entrada como perteneciente a un cierto grupo. El tipo de entradas y su número determinará la capacidad de discriminación de la Red [Martín-01].
En el ejemplo siguiente, una entrada (x1) no es suficiente para determinar si estamos en el patrón A o el B. Con otra entrada (x2) ya somos capaces de discriminar.
Figura 2-1: Ejemplo de clasificación.
2.2 Historia
McCullogh y Pitts realizaron en 1943 un estudio biológico del cerebro obteniendo un modelo formal de neurona, con lo que introdujeron así el concepto de umbral: una neurona responde a un cierto estímulo siempre que éste sobrepase un cierto umbral de activación.
Posteriormente, en 1949, Hebb desarrolló el Hebbian Learning: aprendizaje mediante adaptación de sinapsis o reforzamiento de las conexiones.
En 1959, Rosenblat definió el perceptrón, uno de los conceptos más importantes dentro del desarrollo de las Redes Neuronales: el perceptrón consiste en una estructura más una regla de aprendizaje o regla del perceptrón. Esa estructura es la combinación de una neurona y una función de salida que es la que define el umbral de activación. La misión de la neurona es implementar una combinación lineal de las entradas. Cada entrada posee un peso, que se adapta temporalmente. Es esto lo que se conoce como aprendizaje.
Misky y Papert desarrollaron en 1969 un perceptrón unicapa que conseguía una clasificación de primer orden (XOR). Se planteó entonces el problema del entrenamiento de varias capas. Así, en 1974 Werbos definió el algoritmo de retropropagación y el uso de la función sigmoidal como función de salida de un perceptrón. El algoritmo de retropropagación permite modificar los pesos partiendo de la última capa hasta la inicial basándose en el error cometido en la iteración anterior. Ese error es la diferencia entre la salida de la Red Neuronal y la salida real que deberíamos haber obtenido. Como el algoritmo de retropropagación está basado en la derivada del error, se decidió utilizar la función sigmoidea en vez del escalón para representar el umbral de activación (la función escalón tiene derivada infinita en el origen).
Posteriormente se desarrollaron otros tipos de redes: Kohonen en los 70 creó los mapas topológicos y las memorias asociativas, y en 1982 Hopfield definió las redes de Hopfield.
Finalmente, en 1986 Rumelhart y McClelland desarrollaron el perceptrón multicapa, popularizándose así el algoritmo de retropropagación. En 1989, Cybenko, Hornik et al. y Funahashi definieron el perceptrón multicapa como el aproximador universal [Martín-01].
2.3 Clasificación
Existen diferentes criterios de clasificación para las Redes Neuronales:
o Caracterización temporal: se refiere a la caracterización temporal de las entradas.
Continua en el tiempo: cuando la función de entrada es una función continua. Este tipo de redes se utiliza en sistemas donde es necesario una clasificación inmediata de las entradas, como por ejemplo un sistema de alarma que se active ante la presencia de ciertos parámetros peligrosos.
Discreta: cuando las entradas se toman en determinados instantes de tiempo. Se utilizan en sistemas donde no es necesario un control inmediato de las entradas y sólo se busca ver su evolución sin saturar demasiado el sistema con una gran cantidad de datos.
Entrada: se refiere a los valores que toman las entradas.
Binaria: cero o uno. Se puede utilizar cuando las entradas son codificadas, por ejemplo, representando el intervalo sobre el que caen dentro de un rango. Si el rango se divide en x intervalos, cada entrada se representa con x valores, todos a cero menos uno, el que corresponde al intervalo de valores de la entrada.
Continua: el valor de la entrada puede ser cualquiera dentro de un rango. Es posible definir diferentes rangos de variación.
o Entrenamiento: se refiere al aprendizaje seguido por la Red.
Supervisado: cuando se vigila la evolución de la Red. Por ejemplo, cuando se le ofrecen a la Red ejemplos señalando las salidas que se deberían obtener.
Con recompensa/castigo: cuando la Red acierta se le ofrece una recompensa. Cuando falla se le castiga. Así aprende cómo debe comportarse.
No supervisado: no se le dice a la Red lo que debe dar. Esto se suele utilizar en aquellos casos en que tenemos una serie de entradas y no sabemos cómo clasificarlas. Dependiendo de lo que se obtenga tras el entrenamiento tendremos un criterio de clasificación.
o Realimentación:
Feedforward: realimentación hacia delante. Es la estructura normal, donde las salidas de una capa se introducen en la siguiente.
Feedback: realimentación hacia atrás. Las salidas de ciertas capas se introducen en capas anteriores para que éstas sepan cuál ha sido el comportamiento posterior y se adapten en consecuencia.
Entre los modelos más representativos se encuentran los mapas asociativos, el perceptrón multicapa,
...