270 likes | 431 Views
FONAMENTS DE PROCESSAMENT DEL LLENGUATGE NATURAL 13305 – Lingüística - UPF. nuria.bel@upf.edu Classe 4. El programa. 2. Les paraules Identificació d’unitats, els mots. Autòmats i expressions regulars
E N D
FONAMENTS DE PROCESSAMENT DEL LLENGUATGE NATURAL13305 – Lingüística - UPF nuria.bel@upf.edu Classe 4
El programa 2. Les paraules • Identificació d’unitats, els mots. Autòmats i expressions regulars • Categories lèxiques i categories funcionals. Propietats estadístiques, morfològiques i semàntica lèxica • Compostos i col·locacions. Mesures d’associació lèxica • Morfemes i analitzadors morfològics. Transductors d’estats finits i morfologia de doble nivell
Processament Morfològic: • Objectiu: desenvolupar una funció que reconegui les formes/paraula, les associï a un lema i els assigni la informació morfosintàctica associada al sufix. • Tècniques possibles: • Generació i ‘look-up’ de formes(paraules) cantaba cantar Vmii[13]s-- (format Multext) • Anàlisi/parsing morfològica: cada paraula es processa d’acord amb regles d’anàlisi
Analitzadors i autòmats: el primer pas • Anàlisi (parsing) en la seva accepció més amplia significa que pren un input i genera un output • L’output és una representació de l’input amb informació afegida. • Donada una descripció en el llenguatge dels autòmats d’estats finits: • L’autòmat reconeix l’input i produeix una confirmació si pertany al conjunt de mots definits. • L’autòmat genera totes les cadenes definides
Definició formal • Q és un conjunt finit de N estats q0, q1, ...., qN • Σ es un alfabet finit de símbols d’entrada • q0 és l’estat inicial • F es el conjunt d’estats finals, FQ (és un subconjunt) • (q,i) és la funció de transició (o la matriu de transició) entre estats. Donat un estat qQ i un símbol de l’ínput iΣ, la función (q,i) dóna com a resultat (retorna) un nou estat q’Q.
c a s a s c q0 a q1 q2 s q3 a q4 q5 o Autòmat que reconeix formes transicio(0,1,c). transicio(1,2,a). transicio(2,3,s). transicio(3,4,a). transicio(3,4,o). transicio(4,5,s). inicial(0). final(4). final(5). automat(E,[]):- final(E). automat(E_i,[P|R]):- transicio(E_i,E_f,P), automat(E_f,R).
Representació en taula d’un autòmat c a s o 0 1 Ø Ø Ø 1 Ø 2 Ø Ø 2 Ø Ø 3 Ø 3 Ø 4 Ø 4 4: Ø Ø 5 Ø 5: Ø Ø Ø Ø c s o a 0 1 Ø Ø Ø 1 Ø Ø Ø 2 2 Ø 3 Ø Ø 3 Ø Ø 4 4 4: Ø 5 Ø Ø 5: Ø Ø Ø Ø
Reconeixedor / Generador • Un autòmat és un analitzador si donada una paraula ens diu si la reconeix com una de les del conjunt que té definides: ->> recognize/test(casos) ->> yes • Un autòmat és un generador si donada l’ordre pot generar totes i solament aquelles paraules (o ...) d’una llengua. ->> generate / synthesize ->> casa, casas, caso, casos
Generador c s o a 0 1 Ø Ø Ø 1 Ø Ø Ø 2 2 Ø 3 Ø Ø 3 Ø Ø 4 4 4: Ø 5 Ø Ø 5: Ø Ø Ø Ø ->> generate/synthesize ->>??
Reconeixedor c s o a 0 1 Ø Ø Ø 1 Ø Ø Ø 2 2 Ø 3 Ø Ø 3 Ø Ø 4 4 4: Ø 5 Ø Ø 5: Ø Ø Ø Ø ->> test(casos) ->> yes ->> test(cosas) ->> no L’afegim? Atenció amb la sobregeneració!!!
Analitzadors i autòmats (2) • Ara que ja hem reconegut, ara hem de generar una representació? casa +fem +plu • Afegim ‘trets’ (features) transicio(6,7,a,'fem'). transicio(6,7,o,'masc'). transicio(7,8,s,'plu'). • fem que l’autòmat quan reconegui una forma, imprimeixi en una altra llista el tret ?- test([c,a,s,a,s],T). [0, c, 1, a, 2, s, 6, a, 7, s, 8] T = [c, a, s, fem, plu|_G372] Yes
Transductors d’Estats Finits • El que farà l'anàlisi morfològica es aplicar les regles de projecció entre aquests dos nivells: entre les lletres o seqüències de la paraula i els morfemes i trets. • L'autòmat que usem per dur a terme aquesta projecció es un transductor d'estats finits o 'FST, Finite State Transducer'. • Un transductor és un tipus d'autòmat que reconeix o genera parells de cadenes.
c:c a:a s:s a:fem s:plu 1 2 3 4 5 6 L’autòmat que imprimia era un transductor • Hem de generar una representació? casa +fem +plu • Fem que l’autòmat quan reconegui una forma, generi en una altra llista el tret
c:c a:a s:s a:fem s:plu 1 2 3 4 5 6 L’autòmat que imprimia era un transductor • Hem de generar una representació? casa +fem +plu • Afegim ‘trets’ (features) transicio(6,7,a,'fem'). transicio(6,7,o,'masc'). transicio(7,8,s,'plu'). • fem que l’autòmat quan reconegui una forma, generi en una altra llista el tret
Definició formal d’un Transductor - Q: un conjunt finit de N estats qØ, q1, ... qn - Σ: un alfabet finit de símbols complexos. Cada símbol complex està compost d’un parell input/output i : o ; un símbol i d’un alfabet d’input I, i un símbol o de un alfabet d’output O, de tal forma que Σ ⊆ I x O, on I i O poden també incloure cadascun el símbol epsilon ε. - qØ, l’estat inicial - F: el conjunt d’estats finals, tal que F ⊆ Q - δ(q,i:o) la funció de transició o matriu de transicions entre estats. Donat un estat q ∈ Q i un símbol complex i:o ∈ Σ, δ(q,i:o) retorna un nou estat q’ ∈ Q. δ és una relació de QxΣ a Q
I els casos que no solament són una concatenació? • en català • llop – lloba ... • ànec – aneguet • poder – puc - podia • en castellà • durmió – duerme – dormía • en anglès • mouse – mice Poden ser fenòmens regulars (sonorització) o purament ortografèmics
Morfologia de doble nivellKimo Koskenniemi (1983) • La morfologia de doble nivell representa una paraula com una correspondència entre: • un nivell lèxic, que tracta la paraula com una senzilla concatenació de morfemes, i • un nivell superficial, que representa com realment es diu aquella paraula (o s'escriu, al menys).
Morfologia de doble nivell i transductors • a MDN modelem un mot com la projecció d’una forma lèxica FL i una forma superficial FS • La FL serà el símbol de l’esquerra (i) i la FS serà el símbol de la dreta (o): Σ : {a:a, b:b, p:b} • Així cada símbol de l’alfabet del transductor expressa la projecció entre el símbol de la FL i el símbol de la FS. Parells per defecte són a:a, b:b, c:c, etc. • “a : ε” significa que a a la forma lèxica pot correspondre a res en la forma superficial • es marca també el llindar dels morfemes amb el símbol ^ i el llindar de paraula amb ‘#’
Relació entre formes irregulars • Aquesta doble visió de la paraula ens permet expressar la relació entre formes regulars i irregulars • arc(0,1,d:d). • arc(1,2,o:u). • arc(2,3,ε:e). • arc(3,4,r:r). • arc(4,5,m:m). • arc(5,6,i:ε). • arc(6,7,r:ε). • arc(7,8,pi1s:o). dormir pi1s - duermo
En forma de taula d:d o:u ε :e r:r m:m i: ε r:ε pi1s:o 0 1 Ø Ø Ø 1 Ø Ø Ø 1 Ø 2 Ø Ø Ø Ø Ø Ø 2 Ø Ø 3 Ø Ø Ø Ø Ø 3 Ø Ø Ø 4 Ø Ø Ø Ø 4 Ø Ø Ø Ø 5 Ø Ø Ø 5 Ø Ø Ø Ø Ø 6 Ø Ø 6 Ø Ø Ø Ø Ø Ø 7 Ø 7 Ø Ø Ø Ø Ø Ø Ø 8 8: Ø Ø Ø Ø Ø Ø Ø Ø
Morfemes i analitzadors: problemes • gos +fem => gossa • llop +fem => lloba • El plural català: • noi +plu => nois • noi +fem => noia • ????noies • Com representem el problema? o millor, com representem la solució???
ll ll ll o o o p b p N ^ Ø F a a # F L Intermedi F S Aproximació: • input és: arrel + sufix • creem una representació intermèdia: concatenació de sufixos • produïm com a output una versió lleugerament diferent, la versió correcta
ll ll ll o o o p b p ^ Ø N F Ø a es es Pl F L Intermedi F S regles de concatenació (2) • llop +a + es => llobes • regles contextuals: p b / ^____a # a ε / ^____es #
Regles contextuals • S’han d’aplicar en tots els casos (totes les paraules) que compleixen aquestes condicions. • Hem de tenir cura amb les definicions i poder-les deixar poc específiques. El símbol @ es llegeix com ‘other’, i significarà en cada transductor símbols que no hi siguin específicament
Transductor i implementació procedural PC-KIMMO RULE "p:b <=> ___ +:Ø a" 4 4 p + a @ b Ø a @ 1: 2: 3. 4: RULE "p:b <=> ___ +:Ø a" 4 4 p + a @ b Ø a @ 1: 2 1 1 1 2: Ø 3 1 1 3. Ø Ø 4 Ø 4: Ø Ø 1 1
PC-KIMMOComponents d’un analitzador morfològic 1. Un lèxic: una llista d'arrels i afixos amb informació sobre la categoria i característiques morfològiques de les arrels. 2. Un model de la morfotàctica de la llengua que volem descriure. El model ens explica com s'ordenen els morfemes dintre d'una paraula, per exemple, que en català el morfema de plural va darrera de l'arrel d'un nom i no al revés. 3. regles: on expressem formalment el coneixement dels canvis que es produeixen quan es concatenen/combinen dos morfemes, per exemple: a+es -> es (per als plurals femenins en català). Ara en direm 'regles ortogràfiques' perquè bàsicament tindrem en compte fenòmens que es poden descriure en termes de caràcter que canvien, s'afegeixen, desapareixen, etc.