1. redes neuronales

Post on 11-Dec-2015

305 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

redes neuronales

TRANSCRIPT

Redes Neuronales

1

Redes Neuronales Artificiales

Juan Mauricio.

jmauriciov@usmp.pe

Contenido

1. Introducción

2. Modelos básicos y reglas de aprendizaje.

3. Red neural de retropropagación

4. Sistemas auto-organizados

5. Redes neurales recurrentes.

6. Aplicaciones de RNA en Ingenieria

2

6. Aplicaciones de RNA en Ingenieria

Introducción

� Modelo computacional inspirado en losneuronios biológicos y en la estructura delcerebro con capacidad de ADQUIRIR,ALMACENAR y UTILIZAR conocimientoexperimental.

3

experimental.

Introducción

CEREBROCEREBRO REDES NEURONALESREDES NEURONALES

Neuronio Biológico Neuronio Artificial

Red de neuronios Estructura en capas

10 billones neuronios centenas/millares

4

10 billones neuronios centenas/millares

Aprendizaje Aprendizaje

Generalización Generalización

Asociación Asociación

Reconocimiento de Reconocimiento de

padrones padrones

Introducción

Red Neuronal Artificial: RNARNA

5

Estructura de una RNA

6

Estructura de una RNA

� Los pesos guardan el conocimiento (memoria) de lared neuronal

� Los pesos son ajustados de acuerdo con el errorencontrado

� La red neural es entrenada hasta que el error entrela salida y el objetivo sea satisfactorio

7

la salida y el objetivo sea satisfactorio

� La red neural es capaz de generalizar y reconocerpadrones distintos de los usados en elentrenamiento

Estructura de una RNA

� Redes neuronales son utilizadas en aplicaciones:

� Reconocimiento de padrones ruidosos y/oincompletos

� Donde las reglas claras no pueden ser

8

� Donde las reglas claras no pueden serfácilmente formuladas

� No se necesita explicación del resultado

Ejemplo de entrenamiento de una RNA

Objetivo:

9

Error=

Datos de entrenamiento

Ejemplo de entrenamiento de una RNA

Objetivo:

10

Error=

Datos de entrenamiento

Uso de la Red Neural

11

Nuevo dato, que no fue presentado durante el entrenamiento

Reglas de Aprendizaje

� Perceptron

� Delta Rule (Least Mean Square)

�� BackBack PropagationPropagation

12

Algoritmo de Back Propagation

� Para una Red Multi-Layer Perceptron

� Red de 3 camadas: 5/5/3/4

13

Algoritmo de Back Propagation

� El desafio principal es definir un algoritmo deaprendizaje para la actualización de los pesos delas camadas intermedias.

� Idea Central:

Los errores de los elementos procesadores de la

14

Los errores de los elementos procesadores de lacamada de salida (conocido por el entrenamientosupervicionado), son retro-propagados para lascamadas intermediarias.

Algoritmo de Back Propagation

� Modelo del perceptrón:

15

Algoritmo de Back Propagation

� Características Básicas:

� Regla de Propagación: netj=∑∑∑∑xi.wji+θθθθj� Función de Activación: Función no lineal, diferenciable

en todos los puntos

� Topología: Múltiples capas

16

� Topología: Múltiples capas

� Algoritmo de aprendizaje: Supervisionado

� Valores de Entrada/Salida: Binarios {-1,1} y/ocontinuos

Algoritmo de Back Propagation

�� TopologiaTopologia

17

Proceso de Aprendizaje

� Proceso de minimización del error cuadrático por elmétodo del gradiente descendiente

18

� Cada peso sinaptico i del elemento procesador jes actualizado proporcionalmente al negativo dela derivada parcial del error de este procesadorcon relación al peso.

Proceso de Aprendizaje

� E = suma de errores cuadráticos

� tpj = valor deseado de la salida del padrón “p” parael procesador “j” de la capa de salida

19

el procesador “j” de la capa de salida

� spj= estado de activación del procesador “j” de lacapa de salida cuando se presenta el padrón “p”.

� La ventaja de utilizar el error cuadrático, es que loserrores para diferentes padrones, para diferentessalidas son independientes.

Calculo de

20

Calculo de

21

Calculo de ej

