redes neuronales

89
Ana Isabel Oviedo Magister en Ingeniería Estudiante de Doctorado <[email protected]> MEDELLÍN 2012 REDES NEURONALES REDES NEURONALES REDES NEURONALES REDES NEURONALES

Upload: diana-castano

Post on 24-Mar-2016

228 views

Category:

Documents


4 download

DESCRIPTION

Presentación que asemeja el funcionamiento de la redes con la sinapsis neuronal.

TRANSCRIPT

Ana Isabel OviedoMagister en Ingeniería

Estudiante de Doctorado

<[email protected]>

MEDELLÍN2012

REDES NEURONALESREDES NEURONALESREDES NEURONALESREDES NEURONALES

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

Definición: Redes Definición: Redes Definición: Redes Definición: Redes Neuronales ArtificialesNeuronales ArtificialesNeuronales ArtificialesNeuronales Artificiales

� Modelos computacionales inspirados en sistemasbiológicos, adaptados y simulados encomputadoras convencionales.

CerebroCerebroCerebroCerebro HumanoHumanoHumanoHumano

� Red biológica compleja formada por millones de células

NeuronaNeuronaNeuronaNeurona BiológicaBiológicaBiológicaBiológica� La neurona biológica, como caso particular, posee la propiedad

conductiva de señales eléctricas o químicas, que permitenformar una red, en la que la interconexión es muy alta.

Historia Redes Neuronales Historia Redes Neuronales Historia Redes Neuronales Historia Redes Neuronales ArtificialesArtificialesArtificialesArtificiales

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

ModeloModeloModeloModelo ArtificialArtificialArtificialArtificial

ActivaciónActivaciónActivaciónActivación de de de de unaNeuronaunaNeuronaunaNeuronaunaNeurona

Entradas

Pesos

Mezclador lineal

Función de Activación

Func

ione

sFu

ncio

nes

Func

ione

sFu

ncio

nes

de a

ctiv

ació

nde

act

ivac

ión

de a

ctiv

ació

nde

act

ivac

ión

Red NeuronalRed NeuronalRed NeuronalRed Neuronal

� Neuronas visibles

� Variables exógenas (input)

� Variables endógenas (output)

� Neuronas ocultas: capturan la representación interna delos datos

Tipologías de las neuronasTipologías de las neuronasTipologías de las neuronasTipologías de las neuronas

ActivaciónActivaciónActivaciónActivación con varias con varias con varias con varias neuronas, una sola capaneuronas, una sola capaneuronas, una sola capaneuronas, una sola capa

ActivaciónActivaciónActivaciónActivación con varias capascon varias capascon varias capascon varias capas

� Modelos feed-forward: se propagan en una sola dirección

� Modelos Recurrentes: conexiones en todas las direcciones

Conexiones entre las Conexiones entre las Conexiones entre las Conexiones entre las neuronasneuronasneuronasneuronas

EstructurasEstructurasEstructurasEstructuras de Redes Neuronales según de Redes Neuronales según de Redes Neuronales según de Redes Neuronales según el Tipo de Conexionesel Tipo de Conexionesel Tipo de Conexionesel Tipo de Conexiones

� Red de una capa hacia adelante� Red multicapa hacia adelante� Red recurrente de una capa� Red recurrente multicapa

RegionesRegionesRegionesRegiones identificadas por las capasidentificadas por las capasidentificadas por las capasidentificadas por las capas

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

Aprender los pesos de las entradas de cada neurona paraaproximar la salida de la forma más exacta .

AprendizajeAprendizajeAprendizajeAprendizaje

� Aprendizaje Supervisado:

� Aprendizaje No Supervisado:

� Aprendizaje por Refuerzo:

AprendizajeAprendizajeAprendizajeAprendizaje

� Aprendizaje Supervisado:

� Aprendizaje No Supervisado:

� Aprendizaje por Refuerzo :

AprendizajeAprendizajeAprendizajeAprendizaje

Aprendizaje SupervisadoAprendizaje SupervisadoAprendizaje SupervisadoAprendizaje SupervisadoTid Attrib1 Attrib2 Attrib3 Class

1 Yes Large 125K No

2 No Medium 100K No

3 No Small 70K No

4 Yes Medium 120K No

5 No Large 95K Yes

6 No Medium 60K No

7 Yes Large 220K No

8 No Small 85K Yes

9 No Medium 75K No

10 No Small 90K Yes 10

Tid Attrib1 Attrib2 Attrib3 Class

