La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Classificazione automatica dei nomi di evento in italiano Metodi di apprendimento e selezione di features Lucia Passaro e Morena Venturini.

Presentazioni simili


Presentazione sul tema: "Classificazione automatica dei nomi di evento in italiano Metodi di apprendimento e selezione di features Lucia Passaro e Morena Venturini."— Transcript della presentazione:

1 Classificazione automatica dei nomi di evento in italiano Metodi di apprendimento e selezione di features Lucia Passaro e Morena Venturini

2 Il problema: Il problema:Classificazione automatica dei nomi di evento in italiano. Gli obiettivi: Gli obiettivi:a) individuazione dellalgoritmo di classificazione più efficiente; b) individuazione dei tratti contestuali più utili al suo addestramento. Lo strumento: Lo strumento: Weka. Il corpus: Il corpus: Raccolta di articoli di quotidiani in italiano. Il progetto

3 Il progetto nasce in seguito alla collaborazione (tirocinio) con lIstituto di Linguistica Computazionale A. Zampolli del CNR di Pisa, nellambito dello studio della semantica del testo. Classificazione automatica dei nomi di evento La collaborazione è nata per validare lo schema di annotazione ISO-TimeML per litaliano.

4 Riconoscimento degli eventi verbiaggettivi, numeri preposizioninomi Sono eventi tutti i verbi, pochi aggettivi, numeri e preposizioni, e parte dei nomi. contesto Questi sono i più importanti e difficili da riconoscere, perché la loro eventività è stabilita dal contesto nel quale ricorrono. Un evento è qualcosa che accade in un certo istante temporale, un fatto, un avvenimento di interesse.

5 a)Nomi deverbali: arrivo, corsa, camminata; b)Nomi con lettura eventiva nelle proprietà lessicali: guerra, uragano; c) Nomi di oggetto che sottintendono eventi in particolari frasi: Ho interrotto [la lettura de] il libro; d) Nomi che indicano stati temporanei: lex amministratore, il nuovo creditore. I nomi sono considerati eventi in 4 casi particolari: Riconoscimento degli eventi

6 Un piccolo sottogruppo dei nomi ha nelle proprie caratteristiche lessicali una connotazione eventiva. guerra, riunione, concerto, alluvione… La maggioranza dei nomi, invece, è eventiva in base al contesto in cui ricorre. Questi nomi, causano disaccordo nellannotazione, che essa sia manuale o automatica. Limportanza del contesto

7 Il caso di assemblea: [a] Lassemblea è prevista per le 20:00 [a] vs [b] Lassemblea ha deciso che la società verrà quotata in borsa. [b] [a] riunione [a] Con assemblea si intende la riunione di un certo gruppo di persone; [b]persone [b]Con assemblea indicano le persone stesse.

8 Apprendimento automatico Si occupa della realizzazione di sistemi che, a partire da un dataset, imparano le regole che lo hanno generato. Gli algoritmi di machine learning più usati appartengono a tre principali categorie: a)Supervised learning; b)Unsupervised learning; c)Reinforcement learning.

9 Supervised Learning Lapprendimento automatico supervisionato presuppone una preventiva annotazione dei dati. A partire da un corpus annotato, gli algoritmi troveranno un modello in grado di approssimare la distribuzione reale dei dati, che servirà per predire statisticamente la classificazione di nuovi dati.

10 Descrizione del progetto

11 fase 1: acquisizione dei dati fase 2: preparazione dei dati fase 3: scelta delle features fase 4: preparazione della matrice fase 5: esperimenti con Weka

12 Il corpus di riferimento Il corpus annotato manualmente presso lILC (concesso alla fine del tirocinio) è stato il punto di riferimento per lutilizzo di tecniche di apprendimento automatico supervisionato. Esso è formato da 149 articoli di quotidiani estratti dai corpora Tressi e PAROLE. Il corpus Tressi, specialistico, contiene articoli di carattere economico – finanziario.

13 fase 1: acquisizione dei dati fase 2: preparazione dei dati fase 3: scelta delle features fase 4: preparazione della matrice fase 5: esperimenti con Weka

14 Il corpus è stato ricevuto in formato testo delimitato da tabulazione. Sono stati selezionati i campi utili ai fini della classificazione automatica e modificati i tipi degli attributi sconvenienti per tale fine. Preparazione del training set

15 Rappresentazione di una tabella del database: dalla stessa sono stati selezionati i campi articolo, id, PoS, forma, lemma, classe (evento). Rappresentazione di una tabella del database: dalla stessa è stato selezionato il campo numero frase.

16 Selezione dei campi: a)identificatore articolo; b)identificatore univoco token; c)part of speech; d)forma; e)lemma; f)evento; g)numero di frase. Preparazione del training set

17

