universidad autonoma metropolitana148.206.53.84/tesiuami/uam2540.pdf · informe del proyecto...

69
UNIVERSIDAD AUTONOMA METROPOLITANA CIENCIAS BÁSICAS E INGENIERIA INGENIERIA ELECTRóNICA INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales Asesor: Miguel Angel Ruiz Sánchez Alumno: Elías Sánchez Sánchez México, D.F. Mayo de 1997 -. .. . ~. I "" """~"_.I.. ".. ". . "." ." _"..

Upload: tranngoc

Post on 31-Jan-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

UNIVERSIDAD AUTONOMA METROPOLITANA

CIENCIAS BÁSICAS E INGENIERIA

INGENIERIA ELECTRóNICA

INFORME DEL PROYECTO TERMINAL I y II

Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Asesor: Miguel Angel Ruiz Sánchez

Alumno: Elías Sánchez Sánchez

México, D.F. Mayo de 1997

-. .. . ~. I "" """~"_.I.. ".. ". . "." ." _"..

Page 2: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

iNDlCE

iNDlCE ................................................................................................................................................. 2

INTRODUCCI~N ................................................................................................................................. 3

PROCESAMIENTO DEL HABLA ........................................................................................................ 5

CODIFICACI~N ........................................................................................................................................ 5

RECONOCIMIENTO .................................................................................................................................. 5

REDES NEURONALES ....................................................................................................................... 6

MODELOS DE UNA NEURONA ................................................................................................................... 8 RED NEURONAL DE HOPFIELD ................................................................................................................. 9 RED NEURONAL DE HAMMING ................................................................................................................. 9

SíNTESIS ............................................................................................................................................... 5

RED NEURONAL DE CARPENTER . GROSSBERG ..................................................................................... 10 REDES NEURONALES ANTEROALIMENTADAS ......................................................................................... 10

LA SEÑAL DE HABLA Y SU PROCESAMIENTO ............................................................................ 13

PERCEPTRONES MULTICAPA ................................................................................................................. 11

PUNTO DE INICIO PARA LA PLANEACIÓN Y TOMA DE DESICIONES SOBRE EL PROYECTO17

ESTUDIO PREVIO ............................................................................................................................. 19

VOCALES .......................................................................................................................................... 19 CONSONANTES ............................................................................................................................... 32

PROYECTO ....................................................................................................................................... 51

CONCLUSIONES .............................................................................................................................. 57

ANEXO 1 ............................................................................................................................................ 59

BIBLIOGRAFíA ................................................................................................................................. 69

2 U .A. M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

. ~ "" . . . -""I " .. I "-

Page 3: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Cuando surgieron las primeras computadoras, solucionaron un problema de automatización que facilitaba algunas cosas. En nuestros días la computadora ha tenido un fuerte impacto en la sociedad, y surgen nuevos retos que van teniendo solución de la mejor forma posible.

Uno de esos retos es el de perfeccionar la comunicación entre usuario y computadora, se han usado medios de comunicaciión que no son naturales en el humano (teclado, ratón, etc.) que en un principio eran la mejor opción. Una herramienta de estas ocasiona que el humano tenga que adaptarse a algo que no es natural para sus sentidos. El habla ha sido el medio de comunicación natural entre los humanos, y es claro que tiene muchas ventajas sobre los medios anteriores.

El tener como medio de comunicación al habla proporcionaría grandes ventajas y alta productividad en los sistemas donde se utilicen, pero existen algunos problemas para realizar esos sistemas. Uno de ellos es la complejidad de la solución con los métodos tradicionales (procesamiento de señales convencionales). El principal problema del reconocimiento de voz(como el reconocimiento de otros patrones) es la dificultad de implementarlo a tiempo real.

El reconocimiento del habla ideal es el del lenguaje natural, esto implica reconocimiento independiente del hablante con vellocidad, timbre y tono variable de la secuencia de palabras. Hasta la fecha todavía no se ha logrado eficientemente el reconocimiento de discurso continuo e independiente del hablante por la complejidad del problema.

Respecto al idioma castellano se puede decir que existen ventajas sobre otros idiomas anglosajones, y sobre otras lenguas latinas, en ser reconocido por una computadora. Estas son: menor número de fonemas básicos, mayor separabilidad de sus características acústicas y la correspondencia entre las regiones de decisión determinadas por estas Últimlas. Sin embargo el problema más grave( aparte de implementarlo en tiempo real) aceptar señales provenientes de cualquier hablante independientes del tono, velocidad de pronunciación, y discontinuidad en el tono de hablar.

Lo que pretende este trabajo es formar una línea de investigación que permita conocer los métodos más utilizados en el reconocimiento del habla, y hacer pruebas donde se obtengan resultados prácticos para poder continuar investigando con nuevas técnicas o bien perfeccion;arlas.

En el presente documento, después de dar una introducción al tema, en el primer capítulo se explican las tres áreas de estudio del procesamiento del habla,

3 U .A. M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 4: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconlocimiento de palabras aisladas de voz por medio de redes neuronales

codificación, síntesis y reconocimiento. En el capítulo 2 se hace un estudio de las redes neuronales explicando varios modelos y ítécnicas más utilizadas en el reconocimiento de voz. El capítulo 3 contiene información de la señal del habla y las técnicas mas usadas en su procesamiento. En el capítulo 4 se hace un estudio de los capítulos anteriores para planear y decidir la forma de realizar las pruebas sobre el proyecto. El capítulo 5 es un estudio previo al proyecto, se realizan dos importantes pruebas(voca1es y consonantes) qlue determinaran la forma y condiciones del proyecto. En el sexto y último capítulo se informa lo que se hizo y falta hacer del proyecto.

El habla no es siempre el mejor medio de colmunicación en los sistemas de cómputo, pero si se emplea adecuada y conjuntamente con otros medios sería de gran beneficio para la sociedad.

4 U .A. M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 5: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconlocimiento de palabras aisladas de voz por medio de redes neuronales

PROCESAMIENTO DEL HABLA

Si el habla es considerado como una secuencia de eventos fonéticos, entonces con una técnica apropiada puede ser posible el reconocimiento de estos eventos. Una palabra puede representarse como una lista de eventos fonéticos. Este es el principio del reconocimiento del habla.

Se puede dividir al procesamiento del habla en tres Breas, las cuales son codificación, síntesis y reconocimiento.

Codificación

La mayoría de los codificadores de voz están1 basados sobre la idea de que el habla es linealmente separable en una funci6n sistema y una fuente de excitación. El código predictivo linear (LPC) hace posible reconocer la función sistema usando transformaciones de los coeficiente LPC. Sin embargo desde que la señal de excitación tiene el mismo ancho de banlda que el original. Este ancho de banda se ha reducido hasta 4KB/s en nuestros días.

Síntesis

La síntesis es la producción de componentes fonéticas a partir de una máquina. La motivación de investigar este campo es la producción de voz a partir de texto y su problema principal es la representación textual para la correcta representación fonética.

Reconocimiento

El reconocimiento de voz fue influenciado por la idea sobre los fonemas y su analogía electrónica. Los primeros reconocimientos de fonemas emplearon circuitos ingeniosamente construidos, efectuando una clasificación simple y de respuesta pobre.

5 U.A.M. IZTAPALAPA Ingenieria Electrónica Elías Sánchez Sánchez

Page 6: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

REDES NEURONALES

En las últimas dos décadas se ha observado un importante interés en el desarrollo de sistemas que pretenden observar un comportamiento inteligente. El desarrollo de las redes neuronales da respuesta a esta inquietud convirtiéndose en un campo con enormes posibilidades de desarrollo. Estas posibilidades se amplían con las investigaciones que se realizan en nuevos algoritmos que proponen soluciones importantes a problemas como: la clasificación de objetos, reconocimiento de patrones, remoción ruido, optimización y filtros adaptivos entre otros.

Las redes neuronales artificiales son sistemas que se constituyen de un gran número de unidades de procesamiento que se conectan entre si de acuerdo con un patrón preestablecido, en las cuales existe una relación funcional que liga a las entradas con las salidas de la misma. Una red neuronal es un conjunto masivo de procesadores distribuidos en paralelo con tendencia de almacenamiento experimental de conocimiento, teniendo dos características:

