teorie e tecniche del riconoscimento parti del discorso classificazione grammaticale classificazione...
TRANSCRIPT
![Page 1: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/1.jpg)
TEORIE E TECNICHE DEL RICONOSCIMENTO
Parti del discorsoClassificazione grammaticale
Classificazione grammaticale in Python
1
![Page 2: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/2.jpg)
RESTRIZIONI SULLE POSIZIONI DELLE PAROLE
• La ragazza lesse rapidamente il libro– *Ragazza la lesse rapidamente il libro– *La ragazza lesse il rapidamente libro
• Inglese: *The Sue quickly read the book • Sottocategorie:
– *La ragazza arrivo’ il libro– conigliera, baleniera, teiera, ma: *virtuiera, *pazienzera
![Page 3: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/3.jpg)
CATEGORIE LESSICALI (PARTI DEL DISCORSO)
• NOMI (tavolo, Simona)• VERBI (camminare, mangiare, colpire)• AGGETTIVI (rosso, rapido)• AVVERBI (probabilmente, subito)• PRONOMI (io, lui, ci)• ARTICOLI (il, la, un)• PREPOSIZIONI (di, a, con)• CONGIUNZIONI (e, ma, o)• [Italiano]: INTERIEZIONI (ahi! )
![Page 4: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/4.jpg)
ALCUNE DISTINZIONI
• PARTI DEL DISCORSO VARIABILI / INVARIABILI– L’uomo cammina / camminava
• PARTI DEL DISCORSO APERTE / CHIUSE– Aperte: nomi, verbi, aggettivi, avverbi– Chiuse: articoli, pronomi, preposizioni,
congiunzioni
![Page 5: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/5.jpg)
CORPORA IN CUI LE PAROLE SONO ANNOTATE CON LA LORO PDD
• In molti dei corpora piu’ recenti (a partire dal Brown corpus), e particolarmente in quelli usati per la lessicografia, i token vengono classificati con la loro parte di discorso– Brown corpus: fatto a mano– BNC, LIP: fatto automaticamente
• Queste informazioni possono essere usate per associare parti del discorso ai lemmi
![Page 6: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/6.jpg)
IL BROWN CORPUS
• Il primo corpus in formato elettronico moderno (Francis and Kucera, 1961)
• 500 testi, ognuno 2 000 parole• Analisi SINCRONICA dell’Inglese Americano:
testi di 15 generi (fantascienza, romanzi, articoli scientifici, reportage a stampa)
• Annotata la parte del discorso di tutte le parole (87 classi)
![Page 7: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/7.jpg)
MARKUP NEL BROWN CORPUS
Television/NN has/HVZ yet/RB to/TO work/VB out/RP a/AT living/RBG arrangement/NN with/IN jazz/NN ,/, which/VDT comes/VBZ to/IN the/AT medium/NN more/QL as/CS an/AT uneasy/JJ guest/NN than/CS as/CS a/AT relaxed/VBN member/NN of/IN the/AT family/NN ./.
![Page 8: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/8.jpg)
IL British National Corpus (BNC)
• Creato tra il 1991 ed il 1994 da un consorzio diretto da Oxford University Press
• Circa 100 milioni di parole• Classificazione grammaticale automatica usando il
classificatore CLAWS (parti corrette a mano successivamente)
• http://www.hcu.ox.ac.uk/BNC
![Page 9: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/9.jpg)
9
LO SCHEMA DI CLASSIFICAZIONE (TAGSET)
• La scelta dello schema di classificazione grammaticale usato ha grande importanza
• Occorre un equilibrio tra– Codificare piu’ informazioni possibili sul contesto
(= avere una classificazione quanto piu’ fine possibile)
– Facilitare il compito dei classificatori (= ridurre il numero di tags)
![Page 10: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/10.jpg)
10
Il tagset Penn Treebank (semplificazione del tagset Brown)
![Page 11: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/11.jpg)
11
Verb inflection tags
![Page 12: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/12.jpg)
12
The entire Penn Treebank tagset
![Page 13: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/13.jpg)
13
UCREL C5
![Page 14: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/14.jpg)
14
Tagsets per l’italiano
Si-TAL (Pisa, Venezia, IRST, ....)
PAROLE
TEXTPRO (dopo)
![Page 15: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/15.jpg)
15
Il tagset di SI-TAL
![Page 16: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/16.jpg)
POS TAGGED CORPORA IN NLTK
>>> tagged_token = nltk.tag.str2tuple('fly/NN') >>> tagged_token('fly', 'NN') >>> tagged_token[0] 'fly' >>> tagged_token[1] 'NN'
>>> nltk.corpus.brown.tagged_words() [('The', 'AT'), ('Fulton', 'NP-TL'), ('County', 'NN-TL'), ...]
![Page 17: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/17.jpg)
Exploring tagged corpora
• Ch.5, p. 184-189
![Page 18: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/18.jpg)
ALTRI CORPORA ANNOTATI CON PDD
• NLTK:• WAC Corpora:
– English: UKWAC– Italian: ITWAC
![Page 19: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/19.jpg)
CLASSIFICAZIONE GRAMMATICALE
Giuseppe legge il giornale
Giuseppe/NNP legge/VBZ il/DT giornale/NN
![Page 20: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/20.jpg)
Classificazione grammaticale: metodi
• Lookup (NLTK, 5.4)• Regular expression (NLTK, 5.4)
![Page 21: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/21.jpg)
CLASSIFICAZIONE GRAMMATICALE: IL PROBLEMA DELL’AMBIGUITA’
• Molte forme di parola possono essere associate con parti del discorso diverse:– STATO sia sostantivo (LO STATO ITALIANO) che
verbo (NON SONO STATO IO)
![Page 22: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/22.jpg)
AMBIGUITA’: LEGGE1
1 Norma, espressa dagli organi legislativi dello Stato, che stabilisce diritti e doveri dei cittadini Legge delega, che viene emessa dal potere esecutivo su delega del potere legislativo entro un ambito ben precisato Legge ponte, emessa in attesa di un'altra più organica A norma, a termini di legge, secondo ciò che la legge prescrive.2 (est.) Complesso delle norme costituenti l'ordinamento giuridico di uno Stato: la legge è uguale per tutti Essere fuori della legge, non essere garantito dalla legge o non sentirsi a essa soggetto Dettar legge, imporre a tutti la propria volontà.3 Scienza giuridica: laurea in legge; dottore in legge; facoltà di legge Uomo di legge, specialista nella scienza giuridica.4 Autorità giudiziaria: ricorrere alla legge In nome della legge, formula con cui i rappresentanti dell'autorità giudiziaria intimano a qc. di obbedire a un comando della stessa: in nome della legge, aprite!5 (est.) Ogni norma che regola la condotta individuale o sociale degli uomini: le leggi della società.6 (est.) Regola fondamentale di una tecnica, di un'arte e sim.: le leggi della pittura.7 Relazione determinata e costante fra le quantità variabili che entrano in un fenomeno: le leggi della matematica, della fisica.
![Page 23: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/23.jpg)
AMBIGUITA’: LEGGE2
leggerev. tr. (pres. io lèggo, tu lèggi; pass. rem. io lèssi, tu leggésti; part. pass. lètto)1 Riconoscere dai segni della scrittura le parole e comprenderne il significato: imparare, insegnare a leggere; leggere a voce alta (ass.) Fare lettura, dedicarsi alla lettura: trascorro gran parte della giornata leggendo.2 Interpretare certi segni convenzionali o naturali: i ciechi leggono con le dita; leggere un diagramma (fig.) Leggere la mano, ricavare dati sul carattere e sul destino di qc. basandosi sulle linee della mano.3 (lett.) Interpretare uno scritto, un passo: i critici dell'Ottocento leggevano erroneamente questa strofa (est.) Interpretare, valutare scritti, eventi e sim. secondo particolari criteri: leggere un film in chiave ironica.4 (fig.) Intuire i pensieri e le intenzioni di qc.: gli si legge il terrore sul volto.
![Page 24: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/24.jpg)
25
FREQUENZA + MORFOLOGIA + CONTESTO
• I POS taggers risolvono il problema dell’ambiguita’ usando una combinazione di informazioni su– FREQUENZA (FREQUENCY)
• I poured FLOUR/NN into the bowl.• Peter should FLOUR/VB the baking tray
– INFORMAZIONI MORFOLOGICHE • Check out this week podcast from DeJedi with all your
favourite RAGGATASTIC/JJ? jungle riddims.
– CONTESTO (CONTEXT)• I saw the new/JJ PLAY/NN in the theater.• The boy will/MD PLAY/VBP in the garden.
![Page 25: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/25.jpg)
26
The importance of context
• Secretariat/NNP is/VBZ expected/VBN to/TO race/VB tomorrow/NN
• People/NNS continue/VBP to/TO inquire/VB the/DT reason/NN for/IN the/DT race/NN for/IN outer/JJ space/NN
![Page 26: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/26.jpg)
Come determinare la categoria di un token
• Per discussione ulteriore, vedi NLTK book, 5.7
![Page 27: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/27.jpg)
Classificazione di PDD in NLTK
DEFAULT POS TAGGER: nltk.pos_tag
>>> text = nltk.word_tokenize("And now for something completely different")>>> nltk.pos_tag(text) [('And', 'CC'), ('now', 'RB'), ('for', 'IN'), ('something', 'NN'), ('completely', 'RB'), ('different', 'JJ')]
![Page 28: TEORIE E TECNICHE DEL RICONOSCIMENTO Parti del discorso Classificazione grammaticale Classificazione grammaticale in Python 1](https://reader038.vdocumenti.com/reader038/viewer/2022102805/5542eb76497959361e8df410/html5/thumbnails/28.jpg)
TEXTPRO
• La suite di tools piu’ usata per l’Italiano• Include un POS tagger• http://textpro.fbk.eu/• Demo