11 No Small 55K ?

12 Yes Medium 80K ?

13 Yes Large 110K ?

14 No Small 95K ?

15 No Large 67K ? 10

CLASIFICACIÓN

El aprendizaje se realiza con un conjunto deentrenamiento.

Aprendizaje SupervisadoAprendizaje SupervisadoAprendizaje SupervisadoAprendizaje Supervisado

� Aprendizaje Supervisado:

� Aprendizaje No Supervisado:

� Aprendizaje por Refuerzo :

AprendizajeAprendizajeAprendizajeAprendizaje

Aprendizaje Aprendizaje Aprendizaje Aprendizaje NO SupervisadoNO SupervisadoNO SupervisadoNO Supervisado

Los objetos en un grupo deben ser similares orelacionados entre ellos.

Una medida de distancia determina la similatidad entre los datos

CLUSTERING

Aprendizaje Aprendizaje Aprendizaje Aprendizaje NO SupervisadoNO SupervisadoNO SupervisadoNO Supervisado

� Aprendizaje Supervisado:

� Aprendizaje No Supervisado:

� Aprendizaje por Refuerzo:

AprendizajeAprendizajeAprendizajeAprendizaje

Aprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por Refuerzo

Agente

Entorno

s(t)

Representación del estado del entorno

t

Usa el premio-castigo para aprender

Agente

Entorno

s(t)

Acción a(t)

t

Aprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por RefuerzoRepresentación del estado del entorno

Usa el premio-castigo para aprender

Agente

Entorno

s(t)

t

t+1

Recompensa

r(t+1)

s(t+1)

Acción a(t)

Representación del estado del entorno

Aprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por Refuerzo

Usa el premio-castigo para aprender

Aprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por RefuerzoAprendizaje por Refuerzo

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales

�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales

�Generalidades

�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

Tipos de Redes Neuronales

Clasificación según el tipo de

aprendizaje

Clasificación según la arquitectura

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales

�Generalidades�Perceptrón simple y perceptrón multicapa

�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

PerceptrónPerceptrónPerceptrónPerceptrón simplesimplesimplesimple� Red neuronal tipo feed-forward supervisada, sin capa oculta.

Entradas

Neuronas

PerceptrónPerceptrónPerceptrónPerceptrón simplesimplesimplesimple� Función de activación:

�Hardlim: función escalón {0,1}�Hardlims: función escalón simétrica {1, -1}

� Regla de aprendizaje del perceptrón:�wi = wi + (y – y’) x i�b = b + (y – y’)

PerceptrónPerceptrónPerceptrónPerceptrón simplesimplesimplesimpleEjemploEjemploEjemploEjemplo

Función AND: Función OR

Sólo para problemas linealmente separables

PerceptrónPerceptrónPerceptrónPerceptrón multicapamulticapamulticapamulticapa� Es una red con alimentación hacia delante, compuesta de

varias capas de neuronas entre la entrada y la salida de la misma, esta red permite establecer regiones de decisión mucho más complejas que las de dos semiplanos

Entradas

Neuronas

PerceptrónPerceptrónPerceptrónPerceptrón multicapamulticapamulticapamulticapaEjemploEjemploEjemploEjemplo

Función XOR:

EjercicioEjercicioEjercicioEjercicioSobre una cinta transportadora circulan naranjas y melones. Se buscaobtener un clasificador de frutas que facilite su almacenamiento. Paracada fruta se conoce su diámetro en centímetros y su intensidad decolor naranja (medida entre 0 y 255).

Naranjas = { (10,200), (8,150), (7,170), (15,250)}

Melones = {(20,30), (26,30), (24,32), (19,31)}

Entrenar un perceptrón que permita resolver el problema.

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales

�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline

�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

AdalineAdalineAdalineAdaline((((AdaptativeAdaptativeAdaptativeAdaptative Linear Linear Linear Linear ElementElementElementElement))))

� Función de activación: Lineal

� Regla de aprendizaje: Regla de Windrow-Hoff o least mean square (LMS), la cual minimiza el error medio cuadrático

�wi = wi + 2α (y – y’) x i�b = b + 2α(y – y’)�0<α<2

Sólo para problemas linealmente separables

MadalineMadalineMadalineMadaline� Adaline multicapa:

Entradas

Neuronas

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales

�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation

�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

RedesRedesRedesRedes BackpropagationBackpropagationBackpropagationBackpropagation� Red del tipo de perceptron multicapa con un aprendizaje

