modelos neuronales de tercera - fmr - inicio · utiliza las neuronas mcculloch-pitts como unidad...

Post on 13-May-2020

22 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

Agenda

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

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

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

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

Objetivo del taller

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.

Aplicaciones Reconocimiento de patrones

Aplicaciones Predicción de series de t iempo

Aplicaciones Robótica

¿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

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

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.

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

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

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

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

Patrones de la misma clases generan similares frecuencias de disparo

¿Aplicaciones en el reconocimiento de patrones?

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

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?

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

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

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

Aplicación en el reconocimiento de patrones

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.

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

• 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

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

Aprendizaje evolutivo Optimización por enjambre de partículas

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);

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)

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

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.

Resultados obtenidos

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

Resultados obtenidos

Resultados obtenidos Clasif icación de cult ivos

Proyecto financiado con Recursos del fondo sectorial CONACYT-INEGI

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

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

¡GRACIAS! Roberto A. Vázquez roberto.vazquez@ulsa.mx

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

top related