You are on page 1of 56

Anexo A UN ESTUDIO FONETICO DEL ESPAOL HABLADO EN MEXICO

Fonema Los fonemas son unidades lingsticas del habla. El conjunto mnimo que se permite decir en cualquier frase. Una palabra como por ejemplo, /paso/ esta formada por una serie de cuatro fonemas, ya que el m imo de unidades mnimas en que puede ser di!idida es /p/ " /a/ " /s/ " /o/, sin que podamos fragmentar cada uno de estos fonemas en elementos ms peque#os$ tanto la /p/, como la /a/, como la /s/, como la /o/ son unidades completamente indi!isibles.

Clasificacin e los soni os el len!"a#e$ I% Por la accin de las cuerdas vocales %e clasifican en sonidos sonoros y sonidos articulados sordos, seg&n que !ibren o no !ibren las cuerdas !ocales . Entre las primeras se encuentran todas las !ocales y muchas consonantes como por ejemplo 'b, d, g, l, m, n (. Los sordos solo se producen en espa#ol dentro de los sonidos consonnticos como por ejemplo 'p, t, ), s, f (.

II% Por la accin del velo del paladar *or la acci+n del !elo del paladar los sonidos se clasifican en orales y nasales. Los sonidos orales se producen cuando el !elo del paladar deja pasar el aire solo a tra!,s de la ca!idad bucal como en 's, p, b(. Los sonidos nasales se producen cuando el !elo del paladar baja. *or lo tanto el aire sale a tra!,s del conducto nasal como en 'm, n, #(. III% Por el modo de articulacin -ependiendo de la manera de articulaci+n, los fonemas se di!iden en. a/ 0biertos como las !ocales

