Computacion inteligente

Slides:



Advertisements
Presentaciones similares
INTRODUCCION A TECNICAS DE MINERIA DE DATOS
Advertisements

Introducción a las Redes neuronales
Silvana Arias Carla Espinosa Livia Loaiza INGENIERIA EN SISTEMAS
La maquina de Turing La máquina de Turing es una caja negra (tan simple como una máquina de escribir y tan compleja como un ser humano) capaz no sólo de.
DERIVADA DE UNA FUNCION REAL
Computacion Inteligente
Redes neuronales2 José Edinson Aedo Cobo Depto. de Ing. Electrónica.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Algebra Booleana y Compuertas Lógicas
RECONOCIMIENTO DE OBJETOS
METODOLOGIA DE LA PROGRAMACION
APRENDIZAJE WIDROW- HOFF
El Perceptrón  El psicólogo Frank Ronsenblant desarrolló un modelo simple de neurona basado en el modelo de McCulloch y Pitts que utilizaba.
Inteligencia Artificial (BAIA)  Se propone lograr que las computadoras se comporten de manera que podamos reconocerlas como inteligentes.  Tiene por.
REDES NEURONALES ARTIFICIALES
Tema 2: Métodos de ajuste
RECONOCIMIETO DE PATRONES
Sesión 2: Métodos Probabilísticos Básicos
Computacion Inteligente
Programación en Matlab
Introducción Calculabilidad clásica Computación celular
Redes Neuronales Monocapa
ADALINE — The Adaptive Linear Element
Computacion inteligente Introduccion a la Clasificacion.
Ejemplo de aplicación de las ANN
1 Problema no separable linealmente Se busca obtener un algoritmo más general que permita integrar el aprendizaje entre las dos capas.
Un ejemplo ilustrativo
Integrantes: Daniel Peña Alfredo Zuñiga
Aplicaciones de las Redes Neuronales Artificilaes Dr. Héctor Allende
Redes Asociativas.
Redes Neuronales Artificiales
Aprendizaje de Agentes II Alberto Reyes Ballesteros Programa ITESM-IIE Doctorado en Ciencias Computacionales.
Modelos Computacionales
Redes Competitivas.
Unidad V: Estimación de
Teoría – Alejandro Gonzalez
REDES NEURONALES.
La estimacion de parametros
Redes Neuronales Artificiales
Aprendizaje Automatizado
Tecnologías de las computadoras
Redes Neuronales Artificiales 2 - Aprendizaje
Curso de Lógica Difusa Prof. José Edinson Aedo Cobo, Msc. Dr. Ing.
Redes Neuronales Artificiales 3 - Perceptrones Dr. Juan José Flores Romero División de Estudios de Posgrado Facultad de Ingeniería Eléctrica
Introduccion a las Redes de Funciones de Base Radial
REDES NEURONALES ARTIFICIALES TEORÍA Y APLICACIONES
Sabemos reconocerlas, y calcularlas como soluciones de sistemas de ecuaciones, o de desigualdades Buscamos métodos de cálculo generales y eficientes Problemas.
CSE 504 Discrete Structures & Foundations of Computer Science
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Redes Neuronales BPN - Backpropagation Networks
Redes Neuronales Artificiales Entrenamiento por Retropropagación del Error-Backpropagation Dr. Pedro Ponce Cruz EGIA-MCI.
Redes neuronales feed-forward
Realimentacion de estado
L A ESTIMACION DE PARAMETROS 1. /31 CONTENIDO Principio fundamental de la estimación de parámetros Un metodo grafico para la estimacion de parametros.
Algoritmo de Retropropagación. Conclusiones de Retropropagación n 1. Si la neurona j es un nodo de salida es igual al producto de la derivada y la señal.
Realimentacion de estado
Identificacion con redes neuronales
/47 Sistemas dinamicos Realimentacion de la salida 1.
/52 Sistemas dinamicos Realimentacion de estado 1.
Realimentacion de la salida
Ángel Berihuete Francisco Álvarez
DETECCION DE SEÑALES BINARIAS EN RUIDO GAUSSIANO El criterio de toma de decisión fue descrito por la ecuación Un criterio muy usado para escoger el nivel.
Redes Neuronales.
OPTIMIZACION DEL DESEMPEÑO DE ERROR
Realimentacion de la salida
Tópicos en Inteligencia Artificial I Universidad Católica San Pablo.
Método Simplex Es un procedimiento sistemático y eficiente para encontrar y probar soluciones situadas en los puntos extremos de la región de soluciones.
Support Vector Machines.  Vocabulario básico: ◦ Repositorio de datos ◦ Atributos y Instancias ◦ Aprendizaje supervisado  Clasificación (Clase) ◦ Aprendizaje.
REDES NEURONALES ARTIFICIALES (SOM - Kohonen)
Redes Neuronales Artificiales (ANN)
Transcripción de la presentación:

