Clustering Reconocimiento De Voz

36
UNIVERSIDAD TECNICA PARTICULAR DE LOJA La Universidad católica de Loja PROYECTO FINAL INTELIGENCIA ARTIFICIAL AVANZADA REALIZADO POR: Andrea S. Espinosa A. Adriana B. Macas E. Yesenia C. Pineda C. Dalton S. Ortega A

description

Reconocimiento de voz aplicando métodos de clustering Cobweb y K-means con la herramienta Weka

Transcript of Clustering Reconocimiento De Voz

Page 1: Clustering Reconocimiento De Voz

UNIVERSIDAD TECNICA PARTICULAR DE LOJALa Universidad católica de Loja

PROYECTO FINAL

INTELIGENCIA ARTIFICIAL AVANZADA

REALIZADO POR: Andrea S.

Espinosa A. Adriana B. Macas

E. Yesenia C. Pineda

C. Dalton S. Ortega A

Page 2: Clustering Reconocimiento De Voz

RECONOCIMIENTO DEVOZ

Page 3: Clustering Reconocimiento De Voz

La inteligencia artificial es la disciplina que se encarga de construir procesos que al ser ejecutados sobre una arquitectura física producen acciones o resultados que maximizan una medida de rendimiento determinada, basándose en la secuencia de entradas percibidas y en el conocimiento almacenado en tal arquitectura.

INTRODUCCION

Page 4: Clustering Reconocimiento De Voz

En la IA se puede observar dos enfoques diferentes:◦La IA concebida como el intento por desarrollar

una tecnología capaz de proveer al ordenador capacidades de razonamiento similares a los de la inteligencia humana.

◦La IA en su concepción como investigación relativa a los mecanismos de la inteligencia humana que se emplean en la simulación de validación de teorías.

INTRODUCCION

Page 5: Clustering Reconocimiento De Voz

El proceso de clustering consiste en la división de los datos en grupos de objetos similares. Para medir la similitud entre objetos se suelen utilizar diferentes formas de distancia: distancia euclídea, de Manhatan, de Mahalanobis, etc. El representar los datos por una serie de clusters, conlleva la pérdida de detalles, pero consigue la simplificación de los mismos.

CLUSTERING

Page 6: Clustering Reconocimiento De Voz

Clustering es una técnica más de Aprendizaje Automático, en la que el aprendizaje realizado es no supervisado. Desde un punto de vista práctico, el clustering juega un papel muy importante en aplicaciones de minería de datos, tales como exploración de datos científicos, recuperación de la información y minería de texto, aplicaciones sobre bases de datos espaciales (tales como GIS o datos procedentes de astronomía), aplicaciones web, marketing, diagnóstico médico, análisis de ADN en biología computacional, y muchas otras.

CLUSTERING

Page 7: Clustering Reconocimiento De Voz

El agrupamiento de datos o clustering puede definirse como un método para clasificar o describir propiedades de un sistema a partir de un conjunto de datos adquiridos o representativos de dicho sistema. La aplicación de estos algoritmos tiene como objetivo devolver al usuario una serie de puntos que en cierto modo representan al resto de puntos iniciales por su posición privilegiada con respecto al total.

 Algunos de los algoritmos de agrupamiento más utilizados son:◦ 1.- K-means clustering◦ 2.- Fuzzy c-means clustering◦ 3.- Grupos próximos a un entorno (nearest neighborhood clustering)◦ 4.- Redes de aprendizaje competitivo◦ 5.- Cobweb

ALGORITMOS DE CLUSTERING

Page 8: Clustering Reconocimiento De Voz

Un esquema simplificado de un algoritmo de clustering se muestra en la siguiente figura:

ALGORITMOS DE CLUSTERING

Page 9: Clustering Reconocimiento De Voz

Actualmente el Reconocimiento de voz es utilizado como comunicación entre humano y computadora. El agrupamiento de datos o clustering puede definirse como el método para clasificar o describir propiedades de un sistema a partir de un conjunto de datos adquiridos o representativos del sistema. La aplicación de estos algoritmos tiene como objetivo devolver al usuario una serie de puntos que en cierto modo representan al resto de puntos iníciales por su posición privilegiada con respecto al total. El objetivo de la construcción de estos algoritmos es que permiten la identificación de los fonemas de personas a partir de variables que identifiquen los caracteres del sonido para un flujo continuo de ondas sonoras y silencios.

RECONOCIMIENTO DE VOZ

Page 10: Clustering Reconocimiento De Voz

Debe cumplir 3 tareas: ◦ Pre procesamiento: Convierte la entrada de voz a una forma que el

reconocedor pueda procesar. ◦ Reconocimiento: Identifica lo que se dijo (traducción de señal a texto). ◦ Comunicación: Envía lo reconocido al sistema (Software/Hardware) que

lo requiere.

RECONOCIMIENTO DE VOZ

