Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

23
Sistemas Difusos Tema 8 – 1 – Tema 8.- Aprendizaje de Sistemas Difusos con Redes Neuronales. 1. - Introducción a las Redes Neuronales. 1.1.- Redes Neuronales Artificiales (Artificial Neural Networks). 1.2.- Neuronas biológicas. 1.3.- ¿Qué es una red neuronal? 1.4.- Tipos de redes neuronales. 1.5.- Aplicaciones. 2. - Aplicación al diseño de controladores difusos. 2.1.- Arquitectura ANFIS. 2.2.- Controlador neurodifuso adaptativo. 2.3.- Otros ejemplos de aplicación.

description

1. - Introducción a las Redes Neuronales. 1.1.- Redes Neuronales Artificiales (Artificial Neural Networks). 1.2.- Neuronas biológicas. 1.3.- ¿Qué es una red neuronal? 1.4.- Tipos de redes neuronales. 1.5.- Aplicaciones. 2. - Aplicación al diseño de controladores difusos. 2.1.- Arquitectura ANFIS. 2.2.- Controlador neurodifuso adaptativo. 2.3.- Otros ejemplos de aplicación.

Transcript of Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Page 1: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 1 –

Tema 8.- Aprendizaje de Sistemas Difusos con Redes Neuronales.

1. - Introducción a las Redes Neuronales.

1.1.- Redes Neuronales Artificiales (Artificial Neural Networks).

1.2.- Neuronas biológicas.

1.3.- ¿Qué es una red neuronal?

1.4.- Tipos de redes neuronales.

1.5.- Aplicaciones.

2. - Aplicación al diseño de controladores difusos.

2.1.- Arquitectura ANFIS.

2.2.- Controlador neurodifuso adaptativo.

2.3.- Otros ejemplos de aplicación.

Page 2: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 2 –

1.- Introducción a las Redes Neuronales.

1.1.- Redes Neuronales Artificiales (Artificial Neural Networks).

• Intentan imitar el proceso de aprendizaje del cerebro

humano.

• Excepto en tareas de cálculo, el cerebro humano es

superior a cualquier computador actual:

o Reconocimiento de imágenes.

o Interpretación de sonidos.

o En general, tareas de percepción (interpretación

por contenido).

• Características del cerebro humano:

o Robusto, su funcionamiento no

se ve alterado ante fallos de

pequeña importancia.

o Flexible, se adapta con facilidad

a un entorno cambiante.

o Puede tratar con información

ambigua e incompleta.

o Pequeño, compacto y consume poco.

Page 3: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 3 –

1.- Introducción a las Redes Neuronales.

1.2.- Neurona biológicas.

• El cerebro humano está formado por miles de millones

de neuronas conectadas entre sí.

• La información percibida se transmite a las neuronas,

allí se procesa y se genera una respuesta en función

del estimulo recibido.

Componentes de una neurona:

• Cuerpo celular o soma.

• Estructura de entrada o dendritas.

• Estructura de salida o axón.

• Los axones se conectan a las dendritas de otras

neuronas (sinapsis).

Page 4: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 4 –

1.- Introducción a las Redes Neuronales.

1.2.- Neurona biológicas.

Funcionamiento de una neurona.

• Recibe una señal o estímulo de entrada, con una fuerza

variable.

• La neurona emite una señal de respuesta de intensidad

variable también.

• A una neurona pueden llegar miles de señales de

entrada, cada una con una fuerza diferente.

• Matemáticamente, la señal de respuesta de la neurona

se puede representar por la combinación ponderada de

todas las señales de entrada (nivel de activación de la

neurona).

Page 5: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 5 –

1.- Introducción a las Redes Neuronales.

1.3.- ¿Qué es una red neuronal?

Definiciones:

• Una nueva forma de resolución de problemas mediante

un ordenador, inspirada en un modelo biológico

(Origen).

• Un modelo matemático, compuesto por un gran número

de elementos de proceso, dispuestos en niveles o

capas (Carácter matemático).

• Un sistema computacional, construido a partir de un

cierto número de elementos de proceso sencillos pero

altamente interconectados, que procesan información a

través de su respuesta dinámica a unos estímulos de

entrada (Estructura e implementación).

Page 6: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 6 –

1.- Introducción a las Redes Neuronales.

1.3.- ¿Qué es una red neuronal?

• Cada elemento de proceso (neurona) realiza las

siguientes tareas:

• Evalúa las señales de entrada, determinando la intensidad

de cada una.

• Calcula un total para la combinación de las entradas, y lo

ajusta con respecto a un cierto umbral (nivel de activación).

