• Save
Tesi di Laurea Specialistica
Upcoming SlideShare
Loading in...5
×
 

Tesi di Laurea Specialistica

on

  • 789 views

 

Statistics

Views

Total Views
789
Views on SlideShare
782
Embed Views
7

Actions

Likes
1
Downloads
0
Comments
0

2 Embeds 7

http://www.linkedin.com 5
https://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Tesi di Laurea Specialistica Tesi di Laurea Specialistica Presentation Transcript

  • POLITECNICO DI MILANO Facoltà di Ingegneria Dipartimento di Elettronica e Informazione Corso di Laurea Specialistica in Ingegneria Informatica CLASSIFICAZIONE SINTATTICA CON METODI INSIEMISTICIRelatore: Prof.sa Chiara FrancalanciCo-Relatori: Ing. Francesco Merlo, Ing. Alessandro PoliTesi di laurea di: Claudio Carcaci Matricola 725004
  • AMBITI E OBIETTIVI GENERALI• Il lavoro svolto ha come obiettivo quello di fornire una nuova metodologia mirata alla classificazione “veloce” di testi “brevi”• All’interno di un dominio specifico la metodologia deve essere in grado di fornire un’analisi puntuale dei dati aggregandoli secondo categorie utili rispetto al dominio• I dati sono post, tweet, in generale messaggi estratti dalla rete internet, quindi necessariamente “brevi”, non strutturati e numerosi• In questo modo è possibile individuare informazioni significative a cui, a valle, applicare tecniche di sentiment analysis o data mining• Si vuole quindi proporre come nuova metodologia due nuovi algoritmi di classificazione sintattica Dipartimento di Elettronica e Informazione 2 Corso di Laurea Specialistica in Ingegneria Informatica
  • CLASSIFICAZIONE SINTATTICA Cos’è?• In letteratura, per quanto riguarda i testi, è chiamata TEXT CATEGORIZATION• Classificare significa raggruppare/associare i testi in base ad una vicinanza di significato stimata in base alle caratteristiche dei testi. È possibile valutare tale vicinanza servendosi di metodi semantici o metodi sintattici• Metodi semantici: si servono di ontologie e informazioni aggiuntive per valutare anche il significato del testo• Metodi sintattici: valutano solo la struttura dati del testo senza preoccuparsi del significato• I metodi sintattici sono più veloci rispetto a quelli semantici e consentono teoricamente di operare in tempo reale Dipartimento di Elettronica e Informazione 3 Corso di Laurea Specialistica in Ingegneria Informatica
  • STATO DELL’ARTE Information Retrieval e Text Categorization• Information Retrieval (IR): algoritmi che soddisfano l’esigenza di ritrovare informazioni all’interno di grossi insiemi di dati. L’evoluzione più recente sono i moderni motori di ricerca• Text Categorization (TC): algoritmi che fanno uso di tecniche matematiche che permettono la modellazione e la classificazione di testi, nascono come evoluzione delle tecniche IR• Esistono decine di metodi TC in letteratura che operano su testi “lunghi” (100-500 parole), di questi si sono scelti i migliori per confrontarli con gli algoritmi sviluppati• Il funzionamento degli algoritmi esistenti su testi “brevi” (10-15 parole) non è stato testato fino ad oggi• É un problema attuale vista la diffusione dei Social Network, Dipartimento di Elettronica e Informazione 4 Corso di Laurea Specialistica in Ingegneria Informatica
  • CARATTERISTICHE Valutazione degli algoritmi esistenti• Le caratteristiche considerate per valutare gli algoritmi esistenti tra loro sono: – Utilizzo di dati relativi al contesto: dominio concettuale di provenienza – Immunità al fenomeno dell’overfitting – Bassa complessità computazionale – Algoritmo “in linea”: non necessita di dati di training e test – Valutazione istantanea di più classi di destinazione – Classificazione incrementale di nuovi testi• I due algoritmi presenti in letteratura che offrono queste caratteristiche e quindi scelti come confronto con quelli proposti sono: – k-NN: classifica in base ai “k” testi più “vicini” – LSI: sfrutta la decomposizione a valori singolari (SVD) della matrice delle “distanze” tra testi Dipartimento di Elettronica e Informazione 5 Corso di Laurea Specialistica in Ingegneria Informatica
  • OBIETTIVI SPECIFICI Il nuovi algoritmi dovranno essere…• Tempo reale: si vogliono ottenere degli algoritmi che istantaneamente (meno di un secondo) classifichino finestre di un centinaio di testi• Capaci di classificare testi brevi: gli algoritmi proposti devono essere in grado di classificare testi estratti dai social network, quindi necessariamente “brevi”• Immuni alle riduzioni applicate: le elaborazioni preventive applicate non devono influire sulla qualità della classificazione. Esse sono necessarie per il miglioramento delle tempistiche, quindi imprescindibili nella classificazione Dipartimento di Elettronica e Informazione 6 Corso di Laurea Specialistica in Ingegneria Informatica
  • METODOLOGIA Schema concettuale di riferimento• Relazione tra testi e termini: una volta forniti i testi da classificare è possibile calcolare una matrice di rilevanza R, le cui dimensioni sono termini e testi• Relazione tra testi e classi: è la relazione che gli algoritmi di classificazione si prefiggono di soddisfare• Relazione tra termini e classi: opzionale ai fini della classificazione, è definibile tramite metadati di supporto oppure a posteriori identificando i termini appartenenti ai testi classificati nelle varie classi Dipartimento di Elettronica e Informazione 7 Corso di Laurea Specialistica in Ingegneria Informatica
  • METODOLOGIADiagramma di Flusso Dipartimento di Elettronica e Informazione 8 Corso di Laurea Specialistica in Ingegneria Informatica
  • METODOLOGIA Diagramma di flusso• Presi i testi da classificare si generano gli alberi sintattici attraverso un parser LL(1) derivato da una semplice grammatica• Si effettua quindi una prima fase di riduzione delle dimensioni eliminando le stopword e troncando i suffissi (suffix-stemming)• In seguito si calcola la matrice di rilevanza R che incide nella relazione tra testi e termini• Si effettua una seconda fase di riduzione delle dimensioni rimuovendo i termini con una rilevanza massima all’interno dei testi “bassa” (term-weighting)• Infine si passa alla classificazione vera e propria con uno degli algoritmi proposti (ExhaustiveSets o la sua estensione ExhaustiveSets+Meta) o di confronto (k-NN o LSI) Dipartimento di Elettronica e Informazione 9 Corso di Laurea Specialistica in Ingegneria Informatica
  • CONFRONTO CONCETTUALEConfronto dei diagrammi di flusso concettuali Dipartimento di Elettronica e Informazione 10 Corso di Laurea Specialistica in Ingegneria Informatica
  • EXHAUSTIVESETS Un semplice esempio di funzionamento• Dati i testi: – “Oggi nevica, domani pure” – “Nevica un giorno sì e l’altro pure” – “Quando fa freddo, nevica”• Classifico: Ok! L’attinenza tra questi testi e la “Oggi nevica, domani pure” classe creata è pari alla somma “Nevica un giorno sì e l’altro pure” della rilevanza dei termini “nevica” e “pure” nei due testi “Quando fa freddo, nevica” No! Questo testo non ha un’elevata attinenza rispetto alla classe precedente, verrà facilmente scremato Dipartimento di Elettronica e Informazione 11 Corso di Laurea Specialistica in Ingegneria Informatica
  • EXHAUSTIVESETS Considerazioni• L’algoritmo ExhaustiveSets, sfruttando la natura sparsa della matrice, individua “blocchi” di parole contenute in testi che di conseguenza vengono classificati nella stessa classe• Con la dovute ottimizzazioni l’algoritmo perviene ad una complessità logaritmico-polinomiale sul numero di termini (cardinalità dell’insieme dei termini)• In seguito vi è una fase di scrematura delle classi dove per ogni testo conserva l’associazione tra testo e classe con rilevanza massima Dipartimento di Elettronica e Informazione 12 Corso di Laurea Specialistica in Ingegneria Informatica
  • EXHAUSTIVESETS+META Algoritmo con apprendimento• Fornendo dati aggiuntivi relativi al contesto (dominio) ossia un elenco di classi e dei termini relativi ad ognuna di esse si ottiene uno schema concettuale:• Si può quindi implementare un algoritmo di tipo greedy e capace di apprendere, estensione del precedente• L’algoritmo ha una complessità logaritmico (nel numero di termini associati alle classi e nel numero di testi) lineare (nel numero di classi) Dipartimento di Elettronica e Informazione 13 Corso di Laurea Specialistica in Ingegneria Informatica
  • EXHAUSTIVESETS+META Un semplice esempio di funzionamento• Partendo dai soliti testi: – “Oggi nevica, domani pure” – “Nevica un giorno sì e l’altro pure” – “Quando fa freddo, nevica”• Con i metadati: – Classe:{“neve su più giorni”}, termini associati:{“nevica”,”pure”,”giorno”}• Classifico: “Oggi nevica, domani pure” al termine “giorno” rinforzo negativo + OK:+ + OK:+ “Nevica un giorno sì e l’altro pure” OK:+ OK:+ OK:+ stopword stopword “Quando fa freddo, nevica” “giorno” e “pure” rinforzo negativo + OK:+ stopword Dipartimento di Elettronica e Informazione 14 Corso di Laurea Specialistica in Ingegneria Informatica
  • PRIMA FASE DI TEST ExhaustiveSets vs k-NN e LSI• Usando il dataset Reuters-21578* si è preso come testi i titoli dei primi 300 articoli• Si sono ottenuti valori qualitativi in termini di precision/recall e altre metriche derivate nulli per quanto riguarda k-NN e LSI e di circa 0.36 (P e R) per quanto riguarda ExhaustiveSets• I tempi di parsing e riduzione iniziali erano trascurabili• I tempi di classificazione andavano dai 4 secondi per k-NN, a qualche decina di secondi per ExhaustiveSets fino a circa 120 secondi per LSI• Si è notato come le riduzioni iniziali: – Influivano molto sui tempi di classificazione, come ci si aspettava – Non influivano sulla qualità della classificazione * Dataset composto da 21578 articoli formattati in XML estratti da pubblicazioni Reuters http://www.daviddlewis.com/resources/testcollections/reuters21578/ Dipartimento di Elettronica e Informazione 15 Corso di Laurea Specialistica in Ingegneria Informatica
  • PRIMA FASE DI TEST ExhaustiveSets vs k-NN e LSI• La logica di ExhaustiveSets consente di migliorare significativamente le tempistiche di esecuzione rispetto alle riduzioni applicate• ExhaustiveSets è “immune”, qualitativamente parlando, alle riduzioni• Tuttavia ExhaustiveSets non offre risultati incoraggianti in termini qualitativi pur essendo infinitamente più preciso rispetto agli algoritmi di confronto che su testi brevi danno risultati nulli• Anche le tempistiche non sono certo funzionali in un contesto tempo-reale• Fornendo dati relativi al contesto la situazione migliora… Dipartimento di Elettronica e Informazione 16 Corso di Laurea Specialistica in Ingegneria Informatica
  • SECONDA FASE DI TEST ExhaustiveSets vs ExhaustiveSets+Meta• Appurata la solidità della classificazione relativamente alle riduzioni adottate si sono confrontati l’algoritmo base e quello esteso• Si è usato il dataset Torcia*, consistente in 90 testi “brevi” relativi alle emergenze classificati con i relativi metadata tra termini e classi• I risultati ottenuti questa volta sono stati incoraggianti: come previsto ExhaustiveSets ha classificato qualitativamente male, mentre ExhaustiveSets+Meta ha fornito valori qualitativi accettabili, precision attorno a 0.65, recall attorno a 0.8• I tempi di classificazione erano di 130 secondi per ExhaustiveSets e meno di un secondo per ExhaustiveSets+Meta, riuscendo quindi a soddisfare il vincolo di tempo-reale* Dataset composto da 90 testi brevi estratti da Twitter e classificati manualmente nel lavoro relativo al progetto Torcia finanziato da Regione Lombardia per la gestione delle emergenze, www.sos-torcia.it Si consulti: A. Palla “Metodologia per la gestione delle emergenze basata su informazione sociale”, 2012 Dipartimento di Elettronica e Informazione 17 Corso di Laurea Specialistica in Ingegneria Informatica
  • CONCLUSIONI• L’obiettivo di questo lavoro era quello di ottenere almeno un algoritmo che soddisfacesse i vincoli: – Tempo reale – Capace di operare su testi brevi – Immune alle riduzioni applicate• Si è riusciti ad ottenere tale scopo tramite un algoritmo, estensione di quello base, che fa uso di metadati e dove la classificazione è “centrata” sui termini in modo molto diretto per poter garantire la giusta “velocità” di esecuzione in tempo reale• L’algoritmo, estensione di quelle base, proposto è in grado di fare apprendimento ossia raffinare i suoi risultati qualitativi Dipartimento di Elettronica e Informazione 18 Corso di Laurea Specialistica in Ingegneria Informatica
  • DOMANDE? Dipartimento di Elettronica e Informazione 19 Corso di Laurea Specialistica in Ingegneria Informatica