18 fase 1: acquisizione dei dati fase 2: preparazione dei dati fase 3: scelta delle features fase 4: preparazione della matrice fase 5: esperimenti con Weka

19 Scelta delle features Per feature si intende un determinato contesto (morfologico, sintattico, semantico, ecc.) in cui ricorre, o potrebbe ricorrere, un nome di evento. I tratti contestuali servono per addestrare un algoritmo di apprendimento automatico a classificare un nome come eventivo oppure no.

20 Scelta delle features feature 1: feature 1: il nome termina in –zione; feature 2: feature 2: il nome termina in –mento; feature 3: feature 3: il nome termina in –ata; feature 4: feature 4: il nome termina in –nza; feature 5: feature 5: il nome è argomento di determinati verbi; feature 6: feature 6: il nome è argomento di un verbo aspettuale; feature 7: feature 7: il nome è preceduto da attuale, vecchio, ex, nuovo;

21 Scelta delle features feature 8: feature 8: il nome è argomento di un verbo di reporting; feature 9: feature 9: il nome è preceduto da una preposizione; feature 10: feature 10: il nome è preceduto da a/per causa di, per effetto di, per/in via di; feature 11: feature 11: il nome è seguito da un evento; feature 12: feature 12: nella stessa frase è presente unespressione di tempo.

22 Scelta delle features Criteri adottati nella selezione: [feat. 1-4] [feat. 1-4] i suffissi deverbali -zione, -mento, -ata, -nza indicano tipicamente un nome eventivo: manifestazione, licenziamento, scalata, insistenza… [feat. 5] [feat. 5] sono stati individuati dei verbi che, come loro argomento, presuppongono un evento: Ha preso parte ai massacri commessi. Ciò non impedirà labbassamento dei tassi di mercato.

23 Scelta delle features [feat. 6] [feat. 6] i verbi aspettuali sono quasi sempre seguiti da un evento: LItalia ha concluso un accordo con gli U.S.A. [feat. 7] [feat. 7] gli aggettivi attuale, vecchio, ex, nuovo indicano un cambiamento di stato: Lattuale presidente assumerà la carica di executive vice president. [feat. 8] [feat. 8] i nomi incrementativi o decrementativi sono stati annotati se argomento di un verbo di reporting: Ha registrato un aumento delle vendite.

24 Scelta delle features [feat. 9] [feat. 9] alcuni nomi assumono o perdono lettura eventiva se preceduti da una preposizione: Per via dellassenza del sindaco… In assenza del sindaco… [feat. 10] [feat. 10] alcune costruzioni introducono sempre un evento: In via di ampliamento è la presenza di Rupert nel settore. Si è passati da 2 a 5 mld per effetto di un boom delle vendite.

25 Scelta delle features [feat. 11] [feat. 11] relativamente ai nomi seguiti da evento (con costruzione nome + prep + nome), sono applicate precise linee-guida di annotazione: a)ev + prep + ev: annotati entrambi i nomi Il segnale di disgelo proveniente da Parigi va sostenuto. b) ev + prep + non-ev: annotato solo il primo nome Non resta che attendere la risposta del mercato. c) non-ev + prep + ev: nessun nome annotato Il discorso è stato rimandato ad un secondo ciclo di colloqui.

26 Scelta delle features [feat. 12] [feat. 12] nella maggior parte dei casi un evento è segnalato dalla presenza di unespressione temporale: Lesplosione è avvenuta a mezzanotte di lunedì. Questi tratti contestuali, se considerati singolarmente, sono poco pregnanti: è la loro combinazione che fornisce indicazioni affidabili sulla reale presenza di un nome eventivo.

27 fase 1: acquisizione dei dati fase 2: preparazione dei dati fase 3: scelta delle features fase 4: preparazione della matrice fase 5: esperimenti con Weka

28 Preparazione della matrice a)identificatore univoco token [attributo numerico incrementale]; b)lemma [attributo di tipo string]; c)evento [classe del nome - binario]; d)insieme di features (f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12) [binari]. Per matrice di features si intende un file di testo delimitato da tabulazione che possieda i seguenti attributi per ogni nome appartenente al corpus:

29 La matrice è stata realizzata usando Perl come linguaggio di programmazione. Per ogni token del corpus è stato creato un array contenente i campi ID e LEMMA in cui le features hanno assunto valori binari (0/1). Per procedere nellanalisi dei dati, la matrice è stata trasformata in uno dei formati compatibili con Weka (ARFF). Preparazione della matrice

30 Estratto della matrice di features in formato testo delimitato da tabulazione.

31 fase 1: acquisizione dei dati fase 2: preparazione dei dati fase 3: scelta delle features fase 4: preparazione della matrice fase 5: esperimenti con Weka

