Download Redes Neuronales Multicapa
Document related concepts
Transcript
Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Redes Neuronales Multicapa Undécima sesión Hugo Franco, PhD 16 de abril de 2010 Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Relación entre capas y conjuntos bajo estudio Estructura Una capa Regla de decisión Regiones separables con hiperplanos Dos capas Regiones convexas Múltiples capas Regiones de complejidad topológica arbitraria Clases no linealmente separables XOR A B B A A B B A A B B A B B Hugo Franco, PhD A A B A Redes Neuronales Multicapa Regiones generalizadas Redes multineuronales monocapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Modelo de Hopeld La Red de Hopeld es un tipo de memoria asociativa cuya estructura tiene las siguientes características: Topología Monocapa Asíncrona (la activación de las neuronas requiere más de un ciclo de tiempo activación iterativa) Cada neurona es a la vez de entrada y de salida Cada salida es alimentada recurrentemente a todas las neuronas excepto a aquella de la cual es salida Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Formalismo matemático de la Red de Hopeld La red de Hopeld se puede representar como HN = (N , W , φ, O , NET , ex ) donde Un vector de neuronas N El vector de pesos W : N × N → R es simétrico y no relaciona ninguna neurona consigo misma (W (i , i ) = 0) La función de activación φ devuelve 1 si la entrada a la i −ésima neurona, NETi , es mayor que un umbral θi y −1 en caso contrario (función signo con sesgo). θi está denido de forma estática para cada neurona. Una función salida Oi ∈ O para cada neurona Una función de entrada a cada i −ésima neurona (función de propagación) NETi ∈ NET calculada como NETi = X j ∈N Oj W (j , i ), j 6= i Una función de salida externa ex (i ) que transforma la salida Oi en un valor apropiado para la aplicación de la red Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Aprendizaje de la red de Hopeld Una red de Hopeld funciona como una memoria asociativa, luego puede alcanzar un estado estable a partir de cualquier estado inicial (entrada/salida) con una energía total mínima. Aprendizaje Hebbiano: consiste en presentar un patrón que se desea estable en la red y forzar a que la dinámica de la red, dada por los pesos: Si dos neuronas en cualquier lado de una sinapsis (conexión) se activan simultáneamente (sincrónicamente), entonces la fuerza de dicha sinapsis se incrementa selectivamente Si dos neuronas en cualquier lado de una sinapsis (conexión) se activan asincrónicamente, entonces dicha sinapsis se debilita o elimina selectivamente Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Algoritmo de entrenamiento Hebbiano (Hopeld) kj Regla de actualización de pesos: ∆wkj (t ) = η xj (t )yk (t ) Para todos los patrones de entrenamiento 1 Cargar un patrón 2 Modicar el peso de cada conexión hasta que la variación sea menor a un umbral (estabilizar el estado) Hasta que los estados sean estables para todos los patrones presentados a la red Hugo Franco, PhD Redes Neuronales Multicapa Modelos multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Repaso, Red Neuronal Multicapa Funcionalidad principal del perceptrón Por su capacidad de separar un espacio de una dimensionalidad dada en dos partes a través de un hiperplano, el perceptrón suele utilizarse como clasicador Capa de Entrada Capas Ocultas Hugo Franco, PhD Redes Neuronales Multicapa Capa de Salida Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Máquina de Boltzmann Especialización de las investigaciones iniciales de Cauchy Memoria asociativa con dos capas, una visible y una oculta Entradas y salidas se desarrollan en la capa visible Las neuronas de la capa oculta permiten procesar la información almacenada en las conexiones entre las dos capas, generando un modelo de memoria articial tipo asociativo Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Red Feedforward o Perceptrón multicapa Colección organizada y dirigida de unidades de cómputo formales (perceptrones) capa oculta sesgo Topología Multicapa. Tantas capas como sean necesarias para la solución del problema Conexiones siempre hacia la siguiente capa Presencia de capas ocultas Conectividad preferiblemente completa entre capas Función de activación tipo sigmoide (arcotangente, tangente hiperbólica, sigmoide logística) Hugo Franco, PhD Redes Neuronales Multicapa capa de salida sesgo Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Función de activación sigmoide para una red Feedforward φ(x ) = Hugo Franco, PhD 1 x 1 +Redes e −αNeuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Ejemplo de aplicación: conjuntos no linealmente separables Función XOR 0 1 0 1 0 1 0 1 Solución Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Red MADALINE Caso análogo al de un perceptrón multicapa (red feedforward), con unidades ADALINE (Adaptive Linear Element) Función de activación Lineal para cada neurona de la red Especializadas en procesamiento de señales Entrenamiento basado en la regla delta, adaptado para funciones lineales Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Modelos Competitivos Autoorganizados: Red de Kohonen La red de Kohonen o Mapa de Características de Kohonen se introdujo en 1982 por T.Kohonen (Universidad de Helsinki) Modelo de aprendizaje más cercano a la analogía del aprendizaje humano: las neuronas compiten entre sí por ser activadas de acuerdo a los patrones de entrada presentados El algoritmo de entrenamiento es un proceso de auto-organización en el cual los patrones son presentados iterativamente en la capa de entrada e, iterativamente, los pesos se van ajustando de modo que una neurona es activada para cada patrón Hugo Franco, PhD Neurona Ganadora Matriz de neuronas de salida Entradas (sección) Redes Neuronales Multicapa Aprendizaje (Entrenamiento) Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) El Aprendizaje en los Modelos de Redes Neuronales Articiales Multicapa Proceso de optimización (gradiente descendiente) en el cual el vector de pesos de cada capa corresponde a aquel que minimiza un error de salida para un conjunto dado de patrones de entrenamiento Esta optimización se consigue aproximando iterativamente los pesos de las conexiones a su valor ideal (nunca se llega a ese ideal, se minimiza el error hasta un umbral tolerable) Las iteraciones se dan intra-patrón: propagando hacia atrás los errores para actualizar en cada neurona de cada capa los pesos de cada neurona) inter-patrón: recorriendo todos los patrones de entrenamiento hasta que la salida de la red para cada uno de ellos se acerque lo más posible a la salida conocida. Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Gradiente descendente Hiperparaboloide Mínimos cuadrados Hugo Franco, PhD Redes Neuronales Multicapa Redes multineuronales monocapa Modelos Multicapa Aprendizaje (Entrenamiento) Entrenamiento de redes feedforward (Backpropagation) Análogo al algoritmo de entrenamiento del Perceptrón Algoritmo 1 Inicializar los pesos de forma aleatoria (usualmente entre -1 y 1) 2 Introducir los patrones de entrenamiento a las unidades de entrada 3 Generar el vector de salida de la red (feedforward). 4 Comparar la salida generada por al red con la salida deseada. La diferencia obtenida entre la salida generada y la deseada constituye el error 5 El error se usa para estimar la regla Delta en cada neurona y se propaga hacia la capa de neuronas anterior (backpropagation) para ajustar los pesos sinápticos entre las dos capas. Se continua propagando el error hacia las capas anteriores y ajustando los pesos hasta que se alcance la capa de entradas y sus conexiones con la primera capa oculta. Hugo Franco, PhD Redes Neuronales Multicapa