OPTIMIZACIÓN AUTOMÁTICA DE MODELOS
BIOINSPIRADOS DE VISIÓN MEDIANTE TÉCNICAS
DE COMPUTACIÓN EVOLUTIVA Y APRENDIZAJE
AUTOMÁTICO
PyConES 2016
Alumno: Rubén Crespo Cano
Directores: Antonio Martínez y Eduardo Fernández
09/10/2016
Universidad de Alicante
Índice de contenidos
1. Acerca de mí
2. Introducción
3. Estrategia evolutiva multiobjetivo de inferencia de modelos de
retina
4. Herramientas y métodos
5. Experimentación
6. Publicaciones
7. Conclusiones y trabajo futuro
1
Acerca de mí
¿Quién soy?
• Nombre Rubén Crespo Cano
• Estudios
• MSc in Computer Science
• MSc in Telecommunication Engineering
• PhD Student
• Departamento de Tecnología Informática y Computación (UA)
•
Instituto de Bioingeniería (UMH)
• Trabajo Ingeniero de software en Everilion
• E-mail
[email protected]
• Twitter @rcrespocano
• Researchgate Rubén Crespo-Cano
• Google Scholar Rubén Crespo-Cano
2
¿Qué no soy?
• No soy médico/oftalmólogo
• No soy neurocientífico
• No soy biólogo/biotecnólogo
• No soy óptico-optometrista
3
Introducción
Introducción
• Proyecto matriz: Diseño de una neuroprótesis cortical capaz de
restaurar la visión a personas con discapacidad visual
• La obtención de un modelo funcional de retina fidedigno
constituye un hito principal (cid:0)! aproximación funcional entre
el modelo sintético y la retina biológica
• Modelar la gran variabilidad de la retina biológica es un reto
4
La retina biológica
• Tejido neuronal formado por distintos tipos de células
• Responsable de las primeras etapas del procesamiento visual
• Función (cid:0)! Transformar los estímulos luminosos en señales
eléctricas
5
La retina biológica
• Integra un rico conjunto de células especializadas tales como
fotorreceptores, horizontales, bipolares, amacrinas o
ganglionares, las cuales son sensibles a:
• Color & intensidad lumínica
• Movimiento de imagen
• Bordes ⇝ Detección de bordes
• Muchas otras características valiosas
Interconexión de las células retinianas.
6
Modelo de retina bioinspirado
¿Qué es un modelo de retina?
• Representación bioinspirada capaz de realizar parte de las
funciones de preprocesamiento de la retina
• Modelo capaz de transformar el mundo visual externo en
señales eléctricas que puedan ser utilizadas para excitar las
neuronas del córtex occipital
7
Modelo de retina bioinspirado
Bloques de procesamiento del modelo de retina bioinspirado:
8
Modelo de retina bioinspirado
Descripción matemática del modelo de retina:
Stage1 = Ni (cid:1) fi
Gauss((cid:27)i; (cid:22)i; Ki; input) +
1
; (cid:22)i+M
; (cid:22)i+M
2
1
Ni+1 (cid:1) fi+1
+ Ni+M (cid:1) fi+M
; (cid:27)i+M
Gauss((cid:27)i+1; (cid:22)i+1; Ki+1; input) + : : :
i+M
DoG((cid:27)i+M
; K
;
1
; input) + : : : + Ni+K (cid:1) fi+K(: : :) + : : : ;
Stage2 = NeuroCod(NE_Param0; NE_Param1;
NE_Param2; : : : NE_Paramj; Stage1);
i; j; M; N; K 2 N
i+M
2
2
K
9
Codificación neuromórfica
Modelo neuronal de integración y disparo (IF)
• Uno de los modelos más ampliamente utilizados para el
análisis del comportamiento de los sistemas neuronales
• Potencial de acción: spike (cid:0)! Se genera cuando el potencial de
la membrana alcanza un valor umbral
10
Matriz de actividadIntegradorDisparadorPérdidasUmbralTren de impulsosReiniciarPeriodo refractarioEstrategia evolutiva multiobjetivo
de inferencia de modelos de
retina
¿Por qué una estrategia evolutiva multiobjetivo?
• Muchos parámetros y rango dinámico generalmente contínuo
(cid:0)! enorme espacio de búsqueda
• Imposibilidad de exploración de todo el espacio de soluciones
• Necesidad de guiar el proceso de búsqueda
• Varios objetivos antagónicos (cid:0)! Problema multiobjetivo
11
¿Por qué una estrategia evolutiva multiobjetivo?
Propuesta:
Utilización de técnicas de computación evolutiva para guiar la
exploración del espacio de soluciones y un procedimiento
multiobjetivo para evaluar cada solución alcanzada en el proceso
de exploración
12
Técnicas de computación evolutiva
• Algoritmos genéticos (GA)
• SPEA-2
• NSGA-II
• NSGA-III
• Evolución diferencial (DE)
• Optimización por enjambre de partículas (PSO)
13
Algoritmos Evolutivos
Diagrama de flujo genérico de un Algoritmo Evolutivo.
14
Algoritmos Genéticos
Diagrama de flujo genérico de un Algoritmo Genético.
15
Differential Evolution
Diagrama de flujo genérico de un Algoritmo DE.
16
Particle Swarm Optimization
Diagrama de flujo genérico de un Algoritmo PSO.
17
Herramientas y métodos
Diseño del software de simulación
• Creación de un motor de simulación genético escalable
• Patrón de diseño GoF: Factory Method
• Bajo acoplamiento
• Alta cohesión
Esquema reducido del diagrama de clases UML del motor de simulación
18
Diseño del software de simulación
• Tecnologías utilizadas
• Python 2.7.9
• SciPy & Numpy
• OpenCV
• DEAP
• Scikit-learn
• VisionEgg
19
DEAP
Distributed Evolutionary Algorithms in Python
• Framework de Computación
Evolutiva
• Estrategias evolutivas,
Optimización multiobjetivo,
Co-evolución, Paralelización,
PSO, DE, etc
Enlace GitHub: https://github.com/DEAP
20
Vision Egg
• Biblioteca para la generación
de estímulos visuales para
experimentos de
investigación de la visión
• Utilización de tarjetas gráficas
estándar y de bajo coste
Enlace Vision Egg: http://visionegg.org
21
Experimentación
Experimentación
• Experimentación inicial con animales
• Ratones adultos de tipo salvaje (C57BL/6J)
• Experimentación con humanos
22
Esquema de la experimentación con animales
23
Diseño, programación y generación del estímulovisual con Vision EggEvaluación resultados:comparación, obtención del valor de las métricasy ordenamiento segúnfidelidadExcitación de retina vivaMonitor TFTExcitación de cada retina sintética de lageneración nArchivo de videoRegistrosbiológicosProcesamiento ysimulaciónRegistrossintéticosObtención de losmejores individuosSimulación de lasiguiente generación n+1Esquema de la experimentación con animales
¿Cómo se obtienen los registros biológicos?
• Registros extracelulares de
las células ganglionares
obtenidos de retinas de ratón
aisladas
• Grabación de las respuestas
mediante un Utah Electrode
Array de tamaño 10 (cid:2) 10
• Clasificación de los impulsos
mediante software basado en
análisis PCA
24
Métricas
Métricas comparativas entre modelos de retina:
• Métrica 1: Firing rate absolute difference (FRAD)
• Métrica 2: Peri-Stimulus Time Histogram - Kullback-Leibler
divergence (PSTH-KLD)
• Métrica 3: Interspike Interval Histogram - Kullback-Leibler
divergence (ISI-KLD)
• Métrica 4: Receptive field absolute difference (RFAD)
25
Métricas
Kullback-Leibler divergence (KLD)
• Medición de la distancia entre dos distribuciones de densidad
• Conocida como información de divergencia o entropía relativa
∑
i
DKL(P ∥ Q) =
P(i) (cid:1) log Pi
Qi
Central en la teoría de información, en estadística, en neurociencia y
en aprendizaje automático
26
Métricas
Métrica 1: Firing rate absolute difference (FRAD)
• Codificación neuronal (cid:0)! representación de la información
sensorial de las respuestas neuronales
• Tasa de disparo o firing rate (cid:0)! promedio temporal
• Mucha información relevante contenida en la tasa de disparo
27
tTMétricas
Métrica 2: Peri-Stimulus Time Histogram (PSTH-KLD)
Si se divide el número de ocurrencias de disparos nK(t; t + ∆t)
sumado sobre todas las repeticiones, entre el número de
repeticiones K y el tamaño del intervalo ∆t, se obtiene la densidad
de la tasa de disparos
(cid:26)(t) =
1
∆t
(cid:1) nK(t; t + ∆t)
K
28
Métricas
Métrica 3: Interspike Interval Histogram (ISI-KLD)
• Método común de estudio de la variabilidad neuronal ante
cierta entrada estacionaria
• Análisis de la distribución de los intervalos sk entre dos
impulsos consecutivos
29
Métricas
Métrica 4: Receptive field absolute difference (RFAD)
• Diferencia en valor absoluto del área del campo receptivo
• Cuanto más proximo a cero (cid:0)! mayor correlación
30
Modelado del campo receptivo
Delimitación y localización
• Cálculo de los centroides
• Filtrado señales de ruido (cid:0)! Peso al umbral de disparo
• Puesta en fase de las señales
31
Modelado del campo receptivo
Cálculo del área
• Técnicas y algoritmos pertenecientes a la rama de conocimiento
del aprendizaje automático
• Clasificación de los campos receptivos mediante técnicas de
clustering
• Método (cid:0)! Gaussian Mixture Model
32
Setup experimental
Modelo de retina candidato para el ajuste paramétrico:
Stage1 = 0:5 (cid:1) f1
+ 0:3 (cid:1) f2
+ 0:2 (cid:1) f3
DoG((cid:27)1
DoG((cid:27)2
LoG((cid:27)3
1; (cid:27)1
1 ; (cid:27)2
1 ; (cid:27)3
2; R + B; 0:2 (cid:1) G; input)
1
1; (cid:22)1
1
1; K
2; K
1
1; (cid:22)2
2
2; R + G; B; input)
1; K
2; K
3
1 ; (cid:22)3
3
2; I; input)
2; K
1 ; K
2; (cid:22)1
2; (cid:22)2
2; (cid:22)3
Stage2 = IF(Threshold; Leakage; RefractoryPeriod;
Persistence; FrequencyModulationFactor; Stage1);
33
Setup experimental
Parámetros del algoritmo genético:
Tamaño Población: 60 individuos
Probabilidad Mutación: 5%
Probabilidad Recombinación: 30%
Número de generaciones: 2500
Simulación:
Sistema de procesamiento: Intel Xenon X5660 con 48GiB de RAM
Tiempo de simulación por cada generación: 22 minutos
Tiempo de simulación: 917 horas (39 días)
34
Setup experimental
Parámetros del cromosoma:
Parámetro
K (odd number)
Threshold
Leakage
Refractory period
Persistence time
FMF
Valor Mín.
Valor Máx.
Tipo de dato
3
225.0
10.0
1.0
3
0.25
13
275.0
15.0
10.0
7
0.40
int
float
float
float
int
float
35
Casos de estudio
• Se han diseñado dos casos de estudio experimentales para
evaluar la viabilidad de la estrategia MOOGA propuesta (GA -
NSGA-II)
• Caso de estudio 1: Estudio de la convergencia del método
• Caso de estudio 2: Ajuste multiobjetivo de un modelo de retina
36
Caso de estudio 1
• Estudio de la convergencia del método
• Cuatro experimentos monobjetivo (cid:0)! aproximación de los
registros electrofisiológicos sintéticos y
Comentarios de: OPTIMIZACIÓN AUTOMÁTICA DE MODELOS BIOINSPIRADOS DE VISIÓN MEDIANTE TÉCNICAS DE COMPUTACIÓN EVOLUTIVA Y APRENDIZAJE AUTOMÁTICO - PyConES 2016 (0)
No hay comentarios