Page 11: Clustering Reconocimiento De Voz

Es una herramienta de visualización y algoritmos para análisis de datos y modelado predictivo, unidos a una interfaz gráfica de usuario para acceder fácilmente a sus funcionalidades. La versión original de Weka fue un front-end en TCL/TK para modelar algoritmos implementados en otros lenguajes de programación, más unas utilidades para preprocesamiento de datos desarrolladas en C para hacer experimentos de aprendizaje automático.

WEKA

Page 12: Clustering Reconocimiento De Voz

Las ventajas de Weka son:◦Está disponible libremente bajo la licencia

pública general de GNU.◦Es muy portable porque está completamente

implementado en Java y puede correr en casi cualquier plataforma.

◦Contiene una extensa colección de técnicas para preprocesamiento de datos y modelado.

◦Es fácil de utilizar por un principiante gracias a su interfaz gráfica de usuario.

WEKA

Page 13: Clustering Reconocimiento De Voz

Weka soporta varias tareas estándar de minería de datos, especialmente, preprocesamiento de datos, clustering, clasificación, regresión, visualización, y selección. Todas las técnicas de Weka se fundamentan en la asunción de que los datos están disponibles en un fichero plano (flat file) o una relación, en la que cada registro de datos está descrito por un número fijo de atributos (normalmente numéricos o nominales, aunque también se soportan otros tipos). Weka también proporciona acceso a bases de datos vía SQL gracias a la conexión JDBC (Java Database Connectivity) y puede procesar el resultado devuelto por una consulta hecha a la base de datos.

WEKA

Page 14: Clustering Reconocimiento De Voz

EJECUCIÓN DEL ALGORITMO

WEKA

Page 15: Clustering Reconocimiento De Voz

En primer lugar abrimos el algoritmo reconocimiento_voz.arff, luego hacemos clic en la pestaña Cluster

EJECUCIÓN DEL ALGORITMO

Page 16: Clustering Reconocimiento De Voz

Luego en la sección cluster hacemos clic en el botón Choose y elegimos el método de clustering que deseemos

EJECUCIÓN DEL ALGORITMO

Page 17: Clustering Reconocimiento De Voz

Finalmente hacemos clic sobre el botón Start para ejecutar el algoritmo de reconocimiento de voz con el método que hayamos elegido.

EJECUCIÓN DEL ALGORITMO

Page 18: Clustering Reconocimiento De Voz

ANALISIS DE RESULTADOS

WEKA

Page 19: Clustering Reconocimiento De Voz

Los algoritmos de clustering permiten clasificar un conjunto de elementos de muestra en un determinado número de grupos basándose en las semejanzas y diferencias existentes entre los componentes de la muestra.

Mediante la utilización de la herramienta Weka presentamos los siguientes resultados obtenidos de la misma, tanto con el algoritmo K-medias y Cobweb.

ANALISIS DE RESULTADOS

Page 20: Clustering Reconocimiento De Voz

ALGORITMO K-MEDIAS

Page 21: Clustering Reconocimiento De Voz

Scheme: weka.clusterers.SimpleKMeans -N 2 -S 10 Indica que el algoritmo se ejecuta con 2 clusters y con 10 semillas

Relation: vowel Nos muestra que la relación es vocal  Instances: 450 Existen 450 instancias  Attributes: 14 Existen 14 atributos  Test mode: evaluate on training data Modo de prueba es evaluado sobre datos de entrenamiento  

ALGORITMO K-MEDIAS

Page 22: Clustering Reconocimiento De Voz

ALGORITMO K-MEDIAS

Page 23: Clustering Reconocimiento De Voz

Además se muestran los valores de los niveles de intensidad vocales en fase de entrenamiento por los hablantes Andres y Yesi pronunciando las sílabas hid, hud y had

ALGORITMO K-MEDIAS

Entrenamiento o Prueba Entrenamiento Entrenamiento Entrenamiento

Hablante Andres Yesi AndresSexo

Masculino Femenino Masculino

Característica 0

-3.5319 -3.8258 -3.2606

Característica 1

1.9342 2.2366 1.6551

Característica 2

-0.4023 -0.3065 -0.4908

Característica 3 0.5794 0.4519 0.6971Característica 4

-0.2654 0.0385 -0.546

Característica 5

0.6922 0.4786 0.8894

Característica 6

0.0125 0.0126 0.0124

Característica 7

0.346 0.0578 0.612

Característica 8

-0.2987 -0.5759 -0.0428

Característica 9

-0.1038 0.0949 -0.2872

Clase

hid hud had

Page 24: Clustering Reconocimiento De Voz

Number of iterations: 10 El número de iteraciones es de 10

Within cluster sum of squared errors: 1121.82115943575

Suma de errores cuadráticos Datos totales Cluster# 0 Cluster#

1 (450) (216) (234)