1. El conocimiento se adquiere por la red a través de un proceso de aprendizaje.

2. La conexión entre neuronas refuerza el peso sináptico que es usado para el conocimiento.

El procedimiento usado para tener mejor desempeño en el proceso de aprendizaje se conoce como algoritmo de aprendizaje, su función es modificar los pesos sinápticos de la red de una forma objetiva.

Usar redes neuronales ofrece las siguientes propiedades y alcances:

1. No linealidad.- Una neurona es básicamente no lineal y por consecuencia la red es no lineal.

2. Mapeo de Entrada - Salida.- Un paradigma popular de aprendizaje llamado aprendizaje supervisado realiza la modificación de los pesos sinápticos de una red neuronal aplicando un etiquetamiento y realizando multitareas.

3. Adapfación.- Las redes neuronales tienen la capacidad de adaptar sus pesos sinápticos a cambios por el medio. En particular una red neuronal puede cambiar su interconexión fácilmente.

6 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 7: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

4.- Respuesfa evidenfe.- En la clasificación de patrones, una red neuronal puede ser diseñada para proveer información no solo del modelo seleccionado, también de modelos que entran en la clasificación.

5. Información contextual.- El conocimiento es representado por la estructura y el estado de activación de la red neuronal. Todas las neuronas en la red son potencialmente afectadas por la actividad global de otras neuronas en la red, consecuentemente la información contextual es distribuida con naturalidad por la red neuronal.

6. Tolerancia de fallas.- Una red neuronal imlplementada en hardware tiene el potencial de ser inherentemente tolerante de fallas. dentro de las sensaciones que su desempeño es degradado lentamente bajo condiciones de operación adversas. En principio una red neuronal exhibe una lenta degradación dentro lo que es una falla catastrófica.

7.- Implementación VLSI.- El masivo paralelismo natural de las redes neuronales hace que sea potencialmente rápido para la comunicación de varias tareas. Esto hace que para la implementación se requiera del uso de la tecnología VLSl (very large scale integrated).

8.- Análisis y diseño uniforme.- En las redes neuronales se utiliza la misma notación para todos los dominios envueltos en la aplicación. Esta característica se manifiesta de las siguientes maneras:

Las neuronas, de una forma u otra representan un ingrediente común para todas las redes neuronales.

Este ingrediente común hace posible compartir teorías y algoritmos de aprendizaje para diferentes aplicaciones de redes neuronales.

Las redes modulares pueden ser construidas a través de integración de módulos separados.

9.- Analogía neurobiol6gica.- El diseño de redes neuronales es motivado por la analogía con el cerebro, el cual es una prueba viviente de que el procesamiento paralelo tolerante a fallas no es solamente posible físicamente, sino que también es rápido y poderoso.

Debido a su capacidad de aprendizaje, es posible entrenar a las redes neuronales para que puedan almacenar, ordenar o reconocer información. En este sentido la propuesta de las redes neuronales es en esencia la búsqueda de una arquitectura que trabaje de manera análoga a como lo hace el cerebro, guardada toda proporción, pues sabemos que la mente humana tiene alrededor de cien millones de neuronas y el número de conexiones que se puede establecer cada neurona es de hasta diez mil.

7 U .A. M. IZTAPALAPA Ingeniería Electrónica

~~

Elías Sánchez Sánchez

Page 8: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Modelos de una neurona

Una neurona es la unidad de procesamiento - información fundamental para que una red neuronal opere.

-o\ Función ]de activación

/

Xn

yk Salida

Pesos

Se pueden identificar tres elementos básicos del modelo de una neurona:

1. Un conjunto de sinapsis o conexiones, los cuales son caracterizados por su peso. Específicamente una señal Xj ;a la entrada de la sinapsis j conectada a la neurona k es multiplicada plor el peso sináptico Wkj.

2. Un sumador para adicionar las señales de lentrada. 3. Una función de activación para limitar la amplitud de la salida de la

neurona. Es típico que el rango permisible de la amplitud de la salida de una neurona sea entre [0,1] o alternativamente [-I ,I].

El modelo de una neurona también tiene un umbral de entrada 8k que tiene el efecto de reducir la red de entrada de la función de activación. Por otro lado existe otro término que puede incrementar la función de activación llamado bias.

En términos matemáticos, una neurona k se puede describir con el siguiente par de ecuaciones:

U.A.M. IZTAPALAPA Ingeniería Electrónica

8

Elías Sánchez Sánchez