32 Weka (Waikato Environment for Knowledge Analysis) Weka (Waikato Environment for Knowledge Analysis) è un software di data mining scritto in Java. Attribute Relation File Format Possiede un insieme completo di strumenti di pre – processing, algoritmi di apprendimento e metodi di valutazione. Per i dati in ingresso utilizza il formato ARFF (Attribute Relation File Format).

33 Esperimento 1 Scelta del classificatore più efficiente

34 Classificatori a confronto Dopo aver preso in input il file ARFF con Weka sono stati selezionati sei diversi algoritmi di machine learning per la classificazione. Tutti gli algoritmi sono testati sui dati con il metodo della cross validation: il corpus viene diviso in 10 parti di cui 9 vengono usate come training per la costruzione del modello, e 1 come test per la verifica. Lesperimento viene eseguito 10 volte e il risultato della classificazione scaturisce dalla media degli esperimenti.

35 Esistono diverse tipologie di algoritmi di apprendimento automatico supervisionato. Per ogni tipologia sono stati selezionati uno o due algoritmi particolari per la classificazione. Classificatori a confronto

36 Classificatori a regole: rules.ZeroR; Classificatori bayesiani: bayes.BayesNet; bayes.NaiveBayes; Classificatori Support Vector Machine: functions.SMO; Classificatori ad alberi decisionali: trees.Id3; trees.J48.

37 Principali misure di valutazione a)Precision a)Precision: percentuale di predizioni positive corrette: P = TP/(TP+FP); b)Recall b)Recall: percentuale di istanze realmente positive classificate come positive: R = TP/(TP+FN); c)TP rate c)TP rate: percentuale di istanze realmente positive classificate come positive: TP/(TP+FN); d)FP rate d)FP rate: percentuale di istanze realmente negative classificate erroneamente come positive: FP/(FP+TN); e)Accuracy e)Accuracy: percentuale di istanze sia positive sia negative classificate correttamente: (TP+TN)/(TP+TN+FP+FN); f)F1 measure f)F1 measure: media armonica tra Precision e Recall : 2PR / (P+R).

38 Misure di valutazione rilevanti Poiché lobiettivo è quello di studiare le prestazioni di un classificatore su una classe particolare, sono state prese in considerazione le misure di: a) Percentuale di classificazione; b) Precision; c) Recall; d) F1-Measure.

39 Confronto sui risultati ottenuti Support Vector Machine F1-Measure Il classificatore più adatto ai dati linguistici risulta essere quello di Support Vector Machine poiché ha ottenuto il valore più alto di F1-Measure a parità di istanze classificate. 0,8890,9510,835019,50481,723trees.J48 0,9320,9420,92747,2866,14349,842trees.Id3 0,9160,9450,89014,25686,61functions.SMO 0,9040,950,865016,17984,853bayes.NaiveBayes 0,9130,9410,888014,62786,257bayes.BayesNet 0,86910,77024,55876,904rules.ZeroR F1-MeasureRecallPrecision Percent unclassified Percent incorrect Percent correct

40 Classificazione binaria La classificazione binaria può essere considerata come una separazione di classi nello spazio delle features: la superficie di decisione è formata da una zona di classificazione positiva, una di classificazione negativa, e al centro una zona di incertezza. Gli algoritmi SVM trovano il miglior separatore lineare, ossia quello in cui il margine è massimo.

41 I pregi di SVM Gli algoritmi SVM sono i più adatti a dati linguistici perché quando non è sufficiente classificare i dati servendosi di una superficie di decisione bidimen- sionale, questi vengono proiettati in uno spazio dimensionale più ampio. complessità sintattico – semantica I dati linguistici, per la complessità sintattico – semantica che possiedono difficilmente trovano una rappresentazione lineare soddisfacente.

42 Analisi degli errori Gli errori ricorrenti sono dovuti a: a)False positives in presenza delle features morfologiche; b) Scarsa selettività della feature indicante la presenza di preposizioni; c) Eccessiva generalizzazione nellestrazione delle features: Esse sono state selezionate sulla base delle euristiche generaliste ISO-TimeML. Il corpus sul quale sono state testate è invece specialistico; d) Sparsità dei dati linguistici: La rarità delle osservazioni rende difficile laddestramento statistico.

43 Sparsità dei dati Sarebbe possibile ridurre i problemi legati alla sparsità dei dati linguistici proprio attraverso unannotazione semiautomatica incrementale dei testi. Una volta sviluppato il classificatore automatico, questo può essere usato per lannotazione di nuovi testi. Dopo essere stati corretti manualmente, tali testi possono essere inseriti nel training corpus per un nuovo addestramento. Un numero maggiore di esempi migliora laddestramento statistico, e di conseguenza lefficienza dei classificatori.

44 Esperimento 2 Individuazione dei tratti contestuali più utili alladdestramento

