modelos neuronales de tercera - fmr -...

40

Upload: hoangque

Post on 25-Sep-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno
Page 2: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Modelos neuronales de tercera generación: aplicación en el reconocimiento de patrones y robótica Dr. Roberto Antonio Vázquez Espinoza de los Monteros Enero 2015

Page 3: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Agenda

1. Grupo de Investigación 2. Introducción 3. Metodología 4. Resultados obtenidos 5. Conclusiones

Page 4: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Grupo de Investigación+Desarrollo+innovación Sistemas intel igentes

4 Doctores (3 miembros del SNI), Estudiantes de licenciatura y posgrado.

Realizar investigación tanto básica como aplicada, para dar solución a problemas relacionados con el reconocimiento de patrones, análisis de imágenes, predicción de series de tiempo y control, de alto impacto. • Redes Neuronales aplicadas al reconocimiento de

patrones y control • Cómputo evolutivo e inteligencia colectiva para el

reconocimiento de patrones

Page 5: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

GI+D+i en Sistemas Inteligentes Proyectos

1. Aplicaciones de cómputo evolutivo y de procesamiento digital de señales en el área de ingeniería

2. Diseño automático de redes neuronales generadoras de impulsos y su implementación en unidades de procesamiento gráfico (GPUS) para el análisis masivo y clasificación de patrones

3. Simulación y diseño de nadadores con inteligencia individual y colectiva

4. Implementación de una nariz electrónica en un sistema embebido

Page 6: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicar una neurona generadora de impulsos en problemas relacionados con el reconocimiento de patrones y robótica.

Objetivo del taller

Page 7: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Introducción

• El humano realiza tareas cognitivas como aprender, reconocer, memorizar y recordar de forma eficiente.

• El los últimos años, han surgido diferentes modelos inteligentes que permiten emular estas actividades.

• Diferentes modelos neuronales y asociativos.

Page 8: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicaciones Reconocimiento de patrones

Page 9: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicaciones Predicción de series de t iempo

Page 10: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicaciones Robótica

Page 11: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

¿Cómo lo hacen las máquinas?

Adquisición de la imagen

Pre- procesamiento

de la región Segmentación Extracción

de rasgos

Reconocimiento

Page 12: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Evolución de las RNA Primera generación

Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno a ellas existen muchos modelos de redes neuronales como los perceptrones multicapa, redes de Hopfield y máquinas de Boltzmann. El valor de la salida está limitado a ser binario, por ejemplo 1 ó 0.

Características 1. Varias neuronas 2. Diferentes tipos de neuronas 3. Diferentes tipos de conectividad 4. Diferentes estrategias de aprendizaje 5. Limitaciones

Page 13: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Evolución de las RNA Segunda generación

La segunda generación amplió las posibles salidas de las redes neuronales mediante diferentes funciones de activación continuas, como la función sigmoide, en lugar de digital, abriendo así su campo de aplicación. Las redes neuronales con propagación hacia adelante, las de función base radial y las redes de Kohonen, son ejemplos de esta generación.

Page 14: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Incorporan el concepto del tiempo. Pese a que los modelos de neuronas generadoras de impulsos existen desde inicios del siglo XX, la utilización de los modelos para el reconocimiento de patrones es muy reciente.

Neuronas biológicas 1. Actividad neuronal 2. Diferentes modelos 3. Comunicación

Evolución de las RNA Tercera generación

Page 15: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Modelos y aplicación de las RNA 3G

Izhikevich, E. M.(2004) Which Model to Use for Cortical Spiking Neurons? IEEE Trans. on Neural Networks 15(5),1063-1070

Page 16: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Modelando neuronas de tercera generación Izhikev ich, E. M. (2004) W hich Model to Use for Cor t ica l Spik ing Neurons? IEEE Trans. on

Neura l Networks 15(5) ,1063-1070

function [v spikes]=izNeuron1(T,I) C=100; vr=-60; vt=-40; k=0.7; % parameters used for RS a=0.03; b=-2; c=-50; d=100; % neocortical pyramidal neurons vpeak=35; % spike cutoff %T=1000; tau=1; % time span and step (ms) n=round(T/tau); % number of simulation steps v=vr*ones(1,n); u=0*v; % initial values spikes=0; for i=1:n-1 % forward Euler method v(i+1)=v(i)+tau*(k*(v(i)-vr)*(v(i)-vt)-u(i)+I)/C; u(i+1)=u(i)+tau*a*(b*(v(i)-vr)-u(i)); if v(i+1)>=vpeak % a spike is fired! v(i)=vpeak; % padding the spike amplitude v(i+1)=c; % membrane voltage reset u(i+1)=u(i+1)+d; % recovery variable update spikes=spikes+1; end end

Page 17: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

¿Cómo lo hacen los humanos? Reconocimiento de patrones

Page 18: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Patrones de la misma clases generan similares frecuencias de disparo

¿Aplicaciones en el reconocimiento de patrones?

Page 19: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