supervisado, que emplea un ciclo propagación – adaptación de dosfases:� Una vez que se ha aplicado un patrón a la entrada de la red como

estímulo, este se propaga desde la primera capa a través de las capassuperiores de la red, hasta generar una salida. La señal de salida secompara con la salida deseada y se calcula una señal de error paracada una de las salidas.

� Las salidas de error se propagan hacia atrás, partiendo de la capa desalida, hacia todas las neuronas de la capa oculta que contribuyendirectamente a la salida.

RedesRedesRedesRedes BackpropagationBackpropagationBackpropagationBackpropagation

RedesRedesRedesRedes BackpropagationBackpropagationBackpropagationBackpropagation� Función de activación:

� Logsig: Logsigmoidea� Tansig: Tangente hiperbólica� Purelin: lineal

� Regla de aprendizaje:

�wi = wi + 2α (y – yc’) x i�b = b + 2α(y – yc’)Donde (y – yc’) es el error de cada capa

SUGERENCIAS

� Funciones de transferencia en la primera capa: logsig, cuandoel rango de la función es siempre positivo y tansig cuando sele permite a la función oscilar entre valores positivos ynegativos limitados en el intervalo –1, 1.

� La salida de la segunda capa está determinada generalmentepor la función de transferencia purelin, la cual reproduceexactamente el valor resultante después de la sumatoria.

RedesRedesRedesRedes BackpropagationBackpropagationBackpropagationBackpropagation

VARIACIONES EN EL MÉTODO DE APRENDIZAJE

Backpropagation con momentum

Backpropagation con tasa de aprendizaje variable

Backpropagation con gradiente conjugado

RedesRedesRedesRedes BackpropagationBackpropagationBackpropagationBackpropagation

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales

�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM – Mapas auto organizados

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

SOMSOMSOMSOM---- Mapas Mapas Mapas Mapas auto_organizadosauto_organizadosauto_organizadosauto_organizados

<http://www.lohninger.com/helpcsuite/kohonen_network_-_background_information.htm>

SOMSOMSOMSOMMapas Mapas Mapas Mapas auto_organizadosauto_organizadosauto_organizadosauto_organizados

Vector siendo expuesto a la malla.

SOMSOMSOMSOMMapas Mapas Mapas Mapas auto_organizadosauto_organizadosauto_organizadosauto_organizados

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

� No siempre es posible encontrar la topología adecuada.

� Generalmente poseen fuerte dependencia con los valores iniciales de los pesos escogidos aleatoriamente.

� Son proclives a ser “engañadas” cayendo en mínimos locales.

� Tienen limitaciones en su capacidad de aprendizaje.

� Arrojan resultados erróneos si son sobreentrenadas.

Limitaciones Limitaciones Limitaciones Limitaciones

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

Neurona en Neurona en Neurona en Neurona en MatlabMatlabMatlabMatlab

CapaCapaCapaCapa de Neuronasde Neuronasde Neuronasde Neuronas

RedesRedesRedesRedes MulticapaMulticapaMulticapaMulticapa

ObjetosObjetosObjetosObjetos dededede MatlabMatlabMatlabMatlab

FuncionesFuncionesFuncionesFunciones dededede TransferenciaTransferenciaTransferenciaTransferencia

FuncionesFuncionesFuncionesFunciones dededede AprendizajeAprendizajeAprendizajeAprendizaje

PropiedadesPropiedadesPropiedadesPropiedades dededede laslaslaslas redesredesredesredes

PasosPasosPasosPasos----Aprendizaje SupervisadoAprendizaje SupervisadoAprendizaje SupervisadoAprendizaje Supervisado

1. Creación de la Red

2. Entrenamiento

3. Simulación

1. Creación: 1. Creación: 1. Creación: 1. Creación: PerceptronPerceptronPerceptronPerceptron

1. Creación: 1. Creación: 1. Creación: 1. Creación: AdalineAdalineAdalineAdaline

1. 1. 1. 1. Creación:BackpropagationCreación:BackpropagationCreación:BackpropagationCreación:Backpropagation

1. Creación: 1. Creación: 1. Creación: 1. Creación: BackpropagationBackpropagationBackpropagationBackpropagationTraingdTraingdTraingdTraingd

2. Entrenamiento2. Entrenamiento2. Entrenamiento2. Entrenamiento

2. Entrenamiento2. Entrenamiento2. Entrenamiento2. Entrenamiento

3. Simulación3. Simulación3. Simulación3. Simulación