b/ Los medio cerrados o continuos como algunas consonantes's, f, ( y c/ 1errados o interruptos como 'p, t, ), b( . El concepto de modo de articulaci+n tiene una aplicaci+n decisi!amente prctica en el grupo de sonidos consonnticos, de esta manera los podemos di!idir en. Ocl"si&as 1uando hay un cierre completo de los +rganos articulatorios como sucede en las consonantes 'p, t, ), b, d, g(. %eg&n el lugar de articulaci+n, los +rganos que inter!ienen y la oposici+n creada por la !ibraci+n o no !ibraci+n de las cuerdas !ocales. Estas consonantes se clasifican en. Labiales 0l!eolares 2elares sorda 'p(, sonora 'b( sorda 't(, sonora 'd( sorda ')(, sonora 'g(

0hora bien estas consonantes sonoras 'b, d, g( en algunas condiciones fon,ticas determinadas se reali3an como oclusi!as como en 'comba(, 'donde(, 'h&ngaro( etc. En otros conte tos fon,ticos se reali3an como fricati!as, es decir con los +rganos articulatorios medio cerrados como en 'lobo(, 'lodo(, 'lago(, entre otros. F'ica(i&as %on producidos cuando e iste un cierre parcial de la boca. 1omo sucede en los fonemas 's, f, (. Af'ica as %e dan cuando se roduce un cierre parcial de la boca y posteriormente sobre!iene una peque#a abertura por donde se desli3a el aire contenido por el primer momento de cierre, percibi,ndose claramente la caracterstica de fricaci+n como sucede en 'ch(. )i*'an(es %e da el nombre de consonantes !ibrantes a aquel grupo de sonidos cuya caracterstica principal es la de poseer una o !arias interrupciones momentneas durante la salida del aire de la boca. %e di!iden en . 2ibrante simple 2ibrante m&ltiple 'r(. 'rr(

Nasales %u rasgo fundamental es que el aire pasa a tra!,s de las fosas nasales. El !elum impide que el aire salga a tra!,s de la ca!idad bucal como sucede en 'm, n, #(. Semi&ocales %e producen como las !ocales, pero con la lengua en una posici+n muy e trema, las semi!ocales son '4,y,l(.

An+lisis es,ec('o!'+fico el soni o El timbre del sonido !iene dado por la posici+n de frecuencia que guardan sus formantes. Los formante son reas de resonancia que se pueden obser!ar en los espectrogramas. Un espectrograma es una manera de representar la se#al, que muestra la energa de la se#al por tiempo y por frecuencia. El primer formante denominado F1 guarda la relaci+n con la abertura de la boca. 1uando la abertura es m ima, la frecuencia de dicho formante es ms ele!ada . En el caso contrario la frecuencia del formante disminuye. El orden que siguen las !ocales de mayor a menor frecuencia del primer formante es el siguiente. /a/ /e /o/, /i/ y /u/, las figuras 0.5 y 0.6 muestran la secuencia de fonemas /i/ /e/ /a/ /o/ y /u/ respecti!amente, y se puede obser!ar la posici+n de sus formantes 75 y 76 para cada !ocal. El segundo formante denominado F2 sufre modificaciones debido a la posici+n que guarda la lengua en la boca. )ocales an(e'io'es- ,os(e'io'es . cen('ales 1uando la lengua ocupa un lugar en la regi+n delantera de la ca!idad bucal, se originan las !ocales anteriores . -entro de esta serie anterior se hallan las !ocales /i/ y /e/. %i la lengua se encuentra en la parte mas interior de la boca se originan las !ocales de la serie posterior como la /u/ y la /o/. *or &ltimo si la lengua se encuentra en la parte media de la boca, se originan las !ocales centrales como la /a/.

7igura 0.5 Espectrograma de la secuencia de fonemas /i/ /e/ /a/.

7igura 0.6 Espectrograma de la secuencia de fonemas /o/ /u/. *or &ltimo la figura 5.8 muestra la clasificaci+n de las !ocales en cuanto a la posici+n de sus formantes 75 y 76, donde 75 indica el grado de abertura del canal bucal y 76 indica la posici+n de la lengua en la ca!idad bucal.

7igura 5.8

1lasificaci+n de las !ocales dependiendo de la posici+n de sus formantes 75 y 76.

Ca,/("lo I P'ocesamien(o el Len!"a#e Na("'al


I$I In('o "ccion En la actualidad ha surgido la necesidad de crear interfaces las cuales puedan interactuar con los usuarios de una forma natural, tal como lo es el uso del lenguaje hablado ya que un usuario podra desear comunicarse con un sistema al hablar o teclear una frase. La in!estigaci+n en este campo tiene dos moti!aciones primarias. 5/ La moti!aci+n tecnol+gica es construir sistemas de c+mputo inteligentes, tales como interfaces de lenguaje natural a bases de datos, sistemas de anlisis de te to, sistemas de entendimiento de !o3 o sistemas de instrucci+n asistida por computadora. 6/ La moti!aci+n lingstica es obtener un mejor entendimiento de c+mo los humanos se comunican usando el lenguaje natural. El procesamiento del lenguaje natural puede ser di!idido en dos campos. En(en imien(o el len!"a#e na("'al . !ene'acin el len!"a#e na("'al 012$ El entendimiento del lenguaje natural in!olucra tomar alguna frase hablada o tecleada y procesarla para obtener su significado.

La generacin del lenguaje natural o sntesis consiste en lo contrario, es decir tomar alguna representaci+n formal de qu, es lo que se desea decir y e presarlo en alg&n lenguaje natural. 0ntes de iniciar con el trabajo de la obtenci+n del significado de una frase, primero se debe trabajar en la obtenci+n del conjunto de palabras que estn siendo habladas. Esto es 9:econocimiento de !o3; y es la primera etapa del entendimiento del lenguaje. 1omo salida obtenemos la secuencia de palabras habladas. Una !e3 que se obtiene esta secuencia de palabras, el resto del proceso de entendimiento puede ser di!idido en las siguientes etapas. Anlisis sintctico, Anlisis semntico y Anlisis pragmtico '<omita.5=>?(. 1ada uno de estos procesos cumple con una tarea necesaria para llegar a un entendimiento del lenguaje natural hablado. 0 continuaci+n se e plicarn con ms detalle cada uno de estos procesos y se concluye este captulo con una e plicaci+n sobre la generaci+n del lenguaje o sntesis. I$3 E(a,as el en(en imien(o el len!"a#e na("'al Las etapas del entendimiento del lenguaje natural pueden clasificarse como sigue. 4econocimien(o e &o5. %e anali3a la se#al de !o3 y se obtiene una secuencia de palabras. An+lisis sin(+c(ico. La secuencia de palabras es anali3ada usando conocimiento de la gramtica del lenguaje y se obtiene la estructura de la frase. An+lisis sem+n(ico . ,'a!m+(ico. En el anlisis semntico se utili3a la informaci+n de la estructura de una frase y el significado de las palabras en ella, de esta manera se obtiene una representaci+n parcial del significado de la frase completa. En el anlisis pragmtico la representaci+n parcial del significado de la frase es complementada usando la informaci+n de conte to, esto es, detalles como. 1undo y d+nde fue dicho y qui,n lo dijo.

I$3$I 4econocimien(o e &o5 La se#al de !o3 es una se#al anal+gica, la cual se captura a tra!,s de un micr+fono y posteriormente es digitali3ada. Esta informaci+n es procesada pare reducir la cantidad de informaci+n de la se#al y obtener aquellos datos rele!antes para el reconocimiento.

El siguiente paso es encontrar la@s/ palabra@s/ a la@s/ que corresponde. *ara el desarrollo de esta tesis, se han utili3ado reconocedores de prop+sito general los cuales han sido desarrollados en el laboratorio de reconocimiento automtico de !o3 @<latoa/ de la U-L0. Estos reconocedores se han implementado haciendo uso de las herramientas pro!istas por el 1enter for %po)en Languaje Understanding @1%LU/ del Aregon Braduate Cnstitute @ABC/. El proceso de construcci+n de estos reconocedores asi como la tecnologa que ha sido empleada para su elaboraci+n se e plicar con mayor detalle en el captulo CC y 2. I$3$3 An+lisis sin(+c(ico o ,a'sin! *ara lle!ar a cabo el anlisis de la estructura sintctica de una frase se debe considerar la gramtica y la t,cnica de parseo. La gramtica es una especificaci+n formal de las estructuras permisibles en el lenguaje. La t cnica de parseo es el m,todo de anali3ar una sentencia para determinar su estructura de acuerdo a la gramtica'0llen 5=>>(. 0ntes de inciar con el desarrollo del anlisis sintctico a continuaci+n se e plican las gramticas y los formalismos ms usados para su definici+n. I$3$3$6 7'am+(icas Los lenguajes naturales estn descritos por gramticas que agrupan palabras en categoras sintcticas tales como sujetos, predicados, etc. '8(. Las gramticas se componen de los siguientes smbolos. !erminales Es un smbolo que no aparece en el lado i3quierdo de ninguna producci+n. "o terminales %on los nodos u hojas en un rbol de anlisis sintctico. #roducciones 1onjunto de reglas de reempla3o. $%m&olo de inicio Es un smbolo no terminal designado como el elemento del cul las cadenas se comen3arn a deri!ar. Forma sentencial 1ualquier cadena de caracteres deri!able desde el smbolo de inicio. Frase Es una forma sentencial consistente de smbolos terminales. Las reglas de sinta is especifican la posible organi3aci+n de las palabras en las frases y nos permiten determinar la estructura de una frase particular.

Una gramtica de lenguaje natural especifica la estructura de frases permisibles en t,rminos de categoras sintcticas bsicas, tales como sustanti!os y !erbos. Esto es similar a las gramticas de los lenguajes de programaci+n. 0 causa de la complejidad del lenguaje natural, es improbable que una gramtica cubra todas las posibles sentencias gramaticales'DeriotEFatt Uni!ersity 5==>(. *ara anali3ar la estructura de una oraci+n, se debe usar un parser, el cual, dada una frase y una gramtica, !erifique que la frase cumpla con la gramtica. -e ser as el parser regresa una representaci+n de la estructura de la sentencia. La representaci+n es normalmente un rbol. Este rbol sintctico indica los posibles agrupamientos de palabras dentro de componentes sintcticos, los cuales estn organi3ados por ni!eles jerrquicos. E isten notaciones para definir una gramtica. *or ejemplo el metalenguaje GH7 @7orma Gac)usIHaur/, es una forma de especificar lenguajes de libre conte to'DeriotEFatt Uni!ersity 5==>(. I$3$3$3 Fo'malismos "(ili5a os ,a'a la efinicin e las !'am+(icas$ 'ramticas de li&re conte(to )*onte(t Free 'rammars+.Estan definidas de la siguiente forma. JsmboloK JsmboloK5L Jsmbolo Kn . %e dice que una gramtica es de libre conte to debido a que solamente se presenta una categora sintctica en el lado i3quierdo de la producci+n. %i e istiera ms de una categora sintctica esto describira un conte to, por lo que se llamara gramtica dependiente del conte to. ,edes de transicin simple. Este formalismo esta basado en la noci+n de una red de transici+n que consiste de nodos y arcos etiquetados. La figura 5.5 muestra una red llamada 9:edEsimple;, en la cual cada arco esta etiquetado con una categora de palabra ya sea artculo, ustanti!o o adjeti!o. El procedimiento para lle!ar a cabo un recorrido por la red es el siguiente. *ara a!an3ar de un nodo a otro en la red, la palabra actual en la frase debe pertenecer a la categora del arco que une a los nodos, si esto se cumple entonces se a!an3a al siguiente nodo y se procede a procesar la siguiente palabra de la frase. Este formalismo no es lo suficientemente poderoso para describir todos los lenguajes que pueden ser descritos por una 17B '0llen 5==>($ para obtener el poder descripti!o de las 17Bs es necesario tener una noci+n de recursi+n en la red.

A #e(i&o 4e 8sim,le
no o6

A'(/c"lo

no o3

S"s(an(i&o

no o9

Sali a

7igura C.C Ejemplo de una red de transici+n simple llamada 9:edEsimple;. ,edes de transicin recursi-a. Una red de transici+n recursi!a @:<H/ es como una red de transici+n simple, pero adems permite tener arcos que hacen referencia a otras redes o a ella misma en lugar de categorias de palabras. La figura 5.6 muestra una red de transici+n recursi!a. La recursi+n en este tipo de redes se obser!a cuando una red puede tener un arco etiquetado con su propio nombre.

A #e(i&o 4e 8'ec"'si&a
no o6

N4

no o3

S"s(an(i&o

no o9

Sali a

7igura C.6 Ejemplo de una red de transici+n recursi!a llamada 9:edErecursi!a;. Esta red hace referencia a otra red llamada H:.

Los tres formalismos anteriores se pueden comparar de acuerdo a su capacidad generati!a, la cual es el rango de lenguajes que cada formalismo puede describir. 1ualquier lenguaje generado por una 17B puede ser generado por una :<H y !ice!ersa$ es decir, estos dos formalismos son equi!alentes en su capacidad generati!a'0llen 5==>(.

E iste un formalismo llamado 'ramticas dependientes del conte(to que pueden generar lenguajes que no pueden ser deri!ados por las 17B s. Una gramtica dependiente de conte to puede tener ms de un smbolo en el lado i3quierdo de su producci+n. El trabajo en la teora de los lenguajes formales comen3+ en 5=M? por 1homs)y quien defini+ a las gramticas libres de conte to y dependientes del conte to. <ambi,n defini+ a las gramticas regulares las cuales son un subconjunto de las gramticas libres de conte to. Las gramticas regulares son equi!alentes en su capacidad generati!a a las redes de transici+n simple'0llen 5==>(. I$3$3$9 Ti,os e An+lisis sin(+c(ico o Pa'sin! En general pueden ser !arias y diferentes reglas que pueden ser usadas para e pander o reescribir una categora sintctica dada. El parser debe ser capa3 de checar a tra!,s de todas ellas para !er si la frase cumple con alguna combinaci+n de ellas. *ara parsear una frase se debe buscar a tra!,s de todas las posibilidades de una manera efecti!a, yendo a tra!,s de todas las posibles estructuras sintcticas para hallar una que satisfaga la sentencia 'DeriotEFatt Uni!ersity 5==>(. E isten di!ersas formas para hacer esto. Una forma es hacer primero una b&squeda en profundidad a tra!,s del rbol, y se reali3a un anlisis sintctico in!erso o bac)trac)ing cuando una palabra en la frase falla al compararse a la categora sintctica esperada. Gac)trac)ing no es un m,todo muy eficiente, sin embargo e isten otros m,todos que pueden e!itar esto. *or ejemplo, un c/art parser utili3a una estructura llamada 9chart; en donde graba todas las producciones posibles que pueden deri!ar a una cadena de entrada, de esta manera nunca tiene que !ol!er atrs'DeriotEFatt Uni!ersity 5==>(. El anlisis sintctico o parsing nos ayuda a entender c+mo las palabras estn agrupadas para construir frases complejas. El anlisis sintctico nos permite determinar los posibles agrupamientos de palabras en una sentencia. 0 continuaci+n se e plican dos t,cnicas comunes de anlisis sintctico para 17Bs y redes de transici+n recursi!a y adems se e plica con mayor detalle la t,cnica bac)trac)ing y la estrategia de usar una estructura de tipo chart . E isten dos t,cnicas simples y comunes para lle!ar a cabo el anlisis sintctico para 17Bs , las cuales son conocidas como anlisis sintctico ascendente y anlisis sintctico descendente. En las dos secciones siguientes se muestran algunos ejemplos de las t,cnicas de anlisis sintctico ascendente y descendente. Estos ejemplos se decidieron mostrar en este captulo para que el lector que no esta muy in!olucrado con el tema cono3ca un poco a cerca de ellos. *osteriormente en el captulo CCC se habla de los parser L: y chart un poco ms y se reali3an comparaciones entre ellos. 7inalmente se e plica el parser *:A7E:'Naiser 5==>(

6$3$3$9$6 An+lisis sin(+c(ico escen en(e Este m,todo empie3a a partir de la representaci+n de la frase y la descomponerla en subconstituyentes hasta que se deri!a cada palabra especfica en la frase. En esta t,cnica se crea un rbol de anlisis sintctico desde la ra3 hacia abajo '8( . 0 continuaci+n se muestran algunos ejemplos de t,cnicas de parseo para 17B s y para redes de transici+n recursi!a. a % Pa'sin! escen en(e con 'e es e ('ansicin 'ec"'si&a El estado del parser en cualquier momento puede ser representado como sigue. Posicin ac("al . registro de la parte de la frase que ha sido parseada. No o ac("al. El nodo en el que se encuentra actualmente en la red. P"n(o e 'e(o'no. En el caso de que se esta en una red la cual fue llamada desde otra red, es necesario tener el registro del nodo de la red orgen que es donde se continuar el proceso una !e3 que se llegue al final de esa red. *ara a!an3ar de un nodo a otro se pueden presentar los siguientes casos. 5/ %i el arco esta etiquetado con una categora y la siguiente palabra en la frase se encuentra en esa categora. 0ctuali3ar la posici+n actual al inicio de la siguiente palabra 0ctuali3ar el nodo actual al inicio del siguiente nodo en la red 6/ %i el arco esta etiquetado para ir a una nue!a red 0gregar el destino del arco al punto de retorno 0ctuali3a el nodo actual al nodo de inicio de la nue!a red 8/ %i el arco esta etiquetado con la etiqueta 9salida; y el punto de retorno no esta !aco :emo!er el primer punto de retorno y colocarlo en el nodo actual. O/ %i el arco esta etiquetado con 9salida; y la lista de puntos de retorno esta !aca y no hay ms palabras a la i3quierda. El parser fu, e itoso 0lgunas frases son parseadas e itosamente usando el algoritmo anterior, en particular el proceso de parsing sera e itoso siempre que el orden de las palabras de entrada corresponda al orden en la red de transici+n. %in embargo el proceso puede fallar en el caso de que una frasea falle al tratar de ir de un nodo a otro ya que alguna palabra no se pudo clasificar en esa categora y no se pudo a!an3ar en el proceso de parsing.

1uando se sigue un arco, pero e isten otros arcos los cuales pueden seguir al nodo actual, entonces es necesario guardar las posiciones que podran haber resultado de seguir cada uno de esos caminos, de tal manera que si el parser llega a un punto en el cual no se puede continuar, entonces simplemente toma uno de los puntos guardados y reinicia el proceso de parsing. Este proceso se denomina bac)trac)ing. *% Pa'se's escen en(es ,a'a CF7s Un algoritmo para este tipo de parsing podra seguir el ejemplo anterior, en donde la informaci+n rele!ante para describir un estado del proceso de parsing para 17B s podra incluir dos !alores. la posici+n actual y una cadena de smbolos gramaticales que han sido deri!ados por las reglas pero que no se igualan con las cadenas de entrada. En cada etapa se considera el smbolo ms a la i3quierda en la lista.%i ,ste smbolo nombra la categora de la siguiente palabra, se remue!e el smbolo y se actuali3a la posici+n actual. -e otra manera se pueden construir nue!as posibilidades para deri!ar el smbolo ms a la i3quierda de acuerdo a la gramtica. 6$3$3$9$3 An+lisis sin(+c(ico ascen en(e En este tipo de anlisis se inicia con las palabras indi!iduales y se reempla3an con su categora sintctica. 1rea un rbol de anlisis sintctico desde las hojas hacia arriba '8(. La heramienta bsica para el proceso de parseo ascendente es tomar una secuencia de smbolos e igualarlos al smbolo del lado derecho de las producciones. La igualaci+n se considera usando un smbolo llamado 9cla!e;, el cual es el smbolo que se encuentra en el lado derecho de la producci+n. *ara hallar las reglas que igualan a una cadena se buscan las reglas que inician con esa 9cla!e; o reglas que ya hayan sido iniciadas por 9cla!es; anteriores y que requieren a la 9cla!e; actual ya sea para completar la regla o para e tenderla '0llen 5==>(. 0 continuaci+n se muestra un ejemplo de una deri!aci+n ascendente usando la gramtica de la tabla C.C y adems se utili3a una estructura llamada chart @!ese secci+n 5.6.6.8/. El proceso inicia con la 9cla!e; 0:<C1ULA, entonces se eligen las reglas 6 y 8 @!ese tabla 5.5/, dado que ellas inician con 0:<C1ULA. *ara anali3ar la siguiente 9cla!e; es necesario guardar estas 6 reglas las cuales pueden seguir deri!ndose con la siguiente 9cla!e ; de entrada. -e tal manera que pueden escribirse las reglas utili3ando un smbolo 9; para indicar que estas reglas han sido elegidas parcialmente, como se muestra a continuaci+n.

6P H* 8P H*

0:<C1ULA %U%<0H<C2A 0-QE<C2A 0:<C1ULA %U%<0H<C2A

%i la siguiente 9cla!e; es un %U%<0H<C2A entonces la regla O se ane a y adems la regla 6P se e tiende de la siguiente forma. 6PP H* 0:<C1ULA %U%<0H<C2A 0-QE<C2A

5 6 8 O M ?

% H* H* H* 2* 2*

Ejemplo de gramtica de conte to libre H* 2* 0:<C1ULA %U%<0H<C2A 0-QE<C2A 0:<C1ULA %U%<0H<C2A %U%<0H<C2A 0-QE<C2A 0URCLC0: 2E:GA H* 2E:GA H*

<abla C.C Ejemplo de una gramtica libre de conte to El registro del estado de un parser ascendente se lle!a a cabo en una estructura llamada chart. Esta estructura es un registro de las posiciones de las palabras y de las nue!as estructuras deri!adas de la sentencia. El chart mantiene tambi,n el registro de las reglas que han sido elegidas pre!iamente pero que no se han completado. En la figura C.8 se puede obser!ar que despu,s de haber obtenido como entrada un 0:<C1ULA y posteriormente un %U%<0H<C2A en la estructura hay dos elementos que fueron tomados de la entrada al proceso de parsing llamados 0:<C1ULA5 y %U%<0H<C2A5. 0dems hay cuatro arcos acti!os, dos reglas H* comien3an con 0:<C1ULA de 5 a 6, una regla H* comien3a con 0:<C1ULA y %U%<0H<C2A de 5 a 8 y una regla H* que comien3a con %U%<0H<C2A de 6 a 8.
A4TICULO6
NP

6
NP

A4TICULO SUSTANTI)O

8 SUSTANTI)O6
SUSTANTI)O AD:ETI)O

NP

A4TICULO SUSTANTI)O AD:ETI)O

NP

A4TICULO SUSTANTI)O AD:ETI)O

7igura C.8 Estructura 1hart despu,s de haber recibido la cla!e 0:<C1ULA seguido de un %U%<0H<C2A.

En este tipo de anlisis, adems de la estructura chart mostrada anteriormente, se debe contar tambi,n con una pila que contendr elementos que no han sido introducidos en la estructura chart. Esto permite que cuando se lea una palabra de la frase, todas sus posibles categoras a las que pertene3ca sern colocadas en la pila. En la actualidad e iste un gran n&mero de t,cnicas de parsing, las mostradas anteriormente son s+lo algunas de las t,cnicas bsicas que han sido empledas en el proceso de anlisis sintctico del lenguaje natural, pero que han sido la base para el desarrollo de nue!as t,cnicas. En el captulo CCC se describen algunos de los parsers que han sido construidos para lle!ar a cabo un proceso de parsing del lenguaje natural. %e describen los parsers L: @basados en el algoritmo de <omita/'<omita 5=>?( y los 1hart parsers @basados en el algoritmo de EarleyPs/ '%hieber 5==S(, adems del parser *:A7E:'Naiser et al. 5===( el cual ha sido utili3ado para el desarrollo de esta tesis. I$3$3$1 7ene'a o'es e Anali5a o'es sin(+c(icos Es posible e!itar el escribir programas de anlisis sintctico, mediante el uso de programas generadores de anali3adores sintcticos que e isten. Tuchos de los generadores de anali3adores sintcticos de la actualidad incluyen una tabla y un controlador dentro de un programa '8(. Un ejemplo de programa generador de anali3adores sintcticos muy conocido es U011 @Uet 0nother 1ompiler 1ompiler/ que !iene con el sistema operati!o UHCR. I$3$9 An+lisis sem+n(ico . ,'a!m+(ico$ El anlisis semntico y pragmtico tienen que !er con la obtenci+n del significado de la frase. En el anlisis semntico se obtiene una representaci+n parcial del significado de una frase, basado en la estructura obtenida del anlisis sintctico y el significado de las palabras que componen la frase. En el anlisis pragmtico se elabora el significado basado en conocimiento conte tual y del medio ambiente, en el cual se lle!+ a cabo la generaci+n de la frase. *ara obtener el significado de la oraci+n no basta con conocer al significado de las palabras que la componen. Es por ello que se requiere de un cocimiento adicional, es decir, informaci+n del conte to, por ejemplo. Vu, fue dicho, por qui,n y por qu,, y que es lo que se dijo antes. E isten aplicaciones en las cuales el sistema hace una pregunta y se saben de antemano las respuestas que puede o debe dar el usuario. En estos casos es necesario solamente hacer uso de la secuencia de palabras obtenida. *or ejemplo en un sistema por tel,fono,

en donde solo se desea determinar si el usuario respondi+ 9si ; o 9no; a una pregunta. -ependiendo de la respuesta se ejecutar una determinada acci+n. *ara los prop+sitos de esta tesis esta tesis, la obtenci+n del significado de una frase corresponde a una consulta a una base de datos, usando como entrada el lenguaje natural. 6$9 7ene'acin e Len!"a#e na("'al Este proceso comien3a con una idea que indica WVu, es lo que se desea comunicar y qu, informaci+n se desea dar a conocerX. *or lo tanto se debe obtener una secuencia de palabras que e presen el objeti!o. La generaci+n del lenguaje natural puede ser di!idida en dos etapas'DeriotEFatt Uni!ersity 5==>(. Etapa 5. 1onsiste en decidir qu, decir, comen3ando con un objeti!o y hallar la secuencia de palabras que permitan lograr ese objeti!o. Etapa 6. Dabiendo decidido qu, decir, se debe determinar c+mo decirlo. La frase gramaticalmente correcta, debe hacer uso de pronombres y palabras que el oyente pueda comprender. 1uando e iste solo un conjunto peque#o de tipos de frases que sern requeridas por un sistema, es posible usar un formato preparado el cual contenga espacios en blanco, los cuales se llenan con los datos deseados y posteriormente se dan a conocer al oyente en forma escrita o hablada. 6$1 Am*i!;e a en el len!"a#e Uno de los principales problemas en el entendimiento del lenguaje, es la ambigedad. Estosignifica que las frases tienen ms de una posible interpretaci+n. Las ambigedades ocurren en todas las etapas del entendimiento del lenguaje natural 'DeriotEFatt Uni!ersity 5==>(. Am*i!;e a es en el 'econocimien(o e &o5. El problema es esta etapa es que e isten palabras que tiene significados diferentes pero prcticamente tiene la misma pronunciaci+n. Am*i!;e a sin(+c(ica. %e puede dar en dos formas. a/ una palabra dada puede tener ms de una posible categora sintctica, b/ una frase puede tener ms de una estructura o rbol sintctico. Am*i!;e a sem+n(ica. %e da por el hecho de que una palabra puede tener ms de un significado, esta es llamada tambi,n ambigedad l, ica.

Am*i!;e a ,'a!m+(ica. %e da cuando no es claro el objeti!o del hablante, por ejemplo, en la frase W %abes qu, hora esX. Ho se sabe si es un criticismo o una pregunta normal cuyo objeti!o es obtener el dato concreto.

Ca,i("lo III Pa'se's ,a'a el ,'ocesamien(o el len!"a#e na("'al 9$6 In('o "ccin En los sistemas de lenguaje hablado se han utili3ado comunmente dos lenguajes. el primero puede ser descrito usando una gramtica regular @:B/, llamada a menudo gramtica de estado finito y un lenguaje libre de conte to que puede ser descrito usando una gramtica libre de conte to@17B/':ingger 5==M(. Las gramticas semnticas han sido utili3adas para accesar a bases de datos. Beneralmente un lenguaje de representaci+n de conocimiento, se puede usar para especificar las relaciones entre los conceptos y las relaciones @ a menudo estado finito/ '(. El reali3ar un proceso de parsing en !o3 espontnea es una tarea difcil ya que los usuarios a menudo dicen cosas que no son cubiertas en el l, ico y la gramtica. La !o3 puede contener ruido, disfluencias etc. El propio reconocedor tambi,n puede fallar al tratar de reconocer la !o3. E isten sistemas los cuales reali3an un proceso de parsing de !o3 espontnea. *DAEHCR es uno de ellos y y ha sido utili3ado en los sistemas de informaci+n de !uelos a,reos @0<C%/. En 0<C% los usuarios reali3an consultas para ontener informaci+n de horarios, destinos,!uelos etc. *DAEHCR da respuesta a los usuarios reali3ando un acceso a una base de datos. El parser *:A7E: que se ha utili3ado en esta tesis es equi!alente funcionalmente a *DAEHCR en t,rminos de parsing robusto 'Naiser et al 5===(. 9$3 Sis(emas e en(en imien(o e &o5 Los in!estigadores en reconocimiento de !o3 y lingstica computacional tienen el inter,s de crear mquinas que entiendan el lenguaje hablado, los reconocedores de !o3 son buenos sistemas para transcribir la !o3, pero eso no representa entendimiento, por otro, lado los sistemas de lenguaje natural son buenos para e traer el significado de la informaci+n te tual, por lo tanto los sistemas de entendimiento de !o3 necesitan in!olucrar el trabajo tanto de los reconocedores de !o3 como los sistemas de procesamiento de lenguaje natural. 0lgunas formas de conjuntar estas dos reas es haci,ndolo a tra!,s de los siguientes escenarios. %istemas de entendimiento del lenguaje bajamente acoplados %sistemas de entendimiento del lenguaje altamente acoplados

9$3$6 Sis(emas e en(en imien(o el len!"a#e <a*la o *a#amen(e aco,la os En este escenario la transcripci+n producida por un reconocedor de !o3 es lle!ada posteriormente a un parser de lenguaje natural para e traer su significado'Naiser 5==>(. Estos tipo de sistemas no modelan la forma natural como el humano reali3a este procedimiento, debido a que los humanos usamos durante la etapa de reconocimiento de !o3, una entrada lingstica @!o3/ y adems conocimiento conte tual simultneamente, de tal forma que es posible detectar errores de pronunciaci+n, notar malentendidos y reali3ar conjeturas. 9$3$3 Sis(emas e en(en imien(o e len!"a#e al(amen(e aco,la os$ 1ole y Qa)imi) '5=>Y( sugieren que un parser para entendimiento de !o3 debe funcionar secuencialmente, es decir mientras acepta entrada de derecha a i3quierda, debe producir simultneamente predicciones de posibles palabras esperadas, y debe ser capa3 de retroalimentarlas al reconocedor para limitar su espacio de reconocimiento. Tientras es capa3 de predecir, tambi,n debe usar conocimiento o informaci+n de conte to para ir formando un anlisis parcial del posible significado de la sentencia. 9$9 Pa'se's L4 con('a C<a'( Pa'se's Los reconocedores de !o3 necesitan e pectati!as para limitar el tama#o de reconocimiento ac&stico. Entre los parsers ms utili3ados en el campo del procesamiento del lenguaje natural estn los 1hart parsers @basados en el algoritmo de EarleyPs/ '%hieber 5=>S( y los parsers generali3ados de i3quierda a derecha @BL: basados en el algoritmo de <omita/'<omita 5=>?(. 0mbos tipos de parsers son capaces de lle!ar a cabo un proceso de retroalimentaci+n al reconocedor de !o3 para en!iar predicciones sobre las posibles palabras que puedan suceder a continuaci+n, esto permite al reconocedor limitar su espacio de reconocimiento ac&stico. Este proceso tiene un incon!eniente, el lle!ar a cabo un proceso de retroalimentaci+n in!olucra que las tablas propias de los parsers se sobrecarguen durante el tiempo de ejecuci+n y esto puede generar problemas en el desempe#o del parser. Esta sobrecarga se puede eliminar transformando estos tipos de parsers en aceptores de estado finito @7%0s/'*ereira et al. 5==S(. Los parser L: basados en el algoritmo de <omita, aceptan la entrada estrictamente de derecha a i3quierda como lo requiere la naturale3a del entendimiento del lenguaje natural, este tipo de parser son +ptimos para los lenguajes formales, pero no son capaces de tratar con la ambigedad'<omita 5=>?(.

Los 1hart parsers pueden tratar con una gran clase de gramticas de conte to libre que son tpicamente las ms usadas para definir lenguajes naturales. *ara reali3ar el parsing del lenguaje hablado el primer tipo de parser no es muy poderoso mientras que el segundo lo es demasiado. El BL: parser ignora la posibilidad de poder encontrar construcciones no naturales en el lenguaje, de esta forma puede operar con una menor sobrecarga en su poblaci+n de su tabla L:, comparado con un chart parser. El parser de <omita no guarda en memoria los estados que sucedieron antes de llegar a un estado particular'<omita 5=>?(. Esta falta de memoria puede causar un e cesi!o Gac)trac)ing cuando el algoritmo intenta recuperar todos los posibles estados antecesores a un estado final. Atro algoritmo que trata con el uso de la informaci+n antecesora en el conte to de los L: parsers es el de *ereira y Fright '*ereira y Fright 5==S(. 1on el m,todo para construir apro imaciones de estado finito @7%0/ a partir de gramticas libre de conte to @17B/. El uso de 7%0 es la base para un procesamiento de parsing muy eficiente, ms eficiente que el uso de un chart parser y ms eficiente que usar un BL: parser 'Naiser 5==>(. Una apro imaci+n de estado finito no necesita mantener una tabla 1hart o una tabla L: y un stac), porque la informaci+n ya est contenida en la estructura propia del 7%0'*ereira y Fright 5==S(. Los 7%0s de *ereira y Fright'5==S( estn dise#ados para generar conjuntos de predicciones de palabras, produciendo un modelo de lenguaje para el reconocedor. Ho son usados para reali3ar un anlisis incremental de la entrada, por lo tanto no producen una salida etiquetada a partir de la entrada. Los m,todos de parsing descritos anteriormente requieren que las reglas de la gramtica est,n escritas en alg&n formalismo libre de conte to, con la e cepci+n de *hoeni , ya que este usa un formalismo de definici+n de gramtica del tipo caseIframe'Fard 5==5(. La notaci+n 17B es el formalismo de definici+n de gramticas estndar en el campo del procesamiento del lenguaje natural, y esto moti!a fuertemente el uso de 17Bs como la base para definir parsers de lenguaje natural. %in embargo la realidad es que la notaci+n caseIframe da la posibilidad de describir lenguajes no regulares'Naiser 5==>(. El reconocedor de la gramtica en el 1%LU tool)it '%utton et al. 5===( actualmente usa un formalismo de lenguaje regular no una notaci+n libre de conte to.

0 continuaci+n se describe el sistema llamado *hoeni , el cual fue desarrollado en la Uni!ersidad de 1arniege Tellon. El sistema *hoeni utili3a una notaci+n caseIframe y ha sido utili3ado en sistemas de informaci+n de lenguaje hablado de una manera e itosa.

9$= Sis(ema P<oenix Es ms que solo una mquina de estado finito, est descrita como un chart parser restringido a causa de que su definici+n de lenguaje permite solo gramticas regulares 'Fard 5==5(. En t,rminos de eficiencia de parsing, *hoeni es equi!alente al parser BL: de <omita. 0L igual que el parser BL: en *hoeni la ciclicidad, la densidad o la ambigedad infinita no son posibles. Este parser acepta transcripciones de un reconocedor de !o3 y reali3a un procesamiento de parsing de esa entrada. Ho hay una retroalimentaci+n predicti!a al reconocedor de !o3. *hoeni es un sistema actualmente siendo desarrollado en la Uni!ersidad de 1arnegie Tellon Uni!ersity para entender !o3 espontnea. *hoeni se implement+ para dar ser!icio de informaci+n de !uelos a,reos @0ir <ra!el Cnformation %er!ice 0<C%/. En 0<C% los usuarios ejecutan preguntas para obtener informaci+n acerca de !uelos, aeropuertos, destinos, horarios etc. La &nica entrada el sistema es la !o3. Es importante destacar que cuando un sistema acepta como entrada la !o3 humana se pueden encontrar problemas en la generaci+n de !o3 espontnea como los siguientes. :uido del usuario.I 1omo la respiraci+n del usuario, pausas y otros ruidos generados por el usuario. :uido del ambiente.I :uido de tel,fono, de puertas etc. 1obertura gramatical.I Los usuarios amenudo repiten y reinician frases.

*ara atacar estos problemas *hoeni utili3a modelos de sonido no !erbales, modelos de palabra fuera del !ocabulario y un parsing fle ible'Fard 5==5(, a continuaci+n se describe con mayor detalle cada uno de ellos. Mo elos e soni o no &e'*ales En esta t,cnica se agregan modelos adicionales al sistema que representan sonidos no !erbales. Estos modelos son entrenados como si fueran modelos de palabra pero se usa tambi,n el ruido de la entrada. -e esta forma los sonidos que no son palabras son mapeados en to)ens que tambi,n no son palabras. Mo elos e ,ala*'a f"e'a el &oca*"la'io

%e utili3a el concepto de 9trifonema; @fonema dependiente del conte to/ donde el modelo permite a cualquier 9trifonema; seguir a cualquier otro 9trifonema; @dado por supuesto que el conte to es el mismo/. Utili3a para ello un modelo de probabilidad 9bigram;. Los 9bigrams; son entrenados de un gran diccionario de pronunciaciones en ingl,s 'Fard 5==5(. Pa'sin! flexi*le La informaci+n semntica se presenta en un conjunto de frames donde cada frame contiene un conjunto de slots los cuales representan pie3as de informaci+n. 1ada tipo de slot esta representado por una red de estado finito separada la cual especifica todas las formas de decir el significado representado por el slot. La gramtica es una gramtica semntica, los no terminales son conceptos semnticos en !e3 de partes de !o3'Fard 5==5(. Las cadenas o frases las cuales no forman una sentencia en la gramtica del ingl,s a&n son procesadas por el sistema. La gramtica es compilada dentro de un conjunto de redes de estado finito. Esto es 9particionado; en el sentido en que en !e3 de tener una red grande hay muchas redes peque#as. Las redes pueden llamar a otras redes, por lo tanto se reduce significati!amente el tama#o total del sistema. La estructura total del sistema puede e presarse de la siguiente manera. El m+dulo de reconocimiento de !o3 es el sistema %phin 'Lee 5=>=(. %phin es un sistema de reconocimiento de !o3 continua independiente del locutor. 0ctualmente el reconocedor y el parser no estn integrados, la entrada de !o3 es digitali3ada y entonces es dada como entrada al reconocedor %phin . El reconocedor usa un modelo del lenguaje 9bigram; para producir una simple palabra desde la entrada de !o3 y esta palabra es pasada al parser basado en frames el cual asigna la palabra a los slots en el frame correspondiente. Los slots con el mejor promedio son usados para construir objetos. En este proceso todas las fechas, tiempos, nombres etc. son mapeados dentro de una forma estndar la cual construye el query a la base de datos. 1ada frame tiene una funci+n asociada. -espu,s de que la informaci+n es e trada y los objetos han sido construidos, se ejecuta la funci+n del frame, el cual construye el query a la base de datos @si es apropiado/ y lo en!a al manejador de base de datos, @en este caso %UG0%E/ y despliega los resultados al usuario. Esta es la forma en que reali3a sus funciones el sistema *hoeni , a continuaci+n se presenta una descripci+n del parser *:A7E:, el cual ha sido utili3ado para el desarrollo de esta tesis.

9$> Pa'se' P4OFE4 ?P'e ic(i&e 4o*"s( Fini(e@s(a(e ,a'sE4% Naiser '5==>( sugiere que es necesario construir un parser el cual combine los mejores elementos de un parser robusto como *hoeni , un parser L: como el de <omita'<omita 5=>?( @el cual produce conjuntos de predicciones al reconocedor de !o3/ y 0ceptores de estado 7inito como aquellos descritos por *ereira y Fright '*ereira y Frigth 5==S(. <odo esto para optimi3ar el funcionamiento en tiempo de ejecuci+n. El parser *:A7E: @*redicti!e :obust 7initeIstate parsE:/ propuesto por Ed Naiser deri!a una mquina de estado finito @7%T/ de una gramtica regular. La usa para producir un conjunto de predicciones al reconocedor de !o3 y un solo etiquetado incremental de la entrada. El parser *:A7E: produce rboles de parsing incrementales etiquetados, esto para garanti3ar la posibilidad de generar una representaci+n e acta de estado finito en la definici+n de la gramtica.

%eg&n Naiser '5==>( un parser debe reunir los siguientes criterios. -ebe producir conjuntos de predicciones por medio de la retroalimentaci+n al reconocedor de !o3. -ebe mantener la ambigedad m&ltiple que es necesaria no solo para la ambigedad estructural y l, ica frecuentemente presentada en el lenguaje natural -ebe sugerir sustituciones de palabras que no se entendieron de la entrada. -ebe ser capa3 de a!an3ar sobre las palabras de la entrada que no coinciden con ninguna categora gramatical, tales como ruido o una entrada irrele!ante. -ebe ser capa3 de aceptar un ordenamiento aleatorio de la entrada, esto con una estructura de notaci+n de la gramtica del tipo caseIframe.

En el ane o G se e plica mediante un manual el uso de este parser. En este manual se describen las con!enciones para la definici+n de la gramtica asi como los comandos que se utili3an para ejecutar el proceso de parsing.

Man"al

ANEXO B e "so el ,a'se' P4OFE4 ?P'e ic(i&e4o*"s( Fini(e@s(a(e ,a'sE4%

Las reglas para definir la gramtica en el parser *:A7E: se describen a continuaci+n. 5/ Las gramticas estn definidas como modelos los cuales estn asociados con etiquetas que corresponden al nombre de una red. 1ada red indi!idual debe tener su propio archi!o de definici+n @el nombre del archi!o debe ser el mismo que el nombre de la etiqueta que define la red/, y la e tensi+n debe ser .gra. 6/ Los nombres de red deben contener solo letras min&sculas sin espacios. *ara separar palabras dentro de un nombre de red se puede utili3ar el siguiente smbolo 9E;. 8/ Los terminales que estn dentro de alg&n modelo deben ser secuencias de letras min&sculas, no se debe utili3ar el smbolo 9E; para separar palabras. O/ El nombre de un no terminal que se encuentre al inicio de un patr+n debe corresponder e actamente al nombre del archi!o en el cual aparece. M/ Los subsecuentes no terminales que se encuentran dentro de un modelo deben constar de letras may&sculas, sin espacios y se puede incluir el smbolo 9E; para separar palabras. ?/ Los no terminales deben aparecer en el margen i3quierdo y no deben estar precedidos por un espacio en blanco, estos no terminales definen un bloque de modelos los cuales se mapean dentro de este modelo no terminal. S/ 1ualquier no terminal no debe aparecer en el archi!o de definici+n debajo del bloque en el cual est definido. >/ -ado que no todas las e presiones de gramticas libres de conte to pueden ser traducidas dentro de un formalismo de e presiones regulares empleado por el estilo del parser @caseIframe/, se deben tomar en cuenta algunas restricciones. El nombre de red que aparece en el tope del archi!o que lo define no debe aparecer dentro de alguna red la cual apare3ca dentro del mismo archi!o de definici+n. Cgualmente un no terminal no debe aparecer dentro de un bloque de modelos los cuales define.

=/ 1ada modelo debe estar precedido con un espacio en blanco en la lnea en la que ocurre. 5Y/ Los elementos dentro de un modelo representan conjunci+n, es decir, cada elemento de un modelo debe ser !isto secuencialmente en la entrada como se encuentra

definido en el modelo. 0dems los elementos dentro de un modelo pueden ser marcados como opcional @Z/, uno o ms @"/, o cero o ms @Z" o "Z/. 55/ Los aspectos de conjunci+n y disyunci+n pueden ser combinados para lle!ar a cabo un proceso de parsing parcial de la entrada. 1onceptualmente estas cantidades definen slots dentro de frames, la cual es la arquitectura caseIframe del sistema *hoeni .'Fard 5==5(

Ca'ac(e'es 02 ?% A B BA AB

%ignificado Encierran el nombre de una red Encierran elementos que estn definidos dentro de una red -esigna Y o una ocurrencia del termino que sigue al smbolo Z -esigna una o ms ocurrencias del t,rmino seguido de " -esigna Y o ms ocurrencias del termino seguido por BA o AB

<abla G.5 %mbolos usados en los archi!os de definici+n de la gramtica. Coman os "sa os ,o' el ,a'se' P4OFE4 Una !e3 que se han construido los archi!os que definen la gramtica, se deben compilar en la mquina de estado finito @7%T/, la cual ejecutar el actual parsing. Los siguientes comandos 1%LU tclsh reali3an esta operaci+n. 1%LUsh 6.Y5b[ pac)age require :parser 1%LUsh 6.Y5b[ rp init consultasEtype.gra 1%LUsh 6.Y5b[ rp uninit 1uando el comando rp uninit retorna este habr creado una serie de archi!os 9.rtn; y 9.net; en el mismo directorio donde se encuentran los archi!os 9.gra; que definen la gramtica y que fueron compilados con la llamada al comando 9rp init;. Los archi!os 9.rtn; y 9.net; son la representaci+n binaria de la mquina de estado finito y agregan informaci+n de soporte para cada red. En el ejemplo anterior dado que el nombre del archi!o en el ni!el m imo es consultasEtype.gra, entonces se genera un archi!o con el mismo nombre con la e tensi+n 9.net; el cual contiene una representaci+n binaria de la mquina de estado finito completa.

-espu,s de que la gramtica ha sido compilada. %e dispone de los siguientes comandos dentro de 1%LUsh tclsh.

rp init nombre 'Ee t(.gra 'options(

El comando rp init inicia una sesi+n y pro!oca que la gramtica del ni!el m imo designada por el archi!o 9nombre 'Ee t(.gra; sea compilada o leda desde su archi!o de representaci+n binaria 9nombre'Ee t(.net;. 1uando el comando retorna la mquina de estado finito @7%T/ del parser ha sido cargada en memoria y esta lista para ser usada hasta que se in!oque el comando 9rp uninit;. Las opciones disponibles para este comando o para el comando rp parse son las siguientes. Icanonical 101 1ausa que todos los nombres de red los cuales terminan en 9Ec; apare3can en la salida solo como nombres de red, sin los t,rminos de la entrada que el parser mapeo para ese identificador de red. Ifile 101 Le indica al parser que lea la entrada desde un archi!o. El nombre del archi!o que contiene la secuencia de palabras que sern procesadas por el parser debe aparecer e actamente despu,s de que se indic+ esta opci+n y su e tensi+n debe ser .t t. I/ide 101 Esconde todas las palabras en la salida que no se mapearon dentro de alguna red la cual termina con 9Efs;. Iinput 101 *ro!oca que se muestre cada palabra que ocurre en la gramtica. 1ada palabra se muestra encerrada entre corchetes @brac)eting/. Ilogallocs 101 1rea un listado de ciertas localidades de memoria las cuales mostradas en un archi!o llamado 9allocLog.t t; en el directorio actual. son

Ima(fi 101 1uando se indica la opci+n ma fi 5, la ruta que termina con el m imo n&mero de elementos9Efi; ser el marcador ms alto. *or otro lado cuando se coloca la opci+n ma fi Y, la ruta que termina con el mnimo n&mero de elementos 9Efi; ser el marcador ms alto. Inbest YLn Especifica el n&mero de rutas finales que sern en!iadas a la pantalla. Iprettyprint 5/Y 1ausa que la salida sea impresa de una forma que es entendible y legible para el humano. Iprint 5/Y 1ausa que se impriman en la pantalla los identificadores de las redes y la estructura origen, la cual es la estructura bsica de la mquina de estado finito.

Iprintconte tentries 5/Y %olo se puede usar en conjunci+n con print o printtofile y causa que se imprima en pantalla o en un archi!o @dependiendo del comando con el que se este usando/ la estructura del conte to. Iprinttofile 1ausa que la salida se imprima en un archi!o, los identificadores de red y de la estructura origen, la cual es la estructura bsica del 7%T. La impresi+n !a por default a un archi!o llamado fromtable.t t Iprolog 5/Y 1ausa que la salida sea etiquetada con un estilo de estructura usada por prolog. Iscore 5/Y 1ausa que se impriman los marcadores para cada rbol de parsing de la entrada. Istring 5/Y 1ausa que el parser lea la entrada desde la cadena que sigue inmediatamente despu,s de que se indic+ la palabra cla!e 9string;. Itail 5/Y 0grega el carcter de combinaci+n 9\; al final de cada frase etiquetada que corresponde a una lista de prolog. Itcl 5/Y 1ausa que sea impresa la salida en el campo 9result; del interprete acti!o tcl. Itime 5/Y 1ausa que se imprima el tiempo consumido ya sea en el proceso de compilaci+n o en el proceso de parsing. Itranscript 5/Y 1ausa que la salida sea una secuencia de palabras que fueron mapeadas dentro de las redes de la gramtica. Istream 5/Y Este modo permite al usuario ir tecleando una palabra a la !e3 y permite !er el conjunto de palabras esperadas que el parser tiene hasta ese punto. Iprune 5/Y pro!oca que el mecanismo de poda se ejecute o n+. Esta bandera controla el mecanismo de poda en rutas que se intersectan. Es decir rutas que llegan juntas al mismo punto en la entrada, esta bandera esta por default a 5. rp fili3e nomEarchi!o.t t Este comando espera el nombre de un archi!o dentro del cual e isten definiciones de gramticas secuenciales. Este comando crea archi!os separados para cada definici+n de red. rp parse 'opciones( Este comando causa que el parser lle!e a cabo el proceso de parsing de la entrada y retorna alguna informaci+n de salida dependiendo de la opci+n que se le indique. rp uninit Este comando es llamado para terminar una sesi+n de parsing. 1uando una gramtica es nue!amente compilada, su representaci+n binaria ser colocada en memoria hasta que sea in!ocado este comando para terminar la sesi+n.

Con&enciones El parser *:A7E: usa con!enciones las cuales permiten e pander la jerarqua bsica, de tal forma que se pueden definir frames dentro de frames hasta un ni!el deseado. En el sistema *hoeni 'Fard 5==5(e iste la siguiente jerarqua de archi!os forms frames slots nets Los archi!os del ni!el m imo son 9forms; los cuales estn compuestos de 9frames;, los cuales pueden ser reconocidos en cualquier orden y n&mero de !eces. Estos frames estn a su !e3 compuestos de 9slots;, los cuales tambi,n pueden ser reconocidos dentro de sus respecti!os frames en cualquier orden y n&mero de !eces. Los slots estn compuestos por 9nets; los cuales pueden ser reconocidos dentro de su respecti!o slot en cualquier orden y n&mero de !eces. En el parser *:A7E: '1%LU 1enter for %po)en Understanding 5==>(la jerarqua es la siguiente. Etype Efs Efi net 'Ec( La e plicaci+n de estas con!enciones es la siguiente. 2type Los archi!os que terminan con Etype definen el nombre de red del ni!el m imo de la definici+n de la gramtica. Ejemplo 'consultaEtype( @"%LA</ %LA< @A:01CAH/ A:01CAH @'sujetoEfs(Z'predicadoEfs(/ Este ejemplo podra deri!ar frases las cuales se componen de sujeto solamente o con sujeto y predicado @debido al 9Z; antes de la red denominada 9predicadoEfs;/. La opcion

9"; antes de la palabra %LA< significa que podrn deri!arse con ,sta gramtica una o ms frases. Efs Los archi!os que termina en Efs definen un frame, que son entidades semnticas que contienen slots. Ejemplo. 'sujetoEfs( @"%LA</ %LA< @'sujetoEfi(/ 1on esta gramtica se pueden deri!ar una o ms frases que contengan los elementos definidos en 9sujetoEfi;. Efi Los archi!os que terminan en Efi definen un @f/feature @i/item, es una entidad semntica que por con!enci+n no contiene slots, sino que define items. Ejemplo. 'sujetoEfi( @Z'articulo( 'sustanti!o( Z'adjeti!o(/ 1on esta gramtica se pueden deri!ar frases que se podran componer de. a/ b/ c/ d/ 0rtculo, sustanti!o y adjeti!o. 0rtculo y sustanti!o %ustanti!o y adjeti!o %ustanti!o. Ec Los archi!os que terminan en Ec definen una etiqueta de nombre can+nica. -e esta forma m&ltiples cadenas de entrada pueden ser mapeadas dentro de una simple forma can+nica.

Ejemplo. 'articulo( @el/ @los/ @las/

Un parser para un sistema de entendimiento de !o3 altamente acoplado seg&n Naiser '5==>( debe ser capa3 de. *roducir un conjunto de predicciones secuenciales al reconocedor de !o3 Lle!ar a cabo un a!ance m&ltiple y un anlisis incremental, el cual puede ser dado a la salida en la forma de un anlisis etiquetado@brac)eting/. Aperar eficientemente durante el tiempo de ejecuci+n.

CAPITULO I) In(e'fa5 al sis(ema mane#a o' e *ases e a(os 4 *$


1$6 In('o "ccin
Esta tesis tiene el prop+sito de que los usuarios reali3en consultas para recuperar informaci+n acerca de horarios, cursos, salones etc. Esta informaci+n se encuentra capturada en la U-L0 en el sistema manejador de bases de datos @-GTs/ :db. *or lo tanto el prototipo accesa a :db para dar respuesta a las peticiones de los usuarios. -e esta manera se logra construir un prototipo que no reali3a un duplicado de la informaci+n original. Las tareas de mantenimiento y actuali3aci+n de la informaci+n quedan a cargo del personal del departamento de 9Cntegraci+n de sistemas; de la U-L0, ya que ellos son los encargados de reali3ar estas acti!idades. *ara lograr el objeti!o arriba mencionado se utili3+ el controlador A-G1 de Aracle para :db y una e tensi+n de <1L/<N denominada tclodbc '<cl :esource 1enter. 5=== (. 0 continuaci+n se detalla cada componente y se muestran algunos ejemplos de cone i+n usando los componentes antes mencionados. El controlador A-G1 de de Aracle para :db permite a las aplicaciones Adbc en T% Findo4s, Findo4s =M, Findo4s H< y Findo4s H< 0lfa reali3ar acceso a bases de datos :db usando los protocolos <1*/C*, -E1net, %VLZHet o C*R/%*R. 1$3 C"D es "n ODBC

Apen -atabase 1onnecti!ity @A-G1/ pro!ee una interfa3 estndar que permite a las aplicaciones accesar a diferentes fuentes de datos. El c+digo fuente de las aplicaciones no tiene que ser recompilado para cada fuente de datos. Un controlador de bases de datos liga la aplicaci+n a una especfica fuente de datos. Este controlador es una librera de liga dinmica, la cual una aplicaci+n puede in!ocar cuando demanda el acceso a un orgen de datos particular. *or lo tanto la interfa3 A-G1 define lo siguiente. Una librera que llama a funciones A-G1 que permite a una aplicaci+n conectarse a una fuente de datos, ejecutar queryes en %VL, y recuperar datos. Una sinta is %VL basada en el R/Apen y el Brupo de 0cceso %VL @%0B/ Especificaci+n %VL 10%E @5==6/. Un conjunto estndar de c+digos de error Una forma estndar para conectarse y registrarse en una fuente de datos Una representaci+n estndar de los tipos de datos

La figura O.5 muestra los componentes de un modelo A-G1, y enseguida se da una descripci+n detallada de cada componente.

7igura O.5 1omponentes de un modelo A-G1

A,licacin ODBC

Una aplicaci+n A-G1 ejecuta procesamiento e in!oca llamadas a funciones A-G1 para someter consultas en %VL y recuperar informaci+n. La aplicaci+n puede accesar m&ltiples controladores de datos, cada uno de los cuales accesan diferentes fuentes de datos. A minis('a o' e con('ola o'es El administrador de controladores, pro!isto por Ticrosoft, liga a los controladores con la aplicaci+n. Esto se reali3a cuando una aplicaci+n llama a la funci+n A-G1 %VL1onnect o %VL-ri!er1onnect. Con('ola o' ODBC Un controlador A-G1 es una librera dinmica que las aplicaciones pueden in!ocar para accesar a la informaci+n. EL controlador A-G1 procesa las llamadas a las funciones, somete peticiones %VL a una fuente de datos especfica y retorna los resultados a la aplicaci+n. %i es necesario, el controlador modifica una petici+n de la aplicaci+n, de tal forma que la petici+n es ajustada a la sinta is soportada por la fuente de datos asociada. El administrador de controladores y el controlador aparecen en una aplicaci+n como una sola unidad que procesa las llamadas a funciones A-G1. 4e Una red esta hecha de soft4are de comunicaciones a tra!,s de los cuales los 0*Cs del cliente se comunican con el ser!idor Aracle de ser!icios %VL. El mensaje de petici+n del cliente y la respuesta desde el ser!idor !iajan sobre un protocolo de comunicaciones como los siguentes. <1*/C*, %VLZHE< o C*R/%*R. El protocolo de comunicaci+n que se emple+ en el desarrollo del prototipo fu, <1*/C*. O'/!en e a(os

1onsiste del conjunto de datos que el usuario desea accesar. Un orgen de datos es un archi!o con e tensi+n .dsn, el cual contiene la informaci+n de configuraci+n necesaria para accesar a una base de datos particular. 1$9 Con('ola o' ODBC e O'acle ,a'a 4DB El controlador A-G1 para :db usa el soft4are de ser!icios %VL de Aracle clienteI ser!idor para someter peticiones y recibir respuetas de la fuente de datos. Los protocolos de comunicaci+n usados entre el cliente y el ser!idor pueden ser -E1net, <1*/C*, %VLZHet o C*R/%*R. Las consultas %VL son sometidas a tra!,s de la interfa3 dinmica %VL a la fuente de datos, la cual es una base de datos de Aracle :db.

7igura O.6 Cnteracci+n del controlador A-G1 de Aracle para :db con otros componentes.

-etalles de los componentes que inter!iene en la figura anterior. Se'&icios SCL e O'acle Es un componente cliente ser!idor que permite a los programas de aplicaci+n ejecutarse en !arios tipos de computadoras para accesar bases de datos que usan la interfa3 dinmica a %VL. Base e a(os O'acle 4 * Es un sistema manejador de bases de datos multiusuario y de prop+sito general basado en un modelo relacional. %oporta un conjunto completo de utilidades y un lenguaje de manipulaci+n de datos de la industria estndar %VL que permite crear, consultar y mantener bases de datos :db de Aracle. TCPEIP Un mecanismo de comunicaci+n de interprocesos usado por las aplicaciones para compartir datos a tra!,s de una red. <1* permite a un proceso en una mquina en!iar un

flujo de datos a un proceso en otra mquina. El soft4are que implementa <1* usualmente reside en el sistema operati!o y usa el C* para transmitir informaci+n a tra!,s de internet.

1$1 Confi!"'an o el o'/!en e a(os 0ntes de que una aplicaci+n se pueda comunicar con la fuente de datos, se debe pro!eer la informaci+n de configuraci+n. La informaci+n de configuraci+n le indica al controlador A-G1 para :db cul es la informaci+n que se desea accesar. *ara configurar el orgen de datos se hace uso del administrador de controladores A-G1 de Ticrosoft para lle!ar a cabo la configuraci+n de la fuente de datos. La siguiente figura muestra un ejemplo de un administrador de controladores A-G1 de Ticrosoft.

7igura O.8 1onfiguraci+n del orgen de datos %e agrega una fuente de datos, la cual tendr un controlador asociado que en este caso es el controlador A-G1 de Aracle para :db, y se despliega una caja de dilogo que permite configurar la fuente de datos. Los campos a llenar se describen a continuaci+n. 5. El nom&re de la fuente de datos es el nombre usado para identificar a la fuente de datos A-G1. 6. El campo de descripcin permite agregar un comentario acerca de la fuente de datos 8. El transporte es el medio de la red usado para accesar a la base de datos. O. El ser-idor es el nombre del nodo Apen 2T% 0lpha, Apen2T% 20R o -igital UHCR donde el proceso ser!idor esta corriendo en espera de peticiones. M. El ser-icio @solo para %VLZHet/ es ya sea el nombre de ser!icio %VLZHet o el alias del %VLZHet que es creado por el manejador de red de Aracle. ?. La clase @para todas las demas e cepto %VLZHet/ es un nombre de la clase de ser!icio %VL de Aracle o ser!icio que identifica la clase de procesos que ejecuta el ser!idor o el nombre de ser!icio para el ser!idor de ser!icios de Aracle. El !alor por default es BEHE:C1. S. El 3dentificador de usuario es el nombre del usuario de la cuenta en el ser!idor usado para acesar los datos. >. Attac/ es la sentencia %VL 9Attac/; usada para accesar a la base de datos.

7igura O.O 1onfiguraci+n de la fuente de datos denominada conrdb.dsn asociada con el controlador A-G1 de Aracle para :db. En la U-L0 actualmente se tiene informaci+n referente a alumnos en una base de datos denominada 9E%1AL0:; y la informaci+n administrati!a y docente se tiene en una base de datos denominada 90-TCHC%<:0<C20;. *ara lle!ar a cabo las consultas pertinentes a esta tesis solo se requiri+ hacer uso de la base de datos 9E%1AL0:;, para lo cual se hi3o una copia de esta informaci+n en una base de datos denominada 9E%1AL0:E<L0<A0; y se asign+ una cuenta especial para poder utili3arla. Esta base de datos contiene cuatro tablas las cuales se describen ms adelante en la figura O.M y en el ane o R. Estas tablas contienen informaci+n referente a datos personales de alumnos como C-, nombre y apellidos, horarios de clases, dias de clases, salones de clases y cursos del periodo actual.

7igura O.M Estructura estructural y relacional de las tablas de la base de datos denominada 9E%1AL0:E<L0<A0;. 1$= Im,lemen(acin *ara lle!ar a cabo la cone i+n a la base de datos 9E%1AL0:E<L0<A0; se utili3+ la e tensi+n tclodbc la cual pro!ee una interfa3 tcl a las libreras de acceso A-G1 de bases de datos. La forma actual de esta librera depende del sistema operati!o usado. *or ejemplo en un sistema Findo4s, esta librera tiene la e tensi+n .dll. La librera es instalada como un paquete de tcl. -espu,s de que la instalaci+n se ha reali3ado la e tensi+n es cargada por el siguiente comando. Package require tclodbc 0 continuaci+n se presenta una descripci+n de los comandos que se emplearon durante el proceso de implementaci+n de la interfa3 a la base de datos E%1AL0:E<L0<A0 de :db. *ara crear la cone i+n a E%1AL0:E<L0<A0 se utili3+ el siguiente formato.

database db conrdb.dsn sistemas aliblanca %e crea un objeto de base de datos identificado por 9db;. El objeto es conectado a un orgen de datos A-G1 denominado9conrdb.dsn;. *osteriormente se indican. el identificador del usuario y su contrase#a. El objeto de base de datos es un objeto asignado dinmicamente, creado por el comando 9data&ase. El objeto pro!ee m,todos los cuales son in!ocados como comandos despu,s del objeto de base de datos. *ara lle!ar a cabo un query a la base de datos se emplea el siguiente formato. db "select * from exp_estudiante" La cla&sula %VL es ejecutada en el -GT% y el resultado se encuentra en una lista de tcl. %i el comando retorna un conjunto de resultados de m&ltiples columnas, entonces se retorna una lista de listas de tcl. %i la cla&sula %VL no retorna una conjunto de resultados, el comando retorna AN. La librera incorpora operaciones de reconfiguraci+n, agregaci+n o eliminaci+n de los orgenes de datos. Las operaciones soportadas son. addEdsn. agrega un orgen de datos al usuario actual. configEdsn. configura un orgen de datos. remo!eEdsn. elimina un orgen de datos. addEsysEdsn. agrega un orgen de datos, !isible para todos los usuarios. configEsysEdsn. configura un orgen de datos del sistema. remo!eEsysEdsn. elimina un orgen de datos del sistema.

%e pueden emplear los siguientes comandos para obtener una lista de controladores A-G1 instalados en la mquina del cliente. 1.- Database datasources :etorna una lista de origenes de datos actualmente configurados en pares de la forma ]]nombre del orgen de datos^]nombre del controlador^^. Ejemplo. 1%LUsh 6.Yb5[ pac)age require tclodbc 6.Y 1%LUsh 6.Yb5[ database dri!ers ]]Ticrosoft 0ccess -ri!er @Z.mdb/^ ]Usage1ount_6 0*CLe!el_5 1onnect7unctions_UUH -ri!erA-G12er_Y6.Y5 7ileUsage_6 7ileE tns_Z.mdb %VLLe!el_Y s_UUH^^ ]]Ticrosoft E cel -ri!er @Z. ls/^ ]Usage1ount_5 0*CLe!el_5 1onnect7unctions_UUH -ri!erA-G12er_Y6.MY 7ileUsage_5 7ileE tns_Z. ls %VLLe!el_Y^^

]]Aracle A-G1 -ri!er for :db^ ]Usage1ount_5 0*CLe!el_5 1onnect7unctions_UUH -ri!erA-G12er_Y6.5 %VLLe!el_5^^LL. .- Database drivers :etorna una lista de controladores A-G1 actualmente configurados ]]nombre del controlador^]lista de atributos del controlador^^. Ejemplo. 1%LUsh 6.Yb5[ pac)age require tclodbc 6.Y 1%LUsh 6.Yb5[ database datasources ]conrdb.dsn ]Aracle A-G1 -ri!er for :db^^ Disconnect -esconecta el objeto de la base de datos del orgen de datos. Ejemplo de cone i+n y recuperaci+n de informaci+n a una base de datos en el -GT% :db. *ara consultar la estructura de las tablas !,ase el ane o 1. package require tclodbc database db conrdb.dsn sistemas quiensabe puts "!db "select * from exp_profesor""" db disconnect El resultado del ejemplo anterior es el siguiente. 1%LUsh 6.Yb5[ pac)age require tclodbc 6.Y 1%LUsh 6.Yb5[ database db conrdb.dsn sistemas quiensabe db 1%LUsh 6.Yb5[ pac)age require tclodbc 6.Y 1%LUsh 6.Yb5[ database db conrdb.dsn sistemas quiensabe db 1%LUsh 6.Yb5[ puts `'db `select Z from e pEprofesor`(` ]Y55OS8 CHB:C- NC:%1DHCHB 0LGE:%^ ]YY6?M? ]7E:H0H-A 0H<AHCA^ 0BUCLE:0 :0TC:Ea^ ]Y5Y8=O ]QU0H T0HUEL^ 0DU01<aCH L0:CA%^ ]YY6=6O BE:0:-A 0U0L0 ]%0H T0:<CH^^ ]YY8S56 10:ALCH0 10%<0HE-0 :AL-0H^ ]YY6OS? :ABELCA -02CL0 *E:Ea^ ]YY65?5 ]T0:C0 -EL *CL0:^ BATEa BCL^ ]Y5Y68> ]T0U:C1CA Q02CE:^ A%A:CA B0LCH-A^ ]YY5?OY 0H<AHCA %0H1DEa 0BUCL0:^ ]Y5YS>5 ]QA%E 0L7:E-A^ %0H1DEa DUC<:AH^ ]YY6MSY -02C- %AL T0:<CHEa^ ]YY6>M5 EH:CVUE %0H1DEa L0:0^ ]Y5Y886 ]ALEB 20%CLCE2C1D^ %<0:A%<EHNA G0%0:0G^

de la forma

1%LUsh 6.Yb5[ db disconnect AN El siguiente captulo describe el desarrollo de la aplicaci+n y los resultados de las pruebas reali3adas al prototipo.

Ca,i("lo II 4econocimien(o e &o5 "(ili5an o 'e es ne"'onales en en el CSLU ToolFi(


3$6 In('o "ccin . efinicin el ,'o*lema Una interfa3 de !o3 es ideal porque es la forma de comunicaci+n humana ms natural, fle ible, eficiente y econ+mica. El reconocimiento de !o3 es el proceso de con!ertir una se#al ac&stica, capturada por un micr+fono o un tel,fono a un conjunto de palabras. El conjunto de palabras que salen del reconocedor pueden ser la entrada a otras aplicaciones para reali3ar una orden, controlar algun dispositi!o o en sistemas de dictado. <ambien pueden ser!ir como entrada a procesamientos linguisticos ms amplios, para lograr un entendimiento de la !o3. Los sistemas de reconocimiento de !o3 pueden ser caracteri3ados de acuerdo a !arios parmetros, algunos de los ms importantes se muestran en la tabla 6.5. Pa'+me('os Todo de hablar Estilo de hablar Enrollment 2ocabulario Todelo del lenguaje *erplejidad %H: 4an!o *alabras aisladas !s habla continua 2o3 leida !s habla espontnea -ependiente del locutor !s independiente del locutor *eque#o @menor de 6Y palabras/ !s grande @mayor de 6Y,YYY palabras/ Estado finito !s sensiti!o al conte to *eque#a @menor de 5Y / !s grande @mayor de 5YY/ 0lto @mayor a 8Y dG/ !s bajo @menor a 5Y dG/

<abla 6.5 *armetros tpicos usados para caracteri3ar la capacidad de los sistemas de reconocimiento de !o3. Un reconocedor de palabras aisladas requiere que el locutor realice pausas bre!es entre palabras, mientras que un reconocedor continuo no lo hace. La !o3 generada espontneamente contiene disfluencias y es ms dificil reconocerlas que una !o3 leida de un gui+n. El reconocimiento es generalmente ms difcil cuando los !ocabularios son grandes y contienen !arias palabras semejantes.

0ntes de comen3ar con la e plicaci+n del proceso de reconocimiento de !o3 es importante mencionar algunas de las caractersticas y herramientas que pro!ee el 1%LU <ool)it, el cual ha sido utili3ado en el desarrollo de esta tesis. 3$3 El CSLU ToolFi( El tool)it pro!ee una arquitectura abierta de soporte distribudo, y una cone i+n de red basada en una arquitectura cliente/ser!idor. '%utton et al., 5==>(. 0dems incluye interfaces para telefona estndar y dispositi!os de audio, interfaces para el reconocimiento de !o3, sntesis y componentes de animaci+n. 0 continuaci+n se e plican bre!emente algunos de los componentes del 1%LU <ool)it. 4econocimien(o e &o5G El <ool)it soporta !arios enfoques para el reconocimiento de !o3 incluyendo redes neuronales artificiales @0HH /, modelos ocultos de mar)o! @DTT/ y sistemas basados en segmentos. El tool)it !iene con un reconocedor de !o3 independiente del !ocabulario, tambi,n contiene !arios reconocedores de !ocabulario especfico @todos ellos para el idioma ingl,s/. <ambi,n incluye todos los tutoriales y herramientas necesarias para entrenar nue!os reconocedores 0HH y DTT. S/n(esis e &o5G El tool)it integra el sistema de sntesis te to a !o3 denominado 9Festi-al;. Festi-al pro!ee un ambiente completo de aprendi3aje, in!estigaci+n y desarrollo de !o3 sint,tica. Cncluye m+dulos para la normali3aci+n de te to, transformaci+n de te to en una secuencia de segmentos fon,ticos con duraciones apropiadas, asignaci+n de contornos pros+dicos a las e presiones, y generaci+n de !o3 usando ya sea difonemas o sntesis concatenati!a con selecci+n de unidades @unitI selection/. He''amien(as e esa''olloG El <ool)it incluye 9El dise#ador de aplicaciones rpidas; @:0-/, el cual permite dise#ar rpidamente aplicaciones de !o3 usando una interfa3 simple de tipo grfico @drag and drop/. He''amien(as e an+lisis e las fo'mas e on aG El tool)it pro!ee un conjunto completo de herramientas para grabar, representar desplegar y manipular la !o3. Am*ien(e e ,'o!'amacinG El <ool)it !iene con un ambiente completo de programaci+n para lenguaje 1 y <cl, el cual incorpora una colecci+n de librerias de soft4are y un conjunto de 0*CPs @%chal)4y) et al., 5==S/. El ambiente de programaci+n permite desarrollar nue!os reconocedores as como herramientas para la e!aluaci+n de los mismos. El 1%LU <ool)it ha estado en desarrollo durante cinco a#os y actualmente esta por liberarse una nue!a !ersi+n. Esta contiene las ms recientes mejoras a los componentes del tool)it y a las tecnologas que emplea'%utton et al.,5==> (.Esta nue!a !ersi+n ha integrando las herramientas para el espa#ol desarrolladas en el grupo <latoa de la U-L0.

3$9 4econocimien(o e &o5 *asa o en f'ames -ada una se#al de !o3, la primera acci+n por reali3ar es hacer una clasificaci+n fon,tica. *ara reali3ar esto se corta la frase en frames de 5Ymsec, lo que significa que hay 5YY frames por segundo y >Y muestras por frame. Luego se clasifica cada frame como parte de un fonema. La figura 6.5 muestra la frase 9si; con cuatro partes, el silencio /.pau/, el fonema /s/, el fonema /i/ y el silencio. 1ada frame corresponde a una de estas partes. Usando una red neuronal se clasifica fon,ticamente cada frame.

7igura 6.5 Lmite de los fonemas de la palabra 9si;. En realidad la di!isi+n no esta cortada claramente.Un frame puede cubrir dos fonemas y no es claro el lmite que e iste entre ellos porque la transici+n de uno a otro es sua!e '%chal)4y) y 7anty 5==?(. Los clasificadores de fonemas a !eces cometen errores y no se puede confiar en que se obtenga una secuencia perfecta de fonemas, por lo que se hace un acercamiento probabilstico. -e esta manera el clasificador es usado como un estimador de probabilidades. *ara cada frame el clasificador produce la probabilidad de cada fonema y se hace la suposici+n de que la probabilidad de una palabra es el producto de probabilidades para cada fonema en cada frame de esa palabra. E isten cuatro pasos bsicos en el proceso de reconocimiento los cuales se muestran en la figura 6.6 y se describen a continuaci+n. -igitali3aci+n de la se#al de !o3 que se desea reconocer, en el caso de la !o3 por tel,fono la frecuencia de muestreo es de >YYY muestras por segundo.

%e e traen un conjunto de caractersticas las cuales representan el contenido de la !o3 en un dominio espectral. %e emplea una red neuronal para clasificar el conjunto de caractersticas de cada frame @secci+n de 5Y ms de !o3/ en categoras basadas fon,ticamente. %e emplea la b&squeda 92iterbi; para obtener a partir de las probabilidades de salida de la red neuronal las palabras.

7igura 6.6 Esquema del proceso de reconocimiento automtico de !o3. 3$9$6 Di!i(ali5acin e la seHal . ex('accin e &ec(o'es e ca'ac(e'/s(icas

La ac&stica es el primer ni!el del procesamiento de !o3. Esta tiene que !er con la reali3aci+n de la cadena de fonemas en una frase, la cual se da como una serie de !ibraciones de mol,culas de aire para producir !ariaciones de presi+n en el aire 'libro amarillo(. Estas !ibraciones son contnuas en el tiempo y en magnitud. *ara lle!ar a cabo un procesamiento computacional de esta informaci+n es necesario reali3ar algunas adaptaciones. La se#al se captura con un micr+fono y se con!ierte a una se#al el,ctrica donde la amplitud de la se#al corresponde a la magnitud de la !ariaci+n orignal de presi+n. %e lle!a a cabo un muestreo sobre la se#al en alguna frecuencia, de tal forma que solo un n&mero finito de amplitudes se graba, almacena o transmite por un periodo de tiempo. %e reali3a un proceso de discreti3aci+n de la se#al, de esta forma s+lo se requiere un n&mero finito de bits para representar cada muestra. Esto es a lo que se le llama 9con!ersi+n anal+gica bdigital;.

0 continuaci+n se presenta una bre!e decripci+n del proceso requerido para lle!ar a cabo la generaci+n de !ectores de caractersticas. 3$9$6$6 )ec(o'es MFCC Una de las ms importantes reas en el proceso de reconocimiento de !o3 es el procesamiento de la se#al, la cual con!ierte la forma de onda de !o3 a algun tipo de representaci+n param,trica'%chal)4y) y 7anty 5==?(. Esta informaci+n param,trica es usada para anlisis posteriores. 0lgunos de los algoritmos disponibles para el procesamiento de la se#al dentro del 1%LU <ool)it se muestran a continuaci+n'%chal)4y) et al. 5==?( *o4er spectral analysis @77</ Linear predicti!e analysis @L*1/ *erceptual linear prediction @*L*/ TelIfrequency cepstral coefficients @T711/ Tel scale ceptral anlisis @TEL/ :elati!e spectra filtering of log domain coefficients @:0%<0/ 7irst order deri!ati!e @-EL<0/ Energy normali3ation

*ara la fase de pruebas de esta tesis se han empleado reconocedores de prop+sito general los cuales han sido desarrollados en el grupo <latoa, estos reconocedores han empleado la t,cnica de codificaci+n T711. Los coeficientes T711 no son ms que la representaci+n de las concentraciones de energa y anchos de frecuencia de la se#al. 1uando se emplea esta t,cnica para la generaci+n de !ectores se obtiene 6? coeficientes para cada frame de !o3 @5Y mseg/, 56 de ellos son los coeficientes T711, adems de 56 coeficientes delta que indican el grado de cambio espectral, un !alor de energia y un !alor de energaIdelta. 3$9$6$3 )en(anas e con(ex(o 1on el objeto de lograr una clasificaci+n ms precisa , se toma una !entana de conte to, la cual se muestra en la figura 6.8. Esto significa que se toma un frame en particular asi como los frames que se locali3an a b?Y, b8Y, 8Y, y ?Y milisegundos del frame de inter,s, esto se reali3a para tomar en cuenta la naturale3a dinmica de la !o3 'Dosom et al., 5==>(. Esta !entana de conte to se en!a como entrada a la red neuronal para su clasificaci+n, de esta manera la red neuronal tendr 58Y entradas @6? coeficientes Z M frames de entrada /. La salida de la red neuronal es una clasificaci+n de cada frame de entrada medido en t,rminos de probabilidades de categoras basadas en fonemas.

0 partir de la salida de la red neuronal se construye una matri3 de probabilidades de categoras basadas en fonemas en el tiempo. 7inalmente se emplea la b&squeda !iterbi para hallar la mejor ruta a tra!,s de la matri3 de probabilidades para cada cadena legal, asi la salida del reconocedor es la palabra que corresponde a la mejor ruta.

7igura 6.8 Esquema de una !entana de conte to, la cual es la entrada directa al clasificador. 3$9$3 El clasifica o' La necesidad de utili3ar redes neuronales radica en el hecho de que los problemas de la actualidad requieren datos de entrada de la !ida real, y no e iste un algoritmo preciso para resol!erlos, es por ello que es necesario crear soluciones las cuales aprendan de ejemplos, que sean capaces de generali3ar para reconocer nue!os ejemplos, y que se dapten a nue!as condiciones'<latoa speech technology research group 5==>(. Las redes neuronales artificiales @0HH/ estan inspiradas por el conocimieto biol+gico del cerebro humano. Un neur+n tpico colecta se#ales de otros a tra!,s de las dendritas, el neur+n en!a como salida una se#al el,ctrica a tra!,s de un a +n @!er figura 6.O/ el cual se di!ide en cientos de ramas. En el final de cada rama se encuentra una estructura llamada synapsis la cual con!ierte la acti!idad en impulsos inhibitorios o e citatorios los cuales son recibidos por el siguiente neur+n.

7igura 6.O Estructura de una neurona humana Las @0HH/ son una imitaci+n simplificada de las redes neuronales naturales y estan compuetas de unidades interconectadas las cuales simulan a las neuronas humanas. 1ada unidad de la 0HH con!ierte los !alores de entrada en un !alor de salida el cual es transmitido a las siguientes unidades, esta con!ersi+n consiste en multiplicar todos los !alores de la entrada por los pesos asociados a su cone i+n. *osteriormente se suman todos estos !alores y finalmente la red emplea una funci+n que transforma el !alor obtenido en una acti!idad saliente. El tipo ms com&n de redes neuronales consiste de tres grupos o capas, primeramente se encuentra la capa de entrada la cual esta conectada a la capa oculta, la cual a su !e3 se conecta con la capa de salida.La figura 6.M muestra una red neuronal de tres capas. 1ada unidad se comunica con otra a tra!,s de sus cone iones, las cuales tiene un peso asociado, el cual afecta su acti!idad. Una regla de propagaci+n en!a patrones de acti!idad a tra!,s de la red, donde las se#ales pueden fluir unidireccionalmente o pueden retroalimentarse dentro de otras unidades de la red. La regla de propagaci+n toma las se#ales de entrada, combina todas ellas con sus respecti!os pesos y produce un nue!o ni!el de acti!aci+n como una salida a la siguiente capa.

7igura 6.M Una red neuronal de tres capas El m,todo para calcular la acti!aci+n de cada unidad dentro de la red y para ajustar los pesos de sus cone iones se denomina algoritmo de aprendi3aje o entrenamiento de la red. Entre ellos e iste uno llamado algoritmo de retropropagaci+n. Este algoritmo es actualmente uno de los ms famosos, porque es simple de implementar y de usar, adems de que sus resultados son muy buenos 'Nirschning 5==8(. 0ctualmente la red del 1%LU tool)it emplea esta metodologa de aprendi3aje. Las redes de retroIpropagaci+n trabajan en una secuencia de dos pasos durante su entrenamiento. 5/ Un !alor de entrada se presenta a la capa de entrada de la red. La acti!idad fluye a tra!,s de la red de capa en capa hasta que la respuesta de la red se genera en la capa de salida. 6/ La salida de la red se compara con un !alor de salida deseado para un patr+n particular de entrada. En el caso de que este !alor no sea el esperado, este es propagado de forma in!ersa a tra!,s de la red y se modifican los pesos de las cone iones, esto se lle!a a cabo para minimi3ar el error. 1omo se mencion+ antes los clasificadores de fonemas pueden cometer errores y no siempre se obtiene una secuencia perfecta de fonemas, por lo que se lle!a a cabo un acercamiento probabilstico, es decir que el clasificador es usado como un estimador de probabilidades. *ara cada frame de entrada el clasificador calcula la probabilidad de cada fonema y se hace la suposici+n de que la probabilidad de una palabra es el producto de probabilidades para cada fonema en cada frame de esa palabra.

/b/ /d/ /a/ /u/

...

La figura siguiente muestra una red neuronal que calcula la probabilidad de cada fonema para un frame de entrada.

7igura 6.? Una red neuronal para la clasificaci+n fon,tica. 3$9$9 Mo ela o fonD(ico 0ntes de reali3ar la clasificaci+n se deben elegir las unidades que se desean clasificar, entre las unidades ms empleadas estan los fonemas, slabas y palabras. En el grupo <latoa se han !enido construyendo reconocedores los cuales utili3an a los fonemas como unidades de clasificaci+n. 3$9$9$6 Fonemas el es,aHol <a*la o en MDxico La siguiente tabla muestra los fonemas del espa#ol hablado en T, ico. Los siguientes smbolos fueron tomados del alfabeto 4orld&et.

S/m*olo /p/ /b/ /t/ /d/ /g/ /s/ /3/ / / /2/ /-/ /B/ /%/ /a/ /t%/ /da/ /m/ /n/ /nj/ /H/ /l/ /j/ /4/

E#em,lo *eso Geso <os -os Basa %isa Tismo Qota U!e -edo Cgriega Ti iotle 0yer 1hoca Lla!e 0mo 0na 0#o Ganco Talo Tayo 1uatro

P'on"nciacin *eso Geso <os -os Basa %isa TC3mo Rota U2e -e-o iBrieBa TC%iotle 0aer <% o ) a -a a 2 e 0mo 0na 0 nj o GaH)o Talo Tajo N4atro

...

/4/ /3/

/r/ /rr/ /ra/ /a/ /e/ /i/ /o/ /u/

*ero *erro : *ase *ese *ise *ose *use

*ero * e rr o E ra e *ase *ese *ise *ose *use

<abla 6.6 7onemas del espa#ol hablado en T, ico 3$9$9$3 Mo ela o De,en ien(e el con(ex(o 0l elegir a los fonemas como unidades para la clasificaci+n se tiene la !entaja de que son independientes del dominio y del !ocabulario, pero muchos fonemas se !en influenciados por su conte to. En la figura 6.S se muestra como el fonema /f/ influenca a sus fonemas !ecinos en la palabra 9efe;.

7igura 6.S Espectrograma que muestra la influencia que tiene el fonema /f/ sobre el fonema /e/ en la palabra 9efe;.

0 continuaci+n se muestran algunas de las opciones que se pueden lle!ar a cabo para tomar en cuenta a los fonemas en conte to. 5ifonemas. se determina la identidad del fonema dependiendo del fonema que se encuentra a su lado. 5ifonema i67uierdo. el fonema de la i3quierda determina el conte to 5ifonema derec/o. el fonema de la derecha determina el conte to !rifonemas. se determina la identidad del fonema dependiendo de ambos fonemas que se encentran a su lado. La des!entaja de usar bifonemas y trifonemas es que se tendran H 6 posibles categorias posibles de clasificaci+n para los bifonemas y H 8 categorias para los trifonemas'<latoa speech technology research group 5==>(. -onde H es el n&mero de fonemas, por lo que se tendran que requerir demasiados datos para entrenar un modelo. La estrategia del 1%LU consiste en partir cada fonema en uno, dos o tres partes. Esto depende de la duraci+n del fonema asi como de qu, tanto se !e influenciado el fonema por sus !ecinos 'Dosom et al., 5==>(. *ara disminuir el n&mero de categorias se pueden agrupar fonemas que comparten caractersticas similares para formar clases @!ese ane o 0/. La siguiente tabla muestra una posible a grupaci+n de fonemas del espa#ol. Clase cfront cmid cbac) cnasal cfric cstop cother csil Con#"n(o e fonemas /i/ /e/ /y/ /a/ /o/ /u/ /4/ /n/ /m/ /ng/ /ny/ /s/ /f/ /h / /ch/ /b/ /d/ /g/ /p /t/ /)/ /r/ /rr/ /l/ /.sil/ /.pau/

<abla 6.8 *osibles agrupaciones de los fonemas del espa#ol me icano. -e esta forma podemos construir un modelo para la palabra 9mes; como se muestra a continuaci+n y se detalla en la figura 6.M. -i!idiendo el fonema /e/ en tres partes tenemos lo siguiente. cnasalJe @/e/ en el conte to de que le precede un nasal/ J/e/K @/e/ en medio, sin efectos conte tuales/, y eKcfric @/e/ en el conte to de que le sigue un fricati!o/.

*ara los fonemas /n/ y /s/, podemos hacer una di!isi+n solo en una o dos partes ya que estos fonemas no se !en muy afectados por sus !ecinos. La decisi+n que se toma en cuenta para di!idir a los fonemas es lle!ada a cabo tomando en cuenta la ac&stica fon,tica y tambi,n depende de la e periencia de la persona. *ara un sistema independiente del !ocabulario el fonema /e/ ser partido en 5S categorias, > para cada clase que le precede, > ms para cada clase que le sigue y una categoria independiente del conte to, de esta manera se reduce el n&mero de categorias a 1ZH "H "1ZH '<latoa speech technology research group 5==>(, donde 1 es el n&mero de clases lo cual es computacionalmente ms factible. <ambi,n las categorias que no ocurren durante el proceso de entrenamiento del corpora pueden ser atadas a categorias similares ac&sticamente, las cuales tienen ms datos de entrenamiento.

Mo ela o e,en ien(e el con(ex(o ,a'a el fonema KeL


MsilNm
Fonema ,'e&io F'on( mi *acF nasal f'ic s(o, o(<e' sil

Mf'on(NE

NEO

EOf'ic

sOMsil
Fonema si!"ien(e F'on( mi *acF nasal f'ic s(o, o(<e' sil

Mo elo el fonema EEE

Fonema Ac("al

/E/ /E/ /E/ C3quierdo Tedio -erecho

7igura 6.> Todelado fon,tico para la palabra 9mes;. 3$9$1 La *IsJ"e a )i(e'*i -ado que se tiene un matri3 la cual muestra c+mo las probabilidades fon,ticas cambian con el tiempo, el siguiente paso consiste en hallar la mejor ruta a tra!,s de la matri3 para cada cadena legal en el grafo de pronunciaciones.

-e esta manera antes de reali3ar este proceso es necesario computar el conjunto de cadenas legales de categorias fon,ticas.Esto depende de las palabras que se quieren reconocer y el posible orden de estas, de esta manera se combinan modelos de pronunciaci+n para cada palabra con una gramtica 'Dosom et al., 5==>(. En la b&squeda 2iterbi cuando se obser!a un nue!o frame, se reali3a la transici+n a un nue!o estado si la probabilidad de la nue!a categoria es mayor que la probabilidad de la categoria actual. 0l final de la b&squeda se tiene un !alor num,rico para la secuencia de categorias ms probable y la ruta de las categorias que se usaron para generar ese !alor num,rico. -e esta manera se toma esta ruta y se determina fcilmente la palabra correspondiente a la secuencia de palabras. En la figura 6.= se muestran las rutas de b&squeda para las palabras 9mes; y 9no; a tra!,s de la matri3 de probabilidades.

7igura 6.= :utas de b&squeda pra las palabras 9mes; y 9no; en la matri3 de probabilidades. 3$9$= Po' S,o((in! La gramtica por default para el reconocimiento de una simple palabra o frase es. ANQ N,ala*'a o f'aseO ANQ Esto significa que se reconoce cualquier cosa seguido por una de las palabras del !ocabulario permitido seguido por cualquier otra cosa. Esta secci+n ser discutida en los captulos posteriores con mayor detalle.

ZZZZ falta completar estoZZZZZ CH-C1E

Ca,/("lo I
P'ocesamien(o el len!"a#e na("'al C.C Cntroducci+n C.6 Etapas del entendimiento del lenguaje natural 5.6.5 :econocimiento de !o3 5.6.6 0nlisis sintctico o parsing 5.6.6.5Bramticas 5.6.6.67ormalismos empleados para la definici+n de gramticas 5.6.6.8<ipos de anlisis sintctico 5.6.6.8.5 0nlisis sintctico descendente 5.6.6.8.6 0nlisis sintctico ascendente 5.6.6.OBeneradores de anali3adores sintcticos 5.6.8 0nlisis semntico y pragmtico 5.8 Beneraci+n del elnguaje natural 5.O 0mbigedad en el lenguaje

Ca,/("lo II
4econocimien(o e &o5 "(ili5an o 'e es ne"'onales en el CSLU ToolFi( 6.5 Cntroducci+n y definici+n del problema 6.6 El 1%LU <ool)it 6.8 :econocimiento de !o3 basado en frames 6.8.5 -igitali3aci+n de la se#al y e tracci+n de !ectores de caractersticas 6.8.5.5 2ectores T711 6.8.5.6 2entanas de conte to 6.8.6 El clasificador 6.8.8 Todelado fon,tico 6.8.8.5 7onemas del espa#ol hablado en T, ico 6.8.8.6 Todelado dependiente del conte to 6.8.8.6.5 Estrategias del modelo dependiente del conte to 6.8.8.6.6 La estrategia del 1%LU 6.8.O La b&squeda 2iterbi 6.8.M Ford %potting

Ca,/("lo III Pa'se's ,a'a el len!"a#e na("'al Ca,/("lo I) Acceso al DBMS 4 * en el se'&i o' DEC RSSS mo elo >6S con Sis(ema O,e'a(i&o O,en)MS O.5 Cntroducci+n O.6 Vu, es A-G1 O.8 1ontrolador A-G1 de Aracle para :db O.O 1onfigurando el orgen de datos O.M Cmplementaci+n

Ca,/("lo )

Im,lemen(acin e la a,licacin

Ca,/("lo )I Concl"siones . ('a*a#o f"("'o

In ice e fi!"'as 7igura 6.M.La ingormaci+n es alimentada desde las unidades de entrada, entonces las unidades ocultas reciben la acti!idad determinada por los calores de entrada y los pesos @45,46L..4n/ de sus cone iones a las unidades ocultas, de igual forma las unidades de salida reciben la acti!idad de las unidades ocultas afectadas por sus pesos entre las unidades ocultas y las unidades de salida. Cndice de tablas

You might also like