Cuprins
- 1. Introducere 1
- 1.1. Noţiuni generale 1
- 1.2. Etichetarea automată 3
- 2. Ce este un analizor morfo-sintactic? 6
- 2.1. Scurtă prezentare al analizoarelor morfo-sintactice existente. 6
- 2.2. Ce este un analizor morfo-sintactic (POS tagger) 7
- 2.3. Setul de etichete folosite pentru etichetarea textelor 8
- 3. Metode pentru dezambiguizarea morfologică 9
- 3.1. Metode stocastice 11
- 1. Algoritmul Forward-Backward 14
- 2. Algoritmul Viterbi 15
- 3. Algoritmul Baum Welch 16
- Scurtă prezentare a analizorului morfo-sintactic Qtag realizat de D. Tufiş în colaborare cu O. Mason 17
- 3.2.Metode care folosesc reguli de bază 22
- Dezambiguizarea cuvintelor necunoscute (nu se găsesc în lexicon în forma care apare în text) 28
- Determinarea celor mai bune k etichete pentru un cuvânt 32
- 3.3. Învăţarea bazată pe memorare 33
- Algoritmul BUILD-IGTREE 36
- Algoritmul SEARCH-IGTREE 37
- 4. Implementare 39
- 5. Concluzii 42
- Anexa A : Exemple de seturi de etichete 44
- 1. Setul de etichete Brown Corpus. 44
- 2. Setul de etichete Penn Treebank. 47
- 3. Setul de etichete ENGCG. 49
- 4. Setul de etichete folosit de Dan Tufiş în implementarea tagger-ului stocastic pentru limba română QTag. 52
- Anexa B : Secvenţe de cod 55
- 1. Modulul de învăţare 55
- 2. Algoritmul bazat pe reguli lexicale – fragment. 57
- 3. Algoritmul bazat pe reguli contextuale – fragment 60
- Bibliografie 66
Extras din proiect
1. Introducere
Lingvistica computaţională este o disciplină centrată în jurul folosirii calculatorului pentru a procesa sau a produce texte în limbaj natural. Ea combină între ele lingvistica, informatica şi matematica. Astfel, matematicienii şi lingviştii pot contribui la înţelegerea proprietăţilor speciale ale unei limbi, la descrierea structurii acesteia, atâta timp cât informaticienii pot da aceste rezultate sub forma unor diverse implementări.
În domeniul limbajului natural, crearea şi folosirea colecţiilor de texte adnotate este în mod curent în topul celor mai interesante probleme. Textele adnotate sunt de interes major în cercetarea şi dezvoltarea aplicaţiilor procesării limbajului natural (NLP). Procesarea limbajului natural se adresează atât domeniului lexical, cât şi al sintaxei, semanticii, analizei discursului etc. Din păcate, adnotarea unui text, în special adnotarea lingvistică, este încă o problemă dificilă pe care omul încercă să o rezolve de mult timp.
S-au făcut eforturi considerabile şi, la munca depusă de om, s-a adăugat şi “munca” calculatorului în procesarea unui text. Însă frontiera care nu poate fi depăşită automat este dificultatea găsirii claselor sintactice de etichete, adică adnotarea cuvintelor individual dintr-un text, indicând clasificarea lor morfo-sintactică.
În lucrarea de faţă este folosit atât termenul de tagger, preluat din limba engleză, cât şi noţiunea de analizor morfo-sintactic.
1.1. Noţiuni generale
Etichetarea cuvintelor cu clasele lor morfologice este cel mai popular şi cel mai bine definit mod de adnotare lingvistică ce poate fi aplicat unui text. Acest lucru este motivat de următoarele afirmaţii:
• în primul rând, un tagger automat poate fi realizat în orice limbaj de programare şi în plus are un grad mare de precizie;
• în al doilea rând, clasele cuvintelor etichetate sunt în general considerate a fi folosite în primul stadiu al adnotării ce poate fi aplicat unui text ca fază preliminară în activitatea de procesare a limbajului natural (în limbajul de specialitate acesta se notează cu NLP – natural language processing).
Etichetele (en. tag) sunt simboluri descriptive care sunt asignate cuvintelor unui text, această operaţiune putându-se realiza manual sau automat, de către o maşină. Astfel, aceste etichete poartă numele de etichete POS (en. part of speech), deoarece ele indică o parte de vorbire (substantiv, verb, adverb, etc.).
Adnotarea unui text reprezintă un proces prin care sunt asociate etichete unui cuvânt sau unor grupuri de cuvinte.
Lingvistica tradiţională recunoaşte cinci categorii principale ale analizei unui cuvânt:
1. fonologică;
2. morfologică;
3. sintactică;
4. semantică;
5. pragmatică.
Analiza părţii de vorbire (en. POS) nu constituie o clasificare, nu reprezintă un nivel al analizei clasice, ci ea se regăseşte în două din cele cinci categorii menţionate anterior, mai exact în cea morfologică şi cea sintactică.
Cercetări în acest domeniu s-au făcut încă de la vechii indieni şi romani [Voutilainen, 1999], care au stabilit clasificări şi clase pentru fiecare cuvânt în parte. De exemplu, în cultura indiană, Pānini (c. 350 î.C.) spunea că “un cuvânt este acela care are terminaţie de substantiv sau verb”. Începând cu Sibawaihi (d. 793), cultura arabă făcea distincţie între trei clase de cuvinte, acestea fiind substantivele (care includeau şi adjective, pronume şi verbe la participiu activ sau pasiv), verbele, particulele. În analiza morfo-sintactică din cultura vestică, Dionysios Thrax (c. 100 î.C.) a descoperit nu mai puţin de opt clase de cuvinte: substantiv, verb, participiu, articol (care includea şi pronumele relativ), pronume, prepoziţie, adverb şi conjuncţie. Între anii 116-27 î.C., Marcus Terentius Varro stabilea patru tipuri de clasificare pentru clase de cuvinte bazate pe prezenţa sau absenţa cazului şi/sau timpului: substantiv, verb, participiu, adverb.
În prezent, analiza POS a unui text poate fi realizată automat, în întregime.
În cele mai multe texte adnotate, fiecare cuvânt are asociată o singură informaţie îmbogăţită sub forma unei etichete.
Exemplu:
O informaţie reprezentată de o etichetă NN (substantiv, nominativ, singular) ar putea fi reprezentat ca N NOM SG (cu aceeaşi semnificaţie).
Preview document
Conținut arhivă zip
- Analizator Morfo-Sintactic.doc