martes, 20 de noviembre de 2012

Reporte Speaker Recognition

Como reporte final de la materia de Redes Neuronales Artificiales de la Dra. Elisa Schaeffer en el semestre Ago-Dic 2012, voy a exponer en lo que he colaborado en el equipo de Speaker Recognition System, en donde básicamente lo que estamos implementando es una red neuronal que pueda clasificar entre si es una persona, o no en base a su voz, validando mediante una serie de pasos y entrenando la red neuronal para poder saber si esta persona es la que está utilizando el sistema, para posteriormente realizar algún otro tipo de acción, en este caso estamos solamente trabajando de lado de la validación.

Este es el Repositorio de nuestro proyecto.

Para esta mitad después de medio curso estuve contribuyendo con el proyecto haciendo una integración de la interfaz que habiamos desarollado anteriormente con la que utilizamos en nuestro prototipo final, ahora las ventanas van en cadena y están relacionadas según los datos que obtenemos en la red neuronal  y así detectar si es o no una persona.

Estas serían las capturas actualizadas del prototipo final.




Esta sería la interfaz de salida que tendría el usuario con unos script integrados con la grabadora, que en donde utilicé TK con python y desplegamos si la persona es identificada o no.

Después, trabajé en base a lo que estuvimos haciendo en equipo, decidimos hacer un análisis de compomtentes principales (PCA), por lo que yo estuve a cargo de desarrollarla y hacer pruebas para saber si esta forma de obtener los datos nos pudiera servir para tener un mejor resultado, basicamente lo que hice fue seguir los pasos del análisis y luego hice un archivo de prueba en donde utilizo el array de las frecuencia de MEL obtenidas anteriormente.

Este análisis es un proceso matemático que calcula los datos más significativos por medio de una descomposición de valores en la matriz de covarianza.

Estos son los resultados que obtuvimos de este análisis.



Como pueden ver entre Ramón y yo no tenemos mucha diferencia, cuando con Cecilia tenemos un valores completamente diferentes, de hecho también hice el análisis gráfico y vemos que el vector de coeficientes y el vector de puntuación se posiciona de manera contraria.

CECILIA

RAMON

ROBERTO

Después de algunas pruebas, utilizando el PCA, determinamos que los valores que obtuvimos eran muy parecidos entre Ramon y Roberto, por lo que decidimos utilizar los valores obtenidos del análisis de audio.

Los códigos del análisis y un código de prueba lo pueden ver en el repositorio, este sería mi reporte de la materia de redes neuronales, si tienen alguna duda acerca del proyecto, pueden dejar un comentario en el blog.

Por último muestro las diapostivas grupales, en donde exponemos el prototipo en equipo:

1 comentario:

  1. "compomtentes"... Al generar gráficas, intenta lograr que las etiquetas en los ejes no se empalmen tanto. Reporte 9 pts, código 20 pts.

    ResponderEliminar