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 [4].
14
Algoritmos Genéticos
Diagrama de flujo genérico de un Algoritmo Genético [4].
15
Differential Evolution
Diagrama de flujo genérico de un Algoritmo DE [4].
16
Particle Swarm Optimization
Diagrama de flujo genérico de un Algoritmo PSO [4].
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
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
27
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
28
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);
29
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)
30
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
31
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
32
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 biológicos
Métrica cuantitativa
PSTH-KLD
FRAD
ISI-KLD
RFAD
Experimento
Experimento 1
Experimento 2
Experimento 3
Experimento 4
33
Caso de estudio 1
Resultados:
PSTH-KLD
ISI-KLD
FRAD
RFAD
34
Caso de estudio 2
• Evaluación de efectividad de la estrategia MOOGA (NSGA-II)
propuesta (cid:0)! experimento multiobjetivo
• Problema de minimización
35
Caso de estudio 2
Resultados:
PSTH-KLD vs FRAD
PSTH-KLD vs ISI-KLD
PSTH-KLD vs RFAD
FRAD vs ISI-KLD
FRAD vs RFAD
ISI-KLD vs RFAD
36
Esquema de la experimentación con humanos
• PC ! NEURO-ESTIMULADOR
• Python & GTK+ 3
• Integración Python-C (ctypes, cython, cffi, etc.)
37
Publicaciones
Publicaciones
• Rubén Crespo-Cano, Antonio Martínez-Álvarez, et al., On the
automatic tuning of a retina model by using a multi-objective
optimization genetic algorithm, International Work-Conference
on the Interplay Between Natural and Artificial Computation,
Springer International Publishing, 2015, pp. 108–118.
http://link.springer.com/chapter/10.1007/
978-3-3
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