Introducción a las Redes
Neuronales y su aplicación a la Investigación Astrofísica
Patricio García Báez Patricio García Báez
[email protected]
[email protected]
Sumario
◆
Introducción Introducción
◆
Inspiración biológica Inspiración biológica
◆
Modelado Neuronal Modelado Neuronal
◆
Implementaciones Implementaciones
◆
Aplicaciones Aplicaciones
◆
Grupo de trabajo Grupo de trabajo
◆
Futuro de las RNAs Futuro de las RNAs
Redes Neuronales en la IA
Ramas de la Inteligencia Artificial en sus inicios:
Ramas de la Inteligencia Artificial en sus inicios:
◆
Simbólica-deductiva: Simbólica-deductiva:
– Sistemas formales de reglas y manipulación Sistemas formales de reglas y manipulación simbólica
simbólica
– Rama más conocida de la IA Rama más conocida de la IA
◆
Conexionista: Conexionista:
– Inspirada en las redes neuronales biológicas Inspirada en las redes neuronales biológicas – Métodos Inductivos: a partir de ejemplos Métodos Inductivos: a partir de ejemplos
Ambas tratan de resolver problemas no algoritmicos a partir Ambas tratan de resolver problemas no algoritmicos a partir
de la experiencia almacenada como conocimiento
de la experiencia almacenada como conocimiento
RNA como Modelo de Computación
Conexionista vs. Von Neumann Conexionista vs. Von Neumann
• Masivamente paralelo Masivamente paralelo
• Datos y programa Datos y programa
indiferenciable en las indiferenciable en las
conexiones conexiones
• Solución inducida por Solución inducida por aprendizaje
aprendizaje
• Impredicibilidad de Impredicibilidad de resultados
resultados
• Gran tolerancia a fallos Gran tolerancia a fallos
• Arquitectura secuencial Arquitectura secuencial
• Separa claramente datos Separa claramente datos del programa en la
del programa en la memoria
memoria
• Solución como algoritmo Solución como algoritmo o programa introducido o programa introducido
• Resultados totalmente Resultados totalmente predecibles
predecibles
• No tolera errores No tolera errores
Áreas de Trabajo
Arquitectura y Teoría de RN Implementaciones
Aplicaciones
Informática
Matemáticas Neurofisiología
Sicología
Procesamiento de Señales Procesamiento de Señales
Análisis de Datos Análisis de Datos
Reconocimiento de Patrones Reconocimiento de Patrones
Control Control
Inteligencia Artificial Inteligencia Artificial
Desarrollo de aplicaciones Desarrollo de aplicaciones basadas en técnicas
basadas en técnicas conexionistas
conexionistas
Construcción de modelos Construcción de modelos
neuronales neuronales
Proponer y validar modelos de Proponer y validar modelos de
funcionamiento de arquitecturas funcionamiento de arquitecturas
neuronales neuronales
Inspiración biológica
“ “ Entender el cerebro y emular su potencia” Entender el cerebro y emular su potencia”
◆
Cerebro: Cerebro:
– Gran velocidad de proceso Gran velocidad de proceso
– Tratamiento de grandes cantidades de información Tratamiento de grandes cantidades de información procedentes de:
procedentes de:
• Los sentidosLos sentidos
• Memoria almacenadaMemoria almacenada
– Capacidad de tratar situaciones nuevas Capacidad de tratar situaciones nuevas
– Capacidad de aprendizaje Capacidad de aprendizaje
Inspiración biológica
◆
Neuronas: Neuronas:
– Árbol dendrítico de Árbol dendrítico de entradas
entradas
– Un axón de salidaUn axón de salida – Sobre de10Sobre de1044 sinapsis sinapsis – Comunicación mediante Comunicación mediante
Potenciales de Acción (PA) Potenciales de Acción (PA) – Periodo refractario de 10Periodo refractario de 10-3 -3
segundos entre PAs segundos entre PAs
Inspiración biológica
◆
Transmisión neuronal: Transmisión neuronal:
– Impulso eléctrico que Impulso eléctrico que viaja por el axón
viaja por el axón – Liberación de Liberación de
neurotransmisores neurotransmisores – Apertura/cierre de Apertura/cierre de
canales iónicos canales iónicos
– Variación potencial en Variación potencial en dendrita
dendrita
– Integración de entradas Integración de entradas en soma
en soma
– Si se supera umbral de Si se supera umbral de disparo se genera un PA disparo se genera un PA
Inspiración biológica
◆
Red Neuronal Biológica: Red Neuronal Biológica:
– de 10de 101010 a 10 a 101111 neuronas neuronas – 101014 14 sinapsis sinapsis
– Organización por capasOrganización por capas – Organización por niveles:Organización por niveles:
• Sistema Nervioso Sistema Nervioso Central (SNC) Central (SNC)
• Circuitos entre regionesCircuitos entre regiones
• Circuitos localesCircuitos locales
• NeuronasNeuronas
• Árboles dendríticosÁrboles dendríticos
• Microcircuitos Microcircuitos neuronales neuronales
• SinapsisSinapsis
• Canales iónicosCanales iónicos
Inspiración biológica
◆
Características SNC: Características SNC:
– Inclinación a adquirir Inclinación a adquirir conocimiento desde la conocimiento desde la experiencia
experiencia
– Conocimiento almacenado Conocimiento almacenado en conexiones sinápticas en conexiones sinápticas – Gran plasticidad neuronalGran plasticidad neuronal – Comportamiento altamente Comportamiento altamente
no-lineal no-lineal
– Alta tolerancia a fallos Alta tolerancia a fallos (muerte neuronal)
(muerte neuronal)
– Apto para reconocimiento, Apto para reconocimiento, percepción y control
percepción y control
Modelado Neuronal
◆
Una red neuronal artificial (RNA) es un sistema Una red neuronal artificial (RNA) es un sistema de procesamiento de información que tiene
de procesamiento de información que tiene ciertas aptitudes en común con las redes ciertas aptitudes en común con las redes neuronales biológicas:
neuronales biológicas:
– El procesamiento de información ocurre en muchos El procesamiento de información ocurre en muchos elementos simples llamados neuronas.
elementos simples llamados neuronas.
– Las señales son transferidas entre neuronas a través de Las señales son transferidas entre neuronas a través de enlaces de conexión.
enlaces de conexión.
– Cada conexión tiene un peso asociado, el cual, típicamente, Cada conexión tiene un peso asociado, el cual, típicamente, multiplica a la señal transmitida.
multiplica a la señal transmitida.
– Cada neurona aplica una función de activación (usualmente Cada neurona aplica una función de activación (usualmente no lineal) a su entrada de red (suma de entradas pesadas) no lineal) a su entrada de red (suma de entradas pesadas) para determinar su salida.
para determinar su salida.
Laurene Fausett Laurene Fausett
Modelado Neuronal
◆
Enfoques: Enfoques:
– Computacional: Computacional:
• Modelos eficientes, potentes y simplesModelos eficientes, potentes y simples
• Áreas de aprendizaje inductivo y reconocimiento de Áreas de aprendizaje inductivo y reconocimiento de patrones
patrones
– Cognitivo: Cognitivo:
• Interesado por capacidades cognitivas de los modelosInteresado por capacidades cognitivas de los modelos
• Centrados en representación del conocimientoCentrados en representación del conocimiento
– Biocognitivo: Biocognitivo:
• Premisa la plausibilidad biológicaPremisa la plausibilidad biológica
– Psicofisiológico: Psicofisiológico:
• Mecanismos naturales de procesos cognitivos realesMecanismos naturales de procesos cognitivos reales
Modelado Neuronal
◆
Neurona Artificial: Neurona Artificial:
– Grupo de entradas (Grupo de entradas (xx)) – Pesos sinápticos (wPesos sinápticos (w)) – Función suma (netFunción suma (net)) – Función de activación Función de activación
(act(act))
– Una única salida (Una única salida (yy))
– Funcionamiento en modo Funcionamiento en modo aprendizaje o ejecución aprendizaje o ejecución
x1 x2
xn
w1,j w2,j wn,j
netj(t)
xj(t)
j
función suma
función de activación
umbral (bias)
Modelado Neuronal
◆
Neurona Natural vs. Artificial: Neurona Natural vs. Artificial:
– Neurona = Unidad de procesoNeurona = Unidad de proceso – Conexiones sinápticas = Conexiones sinápticas =
Conexiones Pesadas Conexiones Pesadas
– Efectividad sináptica = Peso Efectividad sináptica = Peso sináptico
sináptico
– Exitatorio/Inhibitorio = Pesos + Exitatorio/Inhibitorio = Pesos + ó -ó -
– Efecto combinado de sinapsis Efecto combinado de sinapsis
= Función suma
= Función suma
– Activación-> Ratio disparo = Activación-> Ratio disparo = Función activación -> salida Función activación -> salida
Modelado Neuronal
◆
Arquitecturas Neuronales: Arquitecturas Neuronales:
– Según e/o/sSegún e/o/s
• Número y tipo de entradasNúmero y tipo de entradas
• Elementos ocultosElementos ocultos
• Elementos de salidaElementos de salida
– Según conectividad entre Según conectividad entre capas
capas
• Feedforward (hacia Feedforward (hacia adelante)
adelante)
• Redes RecurrentesRedes Recurrentes
• Estructuras Enrejadas Estructuras Enrejadas (Lattice)
(Lattice)
Capa de
entrada Capa de
salida
Capa de
entrada Capa de
salida Capa
oculta
Capa de salida Capa
oculta
Monocapa feedforward
Multicapa feedforward
Multicapa feedforward parcialmente conectada
Modelado Neuronal
◆
Arquitecturas Neuronales: Arquitecturas Neuronales:
– Según conexión entre Según conexión entre capas
capas
• Totalmente conectados Totalmente conectados (full-conexión)
(full-conexión)
• Parcialmente conectadosParcialmente conectados
• Conexión uno a unoConexión uno a uno
– Sincronía (actualización de Sincronía (actualización de valores)
valores)
• SimultáneaSimultánea
• AleatoriaAleatoria
• Según orden topológicoSegún orden topológico
Recurrente con interconexiones
laterales
Entradas
Salidas
Recurrente con neuronas ocultas
Modelado Neuronal
◆
Aprendizaje: Aprendizaje:
– Estimulación de la RN por el entorno Estimulación de la RN por el entorno
– Cambios en la RN debido a estimulación Cambios en la RN debido a estimulación
– Nueva forma de responder debido a cambios de la Nueva forma de responder debido a cambios de la estructura interna de la RN
estructura interna de la RN
Modelado Neuronal
◆
Paradigmas de aprendizaje: Paradigmas de aprendizaje:
– Aprendizaje Supervizado Aprendizaje Supervizado
– Aprendizaje por Reforzamiento Aprendizaje por Reforzamiento
– Aprendizaje Auto-organizado (No Supervizado) Aprendizaje Auto-organizado (No Supervizado)
– Precalculado o prefijado Precalculado o prefijado
Modelado Neuronal
◆
Aprendizaje supervizado: Aprendizaje supervizado:
– Se presentan pares de patrones de entrada y salida Se presentan pares de patrones de entrada y salida deseada
deseada – Pasos: Pasos:
• Fijar pesos aleatorios las conexionesFijar pesos aleatorios las conexiones
• Seleccionar par de entrenamientoSeleccionar par de entrenamiento
• Presentar patrón de entrada y calcular salidaPresentar patrón de entrada y calcular salida
• Calcular error o discrepancia con la salida deseadaCalcular error o discrepancia con la salida deseada
• Aplicar regla de aprendizajeAplicar regla de aprendizaje
– Dudosa plausibilidad biológica: Dudosa plausibilidad biológica:
• Requiere propagar información hacia atrásRequiere propagar información hacia atrás
• Requiere de instructorRequiere de instructor
Modelado Neuronal
◆
Aprendizaje no supervizado: Aprendizaje no supervizado:
– Se presentan sólo patrones de entrada Se presentan sólo patrones de entrada – Basado en la redundancia en las entradas Basado en la redundancia en las entradas – Aprendizaje extrae de los patrones: Aprendizaje extrae de los patrones:
• Familiaridad con patrones típicos o promedios del Familiaridad con patrones típicos o promedios del pasado
pasado
• Análisis de las Componentes PrincipalesAnálisis de las Componentes Principales
• ClusteringClustering
• Prototipos, correspondientes a las categorias existentesPrototipos, correspondientes a las categorias existentes
• CodificaciónCodificación
• Mapa de CaracterísticasMapa de Características
– Grandes plausibilidades biológicas Grandes plausibilidades biológicas
Modelado Neuronal
◆
Algoritmos de aprendizaje más comunes: Algoritmos de aprendizaje más comunes:
– Perceptrón multicapa o Backpropagation (BPN) Perceptrón multicapa o Backpropagation (BPN)
• Aprendizajes supervizados bajo corrección de errorAprendizajes supervizados bajo corrección de error
– Mapas Auto-organizados (SOM) Mapas Auto-organizados (SOM)
• Aprendizajes competitivo no supervizadosAprendizajes competitivo no supervizados
– Extractores de características (GHA ó ICA) Extractores de características (GHA ó ICA)
• Aprendizajes hebbianos no supervizadosAprendizajes hebbianos no supervizados
Modelado Neuronal
– Generalización Generalización
– Estructura altamente Estructura altamente paralela
paralela
– No linealidad No linealidad
– Mapeo de Entrada- Mapeo de Entrada- Salida
Salida
– Adaptabilidad Adaptabilidad
– Respuesta graduada Respuesta graduada
– Información Contextual Información Contextual – Tolerancia a fallos Tolerancia a fallos
– Implementación VLSI Implementación VLSI – Uniformidad en el Uniformidad en el
Análisis y Diseño Análisis y Diseño – Analogía Analogía
Neurobiológica Neurobiológica
◆
Propiedades y Capacidades Propiedades y Capacidades
Implementaciones
◆
Medio biológico vs. medio silicio Medio biológico vs. medio silicio
– Velocidad: Velocidad:
• Neuronas: 10Neuronas: 10-3 -3 s., Puertas lógicas: 10s., Puertas lógicas: 10-9 -9 s.s.
– Tamaño: Tamaño:
• Neuronas 5 ó 6 órdenes de magnitud menoresNeuronas 5 ó 6 órdenes de magnitud menores
– Eficiencia energética: Eficiencia energética:
• Cerebro: 10Cerebro: 10-16-16 J/op./s., mejores ordenadores: 10 J/op./s., mejores ordenadores: 10-6-6
– Fan-In: Fan-In:
• Promedio de 10.000 sinapsis por neurona, mucho mayor Promedio de 10.000 sinapsis por neurona, mucho mayor que en silicio
que en silicio
Implementaciones
◆
Neurosimuladores: Neurosimuladores:
– Software: Software:
• FlexiblesFlexibles
• EconómicosEconómicos
– Hardware: Hardware:
• EficientesEficientes
Implementaciones
◆
Tipos Neurosoftware: Tipos Neurosoftware:
– Programación directaProgramación directa – LibreríasLibrerías
– Entornos de desarrolloEntornos de desarrollo
◆
Características Características deseables:
deseables:
– Facilidad de usoFacilidad de uso – PotenciaPotencia
– EficienteEficiente
– ExtensibilidadExtensibilidad
Implementaciones
◆
Neurohardware: Neurohardware:
– VLSI analógicoVLSI analógico – Opto-ElectrónicosOpto-Electrónicos – FPGAsFPGAs
– Neuro-Chips (VLSI Digital)Neuro-Chips (VLSI Digital) – Neuro-TarjetasNeuro-Tarjetas
– Máquinas paralelas de Máquinas paralelas de propósito general
propósito general – BiochipsBiochips
◆
Objetivo: Objetivo:
– Acelerar fases de aprendizaje Acelerar fases de aprendizaje y ejecución
y ejecución
Implementaciones
◆
Biochips Biochips
Aplicaciones
◆
Fases de desarrollo: Fases de desarrollo:
Selección de la arquitectura
neuronal Selección del
conjunto de aprendizaje Selección del
conjunto de validación
Fase de aprendizaje
Fase de
validación ¿OK?
Implantar en aplicación
Aplicaciones
◆
Tipos de problemas abordables: Tipos de problemas abordables:
– Asociación Asociación
– Clasificación de Patrones Clasificación de Patrones – Predicción Predicción
– Control Control
– Aproximación Aproximación – Optimización Optimización
◆
En general: En general:
– Difícil describir conocimiento/forma de resolverlos Difícil describir conocimiento/forma de resolverlos
– Se dispone de una gran cantidad de datos Se dispone de una gran cantidad de datos
Problemas de Asociación
– NETalk (Sejnowski & Rosemberg): NETalk (Sejnowski & Rosemberg):
• A partir de textos escritos genera A partir de textos escritos genera gonemas correspondientes. Mejoras gonemas correspondientes. Mejoras durante aprendizaje
durante aprendizaje
– Tratamiento de imágenes: Tratamiento de imágenes:
• Ruido placas matrículasRuido placas matrículas
• RestituciónRestitución
– Compresión de Imágenes: Compresión de Imágenes:
Problemas de Clasificación de Patrones
– Conteo de células: Conteo de células:
• Clasificación de glóbulos Clasificación de glóbulos blancos
blancos
– Inspección visual: Inspección visual:
– Seguimiento de pupila Seguimiento de pupila
Problemas de Predicción
– Airline Marketing Tactician (AMT): Airline Marketing Tactician (AMT):
• Monitoriza y recomienda la reserva de Monitoriza y recomienda la reserva de plazas
plazas
– Neuralstocks: Neuralstocks:
• Servico de predicciones financieras a Servico de predicciones financieras a corto plazo
corto plazo
Problemas de Control
– Control de robots: Control de robots:
• Cinemática inversaCinemática inversa
• DinámicaDinámica
– ALVINN: ALVINN:
• Conducción de Conducción de vehículo
vehículo
Problemas de Aproximación
– Aproximación de funciones Aproximación de funciones utilizando RBFs
utilizando RBFs
Problemas de Optimización
– Optimización de rutas: Optimización de rutas:
• TSPTSP
Aplicaciones en
Astronomía/Astrofísica
– Reconocimiento de estrellas/galaxias Reconocimiento de estrellas/galaxias – Clasificación espectral y morfológica de Clasificación espectral y morfológica de
estrellas/galaxias estrellas/galaxias
– Estudios de superficies planetarias Estudios de superficies planetarias
– Estudio del campo magnético interplanetario Estudio del campo magnético interplanetario – Determinación de parámetros en atmósferas Determinación de parámetros en atmósferas
estelares estelares
– Clasificación de poblaciones de enanas blancas Clasificación de poblaciones de enanas blancas
• Neural Networks, Neural Networks, 16 (2003)16 (2003)
Aplicaciones en
Astronomía/Astrofísica
– Identificación y caracterización de objetos: QSO's, Identificación y caracterización de objetos: QSO's, galaxias IR ultraluminosas, fuente de Rayos
galaxias IR ultraluminosas, fuente de Rayos Gamma
Gamma
– Determinación de desplazamientos fotométricos al Determinación de desplazamientos fotométricos al rojo rojo
– Eliminación de ruido en pixels Eliminación de ruido en pixels
– Descomposición de datos simulados multi- Descomposición de datos simulados multi- frecuencia para la misión Planck
frecuencia para la misión Planck – Búsqueda de cúmulos de galaxias Búsqueda de cúmulos de galaxias
• Neural Networks, Neural Networks, 16 (2003)16 (2003)
Aplicaciones en
Astronomía/Astrofísica
– Análisis de datos recogidos por instrumentos de Análisis de datos recogidos por instrumentos de nueva generación para astrofísica de alta energía:
nueva generación para astrofísica de alta energía:
• Telescopio de neutrinos AUGER y ARGOTelescopio de neutrinos AUGER y ARGO
• Telescopio de rayos gamma CherenkhovTelescopio de rayos gamma Cherenkhov
• Interferómetro de ondas gravitacionales VIRGOInterferómetro de ondas gravitacionales VIRGO
• Búsqueda de bosones HiggsBúsqueda de bosones Higgs
– AstroNeural, paquete AstroMinnig: reducción y AstroNeural, paquete AstroMinnig: reducción y análisis de datos
análisis de datos
• Neural Networks, Neural Networks, 1616 (2003) (2003)
Grupo de Trabajo
◆
Grupo de Computación Neuronal y Adaptativa Grupo de Computación Neuronal y Adaptativa y Neurociencia Computacional
y Neurociencia Computacional
– Departamento de Estadística, I. O. y Computación, ULLDepartamento de Estadística, I. O. y Computación, ULL – I. U. de Ciencias y Tecnologías Cibernética, ULPGCI. U. de Ciencias y Tecnologías Cibernética, ULPGC – Área de Conocimiento: Ciencias de la Computación e Área de Conocimiento: Ciencias de la Computación e
Inteligencia Artificial Inteligencia Artificial
◆
Líneas de trabajo Líneas de trabajo
– Neurociencia Computacional y Cognición Computacional: Neurociencia Computacional y Cognición Computacional:
Comunicación Neuronal;Aprendizaje y Memoria.Procesos y Comunicación Neuronal;Aprendizaje y Memoria.Procesos y Estructuras Cognitivas/Perceptivas Teorías y Modelos
Estructuras Cognitivas/Perceptivas Teorías y Modelos
– Redes Neuronales Naturales y Artificiales: Diseño de Nuevos Redes Neuronales Naturales y Artificiales: Diseño de Nuevos Modelos de RNAs
Modelos de RNAs
– Aplicación de la Computación Neuronal en Dominios Aplicación de la Computación Neuronal en Dominios
Espectro
Analysis
Mezcla
1 2
Espectrofotómetro de Luminescencia
Preprocesado
Características Espectrales 1
2
Comparación de Espectros Mapa de SOM
Mapa de Rechazo Capa de Tolerancias
Identificador de Espectros (Capa de Etiquetado)
Etiquetado
Grupo de Trabajo
◆
Campos aplicativos estudiados Campos aplicativos estudiados
– Procesamiento de Señales NeurofisiológicasProcesamiento de Señales Neurofisiológicas – Identificación de Espectros LuminescentesIdentificación de Espectros Luminescentes – Agente de Catalogación Automática de WebsAgente de Catalogación Automática de Webs – Sistema Automático de Detección de Ataques Sistema Automático de Detección de Ataques
Informáticos Informáticos
– Diagnóstico de Enfermedades Diagnóstico de Enfermedades Neurodegenerativas
Neurodegenerativas
... x i ...
... d l ...
m li
h l
Entradas
Capa SOM
Capa de Holguras
Capa de Etiquetado
... z l ...
u pl
... vp g pq
Grupo de Trabajo
◆
Docencia Impartida en la ULL Docencia Impartida en la ULL
– Introducción a los Modelos de Computación ConexionistaIntroducción a los Modelos de Computación Conexionista
• 3er curso, Ing. Técnica en Informática de Sistemas, ETSII3er curso, Ing. Técnica en Informática de Sistemas, ETSII
• 30 a 40 alumnos30 a 40 alumnos
• http://soma.etsii.ull.es/imcc/http://soma.etsii.ull.es/imcc/
– Introducción a la Inteligencia ArtificialIntroducción a la Inteligencia Artificial
• 3er curso, ITI de Gestión/Sistemas3er curso, ITI de Gestión/Sistemas
• 50 a 60 alumnos50 a 60 alumnos
• http://soma.etsii.ull.es/iia/http://soma.etsii.ull.es/iia/
– Modelos Conexionistas y AutómatasModelos Conexionistas y Autómatas
• 5º curso, Ing. Informática, ETSII5º curso, Ing. Informática, ETSII
• 10 a 20 alumnos10 a 20 alumnos
• http://soma.etsii.ull.es/mcya/http://soma.etsii.ull.es/mcya/
Futuro de las RNAs
– Futuro prometedor, si nos seguimos acercando a Futuro prometedor, si nos seguimos acercando a las característicias de los organismos vivos:
las característicias de los organismos vivos:
• Evolución, Computación Colectiva, Manejo del Evolución, Computación Colectiva, Manejo del Conocimiento, ...
Conocimiento, ...
• Natural ComputingNatural Computing => => Soft ComputingSoft Computing
– Presente problemático: dificultades de escalabilidad Presente problemático: dificultades de escalabilidad
• ¿Tal vez algunos parámetros de nuestros modelos son ¿Tal vez algunos parámetros de nuestros modelos son erroneos?
erroneos?
• ¿Tal vez no disponemos de la suficiente potencia ¿Tal vez no disponemos de la suficiente potencia informática?
informática?
• ¿Tal vez nuestros modelos no han alcanzado la ¿Tal vez nuestros modelos no han alcanzado la suficiente complejidad?
suficiente complejidad?
• ¿Tal vez nos falta en nuestros modelos algún concepto ¿Tal vez nos falta en nuestros modelos algún concepto fundamental?
fundamental?