1. Los modelos neuronales basados en aspectos neurobiológicos del cerebro humano otorgarían mejores resultados que los modelos neuronales clásicos cuando éstos son aplicados en problemas relacionados con el reconocimiento de patrones.

2. Si se parte del hecho que la actividad neuronal, en ciertas regiones del cerebro, aumenta o disminuye en respuesta a un estímulo que recibe, luego entonces se podría discriminar o reconocer el tipo de estímulo, con base en esa actividad neuronal.

3. Un grupo de patrones de entrada, que pertenecen a la misma clase, van a provocar que estas redes neuronales de tercera generación generen a su salida una secuencia de impulsos con una frecuencia de disparo muy similar.

Hipótesis

Page 20: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

1. Seleccionar el modelo 2. Seleccionar un algoritmo de aprendizaje 3. Seleccionar un problema 4. Obtener resultados

¿Cómo aplicarlos en el reconocimiento de patrones?

Page 21: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicación en el reconocimiento de patrones y robótica

Page 22: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicación en el reconocimiento de patrones y robótica Usando un modelo de tercera generación

C=100; vr=-60; vt=-40; k=0.7; % parameters used for RS

a=0.03; b=-2; c=-50; d=100; % neocortical pyramidal neurons

vpeak=35; % spike cutoff

%T=1000;

tau=1; % time span and step (ms)

n=round(T/tau); % number of simulation steps

v=vr*ones(1,n); u=0*v; % initial values

spikes=0;

I=100*sum(Input.*S);

for i=1:n-1 % forward Euler method

v(i+1)=v(i)+tau*(k*(v(i)-vr)*(v(i)-vt)-u(i)+I)/C;

u(i+1)=u(i)+tau*a*(b*(v(i)-vr)-u(i));

if v(i+1)>=vpeak % a spike is fired!

v(i)=vpeak; % padding the spike amplitude

v(i+1)=c; % membrane voltage reset

u(i+1)=u(i+1)+d; % recovery variable update

spikes=spikes+1;

end

end

Page 23: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicación en el reconocimiento de patrones

𝐶𝐶1 =

14.23,1.71,2.43,15.613.2,1.78,2.14,11.2

⋮14.37,1.95,2.5,16.8

𝐶𝐶2 =

12.08,1.33,2.3,23.612.08,1.83,2.32,18.5

⋮12.29,2.83,2.22,18

𝐶𝐶3 =

13.69,3.26,2.54,2013.78,2.76,2.3,22

⋮13.4,4.6,2.86,25

Spiking Neuron Model

25

40

14 16 12

Page 24: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicación en el reconocimiento de patrones

Page 25: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Descripción de la metodología

Neuron

Entrada

Sinapsis

Entrada transformada

Procesamiento neuronal

Salida de la neurona

Función de clasificación

Clase

Vector : {0.5, 1, 9, … , 3}

Corriente de entrada

Frecuencia de disparo Clase

x = vector de entrada w = vector de pesos sinápticos θ = factor de ganancia.

Page 26: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Descripción de la metodología

Neuron

Entrada

Sinapsis

Entrada transformada

Procesamiento neuronal

Salida de la neurona

Función de clasificación

Clase

Vector : {0.5, 1, 9, … , 3}

Corriente de entrada

Frecuencia de disparo Clase

Page 27: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

• Patrones y clases deseadas

• Vector de pesos ajustado mediante algoritmos evolutivos.

Descripción de la metodología

Función de clasificación

Clase

Neuron

Sinapsis

Entrada transformada

Procesamiento neuronal

Salida de la neurona

Corriente de entrada

Frecuencia de disparo Clase

Entrada

Vector : {0.5, 1, 9, … , 3}

Individuo -> vector de pesos

Page 28: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Vazquez, Roberto A., Cachon, Aleister (2010) Integrate and fire neurons and their application in pattern recognition. Proceedings of the 7th International Conference on Electrical Engineering, Computing Science and Automatic Control, 424-428 Vazquez, R. A. (2010) Pattern recognition using spiking neurons and firing rates. In: Proc. of Ibero-american conference on Ai. pp. 423-432. Vazquez, Roberto A. (2010) Izhikevich Neuron Model and its Application in Pattern Recognition. Australian Journal of Intelligent Information Processing Systems, 11(1): 35-40

Aprendizaje evolutivo

Page 29: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aprendizaje evolutivo Optimización por enjambre de partículas

Page 30: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Aplicación en el reconocimiento de patrones y robótica Usando un modelo de tercera generación

%Stop Criteria

VTR = 0; %stop when ofunc < VTR

itermax = 1000; %maximum number of iterations (generations)

%number of population members

NP = 40;

%Boundaries of search space

Lb=-10; Ub=10;

%PSO Parameters

w_start=0.95; w_end=0.4; Vmax=4; Vmin=-4; c1=2; c2=2; Chi=0.75;

%Loading data

load ('iris.mat');

% D number of parameters of the objective function

D=features-1;

%Training the spiking neuron using PSO

