Redes Neuronales Multicapa - dfmf.uned.eshfranco/mhcf/ses12.pdf · Modelos Multicapa Aprendizaje...

19

Transcript of Redes Neuronales Multicapa - dfmf.uned.eshfranco/mhcf/ses12.pdf · Modelos Multicapa Aprendizaje...

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Redes Neuronales MulticapaUndécima sesión

Hugo Franco, PhD

16 de abril de 2010

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Relación entre capas y conjuntos bajo estudio

Estructura

Regiones separables con hiperplanos

Regiones convexas

Regiones de complejidadtopológicaarbitraria

Regla de decisión

XOR

Clases no linealmenteseparables

Regionesgeneralizadas

A

AB

B

B

B

B

B

A

A

A

A

A

A

A

B

B

B

Dos capas

Múltiples capas

Una capa

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronalesmonocapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Modelo de Hop�eld

La Red de Hop�eld es un tipo dememoria asociativa cuyaestructura tiene las siguientescaracterísticas:

Topología �Monocapa�Asíncrona (la activación de lasneuronas requiere más de unciclo de tiempo � activacióniterativa)Cada neurona es a la vez deentrada y de salidaCada salida es alimentadarecurrentemente a todas lasneuronas excepto a aquella de lacual es salida

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Formalismo matemático de la Red de Hop�eld

La red de Hop�eld se puede representar comoHN = (N,W , φ,O,NET , ex) donde

Un vector de neuronas N

El vector de pesos W : N × N → R es simétrico y no relacionaninguna neurona consigo misma (W (i , i) = 0)

La función de activación φ devuelve 1 si la entrada a la i−ésimaneurona, NETi , es mayor que un umbral θi y −1 en caso contrario(función signo con sesgo). θi está de�nido de forma estática paracada neurona.

Una función salida Oi ∈ O para cada neurona

Una función de entrada a cada i−ésima neurona (función depropagación) NETi ∈ NET calculada como

NETi =∑j∈N

OjW (j , i), j 6= i

Una función de salida externa ex(i) que transforma la salida Oi enun valor apropiado para la aplicación de la red

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Aprendizaje de la red de Hop�eld

Una red de Hop�eld funciona como una memoria asociativa, luego puedealcanzar 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 sedesea estable en la red y forzar a que la dinámica de la red, dada porlos pesos:

Si dos neuronas en cualquier lado de una sinapsis (conexión) seactivan simultáneamente (sincrónicamente), entonces la fuerza dedicha sinapsis se incrementa selectivamenteSi dos neuronas en cualquier lado de una sinapsis (conexión) seactivan asincrónicamente, entonces dicha sinapsis se debilita oelimina selectivamente

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Algoritmo de entrenamiento Hebbiano (Hop�eld)

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 Modi�car el peso de cada conexión hasta que la variación sea menora un umbral (estabilizar el estado)

Hasta que los estados sean estables para todos los patrones presentados ala red

Hugo Franco, PhD Redes Neuronales Multicapa

Modelos multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Repaso, Red Neuronal Multicapa

Funcionalidad principal del perceptrón

Por su capacidad de separar un espacio de una dimensionalidad dada endos partes a través de un hiperplano, el perceptrón suele utilizarse comoclasi�cador

Capa de

EntradaCapas

Ocultas

Capa de

Salida

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Máquina de Boltzmann

Especialización de lasinvestigaciones iniciales deCauchy

Memoria asociativa con doscapas, una visible y una oculta

Entradas y salidas sedesarrollan en la capa visibleLas neuronas de la capaoculta permiten �procesar� lainformación almacenada enlas conexiones entre las doscapas, generando un modelode memoria arti�cial tipoasociativo

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Red Feedforward o Perceptrón multicapa

Colección organizada y dirigida deunidades de cómputo formales(perceptrones)

Topología �Multicapa�. Tantascapas como sean necesariaspara la solución del problemaConexiones siempre hacia lasiguiente capaPresencia de capas ocultasConectividad preferiblementecompleta entre capasFunción de activación tiposigmoide (arcotangente,tangente hiperbólica, sigmoidelogística)

capa oculta capa de salida

sesgo sesgo

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Función de activación sigmoide para una red Feedforward

φ(x) =1

1 + e−αxHugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Ejemplo de aplicación: conjuntos no linealmente separables

Función XOR

0 1

0 1 01 0 1

Solución

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Red MADALINE

Caso análogo al de unperceptrón multicapa(red feedforward), conunidades ADALINE(Adaptive LinearElement)

Función deactivación Linealpara cada neuronade la red

Especializadas enprocesamiento deseñales

Entrenamiento basadoen la regla delta,adaptado parafunciones lineales

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Modelos Competitivos Autoorganizados: Red de Kohonen

La red de Kohonen o Mapa deCaracterísticas de Kohonen seintrodujo en 1982 por T.Kohonen(Universidad de Helsinki)

Modelo de aprendizaje más cercanoa la analogía del aprendizajehumano: las neuronas compitenentre sí por ser activadas deacuerdo a los patrones de entradapresentados

El algoritmo de entrenamiento esun proceso de auto-organización enel cual los patrones son presentadositerativamente en la capa deentrada e, iterativamente, los pesosse van ajustando de modo que unaneurona es activada para cadapatrón

Neurona Ganadora

Matriz de neuronas

de salida

Entradas (sección)

Hugo Franco, PhD Redes Neuronales Multicapa

Aprendizaje (Entrenamiento)

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

El Aprendizaje en los Modelos de Redes NeuronalesArti�ciales Multicapa

Proceso de optimización (gradiente descendiente) en el cual elvector de pesos de cada capa corresponde a aquel que minimiza unerror de salida para un conjunto dado de patrones de entrenamiento

Esta optimización se consigue aproximando iterativamente los pesosde las conexiones a su valor ideal (nunca se llega a ese ideal, seminimiza el error hasta un umbral tolerable)

Las iteraciones se dan

�intra-patrón�: propagando hacia atrás los errores para actualizar encada neurona de cada capa los pesos de cada neurona)�inter-patrón�: recorriendo todos los patrones de entrenamiento hastaque la salida de la red para cada uno de ellos se acerque lo másposible a la salida conocida.

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos Multicapa

Aprendizaje (Entrenamiento)

Gradiente descendente

HiperparaboloideMínimoscuadrados

Hugo Franco, PhD Redes Neuronales Multicapa

Redes multineuronales monocapaModelos 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. Ladiferencia obtenida entre la salida generada y la deseada constituyeel error

5 El error se usa para estimar la regla Delta en cada neurona y sepropaga hacia la capa de neuronas anterior (backpropagation) paraajustar los pesos sinápticos entre las dos capas. Se continuapropagando el error hacia las capas anteriores y ajustando los pesoshasta que se alcance la capa de entradas y sus conexiones con laprimera capa oculta.

Hugo Franco, PhD Redes Neuronales Multicapa