• En función de dicho resultado, se determina cuál ha de ser

la salida.

• Cada neurona puede tener múltiples entradas, pero

sólo una salida. Dependiendo del umbral, la neurona se

“dispara” o no.

Cálculo de la salida a partir de las entradas:

1 2( , ,..., ) ·n i iy f x x x w x= =∑

Función umbral:

Page 7: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 7 –

1.- Introducción a las Redes Neuronales.

1.3.- ¿Qué es una red neuronal?

Características generales:

• Pesos: adaptables o fijos.

o Adaptables: Se inicializan a un valor, que se va ajustando

conforme la red “aprende”.

o Fijos: Previamente definidos y determinados a partir de una

descripción completa del problema a tratar.

• Aprendizaje: Supervisado o no supervisado.

o Supervisado: se le proporciona a la red tanto la salida como la

entrada correcta, y la red ajusta sus pesos para minimizar el error

de salida. (P.e.: reconocimiento de patrones).

o No supervisado: Solamente se proporcionan los estímulos, y la

red ajusta sus pesos en función de los estímulos y de la salida

obtenida por la red. Depende del tipo de problema que se pretende

resolver.

• Fases de operación: Entrenamiento y prueba.

o Entrenamiento: Se proporcionan estímulos de entrada (y salida)

para que la red ajuste sus pesos y minimice el error de salida.

o Prueba: Solamente se calcula la salida. El aprendizaje de la red

disminuye conforme ésta es usada.

• No algorítmicas: Las redes neuronales no se programan,

aprenden de la experiencia.

• Necesitan un patrón: Son incapaces de reconocer algo que no

tenga un patrón. Son adecuadas para problemas de

asociación, evaluación y reconocimiento de patrones.

Page 8: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 8 –

1.- Introducción a las Redes Neuronales.

1.3.- ¿Qué es una red neuronal?

Tipos de neuronas artificiales.

• Sensoriales: toman entradas externas a la red (capa

de entrada).

• Asociativas: exclusivamente internas (capa oculta)

⇒ Efecto “caja negra”.

• De Respuesta: Devuelven señales de la red al

mundo exterior (capa de salida).

Page 9: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 9 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Perceptrón (McCulloch y Pitts, 1943).

• Considerado la base de las redes neuronales artificiales

actuales.

• Intenta modelar el comportamiento de la neurona

biológica.

• Trabaja con funciones de activación.

Page 10: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 10 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Perceptrón (McCulloch y Pitts, 1943).

Entrenamiento.

• Si la salida es errónea, se modifican todos los pesos de las

conexiones de acuerdo con una función de aprendizaje.

i i iw t xη∆ =

o η es la tasa de aprendizaje. Puede ser constante o variar

de forma proporcional al error ⇒ convergencia rápida,

pero aprendizaje variable.

o ti es la salida deseada.

o xi es la entrada del perceptrón.

• Un perceptrón sólo puede resolver funciones definidas por un

hiperplano que corte un espacio de dimensión N, es decir, sólo

puede resolver una función, si todos los posibles resultados del

problema pueden separarse de forma que no se combinen

entre sí. P.e.:

o Perceptrón de dos capas: Sólo puede distinguir entre

dos regiones separadas por una frontera lineal en el

espacio de patrones de entrada.

o Perceptrón de tres capas: Puede reconocer cualquier

región convexa en el espacio.

• El perceptrón multicapa puede usarse para la predicción de

datos (p.e., aplicaciones financieras).

Page 11: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 11 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Backpropagation (Rumelhart, 1986).

• La falta de métodos de entrenamiento adecuados para

los perceptrones multicapa hizo que declinara el interés

por las redes neuronales hacia las décadas de los 60-

70.

• Mediante el método de backpropagation, se

interconectan varios elementos de proceso en capas,

donde las neuronas de cada capa están conectadas

entre sí. Cada neurona de una capa proporciona una

entrada a cada una de las neuronas de la siguiente

capa.

Page 12: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 12 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Backpropagation (Rumelhart, 1986).

Entrenamiento.

• El método de entrenamiento por backpropagation

consiste en:

o Pasada hacia delante (forward pass): Se

calculan las salidas, y el error a partir de las

mismas.

o Pasada hacia atrás (backward pass): Se usa el

error para alterar los pesos de la capa de salida.

El error en las neuronas de las capas ocultas se

calcula por propagación hacia atrás del error en la

capa de salida, y se ajustan convenientemente los

pesos en las capas ocultas.

Page 13: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 13 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Modelo Hopfield.

• Redes de adaptación probabilística y recurrente.