" . " _I" . . - - ".."".1"".."""."

Page 9: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconlocimiento de palabras aisladas de voz por medio de redes neuronales

donde XI, x2,... , xp son señales de entrada; Wkl, Wk2,... , Wkp son los pesos sinápticos de la neurona k; Uk es la salida de combinación lineal; e(-) es la función de activación;

yk es la señal de salida de la neurona.

Las redes neuronales de Hopfield, Hammin!g y Carpenter - Grossberg son las mas utilizadas para el procesamiento de patrones binarios.

Red neuronal de Hopfield

La red neuronal de Hopfield es un conjunto de operadores completamente interconectados con respuesta discreta y función de salida no lineal, la cual se puede usar para resolver ciertos problemas de optimización o como memoria asociativa, la cual es una de las principales aplicacilones de la red de Hopfield, los datos de entrada se pueden poder representar usando exactamente una representación binaria. Esto significa que los datos de entrada, como pueden ser por ejemplo los pixeles de una imagen. Esta red puede también ser usada con textos ASCII de 8 bits.

Red neuronal de Hamming

Los patrones de entrada de la red neuronal de Hamming, al igual que los de la red neuronal de Hopfield, deben ser datos binarios. Sin embargo, aunque ambas redes neuronales manejan patrones de entrada similares, existen varias diferencias significativas entre ellas, siendo la principal de ellas la concerniente a la presentación de los datos de salida de cada una (de las redes. Ya que mientras la red de Hopfield genera un patrón de salida el cual corresponde al patrón de entrada una vez que se ha eliminado el ruido, la red de Hamming calcula la distancia de Hamming entre el patrón de entrada y cada una de las clases, dando como resultado la clase con mayor semejanza. O sea la clase con distancia de Hamming mínima, siendo la distancia de Hamming igual al número de bits del patrón de entrada que no corresponden con el patrijn de prueba de alguna clase en particular.

9 U.A.M. IZTAPALAPA Ingeniería Electrónica

~~~ ~

Elias Sánchez Sánchez

Page 10: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Red neuronal de Carpenter - Grossberg

Otra red neuronal ampliamente usada para el procesamiento de patrones binarios es la red neuronal de Carpenter - Grossberg, la cual ha sido desarrollada a partir de la teoría adaptiva de resonancia. El algoritmo de aprendizaje de esta red opera como sigue: El primer vector de entrada se usa como el primer ejemplo. Seguidamente el segundo vector de entrada se compara con el primer ejemplo y se calcula la distancia que existe entre ellos. Si la dlistancia es menor que un cierto umbral dado de antemano, el segundo vector de entrada se clasifica como perteneciendo a la primera clase. En caso contrario, es decir si la distancia es mayor que el umbral, se crea una segunda clase y el segundo vector se clasifica como perteneciente a esta segunda clase. Cuando llaga un nuevo vector de entrada se calcula la distancia existente entre éste y los ejemplos pertenecientes a la primera y segunda clase. Se determina la clase con la distancia mínima y se compara la distancia entre el ejemplo perteneciente a esta clase y el vector de entrada, si la distancia existente es menor que el umbral, se clasifica como perteneciente a esta clase, en caso contrario se clasifica como perteneciente a la clase tres. Esta operación es repetida hasta que todos los patrones de entrada han sido aplicados a la red.

Redes Neuronales Anteroalimentadas

En una red neuronal anteroalimentada (feedforward) la salida de cualquier neurona nunca puede dar lugar a una retroalimentación con sigo misma, en forma directa ni indirecta a través de otras neuronas. Esta forma de interconexión determina que, la salida presente no influye sobre las futuras y las neuronas de las capas más bajas no reciben influencia de lo que ocurre en las más altas. En este tipo de redes, el cómputo de la respuesta se complementa a un solo paso.

En una red neuronal anteroalimentada no hay interconexiones entre las neuronas de una misma capa. Sin embargo, cada neurona de una capa proporciona una entrada a cada una de las neuronas de la capa siguiente. Cada una de las neuronas de la capa de entrada, tiene ulna única entrada y una única salida y simplemente transfieren el valor de su entrada a su salida sin utilizar una función sigmoidal.

U.A.M. IZTAPALAPA Ingeniería Electrónica

10

Elías Sánchez Sánchez

Page 11: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Perceptrones multicapa

Un perceptron multicapa es una red neuronal anteroalimentada donde los nodos(neuronas) son distribuidos en una o mas capas entre las neuronas de entrada y salida. Cada nodo de entrada es conectado a todos los nodos en la segunda capa( la capa escondida) por medio de los pesos. La entrada de cada nodo escondido j, es formado como yiwji , donide el nodo i es un nodo de la

capa de entrada, y wjies el peso entre los nodos i y j. El nodo j calcula su salida yi como

yi = F( xj + 0,)

Como 8, es el bias (otro peso) efectivamente asociado con el nodo j, y F es una función no lineal(función de activación).

Las neuronas utilizadas en los perceptrones multicapa son del tipo Mc Culloch-Pitts, con una función sigmoidal (continua, monótona creciente, continuamente diferenciable y con asíntotas hori.zontales para valores finitos), para lo cual, los valores asintóticos son generalmente 1 y O. Un ejemplo de esta función es

donde T es un umbral y x es la suma de las entradas pesadas para cada neurona.

La habilidad de los perceptrones multicapa radica en las no linealidades utilizadas dentro de las neuronas. Si las neuronas fueran elementos lineales, entonces una red de simple capa, con pesos elegidos en forma adecuada podría reproducir exactamente aquellos cálculos realizados por cualquier red multicapa.

Un perceptrón de una única capa sólo puede formar regiones de decisión de semiplano. Un perceptrón de dos capas puede formar cualquier región convexa en el espacio determinado por las entradas. Estas regiones incluyen polígonos convexos, y regiones convexas abiertas. Aquí el término convexo significa que cualquier línea que una puntos en el borde de una región, contiene solamente puntos de esa región.

Un perceptrón multicapa adecuado para el reconocimiento de patrones complejos requiere normalmente tres capas como mínimo: la de entrada, una oculta y una de salida. Para fines prácticos se ha visto que es mas sencillo trabajar con mas capas ocultas.

11 U.A.M. IZTAPALAPA Ingeniería Electrónica

~

Elías Sánchez Sánchez

Page 12: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

El algoritmo de retropropagación es una generalización del algoritmo de mínimos cuadrados medios. Este utiliza la técnica de búsqueda por gradiente para minimizar una función de igual costo a la diferencia cuadrática media entre la salida deseada y la salida real de la red. La región de decisión está cerca de la región óptima que podría producir un clasifica'dor de máxima verosimilitud. Cuando la red logra converger, la salida de todas las neuronas de la capa de salida es baja( O o manos de 0.1) salvo que esa neurona identifique a la clase a la que corresponde el patter de entrada, en cuyo caso la salida es alta(l.O a mayor que 0.9).

La función del error se pude definir de la siguiente forma:

El perceptrón multicapa es representado en cada pattern usando paso hacia delante a través de la red para calcular los valores del nodo de salida y entonces calcular el error derivado hacia atrás. Representando al vector de error( en el espacio del peso) en un tiempo t como VE( t ) y el vector actualizado de los pesos de la red W como V V ( t ) , entonces la regla estándar actualizada es

VW(t) = qVE(t) + aVW(t - 1) donde q es una constante llamada cantidad de aprendizaje, y a es el momento.

12 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 13: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

LA SEÑAL DE HABLA Y SU PROCESAMIENTO

En el campo de la lingüística, basándose en los distintos patrones de pronunciación y en la fijación de los puntos de articulación, y los distintos movimientos entre tales puntos, sumando a un detallado análisis de los sonidos, se clasificó a los fonemas en dos grandes grupos: las vocales, definidas articulatoriamente como los fonemas producidos sin estrechar significativamente el paso del aire que circula desde los pulmones hasta el espacio exterior, y las consonantes, que tienen ese pasaje algún punto de estrechamiento(constricci6n) o algún cierre momentáneo(oclusi6n).

Una clasificación de los fonemas en español podrían ser:

Vocales: /a/, /e/, N, /o/, /u/ Oclusivas totales: /PI, IW, It/ Oclusivas parciales: lb/, /g/, Id/ Nasales: lml, In/, /ñI Laterales: Ill, /Ill Vibrantes: Ir/, /rr/ Fricativas: Is/, If/, /y/ Africadas: /y/, /ch/

En el español bastan tres características articulatorias para definir la realización de una vocal: posición de la lengua respecto al paladar, grado de cierre y forma de entubamiento de los labios.

Desde el punto de vista de la señal de voz lo!; sonidos de las vocales están caracterizados por su alta energía, acumulada en bandas estrechas centradas en frecuencias particulares, conocidas como frecuencias formantes o, simplemente, formantes, . Las formantes pueden verse claramente en espectros individuales, que pueden obtenerse hallando el mismo sólo sobre una ventana que contenga la vocal en estudio. La distribución de los formantes es diferente para cada vocal, constituyendo este hecho el principal elemento para distinguir una vocal de otra.

A continuación se muestran imágenes de las vocales graficables en el tiempo, también su espectro y su espectrograma. El espectro es la frecuencia contra magnitud, el espectrograma es el tiempo contra la frecuencia.

13 U.A.M. IZTAPALAPA Ingeniería Electrónica Elias Sánchez Sánchez

Page 14: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Recon'ocimiento de palabras aisladas de voz por medio de redes neuronales

110' O 1000 2000 3000 4000

Emisión de una /a/ en el tiempo

110 L" O 1000 2000 3000 4000

Emisih de una /e/ en el tiempo

1 O 1000 2000 3000 4000

Emisión de una /i/ en el tiempo

160

150

4 140 z. 3 130

120

M

"7

110 O 1000 2000 3000 4000

'f'bemp @e$.)

Emisitjn de una /o/ en el tiempo

U

7 1

100' o 1000 2000 3000 4000

Emisión de una /u/ en el tiempo

15 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 15: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconlocimiento de palabras aisladas de voz por medio de redes neuronales

150 I 1

110' I O 1000 2000 3000 4000

; I m p [Seg.:; -.

Emisión de una / a / en el tiempo

110- I 0 1000 2000 3000 4000

'~~~~ pq;.)

Emisi6n de una /e/ en el tiempo

1000 2000 3000 4000 TirnIjixb [:%eg.,l

Emisión de una /i/ en el tiempo

160 1

O 1000 2000 3000 4000

Emisitjn de una /o/ en el tiempo

U

100; 1000 2000 3000 4000

Emisión de una /u/ en el tiempo

15 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 16: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

1

"

I O 500 1 O00 1500

Espectrograma de una /i/

OL' O 500 1 O00 1500

Espectrograma de una /o/

0- o 500 1 O00 1500

Espectrograma de una /u/

U.A.M. IZTAPALAPA Ingeniería Electrónica

17

Etías Sánchez Shnchez

Page 17: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

PUNTO DE INICIO PARA LA PLANEACIÓN Y TOMA DE DESICIONES SOBRE EL PROYECTO

AI inicio del proyecto se planteó no implementar hardware para la etapa analógica - digital, y en lugar de esto utilizar la tarjeta sound blaster de 16 bits. Esta tarjeta tiene la ventaja de que además de ser estándar comercialmente, sus características técnicas son suficientes a los requerimientos del proyecto (fidelidad, frecuencia de muestreo, estereofonía).

Se decidió por el reconocimiento a través de redes neuronales porque es más sencilla la implementación y existen herramientas desarrolladas en alto nivel para hacer más sencillo el reconocimiento de patrones, además de otras herramientas enfocadas al procesamiento digital de señales y al procesamiento digital de voz.

La red neuronal es del tipo multicapa perceptrón ya que se piensa que por sus características de reconocimiento es lo mejor para el reconocimiento de fonemas.

Se trabajó en una PC Pentium a 120 MHz, 8MB en RAM, con tarjeta de sonido(sound blaster), bocinas y micrófono.

Se utilizaron varios softwares tanto para construir la red neuronal como para ayudar a procesar las señales de audio. Estas herramientas son:

0 MatLab for Windows 4.2c.1.- Producto de la compañía Mathworks, es un lenguaje matemático de alto nivel donde se elaboran programas mediante funciones. Este paquete es de gran utilidad ya que contiene bibliotecas de dominio público en Internet que investigadores colocan para dar a conocer sus trabajos que pueden ser usados por otras personas. MatLab se utilizó para procesar la señal de audio(grabada), haciendo pruebas y programando métodos que determinen las entradas de la red neuronal.

0 NeuroShell 2.0 release 3.0.- Software de la compañía Ward Systems Group, Inc., es utilizado para construir redes neuronales. Este software permite construir una red neuronal tomando varios criterios y calcula los pesos de las neuronas, así como también convierte código a algún lenguaje de programación como C++, Visual Basic, etc.

0 Wave €difor.- Es un software de la compañía Creative Technology Ltd y se regala en la compra de la tarjeta sound blaster. Utilizar para realizar grabaciones de voz y separar los distintos fonemas en archivos.

Los dos primeros softwares son marcas registradas por la UAM y además se utilizaron otros como auxiliares, pero no es relevante para este informe.

17 U.A.M. IZTAPAMPA Ingeniería Electrónica Elías Sdnchez Sánchez

Page 18: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Para calcular las entradas de la red neuronal, cada fonema pasa por un procesamiento donde se calcula su fft y por medio de un algoritmo(ventana de Hamming) se obtienen los coeficientes espectrales reducidos a un número de aproximadamente 8, estos coeficientes serán las estradas de la red neuronal, y en sus salidas tendrá los fonemas que se reconocerán.

Las primeras grabaciones se hicieron como prueba con un solo hablante en una PC y con ruido normal del medio ambiente. Las grabaciones para el proyecto se realizaron en una cámara anecoica(ais1ada del ruido) con varios hablantes y grabando con la mejor calidad posible para tener datos fieles. Como los archivos de grabación son muy grandes se hizo una grabación de los hablantes a discos compacto(CD).

U .A. M. IZTAPALAPA Ingeniería Electrónica

18

Elías Sánchez Sánchez

Page 19: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

ESTUDIO PREVIO

Se realizó un estudio práctico para tener conocimientos y experiencia en la realización de grabaciones, preprocesamiento de la señal de voz, construcción, entrenamiento y pruebas de la red neuronal. Con los dos experimentos realizados: vocales y consonantes, se pretende hacer más eficiente el proyecto, puesto que se pueden tomar criterios con bases teóricas y prácticas.

VOCALES

Las vocales tienen una característica que las diferencia de los demás fonemas, las frecuencias son un buen parámetro de comparación para distinguir primero si es vocal y de que vocal se trata.

Las frecuencias formantes son los puntos máximos de una aproximación de la fft de una señal. Para el caso de una vocal, la primera formante(la de menor frecuencia) determina la vocal que se trata, pero no para todos los casos. En las pruebas que se realizaron se observó que no bastaba con obtener la primera formante, y se decidió por calcular las primeras cinco e introducirlas como, entrada a la red neuronal.

Para esta prueba se realizaron cinco grabaciones distintas de cada vocal por un solo hablante. Cabe señalar que en la emisión de cada vocal se varió mucho la velocidad de la voz, el tono y timbre, así como también el volumen. En total se obtuvieron 25 archivos, cada uno con una vocal. El ,formato de los archivos fue WAV a 16 bits, con frecuencia de muestre0 de 16 KHz. y un sólo canal(monoaura1).

Para la obtención de las primeras cinco formantes de cada vocal se hizo una función en MatLab la cual calcula la fft de la vocal y después obtiene la envolvente de esta señal mediante el método paramétrico ARMA, donde el coeficiente AR = 14 y MA = 12. Posteriormente se obtienen los primeros cinco picos de la envolvente.

19 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 20: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Código en MatLab para obtener las primeras 5 formantes de las vocales

f0rmante.m

function [C]=formante(archwav,grafica) %Calcula formantes de un archivo wav %[C]=formante(archwav,grafica) % archwav nombre del archivo wav % C matriz de formantes; % si grafica>O muestra las gráficas tiempo,fft y envolvente. %

%Crea y grafica la señal %fs=lOOO; %Frecuencia de muestre0 %t=O:l/fs:0.5; %tiempo %wl =I OO;w2=20; % I 00Hz+20Hz %x=sin(2*pi*wl*t)+sin(2*pi*w2*t); %plot(t,x) %title('Señal'); [x,fs]=wread16(archwav);

%Saco la fft X=abs(fft(x,512)); F1 =O:fs/(2*255):fs/Z;

%Ahora por el metodo parametric0 ARMA P=14; %Orden AR Q=2; %Orden MA [A,B]=ar-prony(x,P,Q); [H,W]=freqz(B,A,512); F=fs.*W/(Z*pi); H=abs(H);

OhGrafica if grafica>O

plot(x); %grafica en el tiempo

Ohgrafica fft: figure plot(F1 ,X(1:256)); title('FFT');

%envolvente: figure plot(F,abs(H)); title('ARMA');

end:

20 U.A.M. IZTAPALAPA Ingenieria Electrónica Elías Sánchez Sánchez

Page 21: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Como ejemplo, para una la1 se hace la siguiente llamada a la función formante, creada en Matlab.

Fa = formante('.a2.wav', 1 )

donde Fa es una matriz que contiene las cinco formantes.

En la siguiente figura se muestra la gráfica en el tiempo(sonorama) de la lal.

2000

1 O00

l o 1

-1 O00

-2000

I

-3000 O 500 1000 1500 2000 2500 3000

Tiempo

U.A.M. IZTAPALAPA Ingeniería Electrónica

22

Elías Sánchez Sánchez

Page 22: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz p o r medio de redes neuronales

~~~~

La siguiente figura muestra la gráfica de la fft del sonorama anterior.

3

2.5

l 2 1.5

1

0.5

X 104 3.5 -

FFT

O O 1000 2000 3000 4000 5000 $000

Calculando la envolvente de la m, mediante el método paramétrico ARMA, se obtiene la siguiente figura.

200

150

I100

50

OL O

ARMA

I O00 2000 3000 Flwnlancia

4000 5000

23 U.A.M. ETAPALAPA Ingeniería Electrónica Elias Sánchez Sánchez

_I_ ~ l . l " .. --- "-."".- """""-. ' -"*""u ""..""."

