Definición de lo que es un problema y de problemas que han solucionado parcialmente alumnos de la licenciatura en Informática y maestría en inteligencia artificial de la Universidad Veracruzana,
1. Reconocimiento del habla
para su implementación en:
redes neuronales artificiales,
autómatas probabilistas,
autómatas celulares,
redes bayesianas,
redes complejas
sistemas difusos
cnn
• Virginia Angélica García Vega
• angegarcia@uv.mx, angelica55@gmail.com,
vagv55@hotmail.com
miércoles 10 de octubre de 2012
2. Las tres preguntas a responder antes
de hacer un sistema computarizado
• ¿Qué tipo de problema es, a qué clase de
problema genérico pertenece?
• ¿Cuál es el espacio del dominio y de solución
del problema?
• ¿Qué método para resolver el problema se
debiera usar?
miércoles 10 de octubre de 2012
3. Tipos de problemas
• Problema genérico: es un problema definido teóricamente para el que se han
desarrollado métodos sin considerar la especificidad contextual de
parámetros y variables y sus valores. Las variables usadas en la especificación
o en una solución del problema son libres del dominio.
• Problema específico: es un problema que tiene sus parámetros, valores,
restricciones, entre otros y que su contexto está especificado por el área de
aplicación en el que cae el problema. Para resolverlo se requiere
conocimiento del dominio derivado de datos pasados o conocimiento
experto explicito en la forma de reglas heurísticas, o ambas. Se pueden usar
métodos aplicables para resolver el problema genérico correspondiente, por
ejemplo:
• métodos de clasificación
• métodos de predicción
• métodos de identificación
miércoles 10 de octubre de 2012
4. Aspectos del conjunto de
características
• Suficientemente grande para permitir una
representación única de todos los patrones
• No ser redundante, se puede crear una pobre
clasificación al considerar características no
importantes para la clasificación
• flexible, para permitir una representación y
procesamiento de los patrones dependiendo de
la tarea concreta
miércoles 10 de octubre de 2012
5. Representaciones generales de
una clase de patrones
• Como un conjunto de ejemplos de datos.
• Como un conjunto de reglas que definen
las características que deben tener los
patrones (objetos) de una clase.
miércoles 10 de octubre de 2012
6. Tipos de patrones
• Espaciales: imágenes, signos, firmas, mapas
geográficos, ...
• Temporales: habla, información meteorológica, latidos
cardiacos, señales del cerebro
• Generalmente los patrones temporales se traducen o
transforman en patrones espaciales y luego se aplican
métodos de reconocimiento de patrones espaciales.
Generalmente para la transformación se usa la FFT
miércoles 10 de octubre de 2012
7. Reconocimiento vs
clasificación
• Reconocimiento: problema genérico, dado un
conjunto de n patrones conocidos y un patrón
nuevo de entrada, la tarea es encontrar cuál de los
patrones conocidos está más cercano al nuevo
• Clasificación: problema genérico, intenta asociar un
objeto con algunos grupos o clases de objetos ya
existentes
miércoles 10 de octubre de 2012
8. Métodos para resolver problemas
de clasificación
• Métodos estadísticos, basados en la evaluación de la clase con más alta probabilidad a la que pertenece el nuevo objeto. El
método más usado es el método de Bayes para calcular las probabilidades
• Técnicas de análisis de discriminantes, el más usado es el análisis lineal de discriminante, que intenta encontrar funciones
lineales que son combinaciones lineales de las características para separar las clases
• Métodos simbólicos, basados en reglas simbólicas heurísticas (reglas de producción) del tipo:
• IF (verifica condiciones de las características) THEN (clase asociada)
• Métodos difusos, basados en reglas difusas. Las reglas difusas representan las clases en términos difusos, por ejemplo:
• IF (longitud_pétalo es PEQUEÑA y ancho_petalo es PEQUEÑA) ENTONCES (SETOSA)
• Métodos de aprendizaje, basados en aprender de ejemplos y sus clases respectivas, como redes neuronales y otros
• Métodos del vecino k-más cercano, basados en evaluar la distancia entre un nuevo objeto y k objetos cercanos de los que
se conoce su clase. La clase que aparezca más frecuentemente entre los k vecinos es la elegida.
• El concepto de distancia o “métrica” mide de diferente formas una distancia entre dos patrones. Hay distancias
absolutas, distancias euclidianas, distancias normalizadas
• Memorias asociativas, usadas para almacenamiento y reconocimiento de patrones. Pueden almacenar patrones y recordar
algunos de ellos con información parcial de entrada
miércoles 10 de octubre de 2012
9. Procesamiento de imágenes
• Es parte de un problema genérico.
• Tareas del procesamiento de imágenes
• reconocimiento de imágenes: asocia una nueva imagen con algunas
existentes o con una clase de imágenes. Pbms: imágenes ruidosas, corruptas,
borrosas,
• compresión de imágenes: busca un cifrado o “codificación” en el que una
imagen se represente con un número mínimo de bits por pixel de manera
tal que el proceso de decodificación reconstruya la imagen a una
aproximación satisfactoria de la imagen original. La compactacidad de la
compresión se mide por el número de bits usados para cifrar un pixel de la
imagen
• análisis de imágenes: usa tareas como la extracción de características,
segmentación para ese proceso
miércoles 10 de octubre de 2012
10. Procesamiento del lenguaje y del
habla
• El procesamiento del habla incluye:
• Codificación del habla cuyo objetivo es la transmisión de la voz, la compresión del
habla y la comunicación segura.
• La separación del hablante, busca extraer las señales del habla de los locutores
cuando están presentes múltiples hablantes.
• El mejoramiento del habla, busca mejorar la inteligibilidad de las señales del habla.
• La identificación del locutor, busca identificar un hablante no-cooperativo en un
entorno en el que están presentes múltiples hablantes.
• La identificación del lenguaje, busca discriminar entre lenguajes
• La emisión de palabras claves (keyword spotting), su objetivo es el reconocimiento
de palabras claves habladas de un diccionario (para la recuperación de base de
datos, etc.)
miércoles 10 de octubre de 2012
11. El problema del reconocimiento
automático del habla (ARS)
• Objetivo: Proporcionar un mejor acceso
(interacción) a las máquinas a través de
órdenes de voz.
• Una interfaz de voz se relaciona con el
análisis del lenguaje hablado, el
entendimiento de conceptos, los sistemas
de comunicación inteligente, el desarrollo
de la consciencia en las máquinas
miércoles 10 de octubre de 2012
12. Tendencias de los sistemas prácticos
del reconocimiento del habla
• El reconocimiento de palabras
pronunciadas separadamente en un
discurso extenso
• El reconocimiento y comprensión del habla
continua
miércoles 10 de octubre de 2012
13. Enfoques del ASR
• Global, se basa en la comparación de toda la palabra con patrones
estándares
• Analítico, se basa en descomponer una palabra en segmentos
(subpalabras o unidades) con base en las características fonéticas de la
señal del habla.
• En ambos enfoques se deben clasificar los vectores paramétricos que
se obtienen de la señal del habla. Un vector paramétrico de n
elementos se puede representar como un punto en un espacio n-
dimensional.Este punto se puede ver como un patrón
miércoles 10 de octubre de 2012
14. Naturaleza del habla
• El habla es una sucesión de ondas que se transmiten en
el tiempo en un medio y se caracterizan por su
intensidad y su frecuencia. El habla se puede representar
mediante:
• La escala de tiempo, se llama la representación de la
forma de onda
• La escala de frecuencias, cuya representación es
llamada el espectro
• La escala de tiempo y frecuencia que el espectrograma
de la señal del habla
miércoles 10 de octubre de 2012
15. Características perceptuales que
facilitan la diferenciación del habla
• El volumen (loudness), es una medidad subjetiva, se relaciona con la amplitud de la onda
en el dominio del tiempo, la medición objetiva con la que se relaciona es la energía del
sonido, la potencia acústica. Frecuentemente se confunde con la sonoridad que es la
percepción subjetiva la intensidad del sonido.
A mayor amplitud en la forma de la onda mayor la energía del sonido y más bajo
aparece el sonido.
• El tono (pitch) es el correlato perceptual de la frecuencia fundamental de la vibración
de un sonido, en este contexto se relaciona con la vibración del tracto vocal del
hablante. Es la percepción subjetiva de asignar tonos en alguna escala de sonidos, se
habla de sonidos más graves o más agudos. Se le conoce como la altura de un sonido.
El sonido está formado por un conjunto de frecuencias denominadas armónicos, una de
ellas es la frecuencia fundamental. También se relaciona con el timbre.
• La calidad de un sonido es el correlato perceptual de su contenido espectral. Las
formantes de un sonido son las frecuencias en las que tiene la mayor energía acústica.
La forma del tracto vocal determina qué componentes de frecuencia resuenan. (Véase
el ejemplo de la cuerda de guitarra)
miércoles 10 de octubre de 2012
16. Espectrograma de la señal
de habla
• Un espectrograma de una señal del habla
que muestra cómo el espectro de la voz
cambia en el tiempo. El eje horizontal
muestra el tiempo y el eje vertical muestra
la frecuencia. La escala de color muestra la
energía de los componentes de frecuencia.
Mientras más oscuro es el color mayor es
la energía del componente
miércoles 10 de octubre de 2012
17. Variabilidad del habla
• La dificultad fundamental del reconocimiento de
las señales de voz es lo altamente variable que es
de acuerdo con el hablante, la tasa de habla, el
contexto y las condiciones acústivas. La tarea es
encontrar cúal de estas variaciones es relevante
para el reconocimiento del habla
miércoles 10 de octubre de 2012
18. Fonemas
• Los fonemas son los patrones de habla más
pequeños que tienen una representación
lingüística en un lenguaje. Se pueden dividir
en tres grandes grupos: vocales, semivocales
y consonantes. Las consonantes se pueden
dividir en subgrupos adicionales.
• ¿cuántos fonemas hay en el idioma español?
miércoles 10 de octubre de 2012
19. Reconocimiento de
fonemas
• Expectativa: Si se reconocen los fonemas, se
pueden reconocer palabras, las frases y el contexto
• El problema es que la pronunciación de las vocales
y de las consonantes dependen de:
• el acento,
• el dialecto,
• el estado de salud de la persona,
• el género,
• la edad
miércoles 10 de octubre de 2012
21. Reconocimiento de
señales musicales
• El problema es reconocer las notas
individuales de una secuencia de señales
musicales. Hay semejanzas y diferencias con
el reconocimiento de fonemas, entre las
diferencias se encuentran el rango o banda
de frecuencias
miércoles 10 de octubre de 2012
22. Problemas para el
reconocimiento del habla
• La ambigüedad que se deriva de:
• palabras homófonas, palabras que se
pronuncian de forma semejante pero tienen
significado y escritura diferente, p.e. casa y caza
• clases sobrepuestas
• fronteras de las palabras: un semillón, ...
• ambigüedad sintáctica
miércoles 10 de octubre de 2012
23. Factores que influyen en el
desempeño de los ASR
• Tamaño del vocabulario • reconocimiento de
palabras aisladas,
• pequeño (decenas de palabras conectadas, del
palabras) habla continuo
• mediano (centenas de • Grado de dependencia del
palabras) locutor
• grande (miles de • dependiente del
palabras) locutor, de varios
locutores,
• extragrandes (centenas independiente del
de miles de palabras) locutor
• Formato
• Restricciones de la tarea
miércoles 10 de octubre de 2012
24. Niveles de análisis del lenguaje
• Prosodia, ritmo y entonación
• Fonética, correlatos mínimos (fonemas) y su combinación
correcta
• Lexicología
• Semántica
• Morfología
• Sintáxis
• Pragmática
miércoles 10 de octubre de 2012
25. Tarea para el análisis de datos de
voz
Pueden usar Audacity, o la herramienta de grabación de Windows, pero deben dejar los
archivos grabados en forma separada y en el formato wav o mpg.
• Recolección de datos: Grabar 3 veces los dígitos del 0 al 9. Guardar los datos
burdos, no transformados en formatos especiales. Elaborar una tabla con cada
uno de los archivos grabados indicando los siguientes parámetros:
• tiempo de grabación, frecuencia de muestreo, número de muestras, tamaño
de los datos burdos (en kb)
• Explique las relaciones entre ellos
• Despliegue de los datos de voz, describa qué métodos puede usar para desplegar
los datos
• Agrupamiento de los datos, defina por observación los límites de los fonemas de
las palabras de los dígitos
miércoles 10 de octubre de 2012
26. El proyecto
• Elaborar un reconocedor del habla basado en redes
neuronales, que sea multilocutor de un vocabulario
pequeño y que se pueda integrar en un navegador. El
reconocedor del habla debe responder en tiempo real.
• El diccionario de palabras se debe constituir con las
palabras más comunes que se usan al interactuar con
un navegador. Ejemplo usar las apis de google o de
mozilla para crear un “widget”,”gadget” que se integre
en el navegador o usar las apis de Microsot (Google)
para integrarlo en el internet explorer (chrome o
firefox)
miércoles 10 de octubre de 2012
27. Completar el diccionario de palabras
o elaborar uno nuevo
Hagan un sondeo entre ustedes y personas que usen el navegador
para determinar las palabras que formarán la base de datos el
ASR. Las palabras deberán asociarse o describir las tareas más
frecuentes que se realizan con el navegador, ejemplo de un
vocabulario:
• ir • regresa • sal
• continua • favoritos • primero
• abre • guarda • último
• cierra • termina
miércoles 10 de octubre de 2012
28. Bibliografía primaria
• Kasavob, N. Foundations of Neural Networks and Fuzzy Systems
and Knowledge Engineering. A Bradford book. The MIT Press. 1998.
2º Edition
• Becchetti, C. y Prina R., L. Speech Recognition: Theory and C++
Implementation. John Wiley. 1999.
• Édgar Portillo. Redes Neuronales Trabajo elaborado para alcanzar el
grado de maestría. MIA - UV.
• Los sitios de las bibliotecas (apis, dlls, ...) que usen para el desarrollo
del proyecto
• Los sitios de las herramientas que usen para la tarea
miércoles 10 de octubre de 2012