• Memorias autoasociativas: aprenden a reconstruir los patrones

de entrada que memorizan durante el entrenamiento.

• Monocapa con interconexión total.

• Salidas binarias (0 ó 1).

• Aprendizaje no supervisado.

• Conformados por N neuronas interconectadas entre sí, todas

en la misma capa.

• Adecuado para problemas de optimización.

• Restricción por simetría (Wjk=Wkj).

• Cuando una neurona

mantiene su valor de

activación, se dice que es

estable.

• Ante la presentación de un

estímulo, el sistema itera

hasta quedar en una

configuración estable (todas

las neuronas estables).

• Una neurona nunca se

realimenta a sí misma.

Page 14: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 14 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Modelo Kohonen.

• Se basa en la capacidad del cerebro humano según la

cual éste forma mapas característicos de la información

recibida del exterior.

• Contiene sólo una capa de salida y otra de entrada de

neuronas, que se ramifica para todos los nodos.

• Red competitiva o mapa de autoorganización ⇒

aprendizaje no supervisado.

• Cada neurona de entrada está conectada a todas las

de salida.

• Como entrada reciben datos continuos normalizados, y

la red clasifica los patrones en grupos de

características similares, de forma que cada grupo

activa siempre las mismas salidas.

Page 15: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 15 –

1.- Introducción a las Redes Neuronales.

1.4.- Tipos de redes neuronales.

Modelo Kohonen.

• Existen unas conexiones laterales de inhibición entre las

neuronas de salida (en realidad no están conectadas). Cada

neurona de salida influye sobre las demás en función de la

distancia entre ellas.

• Cada neurona de salida tiene un vector de pesos V(m) de

dimensión N, la misma que el vector de entradas X(q), que se

inicializa aleatoriamente. Las distancias cuadradas entre X(q) y

V(m) se calculan como:

( ) ( ) ( ) ( ) 2

1( , ) ( )

Nq m q m

qm qm n nn

D D X V x v=

= = −∑

• La distancia mínima Dqm* determina la neurona m* que se

activa por encima de las demás.

• Una estrategia aquí es actualizar el vector de pesos

paramétrico de la neurona ganadora:

* * *( ) ( ) ( ) ( )( )m m q mV V X Vη= + −

• Las demás neuronas no se ven afectadas.

• Otra estrategia es actualizar positivamente (recompensar)

todas las neuronas cercanas a la neurona ganadora, y

negativamente (castigar) las neuronas más alejadas.

• Una vez entrenada, esta red se puede utilizar para clasificar

patrones de entrada similares en un espacio N-dimensional.

Page 16: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 16 –

1.- Introducción a las Redes Neuronales.

1.5- Aplicaciones.

Existen diferentes modelos de aprendizaje y tipologías en

función del uso que se les dé.

• Control de eficiencia de máquinas.

• Reconocimiento de firmas.

• Reconocimiento de blancos mediante sónar o radar.

• Predicciones en el tiempo.

• Decisiones.

• Análisis de inversiones.

• Monitoreo.

• Mercadotecnia.

• Planificación estratégica.

• Diagnóstico y optimización.

• Etc.

Page 17: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 17 –

2.- Aplicación al diseño de controladores difusos.

¿Cómo pueden las redes neuronales aplicarse al diseño de sistemas difusos de control?

• La red neuronal aprende la silueta de la superficie de las

funciones de pertenencia, las reglas y los valores de salida.

• El sistema difuso se plantea como una red neuronal y se

diseña de acuerdo con la capacidad de aprendizaje de una

red neuronal.

• La red neuronal se aplica para ajustar los parámetros del

sistema, como herramienta de diseño pero no como

componente final del sistema difuso.

En los dos primeros casos, la red neuronal se convierte en un

componente más del sistema neurodifuso de control.

• En el primer caso, la red neuronal se aplica directamente en

el diseño de funciones de pertenencia multidimensionales y

no lineales, que particionan un espacio de entrada (proceso

de razonamiento difuso).

• En el segundo caso, tenemos el ejemplo de los sistemas

ANFIS.

Page 18: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 18 –

2.- Aplicación al diseño de controladores difusos.

2.1.- Arquitectura ANFIS.

• Consideremos el ejemplo de un modelo difuso tipo

Sugeno, donde las reglas difusas son similares a éstas:

SI x1 es A1 Y x2 es A2 ENTONCES y1 = w1·x1 + w2·x2 + r1

SI x1 es A1 Y x2 es A2 ENTONCES y2 = v1·x1 + v2·x2 + r2

• Cada regla se puede representar como la siguiente red