45 Miglioramento delle prestazioni Le prestazioni del classificatore SMO possono essere migliorate individuando, fra quelli selezionati, i tratti contestuali che risultano effettivamente utili al suo addestramento e tralasciando quelli poco significativi. Focalizzare lattenzione solo sugli attributi rilevanti serve a ridurre la mole di lavoro dellalgoritmo e a velocizzare la classificazione stessa.

46 Sottoinsiemi di features fase 1: fase 1: le features individuate sono state divise in tre sotto-gruppi in base alle loro caratteristiche: gruppo 1: gruppo 1: attributi morfologici (features 1-4); gruppo 2: gruppo 2: attributi semantici (features 5-8); gruppo 3: gruppo 3: attributi sintattici (features 9-10). Sono state escluse le features speciali 11 e 12.

47 Prove di classificazione fase 2: fase 2: il corpus è stato classificato cambiando di volta in volta le features considerate nelladdestramento: prova 1: prova 1: lalgoritmo è stato addestrato solo sui sottoinsiemi di features individuati in precedenza; prova 2: prova 2: sono state aggiunte (ad ogni gruppo) le features speciali.

48 Classificazione – prova 1 Risultati: 0,84410,85330,845714,66%85,34% gruppo 1 0,82170,84180,83715,8%84,2% gruppo 3 0,82140,84150,835615,9%84,1% gruppo 2 F1-MeasureRecall Precision Incorrectly Classified Instances Correctly Classified Instances

49 Il gruppo di features più predittivo è quello morfologico. Le features del gruppo semantico sono quelle con meno potere discriminativo e provocano loverfitting dellalgoritmo. Classificazione – prova 1

50 0,86 13,4%86,6% gruppo 1 + f ,84850,86020,855114%86% gruppo 3 + f ,84820,85960,854414%86% gruppo 2 + f F1-MeasureRecall Precision Incorrectly Classified Instances Correctly Classified Instances 0,8603 0,8659 Risultati: Classificazione – prova 2

51 Laggiunta delle due features speciali fa aumentare la capacità predittiva di tutti i gruppi. Si confermano i risultati ottenuti dopo il primo test. Classificazione – prova 2

52 Prova conclusiva Ipotesi: Ipotesi: addestrare lalgoritmo tralasciando le features semantiche non compromette lesito della classificazione. Risultati: 0,86050,86660,860913,33%86,67% tutte tranne semantiche 0,9160,9450,8913,39%86,61%tutte le features F1-MeasureRecallPrecision Incorrectly Classified Instances Correctly Classified Instances

53 I risultati non si sono abbassati di molto: la F1-Measure è passata da 0,916 a 0,8605. Ciò significa che le features 5-8 possono essere tralasciate senza compromettere laccuratezza e la correttezza della classificazione. Prova conclusiva

54 I tratti più utili per addestrare un algoritmo di machine learning per lannotazione dei nomi di evento sono: il nome termina in –zione; il nome termina in –mento; il nome termina in –ata; il nome termina in –nza; il nome è preceduto da una preposizione; il nome è preceduto da a/per causa di, per effetto di, per/in via di; il nome è seguito da un evento; nella stessa frase è presente unespressione di tempo. Features più informative

55 Conclusioni

56 Prospettive Il sistema creato può essere ampliato per: a)Il riconoscimento di eventi esplicitati attraverso verbi, aggettivi, numeri, e preposizioni; b)Adattare la selezione delle features ai corpora da annotare; c)Rendere le features più o meno selettive a seconda del task.

57 In conclusione… ampliamento del modello È lecito pensare che lampliamento del modello possa condurre a una classificazione automatica in grado di superare in efficienza quella manuale realizzata da parlanti medi.

58 Si ringraziano per il progetto… Alessandro Lenci, Tommaso Caselli, Irina Prodanof.

59 Bibliografia essenziale Bouckaert Remco R., et al. [2008], Weka Manual for version Caselli Tommaso [2008], TimeML Annotation Guidelines for Italian Version 1.0. (Technical Report) Gaeta Livio [2002], Quando i verbi compaiono come nomi. Un saggio di Morfologia Naturale. Franco Angeli Edizioni Lanzi Pier Luca [2009], Corso di Metodologie per Sistemi Intelligenti. Politecnico di Milano Navigli Roberto [2009], Corso di Apprendimento Automatico. Università di Roma, La Sapienza Navigli Roberto [2009], Word Sense Disambiguation: A Survey. In ACM Computing Surveys, Vol. 41, No. 2, Article 10


Scaricare ppt "Classificazione automatica dei nomi di evento in italiano Metodi di apprendimento e selezione di features Lucia Passaro e Morena Venturini."

Presentazioni simili


Annunci Google