ALGORITMO K-MEDIAS

Page 25: Clustering Reconocimiento De Voz

A continuación se muestran los valores y porcentajes de la agrupación de Instancias divididas en 2 Clusters:

Clustered Instances 0 216 ( 48%) En el Cluster 0 existen

216 instancias que corresponden al 48%1 234 ( 52%) En el Cluster 1 existen

234 instancias que corresponden al 52% 

ALGORITMO K-MEDIAS

Page 26: Clustering Reconocimiento De Voz

Desde esta pantalla podemos generar múltiples gráficas eligiendo cualquier combinación de atributos para los ejes.

En este caso seleccionamos los siguientes atributos:◦ Nombres de los hablantes en el eje de las X◦ Numero de Clúster en el eje de las Y◦ Los valores de las clases coloreadas (had, hed, hid,

hod, hud)◦ Diseño de las instancias por defecto◦Jitter o variación promedio

ALGORITMO K-MEDIAS

Page 27: Clustering Reconocimiento De Voz

ALGORITMO K-MEDIAS

Page 28: Clustering Reconocimiento De Voz

Podemos interpretar en la gráfica que los valores de las clases se agruparon en 2 Clusters y en grupos de hablantes separados

En este otro caso seleccionamos los siguientes atributos:◦Sexo en el eje de las X◦ Numero de Clúster en el eje de las Y◦ Los valores de las clases coloreadas (had, hed, hid, hod,

hud)◦ Diseño de las instancias por defecto◦ Jitter o variación promedio

ALGORITMO K-MEDIAS

Page 29: Clustering Reconocimiento De Voz

ALGORITMO K-MEDIAS

Page 30: Clustering Reconocimiento De Voz

En ésta gráfica podemos observar que las sílabas pronunciadas por las personas del sexo masculino se ejecutaron en su gran mayoría en el cluster 1 excepto por algunos casos como por ejemplo la clase had que ha sido pronunciada por personas del sexo femenino que se encuentran en el cluster 1.

Y análogamente a esto podemos observar que las sílabas pronunciadas por las personas del sexo femenino se ejecutaron en su gran mayoría en el cluster 0 excepto por algunos casos como por ejemplo la clase hud que ha sido pronunciada por personas del sexo masculino que se encuentran en el cluster 1.

ALGORITMO K-MEDIAS

Page 31: Clustering Reconocimiento De Voz

COWEB

Page 32: Clustering Reconocimiento De Voz

A continuación se exponen algunos comentarios sobre la salida de arriba:

◦ -A 1.0 -C 0.0028209479177387815 -S 42 especifica parámetros agudeza y corte. Estos valores pueden ser especificados a través de la ventana emergente que aparece al hacer clic sobre el área a la derecha el botón Seleccionar (Choose).

◦  Nodo N o hoja N representa un subcluster, cuya matriz es el grupo N. ◦  La agrupación de estructura de árbol se muestra como un árbol horizontal,

donde subclusters están alineados en la misma columna.

◦ La raíz es el Cluster 0. Cada línea con un nodo de 0 define subcluster de la raíz.

◦ El número entre corchetes después de nodo N representa el número de casos en la matriz el grupo N.

COWEB

Page 33: Clustering Reconocimiento De Voz

En este caso seleccionamos los siguientes atributos:◦Nombres de los hablantes en el eje de las X◦Palabras pronunciadas en el eje de las Y◦Sexo coloreadas (masculino, femenino)◦Diseño de las instancias por defecto◦Jitter o variación promedio

COWEB

Page 34: Clustering Reconocimiento De Voz

COWEB

Page 35: Clustering Reconocimiento De Voz

Podemos observar que los fonemas son diferenciables en su pronunciación por todos los hablantes y en ambos sexos puesto que las instancias de un hed no se agrupan con un hud, las instancias de un hod no se agrupan con un had y así sucesivamente.

COWEB

Page 36: Clustering Reconocimiento De Voz

http://sisbib.unmsm.edu.pe/BibVirtualData/publicaciones/electronica/Marzo_2002/pdf/algoritmo.pdf

http://catarina.udlap.mx/u_dl_a/tales/documentos/lep/franco_g_ja/capitulo7.pdf

http://www.eleconomista.es/empresas-finanzas/noticias/421406/03/08/SpinVox-elige-Cambridge-para-su-centro-de-Reconocimiento-de-Voz.html

http://www.ejournal.unam.mx/cys/vol09-03/CYS09307.pdf http://omarsanchez.net/kmeans.aspx http://omarsanchez.net/recocaract.aspx http://www.exa.unicen.edu.ar/catedras/dbdiscov/clase2b.pdf http://www.cs.us.es/cursos/ia2-2007/trabajos/propuesta-6.pdf http://www.dim.uchile.cl/~anmoreir/pr/p9c_clustering.ppt

BIBLIOGRAFIA