LANIA Laboratorio Nacional de Informática AvanzadaXalapa, Ver. México : LANIA Laboratorio Nacional de Informática Avanzada Xalapa, Ver. México Inteligencia artificial usando adaptación:
Antonio Sánchez Aguilar
asanchez@lania.mx
Noviembre 2004 Dos conceptos recurrentes, una aplicación y tres ejemplos
2-1-3 (Aprendizaje en Dos Un por Tres)
Introducción : Introducción La Inteligencia artificial se enfoca al procesamiento del conocimiento y el aprendizaje.
El aprendizaje se obtiene por tres medios básicos:
“Entender es percibir patrones estructurales”
Sir Isaiah Berlin (1909-1997)
Recorriendo bases de conocimientos (rule based & logic)
Selección artificial (genetic & evolutive algorithms)
Métodos de adaptación (conectionism & feedback)
Los métodos de adaptación parten del estudio clásico de condicionamiento de animales de Pavlov.
Dos conceptos recurrentes : Dos conceptos recurrentes Perceptron (1950) (Rosenblatt, Selfridge)
Learning Automata (1960) (Tsetlin, Narendra, Barto)
Collective Learning (1970) (Samuel, Michie, Bock)
Neural Networks (1980) (Rummelhart, McCleland) Cybernetic Loop (1950) (Wiener, Rosenblueth, Ashby)
RP Policies (1960) (Thathachar,Viswanathan,Fu)
Algedonic Loop (1970) (Beer, Bock, Sanchez)
Backpropagation (1980) (Skjenoswsky, Huberman)
Asignación de
la responsabilidad Aprendizaje con el
medio ambiente Conectividad Retroalimentación
Conviviendo con el medio ambiente : Conviviendo con el medio ambiente
Uso sencillo de la retroalimentación: El juego del gato : Uso sencillo de la retroalimentación: El juego del gato
Uso sencillo de la asignación: El juego del gato : Uso sencillo de la asignación: El juego del gato
Retroalimentación y Asignación de la responsabilidad : Retroalimentación y Asignación de la responsabilidad
Para un conjunto de interacciones el medio ambiente entrega una única calificación sumaria como retroalimentación
El autómata tiene que reconocer a las acciones individuales causantes de esa calificación y asignar la responsabilidad en forma distribuída a través de la conectividad en la red
A esto le llamamos aprendizaje
Existen diversas metodologías que modelan este comportamiento
Aquí usaremos a los CLS (Collective Learning Systems)
Formalizacion de la interación en un CLS : Formalizacion de la interación en un CLS CLS = [ AUTOMATA, MA ]
Where AUTOMATA = { I, O, STM, A }
I : Vector de entradas ó estimulos
O : Vector de respuesta posible ó acciones
STM : Is the transition Matriz de transiciones o selecciones donde la Probabilidad Pij de seleccionar la Respuesta Oj es almacenada para cada estimulo Ii
A : Es el algoritmo Algedónico que modifica el STM de acuerdo a una política de premio/castigo, quedando aqui el concepto de aprendizaje
MA: Es el medio ambiente que emite una serie de estimulos, recibiendo una serie de respuestas del automata y emite una evaluacion final basada en su propio conocimiento
Algoritmo Algedónico básico : Algoritmo Algedónico básico En caso de Premio (con un 0 < ß < 1)
Para la selección i k en la STM
STM(t+1)i,k = STM(t)i,k + ß*(1– STM(t)i,k
Para las demás selecciones i j para j ≠ k
STM(t+1)i,j = STM(t)i,j - ß*(1– STM(t)i,k)/(n-1) En caso de Castigo (con un 0 < ß < 1)
Para la selección i k en la STM
STM(t+1)i,k = STM(t)i,k - ß*STM(t)i,k
Para las demás selecciones i j para j ≠ k
STM(t+1)i,j = STM(t)i,j + ß*STM(t)i,k /(n-1)
Una aplicación: reconocimiento, clasificación y segmentación de imágenes : Una aplicación: reconocimiento, clasificación y segmentación de imágenes Imágenes Resultados Tierra = Azul Sol = Amarillo Filtros i => j
STM
Marco teórico para la aplicación : Marco teórico para la aplicación
CLS (Collective Learning Systems)
Compensación Algedónica (Alge:dolor, Edos: placer)
Matriz de Transiciones
(STM Accumulative histogram for Adaptive Learning)
Análisis de histogramas acumulados
Filtros de Color y Textura (color pixels & texels)
Transformada de Fourier (FFT & spectograms)
Slide12 : Tres Ejemplos de la misma aplicación Clasificación y segmentación de cuerpos celestes
Reconocimiento y segmentación de piel en fotos
Reconocimiento de sonidos de animales
Slide13 : Primer Ejemplo
Classificación y segmentación
de cuerpos celestes usando CLS
Slide14 : Mayor Segmentación
Enfoque jerárquico para la clasificación y segmentación : Enfoque jerárquico para la clasificación y segmentación Usando una jerarquía de CLS a través del paquete ALISA, resulta posible ir dividiendo niveles de reconocimiento, con lo que la clasificación y segmentación se efectúan mejor.
Nivel 0: Via Láctea Sistema Solar Tierra
Nivel 1: Sistema Solar Tierra
Nivel 2: Tierra Oceanos Profundidades
Nivel 2: Tierra Nubes Formaciones
Nivel 2: Tierra Continentes Segmentos
Nivel 3: Segmentos Urbano
Nivel 4: Urbano Construcciones Tipos
Nivel 5: Tipos Casas
Análisis de Histogramas : Análisis de Histogramas El tamaño y la resolución no son relevantes en esta aplicacón ya que se trabaja con los histrogramas de pixeles en escalas de gris y tonalidades de color.
Por otro lado la textura varía considerablemente en función de la distancia de punto de origen.
Los histogramas reflejan una estructura importante de una imagen
Histogramas en Imágenes complejas : Histogramas en Imágenes complejas En imágenes con histogramas parecidos resulta necesario preprocesar la imagen con filtros determinísticos de color (pixeles) o del contexto y estructura de la textura (texeles) a través de una ventana para poder determinar a que clase o patrón pertenecen
Filtros e histogramas acumulados : Filtros e histogramas acumulados Al usar diversos filtros acumular su valor, se obtiene la probabilidad conjunta y marginal de las características seleccionadas.
Con este histograma acumulado resulta posible determinar a que clase o conjunto de imágenes pertenece un imagen especifica
En realidad se requieren pocas características y pocas imágenes para los CLS
Se genera una STM por cada clase, almacenando como entrada el valor acumulado del histograma
ALISA es un software que instrumenta el modelo CLS
Entrenamiento y pruebas en ALISA : Entrenamiento y pruebas en ALISA
Análisis cuidadoso de los histogramas de las imágenes a procesar
Seleccionar características a usar
Seleccionar dos conjuntos de imágenes distintos
El de entrenamiento (pequeño y típico en cada la aplicación)
El de pruebas (en donde se va usar el sistema)
Proceso iterativo para encontrar las mejores características de color y de textura
Definir un color por cada clase o conjunto de imágenes
Filtros seleccionados para pixeles y texeles : Filtros seleccionados para pixeles y texeles Características usadas
Filtros de textura (ventanta de contexto de 3x3 texeles)
Media: Rango 0 to 20, Precisión 30
Media: Rango 75 to 100, Precisión 30
Activitidad de texeles : Rango 0 to 100, Precisión 30
Dev. estandard : Rango 0 to 100, Precisión 30
Filtros de color (pixeles)
Pixeles azules: Rango 20 to 75, Precisión 30
Luminosidad de pixeles: Rango 20 to 75, Precisión 30
Pixeles verdes: Rango 20 to 75, Precisión 30
Slide21 : Earth Space Ether Venus Mars Mercury Sun Moon Jupiter Saturn Uranus Neptune Pluto Rejected Tied Algunos resultados: El Sol Solar System Layer Original Image Mission: Mariner10
Distance:
Date: Sun: 71.4 %
Class1: 11 %
Class2: 8.9 %
Slide22 : Earth Space Ether Venus Mars Mercury Solar System Layer Sun Moon Jupiter Saturn Uranus Neptune Pluto Rejected Tied Original Image Mission: Voyager1
Distance: ?
Date: ? Jupiter 37.8 %
Class1: 18.4 %
Class2: 13.1 % El planeta Jupiter
Slide23 : Earth Space Ether Venus Mars Mercury Solar System Layer Sun Moon Jupiter Saturn Uranus Neptune Pluto Rejected Tied Original Image Mission: Cassini
Distance: 38.5 Million Kms
Date: 2004 Saturn: 40.5 %
Class1: 22.9 %
Class2: 11.8 % El planeta Saturno
Slide24 : Earth Space Ether Venus Mars Mercury Solar System Layer Sun Moon Jupiter Saturn Uranus Neptune Pluto Rejected Tied Original Image Resultados de rechazo Nota: Solamente se entrenó para planetas del sistema solar, por lo que otros cuerpos celestiales deben ser rechazados The Milky Way Venus and Pleiades Rejected: 26.6 %
Class1: 21.1 ?%
Class2: 17.5 % Rejected: 53.5 %
Class1: 41.4 %
Class2: 1.3 %
Slide25 : Earth Space Ether Venus Mars Mercury Sun Moon Jupiter Saturn Uranus Neptune Pluto Rejected Tied El planeta Mercurio Solar System Layer Original Image Mission: Mariner10
Distance:
Date: Mercury: 50.8 %
Class1: 17.9 %
Class2: 9.3 %
Slide26 : Niveles 1 y 2. Reconocimiento y Clasificación Earth Original Image Earth Class Space Ether Class Oceans Clouds Continents Celestial Bodies Layer Earth Components Layer
Slide27 : Niveles 3:
Segmentación Clouds Components Layer Continent Components Layer Ocean Components Layer Earth Components Layer
Slide28 : Niveles 3: Sur de Italia Clouds Components Layer Continent Components Layer Ocean Components Layer (Meris Artifact photo)
Nivel 3: Estrecho de Gibraltar : Nivel 3: Estrecho de Gibraltar Mountain Desert Plain Terrain Forest Rejected Continent Components Layer
Nivel 3: Segementacion urbana : Nivel 3: Segementacion urbana Sidney, Australia Urban Class Rejected Continent Components Layer A: classificación urbana DE: segmentaciónn de tierras Italy
Nivel 3: Segementacion urbanaFoto Aérea : Nivel 3: Segementacion urbana Foto Aérea Cholula, Puebla, México Urban Class Rejected Continent Components Layer
Nivel 4: Distribución urbana : Nivel 4: Distribución urbana Cholula, Puebla, México Urban distribution Layer Build Rural Freeway Streets Trees Rejected
Slide33 : La pirámide Tepanapa Cholula, Puebla, México Urban distribution Layer Build Rural Freeway Streets Trees Rejected
Slide34 : Norteamérica: Distribución demográfica Urban distribution layer Build Rural Freeway Streets Trees Rejected
Slide35 : Segundo ejemplo:
Reconocimiento y segmentación
de piel en fotos familiares
Configuración del CLS para segmentar la piel en una imágen : Configuración del CLS para segmentar la piel en una imágen
Clases entrenadas y
número de entrenamientos
Piel: 24
Tonalidad Casi Piel: 9
Casi Piel blanco: 15
Casi Piel café: ` 12
Casi Casi Piel: 10
Color Casi Piel: 7
Casi Piel Obscuro: 12
La Imagen de la foto
Filtros de textura (ventanta del contexto 3x3 texeles)
Actividad de texeles en x y y
Magnitud del gradiente
Desviación Estándar
Media
Filtros de color (pixeles)
Pixeles azules
Pixeles rojos
Pixeles verdes
Saturación del color
Slide37 : Piel humana Imagen de la Foto Reconocimiento de textura y color de la piel Foto con flash
Slide38 : Piel humana Imagen de un poster Foto de un Poster Reconocimiento de textura y color de la piel
Slide39 : Piel humana foto familiar Reconocimiento de textura y color de la piel Foto con de texturas parecidas
a la piel humana
Slide40 : Foto de familia Reconocimiento de textura y color de la piel Foto con flash y con espejo atrás Reconocimiento de textura y color de la piel
Como se guardan los histogramas acumulativos en el STM de ALISA : Como se guardan los histogramas acumulativos en el STM de ALISA Alisa utiliza las entradas de los histogramas en forma acumulada
para suponer una segmentación
de acuerdo a la clase con mayor valor de entradas en las diversas
STMs, una por cada clase considerada
Slide42 : Tercer ejemplo:
Reconocimiento de
sonidos de animales
Transformada Rápida de Fourier (FFT) : Transformada Rápida de Fourier (FFT) Time-dominio del Tiempo Dominio de la Frecuencia • J. B. Fourier (1768-1830) sugirió descomponer cualquier función en términos de funciones Seno y Coseno con el fin de simplificar su análisis
• Se transforma del dominio del tiempo al dominio de la frecuencia, concepto fundamental del análisis de señales
• Sin embargo el computo eficiente de este calculo tuvo que esperar a que las ideas de Gauss las pudieran codificar Cooley y Tuckey en 1965 en un algoritmo rápido (FFT) que corriera en computadoras
Una ventana amplia = > da buena resolución en frecuencia
Una ventana reducida = > da buena resolución en el tiempo
Slide44 : En vez de usar un infinidad de lineas con componentes de frecuencia para diferentes tiempos los graficamos en un espectro unico dando un espectro que incluye amplitud, frecuencia y tiempo en una imagen de dos dimensiones que presenta una textura típica Espectro de frecuencias
Estructura jerárquica : Estructura jerárquica Para atender a cada una de las variables del espectro sin incluir un conocimiento semántico en los espectros, podemos definir cuatro niveles en la jeraquia que nos permiten separar automaticamente las señales
Nivel 1: Frecuencia (khz) [rangos de frequencias]
Nivel 2: Tiempo (seg.) [duración típica del sonido]
Nivel 3: Amplitud (rms ) [potencia estandard]
Nivel 4: Sonidos de los Animales
[ballena, elefante, gato, perro, . . . ]
Slide46 : Buho 1-4 KHz 0-2 KHz 3-9 KHz +4 Sec Original Sound Spectogram Time Layer Frequency Layer 0-2 Sec Bearded Seal Bowhead Whale Horse Owl Animal Layer Rej. / Tied Rej. / Tied Rej. / Tied Reconocimiento de la
señal de audio
Slide47 : Ballena con
boca de arco 1-4 KHz 0-2 KHz 3-9 KHz +4 Sec Original Sound Spectogram Time Layer Frequency Layer 0-2 Sec Bearded Seal Bowhead Whale Horse Owl Animal Layer Rej. / Tied Rej. / Tied Rej. / Tied Reconocimiento de la
señal de audio
Slide48 : 1-4 KHz 0-2 KHz 3-9 KHz +4 Sec Original Sound Spectogram Time Layer Frequency Layer 0-2 Sec Animal Layer Rej. / Tied Rej. / Tied Rej. / Tied
Perro Reconocimiento de la
señal de audio
Cow Dog Chimp
Slide49 : 1-4 KHz 0-2 KHz 3-9 KHz +4 Sec Original Sound Spectogram Time Layer Frequency Layer 0-2 Sec Turkey Sheep Wolf Animal Layer Rej. / Tied Rej. / Tied Rej. / Tied
Oveja Reconocimiento de la
señal de audio
Bees
Slide50 : 1-4 KHz 0-2 KHz 3-9 KHz 0.5 Sec Original Sound Spectogram Time Layer Frequency Layer 0.1 Sec Canyon Wren Black Capped Vireo Animal Layer Rej. / Tied Rej. / Tied Rej. / Tied
Pajaro Vireo Negro Reconocimiento de la
señal de audio
Chesnut Sided Warbler
Bibliografía : Bibliografía
G. Baxes Digital Image Processing J. Wiley NY: 1994
Bock, P. The Emergence of Artificial Cognition World Scientific, Singapore: 1993
Bock, P. ALISA: Adaptive Learning Image and Signal Analysis Proceedings of the SPIE Applied Imagery Pattern Recognition Conference, Washington DC: 1998
Gonzalez R. & Woods R. Digital Image Processing 2nd edition Addison Wesley Mass:1993
Narendra, K.S. Thatachar, L. (Eds.): Special Issue on Learning Automata Journal of Cybernetics and Info Sci, Vol 1 #2-4: 1977
Sanchez, A: Learning Automata: An Alternative to Neural Networks in Rudomin, P., Arbib, M.A., Cervantes Pérez, F., and Romo, P. (Eds.), Neuroscience: From Neural Networks to Artificial Intelligence, Research Notes in Neural Computing, Vol. 4, Springer-Verlag, Berlin: 1993
W. K. Pratt Digital Image Processing 3 edition J Wiley NY:2001
Software y manuales usados : Software y manuales usados
Bock P. Hubsman J. Howard C. & T. Riopka, T. MacAlisa © version 13.1 Alias Corporation, Va. 1996-2003
Bock P. & Hubsman J. MacAlisa Manual version 13.1, Alias Corporation, Va. 2003
Cornell Lab of Ornithology Raven © version 1.2 Ithaca, NY 2003
Cornell Lab of Ornithology Raven User’s Manual, Revision 0 16 August 2004
Knoll T. et. al. Photoshop ® version 7.0 Adobe, Ca. 1990-2000
Knoll T. et. al. Photoshop Help Manual version 7.0 Adobe, Ca. 1990-2000
Microsoft Power Point:mac © version X Microsoft Corporation, Wa 1987-2002
Microsoft Power Point:mac Help Manual version X Microsoft Corporation Wa 2002
Gracias por su atención : Gracias por su atención
asanchez@lania.mx
www.lania.mx/~asanchez
Noviembre 2004