introducci on a las redes neuronales - wordpress.com · martin del br o, bonifacio, sanz, alfredo,...
TRANSCRIPT
Introduccion a las Redes NeuronalesPerceptron Simple
William Campillay-LLanos
https://sites.google.com/site/williamcampillay/home
Departamento de Matematica, Fısica y Estadıstica.Universidad Catolica del Maule.
Una maravillosa introduccion a Calculo I
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Resumen
Introduccion
Modelamiento Matematico Aplicado
Perceptron Simple en Matlab
Construccion del Programa
Referencias
William Campillay MSc Primavera 2018 Redes Neuronales 2 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Introduccion
Inspiracion:
Las Redes Neuronales surgen como intento de emular estructurasbiologicas, en particular estas redes se inspiran en las neuronas denuestro cerebro. Es importante senalar que la empresa Citroenutiliza redes neuronales en la determinacion de la calidad delmaterial utilizado en la confeccion de los asientos de los vehıculos.Ford en reduccion de contaminantes y Renault para detectardesperfectos en el encendido de los automoviles. Una de lasaplicaciones mas sorprendentes de estas redes a sido comandar elaterrizaje de una avion Jumbo sin intervencion humana (1).
Creando musica con Redes Neuronaleshttps://www.youtube.com/watch?v=A2gyidoFsoI
William Campillay MSc Primavera 2018 Redes Neuronales 3 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Clasificacion
William Campillay MSc Primavera 2018 Redes Neuronales 4 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Modelamiento Matematico Aplicado
Modelamiento Matematico
La membrana de la neurona se comporta como un condensadorque recibe cargas procedentes del exterior o de otras neuronas,integrandolas y provocando una respuesta, generalmente del tipono lineal. Esta idea se presenta en la siguiente figura:
La salidad de la neurona es una tension analogica (la frecuencia dedisparo por una tension continua).
William Campillay MSc Primavera 2018 Redes Neuronales 5 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Con la imagen anterior podemos modelar la neurona como unelemento integrador no lineal, con lo que la dinamica de ciertaneurona i se puede describir utilizando la ley de conservacion de lacarga electrica, obteniendo la siguiente ecuacion:
Ley de conservacion de la carga electrica
CdUi
dt= −Fi + Ii (1)
Ui potencial de la membrana. C capacidad. Fi representa elconjunto de las corrientes de perdida o de fuga de la neurona. Iisuma de corrientes sinapticas debidas a la accion de las entradasque recibe, provenientes, bien de otras neuronas, bien de fuentesexternas.
William Campillay MSc Primavera 2018 Redes Neuronales 6 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Ademas podemos escribir la totalidad de las corrientes que laneurona recibe de la siguiente manera
Ii =n∑
j=1
wijVj + bi (2)
En la representacion anterior consideramos que la accion de lasdemas neuronas sobre la i es lineal, donde:
1 wij son los pesos sinapticos, que dan la intensidad deinteraccion entre la neurona j y i (conductancias electricas).
2 bi (umbral) el resto de las corrientes provenientes del entorno.
3 Vj potenciales generados por las neuronas j (o del exterior).
William Campillay MSc Primavera 2018 Redes Neuronales 7 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Y finalmente considerando F = g(yi )1, el modelo dinamino (1) se
transforma en:
CdUi
dt= −g(yi ) +
n∑j=1
wijVj + bi (3)
Ahora considerando el supuesto de que las entradas cambianlentamente, podran considerarse estables durante un tiempo, de talmanera que podemos realizar la siguiente aproximacon dUi
dt ≈ 0.Despejando en (3) tenemos:
g(yi ) =n∑
j=1
wijVj + bi (4)
1Donde g es una funcion monotona crecienteWilliam Campillay MSc Primavera 2018 Redes Neuronales 8 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Modelos Estatico de la Neurona
Es de nuestro interes calcular la salidad de la neurona, por lo tantotenemos el modelos estatico de la neurona
Modelo estatico de la neurona
yi = g−1(n∑
j=1
wijVj + bi ) = f (n∑
j=1
wijVj + bi ) (5)
En el modelo que representa el percetron simple, se considera fcomo la identidad.
William Campillay MSc Primavera 2018 Redes Neuronales 9 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Resultados Matematicos
Existen resultados matematicos que relacionan ciertas ideas quenos permiten tener un buen entendimiento de las redes neuronales.Por ejemplo la nocion de que la neurona aprende en un tiempofinito, se expresa en el siguiente resultado:
Separacion de datos en un tiempo finito
Para cualquier conjunto de datos que sea linealmente separable, segarantiza que la regla de aprendizaje del perceptron encuentra unasolucion en un numero finito de iteraciones.
William Campillay MSc Primavera 2018 Redes Neuronales 10 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Nocion de Recuerdo
Tambien es posible considerar la nocion de recuerdo que setraduce en el termino de estabilidad en matematica, es decir enredes con realimentacion, al considerarlas como sistemas dinamicosno lineales, requieren ciertas condiciones para que sus respuestaconverja a une estado estable o punto fijo.
William Campillay MSc Primavera 2018 Redes Neuronales 11 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Cohen-Grossberg
Para cualquier sistema dinamico no lineal que se pueda escribir delas siguiente forma:
x′i = αi (xi )[βi (xi )−
n∑j=1
mjiSj(xj)] (6)
1 la matriz ||mij || es simetrica y mij ≥ 0, para todo i , j .
2 La funcion αi (ξi ) es continua para todo ξi ≥ 0.
3 αi (ξ) ≥ 0, para todo ξ ≥ 0; Si (ξ) ≥ 0, para todo ξ ≥ 0.
4 la funcion Si (ξ) es diferenciable y no decreciente para todoξ ≥ 0.
Existe una funcion de energıa de Lyapunov y el sistema es estable.
William Campillay MSc Primavera 2018 Redes Neuronales 12 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Aproximador Universal
Para finalizar estas ideas relacionadas con los metodos matematicostradicionales, consideramos una de las aplicaciones de las redesneuronales, que las considera como aproximadores universales.
Funahashi
Un Perceptron Multicapa de una unica capa oculta puedeaproximar hasta el nivel deseado cualquier funcion continua en unintervalo.
William Campillay MSc Primavera 2018 Redes Neuronales 13 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Ejemplos de Redes Neuronales
1 Perceptron Simple: Idea de Frank Rosenblatt.
2 Adalina: ADAptive Linear Neuron, introducida por Windrowen 1959. Este modelos utiliza una neurona similar a la delperceptron, pero de respuesta lineal.
3 Perceptron Multicapa
William Campillay MSc Primavera 2018 Redes Neuronales 14 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Perceptron Simple
Problema: Dos grupos de datos, que pertenecen a dos clases, sedefinen en un espacio de entrada bidimensional. Las clases sonlinealmente separables. La tarea es construir un Perceptron para laclasificacion de datos (Ver: PerceptronSimple1).
William Campillay MSc Primavera 2018 Redes Neuronales 15 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Algoritmo de Aprendizaje
Algoritmo de Levenberg-marquardt
1 Paso 1: Definimos x1, el punto inicial o primera aproximacionde x∗. M el maximo numero de iteraciones permitido, y λ elcriterio de convergencia o parada. Hacemos k = 1 y λ1 = 104.
2 Paso 2: Calculamos ∇f (xk).
3 Paso 3: Si ∇f (xk) < ε, x∗ = (xk). Parar.
4 Paso 4: Si k > M, entonces Superado el numero deiteraciones. Parar.
William Campillay MSc Primavera 2018 Redes Neuronales 16 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Algoritmo de Levenberg-marquardt
1 Paso 5: Calcular s(xk) = −[Hf (xk) + λk I ]−1∇f (xk).
2 Paso 6: Calcular xk+1 = xk + s(xk).
3 Paso 7: Si f (xk+1) < f (xk), entonces λk+1 = 12λk y k tiende
k + 1. Ir al paso 2.
4 Paso 8: Si f (xk+1) ≥ f (xk), entonces λk tiende a 2λk . Ir alpaso 5.
William Campillay MSc Primavera 2018 Redes Neuronales 17 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Adalina
ADAptive Linear Neuron, introducida por Windrow en 1959. Estemodelos utiliza una neurona similar a la del perceptron, pero derespuesta lineal.
Problema: Construir un ADALINE para la prediccion adaptativa deseries de tiempo basadas en datos de series temporales pasadas.
William Campillay MSc Primavera 2018 Redes Neuronales 18 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Perceptron Multicapa (Entender...)
El Perceptron Simple (Rosenblatt) ası planteado no podıa tratarproblemas con una funcion logica llamada OR Exclusiva osimplemente XOR. Las funciones logicas tienen normalmente dosentradas y una salida que depende de los valores de las entradas.Las entradas y las salidas pueden tomar dos valores: Verdadero yFalso, o 0 y 1. Ası para cada funcion logica existe una tabla queindica cual sera la salida dada la combinacion de los valores de laentrada. El resultado de XOR sera Verdadero (1) solo si las dosentradas son distintas, sino sera Falso (0).
William Campillay MSc Primavera 2018 Redes Neuronales 19 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Perceptron Multicapa
Problema: 4 grupos de datos (A,B,C ,D) se definen en un espaciode entrada bidimensional. Los clusteres (A,C ) y (B,D)representan un problema de clasificacion de XOR. La tarea esdefinir una red neuronal para resolver el problema XOR.
William Campillay MSc Primavera 2018 Redes Neuronales 20 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Programas en Matlab
1 EjemploPrincipalhttp://www.mathworks.com/matlabcentral/fileexchange/44470-single-perceptron-learning
• hardlimit• evalnet
2 PerceptronSimple1
William Campillay MSc Primavera 2018 Redes Neuronales 21 / 22
Introduccion Modelamiento Matematico Aplicado Perceptron Simple en Matlab Construccion del Programa Referencias
Referencias
Martin del Brıo, Bonifacio, Sanz, Alfredo, RedesNeuronales y Sistemas Borrosos, Alfaomega, Ciudad deMexico, 2007.
Mathews, John, Kurtis, Fink, Metodos Numericos conMatlab, Pearson, Espana, 2008.
William Campillay MSc Primavera 2018 Redes Neuronales 22 / 22