Función OR: Función OR: Función OR: Función OR: %Funcion OR% Datos de entrenamientodata=[1 1 0 0;1 0 1 0];targets= [1 1 1 0];%Creacion de la rednet = newp(minmax(data),1,'hardlim','learnp');net.trainParam.goal=0;%Entrenamiento[net,TR,Y,E]=train(net,data,targets);%Simulacionprobe=[1;0];y=sim(net,probe);fprintf('Simulacion de [%d,%d]= %d',probe(1,1),probe(2,1),y);

FunciónFunciónFunciónFunción ANDANDANDAND

FunciónFunciónFunciónFunción XORXORXORXOR

FunciónFunciónFunciónFunción XORXORXORXOR

EjercicioEjercicioEjercicioEjercicioSobre una cinta transportadora circulan naranjas y melones. Se buscaobtener un clasificador de frutas que facilite su almacenamiento. Paracada fruta se conoce su diámetro en centímetros y su intensidad decolor naranja (medida entre 0 y 255).

Naranjas = { (10,200), (8,150), (7,170), (15,250)}

Melones = {(20,30), (26,30), (24,32), (19,31)}

Entrenar un perceptrón que permita resolver el problema.

A. Ingrese los patrones en forma alternada (tomar uno decada conjunto).

B. Ingrese primero los patrones de naranjas y despues los demelones.

¿El resultado es igual?

Reconocimiento de CaracteresReconocimiento de CaracteresReconocimiento de CaracteresReconocimiento de Caracteres� Una red debe ser diseñada y entrenada para reconocer las 26 letras

del alfabeto. Cada letra es representada en una matriz de 7*5 convalores boleanos. Por ejemplo la letra A es representada por lamatriz de la siguiente figura.

� Datos de entrenamiento:

� Entrada: 26 matrices 7*5� Salida: Vectores 26*1 (Tienen 1 para indicar la letra, lo

demás es 0)

� Creación de la Red: Red feedforward Backpropagation.

Reconocimiento de CaracteresReconocimiento de CaracteresReconocimiento de CaracteresReconocimiento de Caracteres

Reconocimiento de FigurasReconocimiento de FigurasReconocimiento de FigurasReconocimiento de Figuras� Una red debe ser diseñada y entrenada para reconocer figuras

geométricas.

PasosPasosPasosPasos----Aprendizaje NO SupervisadoAprendizaje NO SupervisadoAprendizaje NO SupervisadoAprendizaje NO Supervisado

1. Creación de la Red

2. Entrenamiento - aprendizaje

3. Graficar

1111. . . . CreacionCreacionCreacionCreacion SOMSOMSOMSOM

2. Entrenamiento2. Entrenamiento2. Entrenamiento2. Entrenamiento----aprendizajeaprendizajeaprendizajeaprendizaje

3333. Grafica. Grafica. Grafica. Grafica

ClusteringClusteringClusteringClustering de puntos aleatoriosde puntos aleatoriosde puntos aleatoriosde puntos aleatorios

AgendaAgendaAgendaAgenda� Introducción a las redes neuronales

� Arquitectura de la redes neuronales

� Aprendizaje en las redes neuronales

� Tipos de Redes Neuronales�Generalidades�Perceptrón simple y perceptrón multicapa�Adaline y Madaline�Backpropagation�SOM

� Limitaciones de las redes neuronales

� Simulación en Matlab

� Práctica

ReferenciasReferenciasReferenciasReferencias� [Meireles et al., 2003] Meireles M. R. G., Almeida P. E. M. and

Simones M. G. Comprehensive Review for Industrial Applicability of Artificial Neural Networks. In: IEEE Transactions on Industrial Electronics, Vol. 50, No. 3, 2003, pp. 585-601

� [Vesanto and Alhoniemi, 2000] Vesanto J. and AlhoniemiE. Clustering of the self-organizing map. Neural Networks, IEEE Transactions, may 2000, volume: 11, issue: 3, page(s): 586-600

� [Xu and Wunsch, 2005] Xu R. and Wunsch D.I.I. Survey of clustering algorithms, IEEE Trans. Neural Networks 16 (3) (2005), pp. 645–67

� [Wiener et al., 1995] Wiener E., Pedersen J. Y Weigend A. “A neural network approach to topic spotting”. En: Proceedings of SDAIR-95, 4th Annual Symposium on Document Analysis and Information Retrieval (Las Vegas, US), pp. 317–332., 1995.