� Depende de la capa a la cual el procesador jpertenece

22

Calculo de ejj∈capa de salida

23

Calculo de ejj∈capa escondida

24

Calculo de ejj∈capa escondida� Por el aprendizaje supervisionado, solo se conoce el

error en la capa de salida (ek)

� Error en la salida (ek) es función del potencialinterno del procesador (netk)

� La netk depende de los estados de activación de losprocesadores de la capa anterior (sj) y de los pesosde las conexiones (w )

25

procesadores de la capa anterior (s ) y de los pesosde las conexiones (wkj)

� Por lo tanto, sj de una capa escondida afecta, enmayor o menor grado, el error de todos losprocesadores de la capa subsecuente

Calculo de ejj∈capa escondida

26

Calculo de ejj∈capa escondida

27

Proceso de aprendizaje

� En resumen, después del calculo de la derivada, setiene:

� Donde:

28

si = valor de entrada recibido por la conexión i

ej = valor cuadrático del error del procesador j

Calculo del Error (ej)

� 1. Procesador j pertenece a la capa de salida:

29

Calculo del Error (ej)

� 2. Procesador j pertenece a la capa escondida:

30

Proceso de Aprendizaje

� El algoritmo backpropagation tiene dos fase, paracada padrón presentado:

� Feed-Forward: Las entradas se propagan por la red,de la camada de entrada hasta la camada de salida.

31

� Feed-Backward: Los errores se propagan en ladirección contraria al flujo de datos, desde la camadade salida hasta la primera camada escondida.

Proceso de Aprendizaje

32

Proceso de Aprendizaje

33

Proceso de Aprendizaje

34

Proceso de Aprendizaje

35

Proceso de Aprendizaje

36

Proceso de Aprendizaje

37

Proceso de Aprendizaje

38

Proceso de Aprendizaje

39

Proceso de Aprendizaje

40

Proceso de Aprendizaje

41

Proceso de Aprendizaje

� Este proceso de aprendizaje es repetidorepetido diversasveces, hasta que, para todos los procesadores de lacapa de salida y para todos los padrones deentrenamiento, el errorerror sea menor que elespecificado.

42

Algoritmo de Aprendizaje

� Inicialización

� Pesos iniciales con valores aleatorios y pequeños |w|≤0.1� Entrenamiento:

� Loop hasta que el error de cada procesador de salida sea≤ toleranciatolerancia

1. Se aplica un padrón de entrada Xi con el respectivovector de salida Yi deseado.

43

2. Se calcula las salidas de los procesadores, comenzandode la primera capa escondida hasta la capa de salida

3. Se calcula el error para cada procesador de la capa desalida. Si errorerror≤≤toleranciatolerancia, para todos los procesadores,se regrese al paso 1

4.4. ActualizarActualizar loslos pesospesos de cada procesador, comenzando porla capa de salida, hasta la primera capa escondida.

5. Regresar al paso 1.

Formas de Aprendizaje

� Existen dos métodos básicos de aplicación delalgoritmo de backpropagation

� Aprendizaje en Batch

“Batch Learning”, por ciclo

44

� Aprendizaje Incremental

“on-line”, por padrón

Aprendizaje Batch

Aprendizaje en Batch, por ciclo

Solamente ajusta los pesos después de lapresentación de todos los padrones

Cada padrón es evaluado con la misma

45

Cada padrón es evaluado con la mismaconfiguración de los pesos

Aprendizaje Incremental

Aprendizaje en Batch, por padrón

Actualiza los pesos a cada presentación de unnuevo padrón

Los pesos son actualizados usando el

46

Los pesos son actualizados usando elgradiente del error de un único padrón

Tiende a aprender mejor el ultimo padrónpresentado

Aprendizaje Batch x Incremental

El modo Batch necesita de menosactualizaciones de pesos (es más rapido)

Batch proporciona una medida más exacta delcambio de los pesos

47

Batch necesita más memoria

Incremental, tiene menos chance de quedarpreso en un mínimo local debido a lapresentación aleatoria de los padrones

Conclusión

� El BackPropagation es el algoritmo de redesneuronales más utilizado en aplicaciones practicasde:

� Previsión

� Clasificación

� Reconocimiento de Padrones

48

top related