neuronal,

• La primera capa representa la capa de pertenencia.

• En la segunda capa se usa una t-norma para generar el

grado de disparo de la regla.

• La tercera capa actúa como normalizador.

• La cuarta capa calcula la salida.

• Por último, el único nodo en la quinta capa se encarga de

combinar todas las salidas en una.

• La red neuronal obtenida se comporta (funcionalmente)

exactamente como un sistema tipo Sugeno.

Page 19: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 19 –

2.- Aplicación al diseño de controladores difusos.

2.2.- Controlador Neurodifuso Adaptativo.

Ejemplo: Control difuso de un proceso de monitorización

de combustión.

• La combustión es un proceso multifase complejo, fluido,

dinámico y reactivo.

• Se necesita de una técnica de medida global para el control

eficiente del sistema, debido a que análisis puntuales y locales

proporcionan una información insuficiente.

• Se pueden aplicar métodos de procesamiento de imágenes

para el reconocimiento de estados de combustión no óptimos.

• El sistema neurodifuso debe aprender cuáles son los estados

óptimos de combustión, a partir de la información facilitada por

un experto.

• Para cada posible estado se obtiene un pequeño número de

características que lo definen. Las diferencias entre ellas

constituyen las entradas al sistema.

• La implementación mediante una red neuronal provoca que el

sistema pueda aprender a partir del entorno y ganar en

robustez, ajustando los pesos de la red frente a interferencias

externas.

• La red neuronal actúa sobre el mecanismo de inferencia difusa.

Page 20: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 20 –

2.- Aplicación al diseño de controladores difusos.

2.2.- Controlador Neurodifuso Adaptativo.

Ejemplo: Control difuso de un proceso de monitorización

de combustión.

• En el aprendizaje, el sistema se va ajustando a partir del estado

del proceso.

o Si se cuenta con un experto humano, esta etapa es muy

sencilla y se convierte en un proceso de aprendizaje

supervisado.

• En la fase de prueba, el sistema simplemente aplica la

inferencia difusa sin reajuste de sus parámetros.

• Las neuronas de la primera capa son nodos de entrada, uno

por cada variable lingüística.

• En la siguiente capa se realiza la fuzzificación.

• La tercera capa contiene nodos de reglas.

• La defuzzificación se realiza en la cuarta y última capa.

Page 21: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 21 –

2.- Aplicación al diseño de controladores difusos.

2.3.- Otros ejemplos de aplicación.

Ejemplo: Control neuro-difuso de una lavadora

(Matsushita Electric Group)

• El modelo emplea menos agua, energía y detergente, y

consigue un lavado igualmente bueno. Características:

o Nuevo “Programa de manchas” para eliminar tipos

específicos de manchas de forma efectiva.

o Consumo: 50 litros de agua y 1.7 kWh.

o Dosificador automático controlado mediante lógica difusa.

• Entradas:

o Cantidad de ropa.

o Impureza del agua.

o Diferencial de impureza.

• Cada entrada se codifica

mediante tres etiquetas

lingüísticas, con sus

correspondientes funciones de

pertenencia.

• La red neuronal se aplica en el ajuste de las funciones de

pertenencia, incrementando las prestaciones del controlador y

de la lavadora.

Page 22: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 22 –

2.- Aplicación al diseño de controladores difusos.

2.3.- Otros ejemplos de aplicación.

Ejemplo: Control neuro-difuso de una lavadora (Hitachi).

• La red neuronal se aplica en el ajuste

de los valores de salida del

controlador.

• No es necesario rediseñar el sistema

difuso de control.

• Útil cuando el conjunto de datos de entrada varía con el

tiempo. En este caso, se añade un sensor para la

temperatura del aire.

• La lógica difusa y la red neuronal pueden funcionar en

paralelo y simultáneamente en este caso (en general

no tienen por qué).

Page 23: Tema 8 Aprendizaje De Sistemas Difusos Con Redes Neuronales

Sistemas Difusos Tema 8

– 23 –

2.- Aplicación al diseño de controladores difusos.

2.3.- Otros ejemplos de aplicación.

Ejemplo: Ventilador eléctrico rotatorio (Sanyo).

• El ventilador se gira hacia donde está el usuario.

• La posición del usuario se obtiene a través de tres

sensores infrarrojos mediante los que se calcula la

distancia al usuario por medio del sistema difuso.

• Dicha distancia, junto con los ratios de los sensores de

salida constituyen las entradas de la red neuronal con

la que se ajusta la orientación del ventilador.

• La combinación de estos factores ha mejorado

sensiblemente el cálculo de la distancia.