Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Survey On Text Mining

3,501 views

Published on

Published in: Business
  • Be the first to comment

Survey On Text Mining

  1. 1. Survey on Text Mining Clustering Classification Retrieval Antonello Caggiano – a.caggiano@email.it Università di Bologna, sede di Cesena.
  2. 2. Intro Migliaia di documenti vengono prodotti ogni giorno: Brevetti, Pubblicazioni scientifiche, E-Mail, Telefonate, Stampa. Internet, CD-Rom, DB; Word, HTML, XML, PDF, TXT; Inglese, Cinese, Russo, Italiano. Antonello Caggiano - Survey on 2 Text Mining
  3. 3. Intro • Più dell'80% della conoscenza non è strutturata. • Avere una tale ricchezza di materiale senza conoscerlo equivale a non avere informazioni disponibili. L'informazione è nulla, se non è gestita. Antonello Caggiano - Survey on 3 Text Mining
  4. 4. Text Mining: definizione Insieme di tecniche per: • Analizzare archivi testuali e non; • Strutturare e classificare il contenuto; • Trovare l’informazione nascosta. Attraverso il text mining si possono analizzare volumi immensi d’informazione e si possono identificare relazioni e strutture che altrimenti sfuggirebbero alla capacità analitica dell’essere umano. Antonello Caggiano - Survey on 4 Text Mining
  5. 5. Text Mining: cosa fa? Permette di trattare i documenti con strumenti di analisi automatica che: - riassumono e categorizzano i documenti, - identificano la lingua in cui sono scritti; - estraggono concetti chiave, nomi propri e frasi con più parole, ne riportano frequenze, - classificano un documento in funzione della rilevanza rispetto a uno specifico argomento. Alcuni incorporano capacità di recupero automatico di documenti sulla rete internet (Web-crawling): crawling - estraggono dati in vari formati; - collegano le informazioni tra di loro in relazioni spaziali o temporali; - scoprono legami o catene di informazioni legate fra di loro; - raggruppano documenti in funzione del loro contenuto; - effettuano analisi incrociate e permettono l’utilizzo congiunto di package statistici. Antonello Caggiano - Survey on 5 Text Mining
  6. 6. Text Mining: cosa utilizza? • È un campo multidisciplinare, che impiega: – l’Information Retrieval (la raccolta di informazioni), – l’analisi testuale, – l’Information Extraction (l’estrazione di informazioni), – il clustering, – le tecniche di visualizzazione, – le tecniche di trattamento dei database, – l’apprendimento artificiale, – il Data Mining (l’accoppiamento della tecnologia della lingua con gli algoritmi del data mining) Antonello Caggiano - Survey on 6 Text Mining
  7. 7. Text Mining: vantaggi • I vantaggi: ∼ Pianificare decisioni e implementazione di attività strategiche; ∼ Prevenire situazioni future di rischio; ∼ Conoscere meglio clienti, competitor, fornitori, partners; ∼ Captare segnali deboli (annuncio di possibili cambiamenti); ∼ Identificare nuovi potenziali clienti; ∼ Valutare la posizione competitiva; ∼ Identificare i Trend del settore o di mercato; ∼ Identificare tematiche riguardanti i prodotti evidenziando possibili problemi e cambi di tendenze. Antonello Caggiano - Survey on 7 Text Mining
  8. 8. Applicazioni • Segmentazione della clientela (Database Marketing) – individuazione delle diverse tipologie di clienti per campagne di marketing diretto, valutazione effetti, ottenere indicazioni su come modificare la propria offerta, monitorare nel tempo l'evoluzione della propria clientela e l'emergere di nuove tipologie. • Analisi delle associazioni (Basket Analysis) – individuazione di associazioni a dati di vendita per conoscere quali prodotti sono acquistati congiuntamente; ciò consente di migliorare l'offerta dei prodotti (disposizione sugli scaffali) e di incrementare le vendite di alcuni prodotti tramite offerte sui prodotti ad essi associati Antonello Caggiano - Survey on 8 Text Mining
  9. 9. Applicazioni • Page Rank di Google – Ordina il risultato delle ricerche rispetto alla prioritá. L’importanza di un risultato dipende (in parte) dalle pagine che vi puntano (Backlinks). Il peso dei Backlinks dipende dalla pagina da cui proviene il link. • ECHELON – Rete informatica, segreta fino al 1997, capace di controllare l’intero informatica globo e di intercettare, selezionare e registrare ogni forma di comunicazione elettronica. Ogni stazione raccoglie informazioni in modo automatico. Le stazioni utilizzano tecniche avanzate di intelligenza artificiale per riconoscere ed estrarre le informazioni interessanti Antonello Caggiano - Survey on 9 Text Mining
  10. 10. Processo di Mining INFORMATION INFORMATION INFORMATION RETRIEVAL MINING INTERPRETAZIONE EXTRACTION Antonello Caggiano - Survey on 10 Text Mining
  11. 11. Information Retrieval Localizzare e recuperare documenti che possono essere considerati rilevanti alla luce degli obiettivi prefissati. • Ha come obiettivo la selezione di un sottoinsieme rilevante di documenti da un insieme più grande e la rappresentazione di tutto il contenuto informativo di una forte parte delle informazioni contenute nel testo. • IR fa riferimento all’attività di ricerca di documenti attraverso parole chiavi o composizioni logiche delle stesse (query), le quali a loro volta sono utilizzate per indicizzare i documenti. Antonello Caggiano - Survey on 11 Text Mining
  12. 12. Information extraction Estrazione di informazioni dai documenti selezionati. • Può essere considerata come un’attività di supporto all’IR. IR fa riferimento ad attività di ricerca di documenti attraverso parole chiavi: spesso però non porta al recupero di documenti realmente interessanti per il nostro scopo perché le chiavi sono scelte da terzi (generalmente dall’autore del testo). IE cerca di superare questa differenza tra le due logiche in modo da avere un meccanismo di ricerca che sia basato su una rappresentazione oggettiva della conoscenza. Antonello Caggiano - Survey on Text Mining 12
  13. 13. Processo di IE • Due parti principali: estrazione di fatti individuali dal documento attraverso analisi locale del testo; integrazione dei fatti estratti con analisi di co-referenza e di inferenza. Infine: traduzione dei fatti pertinenti nel formato output richiesto. Antonello Caggiano - Survey on 13 Text Mining
  14. 14. Fasi del processo • Analisi lessicale – Assegnazione di part-of-speech alle singole parole attraverso l’analisi morfologica. • Riconoscimento di nomi – Identificazione di nomi ed altre speciali strutture lessicali (date, locuzioni, cifre, ecc.). • Analisi sintattica – individuazione di gruppi nominali, gruppi verbali, strutture sintattiche di interesse. • Individuazione fatti di interesse – fatti integrati e combinati con altri presenti nel documento attraverso l’analisi del discorso. Analisi di coreferenza e inferenza. • Generazione di template – dati ordinati e rappresentati sotto forma di tabella di output. Antonello Caggiano - Survey on 14 Text Mining
  15. 15. IE: Analisi lessicale Distinguere “ciò che è detto” da “come viene detto”. Il testo viene prima diviso in frasi e token. token Ciascun token viene ricercato all’interno di un dizionario per determinarne i possibili part-of-speech ed altre caratteristiche. Antonello Caggiano - Survey on 15 Text Mining
  16. 16. IE: Riconoscimento di nomi I nomi vengono identificati tramite un set di pattern (espressioni regolari) espresse nei termini del part-of-speech, delle caratteristiche sintattiche e delle caratteristiche ortografiche (ad es. l’iniziale maiuscola). Antonello Caggiano - Survey on 16 Text Mining
  17. 17. IE: Analisi sintattica • Consiste nell’identificazione di legami sintattici elementari fra i diversi elementi della frase. • Gli argomenti da estrarre spesso corrispondono a frasi di nomi nel testo, mentre le relazioni di solito corrispondono a relazioni grammaticali. Antonello Caggiano - Survey on 17 Text Mining
  18. 18. IE: Pattern maching • Il pattern matching consiste nell’estrazione di eventi o relazioni rilevanti per lo scenario di interesse. Antonello Caggiano - Survey on 18 Text Mining
  19. 19. IE: analisi di coreferenza • L’analisi di coreferenza si pone come obiettivo la risoluzione dei riferimenti dei pronomi ed anche di frasi di nomi che esprimono cose già dette nel testo. Antonello Caggiano - Survey on 19 Text Mining
  20. 20. IE: inferenze • Informazioni relative ad uno stesso evento posso essere sparse in diverse frasi: – necessario riunire tali informazioni prima della generazione dei template o degli output. • Quando invece sono presenti delle informazioni non esplicitamente indicate nel testo si fa uso del meccanismo dell’inferenza per renderle esplicite. Antonello Caggiano - Survey on 20 Text Mining
  21. 21. IE: generazione dei template • Tutte le informazioni finora ricavate dal testo sono sufficienti per l’estrazione dei template, un particolare tipo di output. template frame (tabelle) con slot da riempire con le informazioni richieste. Antonello Caggiano - Survey on 21 Text Mining
  22. 22. Information Mining • Una volta compilato un template per ogni documento analizzato, abbiamo, di fatto, un database che è compatibile con le tecniche usuali di Data Mining. • In questo modo cerchiamo dei patterns o delle relazioni fra i dati. Nel caso di analisi di un testo unico, questa fase corrisponde alle tecniche di analisi della conoscenza estratta, comprendenti metodi statistici e metodi simbolici. Antonello Caggiano - Survey on 22 Text Mining
  23. 23. Interpretazione • Consiste nell’analizzare i risultati e interpretare i pattern scoperti durante la fase di mining. • Idealmente, l’interpretazione dovrebbe essere in formato di linguaggio naturale. Antonello Caggiano - Survey on 23 Text Mining
  24. 24. Text Mining: ‘Major topic areas’ I. Clustering Automatic Discovery of Similar Words ≈ Pierre Senellart, Vincent D. Blondel II. Document retrieval and representation Vector Space Models for Search and Cluster Mining ≈ Mei Kobayashi, Masaki Aono III. Email surveillance and filtering Spam Filtering Based on Latent Semantic Indexing ≈ Wilfried N. Gansterer, Andreas G.K. Janecek, Robert Neumayer IV. Anomaly detection A Probabilistic Model for Fast and Confident Categorization of Textual Documents ≈ Cyril Goutte Antonello Caggiano - Survey on 24 Text Mining
  25. 25. I. Clustering
  26. 26. Automatic Discovery of Similar Words Scopo: scoperta automatica di sinonimi. Tecniche: 1. Input: una parola; Output: lista di buoni sinonimi o near-synonym. 2. Input: una sorgente; Output: thesaurus (domain-specific). Antonello Caggiano - Survey on 26 Text Mining
  27. 27. Vector Space Model Cosine measure: - 1 documento - 1 dimensione; - ∀ termine – 1 vettore nello spazio del documento (1 presente, 0 no). Similarità Cluster measure - somiglianza semantica tra i termini; Similarità Differenze: ☺ cluster measure: ☺ ‘recall’ (quanti termini selezionati) ‘precisione’ (termini attinenti, rilevanti). Antonello Caggiano - Survey on 27 Text Mining
  28. 28. Thesaurus [Crouch] Scopo: - costruzione automatica thesaurus con classi di parole similli, che raramente appaiono nel corpus; - uso di VSM. Schema utilizzato: term frequency inverse document frequency (tf-idf). [Salton, Yang, Yu] Scopo: misurazione effetto aggiunta termine in similarità documenti. Schema utilizzato: term discrimination value. calcolo termine discriminante molto costoso; term document frequency Soluzione: uso solo di documenti in cui il termine appare Antonello Caggiano - Survey on 28 Text Mining
  29. 29. Syntactical Context: SEXTANT Processo: 1) Analisi lessicale; lessicale 2) Detecting di frasi di nomi e verbi; 3) Parsing 4) Similarità: dove, . Antonello Caggiano - Survey on 29 Text Mining
  30. 30. Results Antonello Caggiano - Survey on 30 Text Mining
  31. 31. Discovery of SimilarWords in a Dictionary Scopo: estrazione automatica di sinonimi in dizionario monolingua. Metodo proposto (gen. metodo HITS, Kleinberg): - grafico costruito da un dizionario (iniziale); - sinonimi (assunzione): - hanno molte parole comuni nella definizione; - sono usati in definizione di parole comuni. Antonello Caggiano - Survey on 31 Text Mining
  32. 32. HITS algorithm Ipotesi: - dizionario costruzionedi G, dictionary graph associato; - ∀ parola – 1 vertice - arco u v se v è nella definizione di u. - parola w: sottografo Gw (vertici che puntano ad a? – vertici puntati da a?). Struttura da considerare: 1 2 3 2 sinonimo in considerazione Ricerca sinonimi Ricerca pagine web simili Pagina Web Vertice. Antonello Caggiano - Survey on 32 Text Mining
  33. 33. HITS algorithm: generalizzazione Algoritmo: - costruzione focused subgraph Gw; - calcolo hub(x1) & authority (x2) score per tutti i vertici di Gw. Processo: - x1 = 1, x2 = 1, hub & authority score. - aggiornamento pesi: mutually renforcing rule. - equazione aggiornamento: - Mw matrice di adiacenza associata a Gw Antonello Caggiano - Survey on 33 Text Mining
  34. 34. Generalizzazione considerare Gw , costruito con: - parole che appaiono nella definizione di w. - parole che usano w nella loro definizione. ⇒ w vertice 2. Considerazioni iniziali - Esempio - Probable, Likely: vertice 2; - Truthy: vertice 1; - Belief: vertice 3. • Un vertice è simile al vertice 2 se: - Punta a vertici che sono simili al vertice 3 - È puntato da vertici che sono simili al vertice 1. x2 converge all’autovettore principale di MwMTw+MTwMw; Risultato: lista sinonimi ottenuta tramite ranking in ordine decrescente delle entry dell’autovettore principale di MwMTw+MTwMw. Antonello Caggiano - Survey on 34 Text Mining
  35. 35. Distance Method Synonym distance due parole vicine se: appaiono nella definizione di molte parole in comune, hanno molte parole in comune nella loro definizione. Ordinamento distanza crescente: ☺ può essere applicato a un intero dictionary graph; risultati non buoni Es: sugar: pigwidgeon, ivoride. Antonello Caggiano - Survey on 35 Text Mining
  36. 36. ArcRank Scopo: trovare non sinonimi ma related words. Basato su algoritmo PageRank ( Google). Google Si assegna un ranking a ogni arco secondo il ranking dei vertici. Antonello Caggiano - Survey on 36 Text Mining
  37. 37. Experiments Dizionario utilizzato: Online Plain Text English Dictionary 27 file HTML: http://www.gutenberg.net/ Multi-words non incluse nel grafico (All Saints, Surinam toad...); Head words prefissi e suffissi: esclusi dal grafico (un-, - ous); Parole con troppi significati e head word di definizioni multiple: definizioni raccolte in una; Riconoscimento di forme flesse Esclusione stop-word Antonello Caggiano - Survey on 37 Text Mining
  38. 38. Experiments 4 metodi; aggiunto anche WordNet, human-written; WordNet 4 parole; Disappear: parola con sinonimi vari come vanish; vanish Parallelogram: parola senza veri sinonimi ma con parole simili; Sugar: parola con significati differenti (in chimica, cucina, dietologia); Science: parola comune e vaga; 5 categorie (sostantivi, aggettivi, avverbi, verbi, altro); esaminati i primi 10 risultati. Antonello Caggiano - Survey on 38 Text Mining
  39. 39. -disappear- DM e OM: buon lavoro (OM migliore). OM Vanish, cease, fade, die, pass, dissipate, faint: molto rilevanti; Light, port: irrilevanti (pos. 6,7,8, no problem); Light port Pass pos. 2: port e appear fuori (OM) difficile da spiegare. AR: risultati poveri, alcune parole fuori luogo; eat, instrumental, or epidemic. Antonello Caggiano - Survey on 39 Text Mining
  40. 40. -parallelogram- DM, OM: risultati simili e interessanti; OM square, rhomb, quadrilateral, rectangle, figure AR: non da risultati interessanti. AR consequently and popular irrilevanti WN: qui meno ricco, si focalizza su un particolare WN aspetto: quadrilateral. Antonello Caggiano - Survey on 40 Text Mining
  41. 41. -sugar- OM: migliore ancora di DM; OM starch, sucrose, sweet, dextrose, glucose, lactose; cane non buono. AR: risultati irrilevanti AR property, grocer; Antonello Caggiano - Survey on 41 Text Mining
  42. 42. -science- DM e OM: risultati comparabili OM AR: qui funziona meglio ma risultati più AR poveri degli altri. Antonello Caggiano - Survey on 42 Text Mining
  43. 43. Conclusioni Distance Method e Our Method forniscono parole interessanti e rilevanti. ArcRank non adatto per ricerca sinonimi. Qualità risultati alquanto differenti da dizionari human-written come WordNet. WordNet Queste tecniche: Mostrano interesse Presentano più aspetti di un dizionario human-written. Possibili utilizzi: aiuto nella compilazione di un dizionario di sinonimi. Antonello Caggiano - Survey on 43 Text Mining
  44. 44. Vantaggi Facilità di costruzione e mantenimento Nessuno è perfetto. Vaghezza nozione ‘similar word’; Nessuno può competere con il dizionario human-written in termini di responsabilità. Possibilità di costruire un buon thesaurus se si differenziano i significati di sinonimi, antonimi, omonomi ecc. Antonello Caggiano - Survey on 44 Text Mining
  45. 45. II. Document retrieval and representation
  46. 46. Vector Space Models for Search and Cluster Mining Algoritmi di ricerca e cluster mining basati su VSM 1) Latent Semantic Indexing (LSI), Principal Component Analysis (PCA); 2) Introduzione metodo per ricerca minor cluster. Antonello Caggiano - Survey on 46 Text Mining
  47. 47. Modello VSM per IR Vantaggi: ranking di documenti di formato eterogeneo. Nei Boolean vector model: - 1 (attributo presente); - 0 (attributo assente); un raffinamento Boolean model: term weighting term frequency document frequency weighting (tf-idf): un tipo di tm; importanza del termine data dalla sua frequency appearance nei documenti Sistemi IR: - Ranking documento rispetto query: - similarity distance (coseno). - Scalabilità metodi di ranking - Riduzione dimensione modelli matematici Antonello Caggiano - Survey on 47 Text Mining
  48. 48. LSI Obiettivo: riduzione dimensione spazio parole-documenti Idea: parole documento suggeriscono contenuto semantico del documento stesso. Analisi strutture utilizzo parole guardando al corpus e collocando i documenti con un utilizzo simile delle parole vicine nello spazio di dimensioni ridotte e consentendo anche a documenti semanticamente correlati di essere vicini anche se non hanno parole in comune Processo: - SVD di A (matrice MxN doc-attr) Ak; - uso delle prime k-diadi Ak = UkΣkVkT ; - confronto query-documenti Antonello Caggiano - Survey on 48 Text Mining
  49. 49. LSI: dimensional reduction process La mancata considerazione di sinonimia porterà a molte piccoli, disgiunti cluster, alcuni dei quali dovrebbero essere raggruppati insieme, mentre la mancanza di considerazione di polisemia può portare ad estranei documenti, nonché la creazione di cluster. Invece, una parola con multipli significati non correlati, ha tanti contesti in cui appare. La parola sarà mappata in una regione diversa per ogni separato significato e contesto perché l’esistenza di termini co-occorrenti è improbabile per documenti che coprono differenti significati di una parola Antonello Caggiano - Survey on 49 Text Mining
  50. 50. PCA • Obiettivo: riduzione dimensionale (analisi matrice covarianza COV). cov COV Processo: - Calcolo matrice covarianza - Calcolo autovalori (distribuzione dati) - ordinamento decrescente autovalori (per avere le componenti in ordine di significatività) - k componenti considerate Antonello Caggiano - Survey on 50 Text Mining
  51. 51. Confronto LSI - COV Dimensione: LSI: prende le colonne della matrice k-dimensionale più vicine ad A COV: trova lo spazio k-dimensionale che più rappresenta i dati originali COV Scalabilità: COV: calcolo 100 autovalori più grandi e autovettori corrispondenti COV collo di bottiglia. COV: può essere usato in Real Time-IR e data mining (se spazio attributi piccolo). COV COV: un algoritmo di mining information da dataset distribuiti su multiple location; COV Vantaggio: risparmio nella percentuale di trasmissione dati ( generalmente transmission cost > computational cost ) Antonello Caggiano - Survey on 51 Text Mining
  52. 52. Clustering Methods Obiettivo: far appartenere o no un documento a un cluster. Quattro metodi: Hard clustering method: ∀documento - 1 cluster; Hard clustering method: ∀ ogni documento - massimo un cluster. Soft clustering method: favoriscono overlapping clusters; Soft clustering method: mining di overlapping cluster e overlap information. Antonello Caggiano - Survey on 52 Text Mining
  53. 53. Related Work: Ando Iterative rescaling per piccole collezioni di documenti. Idea: evitare a temi major di dominare la selezione dei Idea vettori di base nel subspace in cui il problema di IR e clustering verrà mappato introduzione bias a documenti di cluster rappresentati da vettori già selezionati Problemi: Problemi - con numero elevato di documenti problema con documenti Є più cluster. - minor cluster potrebbero non essere identificati; Antonello Caggiano - Survey on 53 Text Mining
  54. 54. Related Work: Kobayashi, Aono Obiettivo: identificazione mino-major cluster. Duel algoritmi 1) LSI con rescaling (LSI-RS): per il controllo dinamico dei pesi e ridurre la perdita di informazione riguardo minor cluster; uso di SVD nell’iterative rescaling; introduzione ortogonalizzazione di Gram-Schmidt modificata dei vettori base. 2) COV con rescaling (COV-RS): analogo LSI-RS, LSI modificazione COV; calcola i residui della matrice di covarianza. Antonello Caggiano - Survey on 54 Text Mining
  55. 55. COV-SS Algoritmo: possibilità di saltare iterazioni che trovano ripetizioni di major Algoritmo cluster e passare a iterazioni che trovano minor cluster. Vantaggi: Vantaggi costi di computazione, storage e memoria ridotti; testa velocemente se il rescaling è necessario. introduzione modificazioni per preservare sparsità: aumento velocità e scalabilità; risultati peggiori. Antonello Caggiano - Survey on 55 Text Mining
  56. 56. Conclusioni COV: non ha costi di rescaling; usa un risolutore di autovalori-autovettori dispendioso. COV-RS: migliore di LSI, COV e LSI-RS per identificare grandi e multipli minor cluster. LSI-RS e COV-RS: computazionalmente dispendiosi ; rescaling dei document vector. COV-RS -SS: uso di ‘power method’ per trovare l’autovalore più grande e i corrispondendi autovettori. non dispendioso COV-SS: mining dispendiosi per db grandi; soluzione: campionatura casuale dei documenti (random sampling document); conversione vettore sparso vettore denso: collo di bottiglia; utilizzo di una soglia; riduzione computazione e tempo di data acces; errori computazionali maggiori. coordinate nonzero piccole di un vettore recentemente calcolato; riduzione costo computazionale; riduzione errori Antonello Caggiano - Survey on 56 Text Mining
  57. 57. III. Spam Filtering Based on Latent Semantic Indexing
  58. 58. Overview 1. Classificazione LSI (Latent Semantic Indexing); a. paragoni con VSM. 2. Introduzione SpamAssassin system. 3. Problem reduction computational effort for classification. Antonello Caggiano - Survey on 58 Text Mining
  59. 59. Spam Filtering Problema di classificazione binario: Spam email; email Ham email. email Spam: molti elementi semantici in comune: - difficili da indicare completamente; - non sempre conosciuti; - latenti. Antonello Caggiano - Survey on 59 Text Mining
  60. 60. LSI for spam filtering Due aspetti centrali: (1) SVD troncata; (2) classification performance risultante. Low-rank aproximation della matrice feature-document utile per riduzione dimensione problema. Obiettivo: ridurre il feature set prima del classification process: riduzione tempo di calcolo. Antonello Caggiano - Survey on 60 Text Mining
  61. 61. Anti-spam methods I Tre approcci (categorizzati secondo il punto di azione nel processo di trasferimento): 1. Pre-send: prima che l’email entri in rete; - evitano lo spreco di risorse. 2. Post-send: dopo; - “workhorse”. 3. New Protocols: basati sul cambio del processo di trasferimento. SpamAssassin: estrae feature da email entranti (header, body, testo); Uso di Baysian classifier; Esempio in AKCS00: calcolo probabilità condizionale per email spam AKCS00 basata sulle parole (token) che contiene. training, tuning, maintenance da parte dell’uer. Antonello Caggiano - Survey on 61 Text Mining
  62. 62. Anti-spam methods II Metodo di Gee: uso di classificatore LSI-based Gee basato sulle textual-feature delle email. Motivazioni: studiare l'influenza della scelta di differenti feature set su performance di VSM - e LSI-based spam filtering. • Obiettivo: – estendere l'approccio di Gee (LSI su text-based feature); – valutare la classification performance realizzata con LSI su un set di “meta features” (come in SpamAssassin); – quantificare l'influenza delle riduzioni di feature sui risultati di classificazione. Antonello Caggiano - Survey on 62 Text Mining
  63. 63. Classification Methodology • VSM (n documenti, set F, f feature, componenti vij): matrice M feature-document f x n • LSI: variante VSM basico (approssimazione minima di M): LSI Truncation: ☺ Storage requirements e computational cost per la distanz query vector – documenti Computational cost per calcolo SVD Antonello Caggiano - Survey on 63 Text Mining
  64. 64. VSM & LSI: spam filtering Obiettivo: quali feature di una email sono più rilevanti per una classificazione a spam o ham? qual è il miglior modo per categorizzare email spam o ham? Consideriamo e confrontiamo: feature estratte da SpamAssassin: SpamAssassin “F_SA”; F_SA feature text-based: based “F_TB”. F_TB Antonello Caggiano - Survey on 64 Text Mining
  65. 65. SpamAssassin Features • Test su diverse parti del messaggio: – body, header – URI checks, rawbody test, blacklist test • ∀ test assegnato un valore – reale positivo: spam; spam – reale negativo: ham. ham • Stima complessiva di un messaggio: somma di tutti i valori assegnati ai test – Sum > user defined threshold (=5 di default) SPAM; SPAM • Problemi: – feature set di Spam Assassin “unbalanced”; • circa il 96% di ogni test controlla per una feature che punta a spam; • solamente circa il 4% delle prove punta a ham; – presenza di test che triggerano erroneamente. Soluzione migliorare le strategia di estrazione. Antonello Caggiano - Survey on 65 Text Mining
  66. 66. Text-based features Dimensionality Reduction ■ Document frequency thresholding (esclude termini che hanno document frequency molto alta o molto bassa): - termini presenti in tutti i documenti poco discriminanti - fattibile anche per dati unsupervised. ☺ class information non necessaria, computational cost ridotto Procedura: Procedura 1. soglia superiore fissata a 0.5: da adesso tutti i termini presenti in più della metà dei documenti omessi. 2. la soglia inferiore adattata dinamicamente per conseguire un determinato numero desiderato di feature. ■ Information Gain: - selezione delle feature più importanti dalla “pre-selection” per favorire la riduzione del computational cost. dove Antonello Caggiano - Survey on 66 Text Mining
  67. 67. Feature/Attribute Selection Methods Used Obiettivo: applicare IG attribute selection al feature set di SpamAssassin. Uso di due feature selection alternative (calcolate usando WEKA): WEKA 1. x2 attribute selection: valuta il significato di un attributo calcolando l’x2 rispetto alla classe; 2. ...una strategia intuitiva:estrazione top 50 feature,TB, top 10 feature, SA. ● Applicazione x2 attribute selection su feature text-based: non cambia l’ordine delle feature. ● Confronto dei 3 metodi di feature selection con lo SpamAssassin feature set: presenza di 8 SA feature set nei 3 subset estratti. Antonello Caggiano - Survey on 67 Text Mining
  68. 68. Experiments • Data set – TREC 2005 (25%): ‘S1’ (9.751 ham, 13.179 spam); – Self-collected email: ‘S2’ (5.502 ham, 5.502 spam). • Setup – N-fold cross-validation: 3 (S1), 10 (S2); • n-1 training, n testing. Il cross-validation fu performato per sei differenti LSI truncation usando i feature set F_SA e F_TB. Antonello Caggiano - Survey on 68 Text Mining
  69. 69. Analysis of Data Matrices Antonello Caggiano - Survey on 69 Text Mining
  70. 70. Aggregated Classification Results per ogni troncamento LSI risultati migliori per F_SA F_TB: ogni aumento provoca calo nel classification result Antonello Caggiano - Survey on 70 Text Mining
  71. 71. True/False-Positive Rates • F_TB S1 abbastanza elevata (classification result 96,80%) • F_TB S2 < F_TB S1 ma > F_SA Antonello Caggiano - Survey on 71 Text Mining
  72. 72. Feature Reduction Aggregated Results - Top 50: lievemente peggiore VSM - Top 50: S1 F_TB quasi uguale - Top 10: accettabili solo F_SA F_SA più robusto in termini di feature reduction LSI 25% su 10 f > VSM su 10 f Antonello Caggiano - Survey on 72 Text Mining
  73. 73. Features Reduction True/False-Positive Rates - IG e x2: quasi uguali; - TT LSI 25% aumento rispetto VSM - VSM 50 f, 10 f: - % false-positive quasi uguali per tutti i subset; - % true-positive decrescono con feature ridotte; - LSI 25% 10 f ≈ LSI 25% 50 f - S1: % false-positive in aumento con LSI 25% 10 f. Antonello Caggiano - Survey on 73 Text Mining
  74. 74. Conclusioni 1. VSM e LSI (su F_SA, F_TB) realizzano classification result migliori SpamAssassin; 2. Classification result con VSM e LSI su feature set SpamAssassin migliori che F_TB. 3. VSM realizza classification result migliori che LSI a molti livelli di troncamento. 4. Per ogni livello di troncamento di LSI la percentuale false-positive basata su F_SA è molto più bassa che una basata su F TB . 5. LSI truncation basato sul feature set originale più stabile che VSM, 6. Classification performance di LSI su feature SpamAssassin piuttosto robuste se il numero di caratteristiche usate è ridotto significativamente ed inoltre realizza notevoli risultati di classificazione In generale, VSM e LSI vanno bene per spam filtering se il feature set è propriamente scelto. In particolare, il feature set di SpamAssassin realizza risultati migliori che il comune feature set puramente testuale basato su word/token-extraction. word/token-extraction. Antonello Caggiano - Survey on 74 Text Mining
  75. 75. IV. Anomaly detection
  76. 76. A Probabilistic Model for Fast and Confident Categorization of Textual Documents Obiettivo: implementazione di categorizzatore di textual documents per gestire multiple labeling; - aggiunta di un piecewise-linear confidence estimation layer per fornire una stima del labeling confidence. Features useful features and extensions: • category-specific decision layer; • extraction of descriptive category keywords from the probabilistic profile.
  77. 77. Model features Features desiderabili: Fast training (only one pass over data); Probabilistic profile di ogni classe usato per descrivere il contenuto delle categorie; (...le label potrebbero essere non ben descrittive) Prediction: Prediction - Expectation Maximization EM: calcolo probabilità documento appartenenza categoria. Ipotesi: indirizzare il problema ad essegnare multiple labeling ai documenti e non ogni documento a una singola categoria. Antonello Caggiano - Survey on 77 Text Mining
  78. 78. The Probabilistic Model Problema: - set M documenti {di}, i=1…M; - relative label l Є {1,…C}, C numero di categorie; ◦ 1 label – 1 documento; training set D = {(di, li)}, i=1…M; Categorization task: - dato ñ !Є D, trovare ĩ. (ñ nuovo documento, ĩ etichetta più appropriata). Risoluzione, Vapnik: - inferenza induttiva: stima di un modello f usando D, assegnando ñ induttiva alla categoria f(ñ). - inferenza trasduttiva: stima della label ĩ direttamente senza stimare un modello generale. Antonello Caggiano - Survey on 78 Text Mining
  79. 79. The new Probabilistic Model Soluzione proposta: - ogni documento d composto da w parole da vocabolario V. - bag-of words assumption (usata solo frequenza n(w,d), non l’ordine); Probability of co-occurrency P(w|c): profili categorie sul vocabolario P(c|d): profili di ogni documento sulle categorie Eq. 10.1 (modello usato in PLSA, Probabilistic Latent Semantic Analysis). Key modeling: documenti e parole sono condizionatamente indipendenti tutti i documenti usano lo stesso vocabolario nello stesso modo Antonello Caggiano - Survey on 79 Text Mining
  80. 80. Training Probabilità del modello con parametri θ = {P(d); P(c|d); P(w|c)} è Eq. 10.2 Per ogni training document si ha: P(c = li|di) = 1 , P(c ≠ li|di) = 0, per tutte le i. Proposta (si introducono): - la lunghezza del documento d |d| = Σw n(w,d) ; - la dimensione totale di categoria c |c| = ΣdЄc |d| ; - il numero parole nella collezione N = Σd |d| ; Maximum Likelihood estimate (ML) Eq. 10.3 Conseguenza chiave: modello equazione 10.1 molto meno sensibile a smoothing, rispetto Bayes in contrasto con molti algoritmi di training che contano su metodi di ottimizzazione iterativa training modello proposto, computazionalmente efficiente. . Antonello Caggiano - Survey on 80 Text Mining
  81. 81. Prediction I Problema Eq 10.1: non è un modello generativo di nuovi documenti (contrariamente a Bayes). 10.1: impossibile calcolare probabilità a posteriori P(ñ|c) per un nuovo documento. Proposta: includere il nuovo documento nella collezione aggiunta nuovi parametri nel modello: P(ñ), P(c|ñ). Eq. 10.1 Maximum likelihood Eq. 10.4 Aggiornamento Eq. 10.5 Antonello Caggiano - Survey on 81 Text Mining
  82. 82. Prediction II Differenze post-prediction: Bayes: una categoria/ un documento intero, parole del documento generate dalla categoria. Modello proposto: una categoria c ogni co-occorrenza (w,d) ogni parola può essere campionata da un differente category profile. una parola con probabilità molto bassa avrà una piccola influenza sulla probabilità di una categoria posteriore e imporrà una penalità. modello molto meno sensibile alla probability smoothing non necessario settaggio di parametri extra per lo smoothing process. Riferimenti a inductive learning e transductive learning: Eq. 10.5 Fase di training: sembra tipicamente induttiva ottimizzazione di una funzione costo (la probabilità) per ottenere un modello ottimale. Notare, comunque, che questo è soprattutto un modello di training data, e non etichetta nessun documento al di fuori del training set. Fase di predizione: di adopera un’ulteriore ottimizzazione sul labeling del testo. Simile al transductive learning. Modello proposto condivide similarità con ambedue gli algoritmi di learning  Antonello Caggiano - Survey on 82 Text Mining
  83. 83. Multiclass, Multilabel Categorization Problem I Obiettivo: Multilabel Categorization. Modello attuale: multiclass – single label categorization model. Problema Anomaly Detection/Text Mining: multiclass – multi label categorization problem ogni documento, più categorie. Soluzione: considerare tutte le combinazioni di categorie osservate e usarle come singole ‘labels’ (Mc Callum 99). Dati in gioco: 1151 combinazioni di label con almeno un documento associato approccio poco pratico. Antonello Caggiano - Survey on 83 Text Mining
  84. 84. Multiclass, Multilabel Categorization Problem II Problema: considerando combinazioni indipendenti di label possibile perdita di dipendenze tra le singole categorie Es: (C4,C5,C10) e (C4,C5,C11) aggiunta di un layer di complessità nel sistema; Approccio: ridurre il problema di multiple labeling a problemi di categorizzazione binaria potenti categorizzatori come supporto al vector machine - 22 label training di 22 binary categorizers 22 independent labeling decision – Soluzione proposta: considerare una semplice soglia a Є [0;1] e assegnare alcun documento nuovo ñ a tutte le categorie c tale che P(c|ñ) ≥ a. In più, visto che tutti i documenti nel training set hanno almeno una label, ci assicuriamo che a ñ venga sempre assegnata la label massima , anche se questo massimo è sotto la soglia (che è combinata con il calcolo del confidence level). Antonello Caggiano - Survey on 84 Text Mining
  85. 85. Confidence Estimation Altro problema: il labeling deve essere effettuato con un associato confidence level. Obiettivo: prediction confidence. Calibration: task per la stima della giusta probabilità di correttezza output categorizzatore. Confidence level: probabilità correttezza di un dato labeling: Non garantito che il costo della funzione usata sarà ottimizzato da una confidence ‘well-calibrated’. categorizzatori perfettamente calibrati: misera performance; eccellenti categorizzator (es. SVM): scarsamente calibrati o non calibrati. Confidence estimation generalmente fatta aggiungendo un layer al modello del machine learning e features esterne che misurano il livello di difficoltà del task (Gillick, Ito, Young 1997 – Gandrabur, Foster, Lapalme 2006). Antonello Caggiano - Survey on 85 Text Mining
  86. 86. Soluzione Proposta: utilizzo di score function, Checker.jar, per ottimizzare una funzione che in output fornisce il confidence level, data laprobabilità di output del categorizzatore. Antonello Caggiano - Survey on 86 Text Mining
  87. 87. Category Description I Il modello consta di un probabilistic profile P(w|c): probabilità di ogni parola w del vocabolario di essere osservata in documenti di categoria c possibilità di identificare parole più tipiche per ogni categoria; possiblità di interpretare i dati tramite keywords descrittive per ogni categoria. Cosa fare? Considerare una parola w con la più alta probabilità P(w|c) (non molto efficiente): - probability profile legato alla frequenza di parole nel training corpus (eq 10.3); Eq. 10.3 - parole con alta frequenza: parole grammaticali (“empty”) con contenuto non descrittivo. Antonello Caggiano - Survey on 87 Text Mining
  88. 88. Category Description II Come identificare parole tipiche di una classe c: identificare parole che sono relativamente più frequenti in c che nel resto delle categorie. Ma come? contrapporre il category profile P(w|c) e il “profilo” per il resto dei dati che è P(w|¬c) ∞ Σγ≠c P(w|γ). Differenza tra le due distribuzioni (dalla divergenza simmetrica di Kullback-Leibler): Eq. 10.7 N.B.: la divergenza è una somma aggiuntiva di contributi word-specific kw. Parole con grande kw contribuiscono di più alla divergenza complessiva da qui alla differenza tra categoria c e il resto. Conseguenza: proposte come keywords le parole w per cui P(w|c) > P(w|¬c) e kw è il più grande. Antonello Caggiano - Survey on 88 Text Mining
  89. 89. Experimental Results Obiettivo: utilizzo della precedente strategia per estrazione di parole relazionate alla descrizione delle categorie. descrizione dettagliata esperimenti; risultati ottenuti. Antonello Caggiano - Survey on 89 Text Mining
  90. 90. Data Training data: 21519 report (22 categorie). Preprocessing: tokenization, stemming, acronym expansion, removal of places and numbers. Enfasi differenze: attuale metodo di categorizzazione rispetto a differenze in preprocessing (differenze in preprocessing tipicamente producono un gap più grande rispetto a differenze in method categorization) Prepocessing proposto: stop-word removal usando una lista di 319 parole comuni. Risultato: i documenti sono indicizzati in una bag-of-words formata registrando la frequenza di ogni parola in ogni documento. Estimator of error prediction: i dati furono organizzat in un 10 flod cross –validation manner. Randomly reordered informazione divisa in 10 parti: 9 contenenti 2152 componenti; 1 con 2151 documenti. Training di un categorizzatore: usando ogni subset delle 9 parti come materiale di training; predizioni sullo split rimanente; Result: 21 519 predizioni sulle quali ottimizzare i parametri a e b on Antonello Caggiano - Survey 90 Text Mining
  91. 91. Results I Finally cost function: combinazione prediction performance e confidence reliability. Per ogni categoria c calcolo Ac (~0.5), area sotto la curva ROC, per il categorizzatore; tic Є {-1,+1} target label documento di; yic Є {-1,+1} predicted label; qic Є {0;1} associated confidence. Eq. 10.7 Calcolo risultato finale tramite Checker.jar - con confidenza del 100% predizione perfetta risultato 2 - assegnamento casuale risultato 0 Utilizzado Checker.jar su predizioni cross-validated: si ottimizzano a e b; Valori ottimi usati a = 0.24 e b = 0.93 indicando i documenti etichettati con categorie che: - probabilità posteriore > 0.24 e, - confidenza minima 0.93: un po’ inusuale (si etichetta con almeno 93% di confidenza ); Eq. 10.7: 1a parte ’area sotto la curva’: dipende solo dall’ordering. 2ª parte coinvolge direttamente le stime di confidenza qic. – il valore di questa parte aumenterà se si potrà assegnare con fiducia alta confidenza (qic ≈ 1) a documenti correttamente etichettati (tic != yic). Antonello Caggiano - Survey on 91 Text Mining
  92. 92. Results II Se si potessero scoprire affidabilmente tali situazioni, sarebbe meglio scambiare la label piuttosto che minimizzare la sua influenza assegnando low confidence. Assunzioni: qic e ticyic indipendenti seconda parte del costo ≈ q’(2xMCE-1) q’ media di fiducia; MCE, misclassification error, = 1/M Σi(tic≠yic). MCE error Strategia ottimale: prendere q’ alto quanto possibile settando qic → 1 quanto possibile. Questo spiega perché un alto valore di b risulta essere ottimale. Infatti, usando un’altra previsione nei nostri livelli di confidence, settando b a 0.99 o prodotti alti si migliorano i risultati (comunque settando b a alti valori solo i prodotti marginali beneficiano in termini Antonello Caggiano - Survey on 92 di costo finale). Text Mining
  93. 93. Results III Setting a = 0.24, b = 0.93 cross-validated cost ≈ 1.691. Setting a = 0.24, b = 0.93 cross-validated cost ≈ 1689 (su 7077 documenti di testo) Sensitività performance del setting dei parametri a e b Fig. 10.3 optimal setting (cross) vicino alla stama cross-validation (cerchio). Max score = 1.6894 ~ < 0.05% valore CV-ottimizzato; Min score = 1.645 ~ < 2,5%. significa che qualunque setting di a e b in quel range sarebbe stato all’interno della condizione ottima del 2.5% Antonello Caggiano - Survey on 93 Text Mining
  94. 94. Results IV Performance results: - errore mislabeling complessiva: 7.22%; - micro-media F-score: 50.05% (relativamente modesta, ma è stata usata solo una soglia,a!); Una ispezione più dettagliata della performance di ogni categoria mostra una disparità in precision e recall, attraverso le categorie. - precision: stima la probabilità che la label offerta dal modello è corretta; - recall: stima la probabilità che una reference label è effettivamente ritornata dal modello; - F-score: è la media armonica di precision-recall. Suggerimenti: Il valore di soglia a può essere troppo alto per alcune categorie (low recall) e, troppo basso per altre (low precision). Usanto cross-valited prediction si ottimizzano soglie category-specific threshold usando: • Maximum F-score; • Break-even point; • Minimum error rate. Antonello Caggiano - Survey on 94 Text Mining
  95. 95. Tabella 10.1: performance test sulle 22 categorie; varia è a seconda della categoria; alcuna relazione tra performance e dimensione categorie. La peggiore, ma peggiore anche la migliore performance, sono performance osservate sulle piccole categorie. categorie C3,C5,C12,C22 best F-scores.;. C15,C16,C17,C10 e C7 < 50% utilizzo di una sola soglia; F-score basso Antonello Caggiano - Survey on 95 Text Mining
  96. 96. Category description Unica informazione: labeling ogni documento 1 < n < 22. Scopo: vedere se le keywords estratte procurano alcune informazione sul contenuto delle categorie. Antonello Caggiano - Survey on 96 Text Mining
  97. 97. Riflessioni Probabilistic model presentato: può essere stimato da documenti preprocessati, indexati, ed etichettati senza parametri di learning addizionali, e in un singolo passo sulle informazioni training estremamente veloce. le predizioni per nuovi documenti di testo richiedono qualche piccolo calcolo in più ma è ancora piuttosto veloce. probabilistic category profiles usati per ottenere keyword descrittive per le categorie. Antonello Caggiano - Survey on 97 Text Mining
  98. 98. Sezione II
  99. 99. Emerging Technologies Information Extraction Methodologies and Applications Jie Tang, Mingcai Hong, Duo Zhang, Bangyong Liang, and Juanzi Li Deriving Taxonomy from Documents at Sentence Level Ying Liu, Han Tong Loh, and Wen Feng Lu Rule Discovery from Textual Data Shigeaki Sakurai Antonello Caggiano - Survey on 99 Text Mining
  100. 100. I. Information Extraction Methodologies and Applications
  101. 101. Overview Metodologie di automatic IE: IE Rule learning based; Classification model based; Sequential labeling based. Antonello Caggiano - Survey on 101 Text Mining
  102. 102. Rule Learning-Based Extraction Methods Dictionary based method. costruzione di pattern dictionary; Es: AutoSlog, AutoSlog-TS; Rule based method. uso di regole generali; algoritmi di rule learning bottom-up: learning di regole da casi speciali a quelli generali; algoritmi di rule learning top-down: learning di regole da casi generali a quelli speciali. Es: (LP)2, iASA. Wrapper induction. wrapper: contextual pattern semplice ma altamente accurato. wrapper induction: processo automatico di learning wrapper. wrapper learned: usati per estrarre appropriate porzioni da un documento di testo. Es: WIEN, BWI. Antonello Caggiano - Survey on 102 Text Mining
  103. 103. Classification-Based Extraction Methods Metodo: apprende a trovare start e end di frammenti di testo da estrarre. Idea: considerare il problema di IE come un problema di classificazione. Training set: {(x1,y1),...(xn,yn)} - xi feature vector; - yi classification table∈{-1,+1}. table Classification model: learning & prediction. prediction Support Vectore Machine: uno dei metodi di classificazione più popolari. Sistema proposto: learning & extracting. extracting Obiettivo: detecting di start-, end-bound. Antonello Caggiano - Survey on 103 Text Mining
  104. 104. Sequential Labeling-Based Extraction Methods Ipotesi: documento visto come sequenza di token e una sequenza di label assegnate a ogni token per indicare la proprietà del token. Obiettivo: data una sequenza di osservazione x = (x1,x2,…..xn) trovare una sequence label y*=(y1,y2,…yn) che massimizza la probabilità condizionale p(y|x): y* = argmaxyp(y|x) Differenze rispetto rule-based - classification-based: abilita la descrizione di based dipendenze tra target information. Le dipendenze possono essere utilizzate per migliorare l’accuratezza dell’estrazione. Sequential labeling models: Hidden Markov Model; Maximum Entropy Markov Model; Conditional Random Field. Antonello Caggiano - Survey on 104 Text Mining
  105. 105. II. Deriving Taxonomy from Documents at Sentence Level
  106. 106. Overview Derivazione tassonomia documenti Uso di Document Profile. Most Frequent word Sequence per ricerca informazione semantica saliente integrazione in DP. Obiettivo: coinvolgere più informazione semantica nella modellizzazione del documento. maggiori informazioni per collegare documenti in cluster. • Uso di clustering Antonello Caggiano - Survey on gerarchico 106 Text Mining
  107. 107. III. Rule Discovery from Textual Data
  108. 108. Overview Metodi di knowledge discovery basati su fuzzy decision tree da textual data. Obiettivo: metodo di kd descritto da un rule set metodo rule discovery. Rule set: può classificare i dati testuali basato su punti di vista delle analisi può rivelare relazioni tra le feature dei dati testuali, che costituiscono conoscenza. Introduzione metodi di rule discovery basati su questa fuzzy set theory. Antonello Caggiano - Survey on 108 Text Mining

×