[x,f,nf,history,itera] = psoIZ('FitnessneuronIZV2',VTR,D,Lb,Ub,NP,itermax,DataTrain,Classes,w_start,w_end,Vmin,Vmax,c1,c2,Chi, refresh);

%Computing the performance of the methodology

[crTR, spikesTR,classesTR]=feval('SimneuronIZV2',x,1,DataTrain,Classes);

[crTE, spikesTE, classesTE]=feval('SimneuronIZV2',x,1,DataTest,Classes); fprintf(1,'\nPercentage of recognition using training set: %f\n',crTR);

fprintf(1,'Percentage of recognition using testing set: %f\n',crTE);

Page 31: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Avance sobre RNA 3G

1. Impacto del algoritmo evolutivo en problemas de reconocimiento de patrones

• Roberto A. Vazquez and Beatriz A. Garro (2011). Training spiking neurons by means of particle swarm optimization. In Y. Tan et. al (Eds.): ICSI 2011, Lecture Notes in Artificial Intelligence, N 6728, pp. 242–249, Springer.

• Vazquez, R. (2011). Training spiking neural models using cuckoo search algorithm. In: Evolutionary Computation (CEC), 2011 IEEE Congress on, pp.679-686. doi: 10.1109/CEC.2011.5949684.

2. Impacto del modelo neuronal en problemas de reconocimiento de patrones

• Tesis de Maestría – Universidad La Salle (2010 - 2012)

Page 32: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Avance sobre RNA 3G

1.Diseño automático de modelos neuronales de tercera generación

• Josafath Espinosa-Ramos, Roberto A. Vazquez, Nareli Cruz-Cortes (2013) Designing spiking neural models of neurophysiological recordings using gene expression programming. BMC Neurosciences, 14(suppl 1):P74 JCR (IF: 3.0)

• Josafath Espinosa-Ramos, Nareli Cruz-Cortes, Roberto A. Vazquez (2013) Spiking Neuron model approximation using GEP. IEEE Congress on Evolutionary Computation, pp. 3260-3267

• Josafath Espinosa-Ramos, Nareli Cruz-Cortes, Roberto A. Vazquez (2013) Creation of spiking neuron models applied in pattern recognition problems. IJCNN 2013: 1-8

2. Implementación en GPU • Antonio Arista-Jalife, Roberto A. Vazquez (2012) Implementation of configurable

and multipurpose spiking neural networks on GPUs. Proceedings of the International Joint Conference on Neural Networks

Page 33: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Avance sobre RNA 3G

1.Diseño de corriente de entrada • Roberto A. Vazquez, Jose Ambrosio, Guillermo Sandoval (2013). How to

generate the input current for exciting a spiking neural model using the Cuckoo Search Algorithm. Cuckoo Search and Firefly Algorithm: Theory and Applications. Springer

2. Aplicaciones • Vazquez, R. A. and J.-C. Q. Bernard Girau (2011). Visual attention using spiking

neural maps. In: International Joint Conference on Neural Networks. IJCNN 2011, pp.2164-2171.

• Vázquez Espinoza de los Monteros R. A. (2011). A computational approach foro modeling the biological olfactory system during an odor discrimination task using spiking neurons. BMC Neurosciences, no. 12, (supp 1), p. 360.

Page 34: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Resultados obtenidos

• Diferentes problemas de reconocimiento de patrones • 50% para entrenamiento y 50% para pruebas • 30 experimentos

Page 35: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Resultados obtenidos

Page 36: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Resultados obtenidos Clasif icación de cult ivos

Proyecto financiado con Recursos del fondo sectorial CONACYT-INEGI

Page 37: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Resultados obtenidos Reconocimiento de olores

Sistema de adquisición Aplicaciones

• Seguridad(detección de drogas, escuelas, aeropuertos) • Detección de alcohol • Salud (Anomalías en el aliento) • Control de accesos

Page 38: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

Comentarios finales • A pesar de ser una línea de investigación muy joven, las redes

neuronales de tercera generación han demostrado ser útiles en problemas relacionados con el reconocimiento de patrones.

• Los resultados obtenidos con una sola neurona, nos hacen pensar que cuando se trabaje con la integración de varias neuronas, permitirían aplicarlas en problemáticas de mayor complejidad.

• Todavía hay mucho que hacer, actualmente estamos trabajando en: 1. Evaluar diferentes estrategias de aprendizaje 2. Evaluar diferentes tipos de conectividad 3. Su implementación en arquitecturas paralelas 4. Aplicaciones relacionadas con el control, la predicción de

series de tiempo y el procesamiento de imágenes

Page 39: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno

¡GRACIAS! Roberto A. Vázquez [email protected]

https://sites.google.com/site/robertoavazquez/ http://zeus.lci.ulsa.mx/idt/sistemasinteligentes/

Page 40: Modelos neuronales de tercera - FMR - Iniciofemexrobotica.org/eir2015/wp-content/uploads/2015/01/Modelos... · Utiliza las neuronas McCulloch-Pitts como unidad computacional. En torno