Page 23: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Se puede observar en la figura anterior que las cinco primeras formantes(1os primeros picos de la gráfica) son:

312.2, 872.1, 1302.8, 2734.7, 3714.5

DATOS:

Para las 25 grabaciones que se hicieron(5 de cada vocal) se obtuvieron los figuientes valores de sus primeras cinco formantes:

L

129.2

O 0 0 0 1 516.8 387.6 344.5 258.4 172.3 1 0 0 0 0 495.3 344.5 236.9 172.3 129.2 1 0 0 0 0 495.3 366.1 258.4 172.3 129.2 1 0 0 0 0 495.3 452.2 387.6 258.4

Se puede observar en la tabla anterior que las últimas cinco columnas son las que definen a la red neuronal de que vocal se trata. Por ejemplo para las muestras(reng1ones) de la /al, sólo la columna correspondiente a esta vocal tiene un 1 y las otras por lo tanto un O.

U.A.M. IZTAPALAPA Ingeniería Electrónica

24 ~~

Elías Sánchez Sánchez

Page 24: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Las cinco primeras muestras corresponden a las la/, los siguientes cinco a las le(, hasta llegar a las cinco muestras de la lul.

Rango de aproximación a la salida deseada.- Esta cantidad indica un intervalo entre la cantidad misma y 1. La razón de esta cantidad es que los cálculos de la red neuronal no obtendrhn soluciones exactamente en 1 para decir que se trata de una determinada vocal, sino un valor cercano a 1 en caso de que el patrón de entrada se parezca mucho a la columna de la vocal y un valor cercano a O si no se parece tanto. Es por eso que hay que indicarle a la red neuronal que tome un valor cercano a la unidad para decidir que es 1.

El rango de aproximación a la salida deseada que se tom6 para este caso fué 0.4. Esto quiere decir que cualquier valor entre 0.6 y 1 lo toma como 1, y el resto como O.

De las 25 muestras obtenidas, se ocuparon 20 para el archivo de entrenamiento y 5 para el archivo de prueba. El primero se ocupa para entrenar a la red neuronal y obtener los pesos sinápticos, mientras que con el segundo archivo se prueba la red neuronal. Es necesario tener datos de entrenamiento y de prueba distintos porque si se utilizan los mismos no se puede tener la seguridad de que los pesos obtenidos de la red funcionen para otros datos diferentes ya que la prueba se realizó con los mismos datos de entrenamiento.

La arquitectura de la red neuronal consta de 3 capas, éstas tienen 5, 7 y 5 neuronas respectivamente, por lo que la red tiene 5 entradas pertenecientes a las cinco formantes de cada vocal, y cinco salidas donde idealmente se tendrá un valor muy cercano a 1 en la posición de la vocal correcta y O en los otros cuatro.

U.A.M. IZTAPALAPA Ingeniería Electrónica

LJ

Elias Sánchez Sánchez

Page 25: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Para fines prácticos es más sencillo denotar la red neuronal sólo por sus tres capas, teniendo conocimiento de que se trata de la misma red.

El número de neuronas ocultas para 3 capas de la red se calcula con la siguiente fórmula:

# de neuronas ocultas = % (Entradas + Salidas) + d(# de muestras)

Para más capas, se divide el número anterior entre el número de capas escondidas.

Entonces la fórmula mejorada es:

# de neuronas escondidas = 2 *$número de entradas o características definidas + el número de salidas o características de clasificación) redondeado al entero mas cercano.

Funciones de activación:

Las funciones de activación mas utilizadas tanto en el experimento de las vocales como de las consonantes son:

logística f(x)=l/( 1 +exp(-x)) lineal f(x)=x

U.A.M. IZTAPALAPA Ingeniería Electrónica

26 EwSánchez Sánchez

Page 26: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

rango de (O, 1). Es recomendable utilizar esta función siempre que la salida de la red neuronal sean categorías. La función es la siguiente.

0.4 o. 2

Lineal - El uso de esta función generalmente está limitada por la capa de salida. Se utiliza para problemas donde la salida es una variable continua como la oposición a diversas salidas con categorías representantes. A través de la función lineal se desvía algo de la potencia de la red, &to algunas veces previene(ade1anta) que la red produzca salidas con error cercano a la escala de salida, esto es que los resultados pueden ser más consistentes a través de la escala. AI utilizar esta función es recomendable dar valores pequetios de velocidad de aprendizaje, momentos y tamaños de pesos iniciales. En otro caso, la red podría producir errores muy grandes y pesos que nunca tendrán un error bajo. A menudo la función de activación lineal es ineficiente porque si la capa de salida tiene muchas conexiones, entonces el total de la suma de los pesos será alto. La función de activación lineal es la siguiente.

Lineal

Velocidad de aprendizaje

Cada vez que una muestra se presenta a la red, los pesos llevan a un nodo de salida a ser modificado ligeramente el aprendizaje en una dirección requerida que produzca el error más pequeño a la siguiente vez que la misma muestra sea presentada. La cantidad de la modificación de pesos en el tiempo es la velocidad de entrenamiento. Por ejemplo si la velocidad de entrenamiento es 5, el cambio de peso es una mitad del error. La más grande velocidad de aprendizaje son los cambios mas grandes de los pesos. Si la velocidad de aprendizaje es muy grande puede ocurrir oscilación o no convergencia.

U.A.M. IZTAPALAPA Ingeniería Electrónica

26

Elías Sánchez Sánchez

Page 27: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Momento

Las velocidades grandes de aprendizaje llevan a la oscilación de los cambios de los pesos el aprendizaje nunca se termina, o el modelo converge a una solución que no es la óptima. Un camino a seguir para aprendizaje más rápido sin oscilación es hacer el cambio del peso una función del cambio del peso previo para proveer un efecto de alizamiento. El factor de momento determina la proporción del último cambio del peso que es agregado en el nuevo cambio del peso.

Pesos

Una neurona pasa valores de una capa de la red a la siguiente capa dentro de redes recurrentes, los valores son modificados por el valor del peso en la liga(uni6n) que representa la intensidad(fuerza) de conexión entre las neuronas.

Cuando la red es diseñada en arquitectura y módulo de parámetros, los pesos comienzan con números aleatorios que caen dentro de un rango específico en el módulo Como cada muestra pasa a través de la red, el peso es levantado positivamente para reforzar la conexión. AI reforzar negativamente o inhibir una conexión, el peso es decrementado.

Para la red de la vocales, la función de activación de las tres capas es logística, la velocidad de aprendizaje es O. 1 , el momento O. 1 y los pesos iniciales 0.1.

27 U .A. M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 28: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Después de 2045 épocas, la salida de los tres archivos, de prueba, de entrenamiento y muestra es la siguiente

Archivo de muestras Muestras procesados: 25

Archivo de aprendizaje Muestras procesadas: 5

28 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 29: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Archivo de entrenamiento Muestras procesadas: 20

Se obtuvieron los siguientes valores de error de reconocimiento:

0 Error promedio mínimo en el archivo de aprendizaje=0.385712

Dm t D m

Epocas Transcurridas

29 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 30: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

0 Error promedio mínimo en el archivo de prueba=0.3110039

Intervalos Transcurridos

La siguiente figura muestra las cinco gráficas de las entradas de la red neuronal en orden de la lul a la la1 de arriba hacia abajo.

Entradas: a,e,i,o,u (de abajo hacia arriba)

Valor

La salida ideal de la red neuronal consta de cinco gráficas donde se aprecia claramente que hay un pequeño traslape, pero debido a que éste está por abajo de 0.5 no se toma en cuenta. Cada una de estas gráficas corresponde a una vocal, siendo la la1 la primera del lado izquierdo y la lul la última del lado derecho.

30 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 31: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

1.0

o .8

0.5

Valor

0.3.

0.0

Número de Muestra

La siguiente figura muestra la salida obtenida por la red neuronal. Se puede observar que los valores máximos de las dos últimas gráficas, la 101 y la lul están abajo de 0.5, por lo que no se están reconociendo a estas vocales.

Número de Muestra

31 U.A.M. IZTAPAIAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 32: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

De la última gráfica se puede observar que solamente la la1 está entre (0.6, 1) y las otras vocales están abajo de 0.6. Como se tenía un rango de aproximación a la salida de 0.4 las otras cuatro vocales no son reconocidas por la red neuronal.

Hay varias razones por lo que la red neuronal no hace un buen reconocimiento de las vocales y de esto se pueden hacer las siguientes correcciones al experimento anterior.

l.

2.

3. 4.

Aumentar en número de muestras de entrada a la red. Esto es hacer más grabaciones de cada vocal. Para este caso cinco fueron muy pocas, además de que todas fueron hechas con diferencias muy diversas y difíciles de captar por la red neuronal. Hacer las grabaciones con características fieles. Grabar en una cámara aislada del ruido, con una frecuencia de muestreo mayor a 8KHZ y en estéreo. Aumentar el rango de aproximación a la salida a 0.5. Puede ser que al elegir otra arquitectura de red( aunque no es necesario) se obtenga un mayor reconocimiento.

NOTA

El procesamiento de la señal que se obtuvo mediante fft y aproximación ARMA no es práctico llevarlo a tiempo real, además de que sólo funcionaría para reconocer vocales.

CONSONANTES

Preprocesamiento:

La grabación fué de un sólo hablante y se utilizaron 5 emisiones diferentes para cada consonante. Las pruebas fueron hechas para 3 consonantes, lbl, Icl y Igl. fueron guardadas en archivos independientes en formato wav a 16 bits y con frecuencia de muestreo de 1 1 KHZ y monoaural.

32 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 33: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Se elaboró una función en matlab(specme1) la cual recibe como parámetro el nombre del archivo de la consonante(en formato wav) y entrega una matriz de 18 columnas y un número variable de renglones(dependiendo del tamaño del archivo). Las 18 columnas corresponden al algoritmo de la obtención de la escala de mel. La escala de me1 es la simplificación de datos del espectrograma sin perder la infromación importante.

La función utiliza como ancho de la m 256, frecuencia de muestreo fm de 11025 Hz.

Programa en MatLab:

function [M,WJ=specmel(Archivo,g,s) % % Obtiene el espectrograma en escala de me1 de un archivo wav. % NFFT=256; fm=llO25; % M=coeficientes me1 % Si g>O => grafica % Si s>O => reproduce(sonido)

[x,fs]=wread16(Archivo); NFFT=256; %Ancho de la FFT ??? 512 NOVERLAP=NFFT/2; %Solapamiento fm=l1025; %Frecuencia de muestreo dt=l/fm; tfinal=(length(x)-l)/fm; t=O:dt:tfinal; Maximo = max(x); Minimo = min(x);

load('mel2.dat'); %Cargo datos escala de me1 extrapolados a 8 KHz melscale=mel2;

DeseadoTotal=[]; MelTotal=[]; TTotal=[];

if s>o

end sound(x,fm);

%Calculo y grafico el espectrograma %subplot(2,1,2);

U.A.M. IZTAPALAPA lngenieria Electrónica

33

Elias Sánchez Sánchez

Page 34: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

if g>o

end

[S,F,T] = specgram(x,NFFT,fm,hamming(NFFT),NOVERLAP);

subplot(2,1,1); imagesc(T,F,20*loglO(abs(S))),axis x y , colormap(JET) title('Espectrograma'); xlabel('Tiempo'); ylabel('Frecuencia');

Q/Q--------------------------------------------------------- .............................. %Paso a escala de me1 todo el espectrograma S=abs(S); [rows,columns] = size(S); for c=l :columns,

r=l ; w=l ; while (r<rows) & (w<=length(melscale)-1)

M(w,c)=O; while (F(r)>=melscale(w)) & (F(r)<melscale(w+l)) & (rerows)

M(w,c)=M(w,c)+S(r,c); r=r+ 1 ;

end; w=w+ 1 ;

end; end; Q ! ....................... """ """""" """ _"" "_"" "_ - - %Gráfico todo el espectro en Escala de Me1 %figure %subplot(2,1 , 1);

M=ZO*loglO(abs(M));

if g>o subplot(2,I ,2);

axis([O tfhal Minimo*l.2 Maximo]); xlabel('Tiempo'); ylabel('Amplitud'); title('b1'); subplot(2,I ,Z); imagesc(T,melscale,M),axis x y , colormap(JET)

plot(t,x);

xlabel('Tiempo'); ylabel('Frecuencia'); title('Espectrograma en Escala de Mel');

end

U.A.M. IZTAPALAPA Ingeniería Electrónica

34

Elías Sánchez Sánchez

Page 35: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

W=melscale(2:length(melscale)); M=rot90(rot90(rot90(flipud(M))));

%clear M;

%Espectro 3D %figure('name','Espectro 3D'); %surf(T,F,20*loglO(abs(S))); %shading interp; %colormap(jet); %view(-25,65); %xlabel('Tiempo'); %ylabel('Frecuencia'); %zlabel('Amplitud');

Q/Q------------------------------------------------- ------__---____________ ___

Los coeficientes de la escala de me1 son los siguientes:

L 1 0 6 2 5 3 4 1 8 5 9 1 7 6 3 9 3 4 1 1 0 6 1 2 8 5 1 4 8 1 1 7 0 4 1 I 9 6 8 2 2 8 8 2 6 7 8 3 1 5 1 3 7 2 1 4 3 9 8 5 1 9 1 6 1 0 7 7 1 4 5 8 3 0 3 1

Por ejemplo, para una lb1 se ejecutó la función specmel de la siguiente forma

[Mbl]=specmel('bl .wav', 1,l)

El espectrograma normal y el espectrograma en escala de me1 se muestran a continuación

Espectrograma

Tiempo

35 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 36: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

El espectrograma normal y el espectrograma en escala de me1 se muestran a continuación

Espectrograma

5 3000

S! 2000

1 000

=I o

L

O O 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2

Tiempo

Espectrograma en Escala de Me1

V I

O 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 Tiempo

En el procesamiento del espectrograma normal al espectrograma en escala de me1 se obtuvo una matriz de 18 columnas y 19 renglones (ver Fig. 1 )

Para una 191:

[fWgl]=specmel('gl .wav',l ,I)

U.A.M. IZTAPALAPA Ingeniería Electrónica

37 Elias Sánchez Sánchez

Page 37: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Se obtuvieron los siguientes espectrogramas:

Espectrograma

O 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 Tiempo

Espectrograma en Escala de Me1

U I O 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18

Tiempo

Los datos correspondientes al espectrograma en escala de me1 se pueden ver en la fig 2.

38 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 38: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Para una Icl:

[Mcl]=specmel('.cl .wav', 1,l)

Los espectrogramas obtenidos son los siguientes:

Espectrograma

O 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 Tiempo

Tiempo

Los datos del espectrograma en escala de me1 se aprecian en la fig. 3.

39 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 39: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 40: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 41: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

RED NEURONAL

La red neuronal tiene 18 entradas las cuales corresponden a los coeficientes espectralas en escala de Me1 de los 15 archivos wav. Los primeros renglones son de las 5 Ibl's, abajo de estos las 5 Icl's y hasta abajo los renglones de las 5 191's.

En el programa NeuroShell se indicaron las entradas agregando 3 columnas mas, b, c y g. en estas se coló un 1 si el renglón corresponde a la consonante y un cero a las otras dos (ver anexol)

El archivo de muestras es conb-y.pat, contiene los datos de la lbl, Icl y Igl emitidas 5 veces.

Cada renglón es una muestra, por lo que en el archivo de entrada se tienen 304 muestras

Algunos valores estadísticos del archivo de entrada de la red neuronal son los siguientes:

AI igual que en el ejemplo de las vocales las ÚRimas columnas(en este caso tres) son la salida e indican a la red de que consonante se trata. Nótese que para el caso de las vocales había una muestra por cada diferente vocal, y para las consonantes hay alrededor de 20 muestras por vocal. Esto hace que el número de muestras por consonante crece significativamente y que la red neuronal tarde más en analizar las muestras.

Como en el caso de las vocales en el archivo de entrada a la red se tomaron por separado datos de entrenamiento y datos de prueba en la red.

41 U.A.M. ETAPALAPA Ingeniería Electrónica

~~ _" -

Elías Sánchez Sánchez

Page 42: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

La separación del archivo de entrada se hizo tomando el 20% para prueba y el resto para entrenamiento, la selección se hizo aleatoriamente. Así se tienen los siguientes datos:

244 muestras para el archivo de entrenamiento 60 muestras para el archivo de prueba.

La red neuronal que se utilizó fue recurrente con amortiguamiento retroalimentado (Jourdan - Elman).

La arquitectura de la red neuronal es la siguiente:

La capa 1 tiene 18 neuronas y utiliza la funcióln de activación lineal(-I , 1). La capa 2 tiene 19 neuronas y utiliza la funcióln de activación logística. La capa 3 tiene 03 neuronas y utiliza la funcióln de activación logística. La capa 4 tiene 18 neuronas.

La velocidad de aprendizaje es 0.1, el momento 0.1 y los pesos iniciales 0.3.

Para las 244 muestras del archivo de entrenamiento y 60 del archivo de prueba, se terminó de entrenar(iterar) en 23 min. 17 seg. con los siguientes valores.

U.A.M. IZTAPALAPA Ingeniería Electrónica

42

Elías Sánchez Sánchez

Page 43: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Archivo de entrenamiento: Eventos aprendidos :

1466 EDocas amendidas: 3577cz

Ultimo error promedio: 0.00019s~ Mínimo error Dromedio: 0.0001 999

Archivo de prueba: I Ultimo error promedio (interno): 0.0250714 I Mínimo error promedio: 0.0215574

43 U.A.M. IZTAPAIAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 44: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Recono8cimiento de palabras aisladas de voz por medio de redes neuronales

La gráfica del error durante el aprendizaje del archivo de prueba es la siguiente:

Error

t I

Intervalos Transcurridos

La gráfica del error durante el aprendizaje del archivo de aprendizaje es la siguiente:

Error

t

Epocas Transcurridas

44 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 45: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconolcimiento de palabras aisladas de voz por medio de redes neuronales

Factores de contribución para la lb1

2 4 6 8 10 '12 14 16 18

T T Número de Variable Max 4.813835~-02

Min 1.408029E-02

Factores de contribución para la Icl

'*O5 T

0.00 1 3 5 7 9 11 13 15 17

2 4 6 S 10 1.2 14 16 18 T ,

Número de Variabde Max 4.325825~-02 . Min 1.39921 5E-02

U.A.M. IZTAPALAPA Ingeniería Electrónica

45

Elías Sánchez Sánchez

Page 46: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconoicimiento de palabras aisladas de voz por medio de redes neuronales

Factores de contribución para la Igl

Factor 0.04 De Contri- 0.03 bución Relativo 0.02 9 ?j r

..

1 3 5 7 9 11 13 15 17 2 4 6 8 10 I2 14 16 18

T * Número de Variable Max 4.112767Eb2'

Min 1.600477E-02

Factores de contribución para la suma de las tres consonantes1

bución Relativo L l r .<b>dW *S1

2 4 6 8 10 312 14 16 18 T *

Número de Variable Max 0.1 21 12877 Min 4.966892E-02

U .A. M. IZTAPAIAPA Ingeniería Electrónica

46

Elías Sánchez Sánchez

Page 47: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconolcimiento de palabras aisladas de voz por medio de redes neuronales

Variables de salida después del entrenamiento para el archivo de muestras

Muestras procesadas: 304

Variables de salida después del entrenamiento para el archivo de

Muestras procesadas: 244 entrenamiento

47 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 48: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconalcimiento de palabras aisladas de voz por medio de redes neuronales

~~~

Variables de salida después del entrenamiento para el archivo de

Muestras procesadas:: 60 prueba

GRAFICAS DE SALIDA

En todas las gráficas el orden es siemlpre de izquierda a derecha comenzando con la b, luego la c y por último la g.

Salida Ideal 1.0

0.8

0.5

Valor O .3

0.0 1 31 61 91 121 151 181

v 211 241 271 301

Número de Muestra

48 U.A.M. IZTAPAIAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 49: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconalcimiento de palabras aisladas de voz por medio de redes neuronales

Salida obtenida por la red 1.005

0.754

0.503 Valor

0.251

0.000

-0 25 1 Número de Muestra

Diferencia de la salida ideal y la obtenida por la red

Valor

0.9

O .7

0.4

o .2

0.0

-0.2

-0.4

-0.7

-0.9

I

o 1

i'

Número de Muestra

49 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

Page 50: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

CONCLUSIONES

Los resultados obtenidos de la red neulronal para el caso de las consonantes lb!, IC( y Igl son buenos, en comparacich con los de las vocales. Esto se debe principalmente a que se tienen mayor núlmero de archivos de entrada para entrenar la red.

Se puede observar que para entrenar una red que reconozca a varios hablantes, es necesario hacer mayor número de grabaciones por hablante. Para este proyecto se ha pensado en un número que esté entre 12 y 20 hablantes.

50 U.A.M. IZTAPALAPA Ingeniería Electrónica Elías Sánchez Sánchez

~ _ _ _

Page 51: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Recono'cimiento de palabras aisladas de voz por medio de redes neuronales

PROYECTO

El proyecto tiene como objetivo reconocer el alfabeto, los números y algunas palabras. Se grabaron a 9 mujeres y 9 hombres, repitiendo cada una 7 veces el texto con las palabras que van a reconocer.

Para la entrada de la red neuronal se eligieron solamente 6 emisiones de cada persona, y la emisión restante se utilizó después para comprobar la eficiencia de la red neuronal obtenida.

El texto con las palabras que fueron grabadas es el siguiente:

A B C D E F G H I J K L M N Ñ O P Q R S T U W X Y Z

[DOBLE U] [YE1

O 1 2 3 4 5 6 7 8 9 10

S I NO

Las grabaciones del texto fueron hechas en formato .WAV a 16 bits, con frecuencia de muestre0 de 22 KHz y dos canales (estereofónico). Se utilizó una cámara anecóica para grabar con el menor ruido posible.

El proceso de los archivos de audio fue el mismo utilizado para las consonantes, con la variante que se utilizaron 20 coeficientes en la escala de Mel.

Como el volumen de datos fue muy alto se tuvo que dividir en tres archivos, cada uno con las muestras de todos los hablantes repetidas dos veces, así los tres archivos contenían la misma información. El proceso de estos tres archivos fue en cascada, esto es que la salida de uno(el valor de los pesos) se le da como entrada al siguiente. Este tipo de conexión entre las tres redes neuronales utilizadas es muy eficiente cuando se trabaja con un número de muestras muy grandes. Si se dividieran el tipo de emisiones en tres redes(por ejemplo de la [A] a la [L] en un archivo, de la [M] a la [Z] en otro y el resto en el último archivo), no se tendría tiempo, ni la información necesaria para aprender, por lo que los pesos de la red neuronal obtenida serían erroneos.

U.A.M. IZTAPALAPA Ingeniería Electrónica

51

Elías Sánchez Sánchez

Page 52: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconalcimiento de palabras aisladas de voz por medio de redes neuronales

La red Neuronal utilizada para cada archivo fue de tipo Probabilística, con una función de activación lineal y factor de alineamiento de O. El diseño consiste de tres capas, 20 en la primera y 39 en la última. El número de neuronas de la segunda capa es el número de muestras de cada archivo.

Red Neuronal Probabilística

El tiempo de aprendizaje promedio de cada rled neuronal fue de 45 minutos cada una. En el primer archivo se obtuvieron resultados satisfactorios, estos fueron mejorados en un 20% en el segundo archivo, que a su vez se mejoraron en un 5% en el tercer archivo, mismo que analizaremos por ser el que contiene los resultados finales. De esto podemos observar que el primer archivo es el más importante por lo que para que el resultado sea me,jor este archivo debe contener mayor número de muestras que los otros.

El valor mas bajo de R cuadrada para el últirno archivo de muestras fue de 0.9668, para el archivo de entrenamiento 0.9556 y para el de prueba 0.9232. El valor más bajo fue para la emisión F [efe], que estuvo muy lejano de las otras emisiones.

En total fueron procesadas 29568 muestras de las cuales 26652 se clasificaron correctamente y el resto 2916 incorrectamente Esto es reflejado en el porcentaje de error de muestras procesadas correctamente, que fue de 90.1%. Este resultado está en el límite tolerable de recolnocimiento para las muestras individuales de las emisiones, pero hay que aclarar que este parámetro indica que tan eficiente es el reconocimiento de cada muestra independiente de la emisión a la que pertenece. Esto significa que el reconocimiento de una sola muestra es muy difícil y no es util, pero si el reconocimiento de la mayoría de las muestras de cada emisión. En la práctica la red neuronal analizará gran parte de las muestras de una emisión y su clasificación dependerá de la inclinación hacia un patrón del porcentaje más alto de las muestras.

U.A.M. IZTAPALAPA Ingeniería Electrónica

52

Elías Sánchez Sánchez

Page 53: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal 1

Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Se realizó un programa que analizó los datos de salida por emisión para obtener un porcentaje de error. Este programa agrupó las muestras correspondientes a cada emisión de cada hablante y cuantificó el número de emisiones que no fueron reconocidas. El resultado cm porcentaje de ese programa fue el siguiente:

A 1 O0 B 1 O0

C 95 D 1 O0

95 1 O0 89 89

E 89 F 1 O0 89

L- 1 oo G

95 H 85

I 1 O0 95

I K I 1 O0 I L

1 O0 M 1 O0

N 95 Ñ 1 O0 1 1 1 O0

1 O0 95

F I 95 3 95

89 1 O0

I 6 I 1 O0 I

i; 1 O0 1 O0

I 9 I 95 I

P O 95

S; i 1 O0

P 1 O0

53

Ingeniería Electrónica Elías Sánchez Sánchez U.A.M. IZTAPALAPA

Page 54: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

En la siguiente gráfica se puede observar visualmente el porcentaje de reconocimiento de todas las emisiones. Es claro que la mayoría de las emisiones son reconocidas totalmente(lOO%) y solo algunas con un 85 % de aceptación como es el caso de la F, esto quiere decir que de calda 100 emisiones de la [Flque son analizadas, solo 85 son reconocidas como tal.

~ Porcentaje de Reconocilmiento sin Ruido

, " , , , , , , , , , , I , , , I I , , ~ I , , , , , , ~, , , , r r - , - - ~ , , , , , , A B C D E F G H I J K L M N Ñ O P Q R S T U W X Y Z O l 2 3 4 5 6 7 8 Q l O s m

I Emi~sión

Para que se puedan comparar de forma sencilla el porcentaje de aceptación de la red neuronal de todas las emisiones sin cuantificar, podemos auxiliarnos de la siguiente gráfica de pay

U.A.M. IZTAPALAPA Ingeniería Electrónica

54

Elías Sánchez Sánchez

Page 55: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

I

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Analizando las gráficas anteriores podemos observar que el resultado es satisfactorio porque el porcentaje de reconocimiento es muy alto. El defecto de estos resultados es que no son para aplicaciones reales ya que el ruido en las emisiones es casi nulo. Si se quiere aplicar a algo práctico sería muy difícil conseguir las mismas condiciones de grabación que los hablantes utilizaron en esta prueba. Lo mas real es que se grabe con determinado porcentaje de ruido, algunas voces, el sonido de la computadora y algunos sonidos lejanos y tenues.

Para comprobar la efectividad real de la red neuronal obtenida anteriormente, se realizó otro proceso de reconocimiento, utilizando las 18 emisiones no usadas para el entrenamiento de la red neuronal y agregando otras 18 que si fueron utilizadas se obtuvo un archivo en el cual fueron alterados todos los datos. Cada emisión fue distorsionada con 20% de ruido blanco. Así se obtuvieron los siguientes resultados de reconocimiento de emisiones:

A B

89 87

C D

87 83

E F

89 77

G 83 H 74

I

L 87 K 83 J 90

89 O 83 Ñ 87 N 87 M 87

P Q

87 87

R S

83 87

T 83

I"+; 90 77

X 77 Y 77

87 87 83 83 83 77 87 87 84 87

9 10

83 83

I si I 86 I I no I 87 I

El porcentaje de reconocimiento disminuyó en menos del 8% para la mayoría de las emisiones, para algunas casi no varió y para muy pocas disminuyó mas del 15%.

U.A.M. IZTAPALAPA Ingeniería Electrónica

55 r

Elías Sánchez Sánchez

Page 56: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

I

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

~"

Porcentaje de Reconocimiento con Ruido

En la gráfica de pay se puede observar con más claridad que para la mayoría de las emisiones casi no se alteró el porcentaje de reconocimiento.

U.A.M. IZTAPALAPA Ingeniería Electrónica

56 ~~

Elías Sánchez Sánchez

Page 57: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

CONCLUSIONES

A pesar de los avances realizados en el estudio del reconocimiento del habla todavía no se ha encontrado una solución óptima o más bien confiable. Se han iniciado técnicas nuevas, mejorado las anteriores, se ha utilizado mejor hardware y softwares de audio, pero el resultado obtenido como solución requiere de muchos sacrificios y limitantes para ser realizable.

La tarjeta de sonido y el microprocesador del C.P.U. deben ser muy rápidos, la persona debe grabar su voz varias veces para que la red neuronal se vaya entrenando o alterando equivocadamente si el hablante no realiza la grabación correctamente. La grabación de entrenamiento se debe realizar con el menor ruido posible y la de reconocimiento con un poco mas de ruido. La peor desventaja de este tipo de proceso es que el ruido para realizar reconocimiento de voz debe ser mucho menor al que se puede tener en condiciones normales de trabajo en el medio.

A pesar de esas desventajas, se ha avanzado mucho en el estudio del reconocimiento de voz para varios sectores, y algunas de sus desventajas se han superado con software y hardware especial.

En el trabajo presentado se realizó una serie de experimentos para obtener información útil que se pueda enfocar al reconocimiento de patrones en general, y específicamente a palabras aisladas de voz, pero también puede servir para realizar un estudio de discurso continuo de voz. Los resultados obtenidos fueron mejores de los esperados debido a que se realizó un estudio preliminar y se pudieron realizar cambios importantes como el tipo de red neuronal final que fue fundamental en el tiempo de procesamiento.

Es importante hacer notar que la forma en que sean grabadas las emisiones, el tipo de procesamiento de las señales y las características de la red neuronal dependen de las características propias del problema a resolver. Deben tomarse en cuenta el grado de fidelidad de las grabaciones, un estudio del tipo de voces de las personas, los algoritmos que pueden servir para procesar la señal y obtener las muestras, los parámetros y tipos de redes neuronales y la forma de aplicar los resultados al problema.

El estudio realizado se puede mejorar utilizando grabaciones más puras y fieles para los archivos de entrenamiento, aumentando el número de hablantes y mejorando los algoritmos de procesamiento de las señales. El programa de entrenamiento de la red neuronal se puede optimizar reduciendo tiempos y utlilizando mejor los recursos de hardware como la memoria RAM, disco duro y comunicación directa con la tarjeta de sonido.

U.A.M. IZTAPALAPA Ingeniería Electrónica

57

Elías Sánchez Sánchez

Page 58: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

Los resultados de la red neuronal sin ruido fueron satisfactorios porque casi todas las emisiones resultaron reconocidas. Para la red con ruido disminuyen en 10% las emisiones reconocidas. El ruido que se aplicó a las emisiones es interpretado como ruido normal, es una emisión de ruido como el sonido del ventilador de una PC mezclado con voces tenues de otras personas. Se pueden mantener resultados satisfactorios si el ruido no pasa del 15% de la emisión total.

En un futuro muy próximo seguramente se tendrán herramientas más poderosas y nuevos descubrimientos que optimizarán el reconocimiento de patrones en general.

U .A. M. IZTAPAIAPA Ingeniería Electrónica

58

Elías Sánchez Sánchez

Page 59: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

n n

Page 60: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 61: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 62: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 63: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

I

N Q, t o t

;n"

Page 64: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 65: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 66: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

D D

Page 67: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales
Page 68: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

'd - d

O m m

M

2 d - m P- d d m

? m

3

ci m

w w m m

m O

m

N a c o .m C

v) N a -c o 'm S

0

Page 69: UNIVERSIDAD AUTONOMA METROPOLITANA148.206.53.84/tesiuami/UAM2540.pdf · INFORME DEL PROYECTO TERMINAL I y II Reconocimiento de pahabras aisladas de voz por medio de recles neuronales

Proyecto Terminal Reconocimiento de palabras aisladas de voz por medio de redes neuronales

BIBLIOGRAFíA

"Neural Networks for vision speech and Natural Language." Linggard R., Myers D. J., Nightingale C. CHAPMAN & HALL 1994

"Neural Computing, Research and Applications" Gerry Orchard

"Desarrollo de un Sistema de Reconocimiento Automático del Discurso Continuo, Independiente del Hablante y con Vocabulario Ampliable" Rufiner Leonardo, Zapata Daniel 1992

"Neural Networks, a comprehensive foundation" Haykin, Simon 1994

"Propuestas para mejorar el funcionamiento de las redes neuronales de Hopfield, Hamming y Carpenter-GrossBerg" Nakano Miyatake, M; Pérez Meana, H; Sánchez Garcia, J.C; Niño de Rivera y Oyarzábal, L. Rev. Mex. Ing. Biomed. Vol. XV No. 2, 1994.

"Multilayer Hopfield and Hamming Neural Networks with Binary Input Patterns" Nakano Miyatake, M; Pérez Meana, H; Sánchez Garcia, J.C; Niño de Rivera International symposium on Information Theory & its Applications Sydney, Australia, 20-24 November 1994

"Digital Processing of Speech Signals" Prentice-Hall 1987

69 U.A.M. IZTAPAIAPA Ingeniería Electrónica Elías Sánchez Sánchez