Computacion inteligente 13/04/2017 Computacion inteligente El perceptron

Agenda History Perceptron structure 13/04/2017 Agenda History Perceptron structure Perceptron as a two-class classifier The Perceptron as a Logic Operator Perceptron Learning Perceptron Convergence Theorem Examples Perceptron Limitation Nov 2005

13/04/2017 Historia

Historia 1943 El perceptron fue derivado del modelo de una 13/04/2017 Historia 1943 El perceptron fue derivado del modelo de una neurona biologica del cerebro por Mc Culloch & Pitts En principio las redes neuronales artificiales podrian computar cualquier funcion aritmetica o logica. La red de McCulloch y Pitts no podian aprender. 1949 Hebb propone una ley de aprendizaje que explicaba como una red de neuronas aprendia W. S. McCullough and W. Pitts. A logical calculus of the ideas of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics, 5:115{133, 1943 McCullough & Pitts: (1943): use of NN as computational tool D. O. Hebb. The Organization of Behavior: A Neuropsychological Theory. Wiley, New York, 1949 1st rule for self-organized learning Nov 2005

Historia 1957 Rosenblatt desarrolla el Perceptron, una red 13/04/2017 Historia 1957 Rosenblatt desarrolla el Perceptron, una red neuronal en hardware para reconocimiento de caracteres Rosenblatt diseño el perceptron con vista a explicar y modelar las habilidades de reconocimientos de patrones de los sistemas visuales biologicos 1958 Rosenblatt se acredita con el algorimo de aprendizaje del perceptron F. Rosenblatt. The perceptron: A probabilistic model for information storage and organization in the brain. Psychological Review, 65:386{408, 1958 for perceptron (learning with a teacher) Nov 2005

Perceptron elemental de Rosenblatt 13/04/2017 Perceptron elemental de Rosenblatt El problema consiste simplemente en determinar si el patron de entrada es una “p” o no Nov 2005

Historia 1969 Minsky & Papert - limitacion del perceptron 13/04/2017 Historia 1969 Minsky & Papert - limitacion del perceptron El famoso problema de la “XOR” Muerte de las ANNs 1974-1986 Diferentes personas resuelven los problemas del perceptron: Algoritmos para entrenar perceptrones multicapa feedforward Back-propagation del error (Rumelhart et al 1986) Re-emergen las ANNs M. Minksy and S. Papert. Perceptrons: An Introduction to Computational Geometry. MIT Press, 1969. B. Widrow and M. E. Ho, Jr. Adaptive switching circuits. In IRE WESCON Convention Record, pages 96{104 Widrow-Ho delta rule (least mean square) Nov 2005

Estructura del perceptron 13/04/2017 Estructura del perceptron

Estructura del perceptron 13/04/2017 Estructura del perceptron Nov 2005

Estructura del perceptron 13/04/2017 Estructura del perceptron Patrones de entrada representados por el vector x wi es un peso modificable asociado con la señal de entrada xi La suma pesada de las entradas se aplica al hard limiter, con un valor umbral b El umbral b = w0 puede verse como un peso entre la unidad de entrada y una señal ficticia de valor x0 = 1 Nov 2005

Estructura del perceptron 13/04/2017 Estructura del perceptron La suma pesada de las entradas se aplica al hard limiter, el cual produce una salida igual a +1 si su entrada es positiva, -1 si es negativa. El hard limiter es, entonces Nov 2005

Estructura del perceptron 13/04/2017 Estructura del perceptron En general, el hard limiter puede ser sgn(x): la funcion signo, o, hardlims(x) step(x): la funcion paso, or, hardlim(x) Matlab toolbox Nov 2005

Modelo matematico del perceptron 13/04/2017 Modelo matematico del perceptron Salida de la neurona Forma vectorial b incluida Nov 2005

El perceptron como un clasificador de dos clases 13/04/2017 El perceptron como un clasificador de dos clases

El perceptron como un clasificador de dos clases 13/04/2017 El perceptron como un clasificador de dos clases El proposito del perceptron es clasificar las entradas, x1, x2, . . ., xn, en una de dos clases, digamos A1 y A2. Los patrones de entrada pertenecen a una de dos clases. Esto solo puede suceder cuando ellos son linealmente separables Nov 2005

El perceptron con dos entradas 13/04/2017 El perceptron con dos entradas La frontera de decision esta determinada por Nov 2005

Una frontera de decision en el perceptron 13/04/2017 Una frontera de decision en el perceptron w = (w1, w2, b) = (1, -1, 0) x1 x2 Nov 2005

Una frontera de decision en el perceptron 13/04/2017 Una frontera de decision en el perceptron w = (w1, w2, b) = (1, -1, 0) wT. x = 0 => 1. x1 - 1. x2 + 0.1 = 0 => x1 - x2 = 0 => x1 = x2 x1 x2 Nov 2005

Una frontera de decision en el perceptron 13/04/2017 Una frontera de decision en el perceptron w = (w1, w2, b) = (1, -1, 0) wT. x = 0 => 1. x1 - 1. x2 + 0.1 = 0 => x1 - x2 = 0 => x1 = x2 x1 x2 Esta es la ecuacion para la frontera de decision Nov 2005

Una frontera de decision en el perceptron 13/04/2017 Una frontera de decision en el perceptron Esta es la ecuacion para la region de decision region -1 w = (w1, w2, b) = (1, -1, 0) wT. x = 0 x1 x2 wT. x < 0 => x1 - x2 < 0 => x1 < x2 Nov 2005

Una frontera de decision en el perceptron 13/04/2017 Una frontera de decision en el perceptron w = (w1, w2, b) = (1, -1, 0) wT. x = 0 x1 x2 wT. x > 0 => x1 - x2 > 0 => x1 > x2 Esta es la ecuacion para la region de decision region +1 Nov 2005

13/04/2017 Ejemplo numerico La frontera de decision con Nov 2005

El perceptron con tres entradas 13/04/2017 El perceptron con tres entradas La frontera de decision esta determinada por Nov 2005

El perceptron con n entradas 13/04/2017 El perceptron con n entradas En el caso de un perceptron elemental, el espacio n-dimensional esta dividido en dos regiones de decision por un hiperplano. El hiperplano esta definido por la funcion: Nov 2005

Ejemplo: La imagen de un “3” 13/04/2017 Ejemplo: La imagen de un “3” -1 +1 - 1 Ejercicio: Construya las entradas para el perceptron Nov 2005

El perceptron como un operador logico 13/04/2017 El perceptron como un operador logico

El perceptron como un operador logico 13/04/2017 El perceptron como un operador logico El perceptron como una AND logica x 1 2 1 x & y y x output inputs Tabla de verdad de la AND Nov 2005

El perceptron como una AND 13/04/2017 El perceptron como una AND 1 x & y y x output inputs Truth Table for Logical AND 2x+2y-3 1 -3 y +2 x +2 if sum < 0 : 0 else : 1 entradas pesos suma salida Nov 2005

The Perceptron as a Logic Operator 13/04/2017 The Perceptron as a Logic Operator The Perceptron as a Logic OR x 1 2 1 x | y y x output inputs Tabla de verdad de la AND Nov 2005

El perceptron como una OR 13/04/2017 El perceptron como una OR 1 x | y y x output inputs Tabla de verdad de la OR 2x+2y-1 1 -1 y +2 x +2 if sum < 0 : 0 else : 1 entrada pesos suma salida Nov 2005

El perceptron como un operador logico 13/04/2017 El perceptron como un operador logico Ejercicio Demuestre que una neurona perceptron con los siguientes pesos y polarizacion implementa una compuerta OR Nov 2005

Aprendizaje en el perceptron 13/04/2017 Aprendizaje en el perceptron

Aprendizaje en las NNs naturales 13/04/2017 Aprendizaje en las NNs naturales Al nivel neuronal el aprendizaje ocurre por Cambio en los pesos sinapticos, Eliminacion de algunas sinapsis, y construccion de nuevas. Este procedimiento es llamado la regla de aprendizaje Nov 2005

Aprendizaje en las NNs artificiales 13/04/2017 Aprendizaje en las NNs artificiales Por regla de aprendizaje entendemos un procedimiento para modificar los pesos de una red. El proposito de la regla de aprendizaje es entrenar la red para que ejecute una tarea. Este procedimiento se denomina tambien algoritmo de entrenamiento Nov 2005

Paradigmas de aprendizaje 13/04/2017 Paradigmas de aprendizaje Aprendizaje supervisado Aprendizaje no supervisado Aprendizaje por reforzamiento Classificacion Control Aproximacion de funciones Memorias Asociativas Clustering Nov 2005

Aprendizaje supervisado 13/04/2017 Aprendizaje supervisado A la regla de aprendizaje se le proporciona un conjunto de ejemplos (el conjunto de entrenamiento) de la conducta apropiada de la red xk : Entrada a la red tk : Salida correcta (target) Nov 2005

Aprendizaje supervisado 13/04/2017 Aprendizaje supervisado Las entradas se aplican a la red, las salidas de la red se comparan con la salidas correctas (targets) y(k) : Salida de la red t(k) : Salida correcta (target) Nov 2005

Aprendizaje supervisado 13/04/2017 Aprendizaje supervisado La regla de aprendizaje se usa para ajustar los pesos de la red para mover las salidas de la red hacia las salidas correctas (targets). wnew: Pesos actualizados wold: Pesos iniciales Los pesos se ajustan de acuerdo al error Nov 2005

Aprendizaje supervisado 13/04/2017 Aprendizaje supervisado Los pesos se ajustan de acuerdo al error Nov 2005

Entrenamiento del perceptron 13/04/2017 Entrenamiento del perceptron ¿Como se puede entrenar una perceptron para una tarea de clasificacion? Tratamos de hallar los valores de los pesos de tal manera que los ejemplos de entrenamiento sean clasificados correctamente. Geometricamente, tratamos de hallar un hiper-plano que separe los ejemplos en dos clases Nov 2005

Entrenamiento del perceptron 13/04/2017 Entrenamiento del perceptron Rosenblatt (1958) propone un algoritmo de aprendizaje para las redes neuronales artificiales Comenzar con un conjunto de entrenamiento (ejemplos de entradas y salidas deseadas correspondientes) Entrenar la red para que reconozca los ejemplos en el conjunto de entrenamiento (ajustando los pesos) Una vez entrenada, la red puede ser aplicada a ejemplos nuevos Nov 2005

Algoritmo de aprendizaje del perceptron 13/04/2017 Algoritmo de aprendizaje del perceptron Inicializar los pesos con valores aleatorios. Iterar por el conjunto de entrenamiento, comparando la salida de la red con la salida deseada para cada ejemplo. Si todos los ejemplos son clasificados correctamente, PARAR. Si no, actualizar los pesos para cada ejemplo incorrecto: Si salida = -1, pero deberia ser 1 Si salida = 1 pero deberia ser -1 Volver al PASO 2 Nov 2005

Variables y parametros 13/04/2017 Variables y parametros Conjunto de entrenamiento S de ejemplos {x,t} x es el vector de entrada t la salida deseada Ejemplo: La AND S = {(0,0),0}, {(0,1),0}, {(1,0),0}, {(1,1),1} Nov 2005

Variables y parametros 13/04/2017 Variables y parametros Variables y parametros en la iteracion k del algoritmo de aprendizaje: vector de entrada: x(k) = [+1, x1(k), x2(k), …, xm(k)]T Vector de pesos: w(k) = [b(k), w1(k), w2(k), …, wm(k)]T polarizacion: b(k) respuesta de la red: y(k) respuesta deseada: t(k) Velocidad de aprendizaje:  > 0 Nov 2005

Regla de aprendizaje del perceptron 13/04/2017 Regla de aprendizaje del perceptron Si en la iteracion k, la salida de la red es y(k) y la salida deseada es t(k), entonces el error esta dado por: donde k = 1, 2, 3, . . . La iteracion k se refiere aqui al k-esimo ejemplo de entrenamiento presentado al perceptron. Nov 2005

Regla de aprendizaje del perceptron 13/04/2017 Regla de aprendizaje del perceptron Regla de aprendizaje del perceptron Si el error, e(k), es positivo, se necesita incrementar la salida del perceptron y(k), pero si es negativo, se necesita decrementar y(k). Nov 2005

Algoritmo de entrenamiento 13/04/2017 Algoritmo de entrenamiento Paso 1: Inicializacion Seleccionar los pesos iniciales w1, w2,…, wm y la polarizacion b con numeros aleatorios. Paso 2: Activacion Presentar las entradas al perceptron x1(k), x2(k),…, xm(k). Calcular la salida de la red en la iteracion k = 1 Nov 2005

Algoritmo de entrenamiento 13/04/2017 Algoritmo de entrenamiento Paso 3: Actualizacion de los pesos Actualizar los pesos del perceptron Paso 4: Iteracion Incrementar k en uno, volver al Paso 2 y repetir el proceso hasta la convergencia. Nov 2005

Teorema de la convergencia del perceptron 13/04/2017 Teorema de la convergencia del perceptron

Teorema de la convergencia 13/04/2017 Teorema de la convergencia El algoritmo de aprendizaje siempre encontrara los pesos que clasifiquen las entradas, si tales pesos existen. Minsky & Papert demostraron que tales pesos existen si y solamente si el problema es linealmente separable Razon clave para el interes en el perceptron Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Teorema Suponga que las clases C1, C2 son linealmente separables. Entonces, el algoritmo del perceptron aplicado a C1C2 termina con exito despues de un numero finito de iteraciones. Esto es: Existe un numero entero N tal que para todo k ≥ N, el error e(k) = 0, y entonces Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Por simplicidad asumimos w(1) = 0,  = 1. Y el contador de iteraciones k cuenta solamente los pasos en los que se corrige el vector de pesos Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Entonces Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Ya que C1 y C2 son linealmente separables entonces existe w* tal que clasifica correctamente a todos los vectores de entrada,  x  C. Sea Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Ya que todos los vectores de entrada x(j) han sido clasificados incorrectamente, es estrictamente positivo. Si Entonces e(j)>0 Si Entonces e(j)<0 Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Tenemos entonces Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Por la desigualdad de Cauchy-Schwarz Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Consideremos ahora otro camino: Los vectores x(j) son clasificados incorrectamente Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Entonces Nov 2005

Teorema de la convergencia 13/04/2017 Teorema de la convergencia Prueba: Por lo tanto k no puede ser mayor que kmax tal que: Entonces el algoritmo termina con exito al menos en kmax iteraciones Nov 2005

observaciones El algorimo converge a la clasificacion correcta 13/04/2017 observaciones El algorimo converge a la clasificacion correcta si los datos de entrenamiento son linealmente separables y la velocidad de aprendizaje es lo suficientemente pequeña La Soluion w* no es unica, ya que si w*Tx =0 define un hiper-plano, tambien lo hace w*’ = αw*. Nov 2005

13/04/2017 Ejemplos

Aprendizaje del perceptron 13/04/2017 Aprendizaje del perceptron t=-1 t=1 o=1 (x,t)=([2,1],-1) o=sgn(0.45-0.6+0.3) =1 w=[0.25 –0.1 0.5] x2 = 0.2 x1 – 0.5 o=-1 w=[0.2 –0.2 –0.2] (x,t)=([-1,-1],1) o=sgn(0.25+0.1-0.5) =-1 (x,t)=([1,1],1) o=sgn(0.25-0.7+0.1) =-1 w=[0.2 0.2 0.2] w=[-0.2 –0.4 –0.2] Nov 2005

Otro ejemplo ¿Como entrenar al perceptron para reconocer este 3? -1 +1 13/04/2017 Otro ejemplo ¿Como entrenar al perceptron para reconocer este 3? -1 +1 - 1 Nov 2005

Otro ejemplo ¿Como entrenar al perceptron para reconocer este 3? 13/04/2017 Otro ejemplo ¿Como entrenar al perceptron para reconocer este 3? Asignar –1 a los pesos con valores de entrada que son iguales a –1, +1 a los pesos con valores de entrada que son iguales a +1, y –63 a la polarizacion. La salida del perceptron sera 1 cuando se le presente un tres “perfecto”, y al menos –1 para cualquier otro patron. Nov 2005

¿Que pasa si el 3 a ser reconocido es ligeramente diferente? 13/04/2017 Otro ejemplo ¿Que pasa si el 3 a ser reconocido es ligeramente diferente? -1 +1 - 1 Nov 2005

13/04/2017 Otro ejemplo ¿Que pasa si el 3 a ser reconocido es ligeramente diferente? El 3 original con un bit corrupto produce una suma igual a –1. Si la polarizacion se hace igual a –61 entonces tambien este 3 corrupto sera reconocido, asi como todos los patrones con un bit corrupto. El sistema es capaz de generalizar al considerar solo un ejemplo de patron corrupto! Nov 2005

Limitacion del perceptron 13/04/2017 Limitacion del perceptron

13/04/2017 Limitaciones Se garantiza la convergencia de la regla de aprendizaje del perceptron a una solucion en un numero finito de pasos, siempre que exista una solucion. Las dos clases deben ser linealmente separables. Nov 2005

Limitaciones Problemas no linealmente separables 13/04/2017 Limitaciones Problemas no linealmente separables Trate de dibujar una linea recta entre vectores de dos clases Nov 2005

El problema de la OR exclusiva (XOR) 13/04/2017 El problema de la OR exclusiva (XOR) Proposito: Clasificar un vector binario de entrada En la clase 0 si el vector tiene un numero par de 1’s o 0’s, En la clase 1 en caso contrario X Y Clase Par deseado i/o 1 Par deseado i/o 2 1 Par deseado i/o 3 Par deseado i/o 4 Nov 2005

Objecion de Minsky-Papert 13/04/2017 Objecion de Minsky-Papert La simple operacion de la OR exclusive (XOR) no puede ser resuelta usando un perceptron lineal con polarizacion.  Por lo tanto, probablemente problemas mas importantes no pueden ser resueltos con el perceptron lineal. i 2 i 1 1 ? Nov 2005

El problema XOR resuelto 13/04/2017 El problema XOR resuelto El problema de la XOR puede ser resuelto usando un perceptron de dos capas neurona 2 neurona 3 neurona 1 x2 x1 Nov 2005

El problema XOR resuelto 13/04/2017 El problema XOR resuelto El problema de la XOR puede ser resuelto usando un perceptron de dos capas 1 -2 -1 0.5 1.5 f() Nov 2005

13/04/2017 x2 O 1 x1 1 1.5 -1 f() Nov 2005

13/04/2017 x2 O 1 x1 1 0.5 f() Nov 2005

El problema XOR resuelto 13/04/2017 El problema XOR resuelto 1 -2 -1 0.5 f() y1 y2 y3 Nov 2005

La neurona 3 realiza la operación XOR. 13/04/2017 Neurona 1 Neurona 2 x2 O 1 x1 x2 O 1 x1 x2 O 1 x1 La neurona 3 realiza la operación XOR. Nov 2005

El problema XOR resuelto 13/04/2017 El problema XOR resuelto Conclusion: Por medio de estructuras multicapas es posible clasificar problemas que no son linealmente separables Nov 2005

El perceptron: ejemplo en MATLAB 13/04/2017 El perceptron: ejemplo en MATLAB

Ejemplo en MATLAB PART 1: Generation of the training and validation sets % Una matriz (p − 1) × 2N de numeros aleatorios uniformemente distribuidos en el intervalo [−1, +1] X = 2*rand(p-1,2*N)-1; nn = randperm(2*N); nn = nn(1:N); X(:,nn) = sin(X(:,nn)); % Se “colorean” las columnas de la matriz X indicadas por nn % Al final de cada vector de entrada se agrega un 1 para implementar la polarizacion X = [X; ones(1,2*N)]; Nov 2005

Ejemplo en MATLAB PARTE 1: Generacion de los conjuntos de entrenamiento y validacion % Este es un vector unitario ortogonal al plano de separacion aumentado. Es tambien el vector de pesos a encontrar (target). wht = 3*rand(1,p)-1; wht = wht/norm(wht); % La clasficacion para cada punto del espacio de entrada con respecto al numero de la clase, 0 or 1. D = (wht*X >= 0); Nov 2005

Ejemplo en MATLAB PARTE 2: Visualisacion de los patrones de entrada-salida. % El espacio de entrada es de dimension p, por lo tanto dificil de visualizar. Entonce, se dibujan proyecciones de los patrones de entrada en un plano 2D, digamos el plano (x1 − x3). pr = [1, 3]; Xp = X(pr, :); wp = wht([pr p]); % projeccion del vector de pesos c0 = find(D==0); c1 = find(D==1); plot(Xp(1,c0),Xp(2,c0),’o’, Xp(1,c1),Xp(2,c1),’x’) Nov 2005

Ejemplo en MATLAB PARTE 3: Aprendizaje C = 50; E = [C+1, zeros(1,C)]; WW = zeros(C*N,p); c = 1 ; cw = 0 ; % Maximo numero de epocas de entrenamiento % Inicializacion del vector de la suma total de errores al cuadrado en una epoca. % La matriz WW almacenara los vectores de pesos wh. % c es un contador de epocas % cw contador de actualizaciones de pesos total Nov 2005

Ejemplo en MATLAB: Aprendizaje while (E(c)>1)|(c==1) c = c+1 ; % El lazo interno prueba todos los ejemplos de entrenamiento. for n = 1:N eps = D(n) - ((wh*X(:,n)) >= 0); % e(n) = d(n) − y(n) wh = wh + eta*eps*X(:,n)’; % La ley de aprendizaje cw = cw + 1; WW(cw,:)=wh/norm(wh); % El vector de pesos normalizado se almacena en WW para graficar el desempeño E(c) = E(c) + abs(eps); % |e| = e^2 end; Nov 2005

13/04/2017 Fuentes Martin Hagan, Neural Network Design Demonstrations. PWS Publishing Company. 1994 Heikki Koivo, Neuro-Fuzzy Computing in Automation, course material. Control Engineering Laboratory. Helsinki University of Technology. Spring 2002. Jeen-Shing Wang, Course: Introduction to Neural Networks. Lecture notes. Department of Electrical Engineering. National Cheng Kung University. Fall, 2005 Wen Yu, Advanced Fuzzy neural networks. Lecture notes. Departamento de Control Automatico. CINVESTAV-IPN. 2005 Andrew P. Paplinski, CSE5301 Neuro-Fuzzy Computing (Neural Networks and Fuzzy Systems). Lecture Notes. Monash University, Australia. 1 June 2005. Nov 2005

13/04/2017 Sources J-Shing Roger Jang, Chuen-Tsai Sun and Eiji Mizutani, Slides for Ch. 5 of “Neuro-Fuzzy and Soft Computing: A Computational Approach to Learning and Machine Intelligence”, First Edition, Prentice Hall, 1997. Djamel Bouchaffra. Soft Computing. Course materials. Oakland University. Fall 2005 Lucidi delle lezioni, Soft Computing. Materiale Didattico. Dipartimento di Elettronica e Informazione. Politecnico di Milano. 2004 Handbook of Neural Computation. release 97/1. IOP Publishing Ltd and Oxford University Press. 1997 A. S. Hodel, Neural Networks, notes of ELEC 6240 course. Dept. ECE, Auburn University. November 19, 2003. Nov 2005