Information Extraction. Information Extraction (IE) Identifica frammenti di informazione specifici in testi parzialmente strutturati (es. XML) o non strutturati.

Slides:



Advertisements
Presentazioni simili
Trieste, 26 novembre © 2005 – Renato Lukač Using OSS in Slovenian High Schools doc. dr. Renato Lukač LinuxDay Trieste.
Advertisements

Sfogliandomi… Viaggio tra me e me alla scoperta dellaltro… A travel between me and myself discovering the other…
Estrazione di informazioni da testo. Perchè occuparsene? E unapplicazione particolarmente complessa. Sfrutta la maggior parte delle risorse utilizzate.
Cache Memory Prof. G. Nicosia University of Catania
Teoria e Tecniche del Riconoscimento
Open Document Format for Office Applications Organization for the Advancement of Structured Information Standards Sergio Capone ITP.
Interfacce Java.
1 Teaching Cloud Computing and Windows Azure in Academia Domenico Talia UNIVERSITA DELLA CALABRIA & ICAR-CNR Italy Faculty Days 2010.
A. Oppio, S. Mattia, A. Pandolfi, M. Ghellere ERES Conference 2010 Università Commerciale Luigi Bocconi Milan, june 2010 A Multidimensional and Participatory.
Relaunching eLene Who are we now and which are our interests.
Modalità di ricerca semantica nelle Biblioteche digitali Maria Teresa Biagetti DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO-FILOLOGICHE E GEOGRAFICHE.
EBRCN General Meeting, Paris, 28-29/11/20021 WP4 Analysis of non-EBRCN databases and network services of interest to BRCs Current status Paolo Romano Questa.
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Relatore:Candidato:
Sequential Statements. – Il VHDL simula lo svolgersi in parallelo di varie operazioni – Loggetto fondamentale e il PROCESS – Un PROCESS contiene una serie.
Cancer Pain Management Guidelines
MySQL Esercitazioni. Ripasso Connessione a MySQL. Creazione delle basi di dati e delle tablelle. Inserimento dei dati. Interrogazioni.
Raffaele Cirullo Head of New Media Seconda Giornata italiana della statistica Aziende e bigdata.
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Presentazione del progetto Information Extraction with ELIE.
Biometry to enhance smart card security (MOC using TOC protocol)
1. Conoscere luso delle collezioni in Java Comprendere le principali caratteristiche nelle varie classi di Collection disponibili Saper individuare quali.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 3 - Functions Outline 3.1Introduction 3.2Program Components in C++ 3.3Math Library Functions 3.4Functions.
Information Extraction Appunti estratti da un corso di Rada Michalcea.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
1 laboratorio di calcolo II AA 2003/04 ottava settimana a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
WP 10 – Applicazioni Astrofisica – stato Leopoldo Benacchio INAF Osservatorio Astronomico di Padova Pisa maggio 03.
VARO SRL LOGISTIC, QUALITY, SERVICE
HERES OUR SCHOOL.. 32 years ago this huge palace was built and it was just the beginning; It is becoming larger and larger as a lot of students choose.
Le regole Giocatori: da 2 a 10, anche a coppie o a squadre Scopo del gioco: scartare tutte le carte per primi Si gioca con 108 carte: 18 carte.
Players: 3 to 10, or teams. Aim of the game: find a name, starting with a specific letter, for each category. You need: internet connection laptop.
Constraints.
1 Attivita di ricerca Carlo Batini. 2 Aree Come costruire ed esprimere il contenuto informativo integrato di sistemi informativi complessi basati.
Scuola di Dottorato della Facoltà di Scienze MM. FF. NN., Università di Milano Bicocca ELEMENTI DI ORGANIZZAZIONE AZIENDALE Funzione finanza e controllo:
Palermo, may 2010 F.Doumaz, S.Vinci (INGV-CNT- Gruppo di telerilevamento)
1 © 2013 Cobra Italia SpA All rights reserved Cobra group website Gennaio 2013.
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
JavaScript Lezione 5 Tipizzazione ed operazioni tra tipi diversi Istruzioni di input.
© 2008 WS (WebScience srl) – All rights reserved WS Tech workshop Software Construction.
DA NATIVI DIGITALI A INTERNAUTI CONSAPEVOLI
Quirky Social product development company Quirky si definisce social product development company. Dove il termine social è utilizzato per identificare.
Gli ambienti di apprendimento Firenze, 3 marzo 2006.
Innovazioni versione 4 Bari, 17 ottobre Innovazioni versione 4 Il menù dinamico secondo logica operativa Il ruolo dei Ruoli Facilitare la scelta.
INTERNET Internet è una rete a livello mondiale che permette alle persone di comunicare ed ad accedere a banca dati da qualunque parte del mondo e su qualunque.
AgentGroup MEnSA Project - Future work Agent and Pervasive Computing Group Dipartimento di Ingegneria dellInformazione Università degli Studi di Modena.
Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa La mia scuola ha un sito Web: modelli per la qualità dei siti (Ingegneria del Web)
Attività Formativa Sviluppo di un WORKFLOW ENGINE di Dott. Riccardo Gasperoni Alessandro Caricato Gabriele Trabucco in collaborazione con Progesi S.p.A.
1 Ordine dei Farmacisti della provincia di Trento Assemblea Generale ordinaria 26 novembre 2013 Ordine dei Farmacisti della provincia di Trento Assemblea.
Guardate le seguenti due frasi:
Motor Sizing.
Calibrating (Partial Equilibrium) Mathematical Programming Spatial Models Open questions … (filippo arfini) III Workshop PUE&PIEC - Treia (Mc), 3-4 febbraio.
Funzioni stringhe. chr Restituisce il carattere di un valore ascii dato. Per vedere lelenco dei codici ascii clicca QQQQ uuuu iiiiEsempio
Tutor: Elisa Turrini Mail:
Enzo Anselmo Ferrari By Giovanni Amicucci. Di Enzo Questo è Enzo Anselmo Ferrari. Enzo compleanno è diciotto febbraio Enzo muore è quattordici agosto.
Sistemi avanzati di ricerca di informazioni sul web.
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Quale Europa? Riscopriamo le radici europee per costruire unEuropa PIÙ vicina a noi ISTITUTO COMPRENSIVO MAZZINI CASTELFIDARDO PROGETTO COMENIUS 2010/2012.
SUBQUERY Chi ha un salario maggiore di quello di Abel? Occorre scomporre la query in due sotto problemi: MAIN : quali impiegati hanno un salario maggiore.
Customer Support Research & Development Come usare il Search Technical Knowledge Base...ITRC.
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Collection & Generics in Java
EMPOWERMENT OF VULNERABLE PEOPLE An integrated project.
Introduction to automatic ABMs documentation Keywords: Doxygen ODD protocol MASON documentation Simone Romano.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 - Protocolli del Web Ernesto Damiani Lezione 3 – Esempi HTTP.
Guida alla compilazione del Piano di Studi Curricula Sistemi per l’Automazione Automation Engineering.
Passato Prossimo. What is it?  Passato Prossimo is a past tense and it is equivalent to our:  “ed” as in she studied  Or “has” + “ed” as in she has.
Buon giorno Io sono Professoressa Kachmar. Buon giorno Io sono Professoressa Kachmar.
Transcript della presentazione:

Information Extraction

Information Extraction (IE) Identifica frammenti di informazione specifici in testi parzialmente strutturati (es. XML) o non strutturati (es. testo puro). Trasforma linformazione estratta in un database strutturato. Si applica ai domini più diversi: –Articoli di giornale –Pagine Web –Letteratura scientifica –Messaggi di Newsgroup –Annunci economici o di lavoro –Cartelle cliniche

Esempio: un nuovo prodotto viene annunciato

Cosa interessa in sintesi in un new product announcement ? Quale prodotto Quale categoria di prodotto Quale ditta Quando Caratteristiche principali

Template: uno schema dellinformazione di interesse Source Company New Product Type Features When attributi I filler degli attributi sono i frammenti rilevanti estratti dal testo

Il task di IE è un task di template filling Source Company New Product Type Features When Semtech Corp (SMTC) SC4525A, SC4524A, SC454B Three new step-down (buck) regulators February 26, 2008 High input voltage and programmable frequency

Un altro esempio: IE da articoli di ricerca

Per riassumere: 1. Definire un dominio di applicazione (es. nuovi medicinali per la cura di tumori) 2. Definire quali categorie di informazioni interessano riguardo al dominio (es. Nome del prodotto, Quale tipo di tumore, quale casa farmaceutica, quale istituto di ricerca, effetti collaterali..) 3. Le categorie vengono modellate come attributi di un template (NOME, TIPO,..COLLAT) 4. Il compito di IE è trovare nei testi stringhe che rappresentano istanze di categorie (es.: transtuzumab è un istanza di NOME) 5. Questo si traduice nel riempire gli slot di un template con delle stringhe o slot fillers, che sono i VALORI degli ATTRIBUTI (NOME=transtuzumab) 6. Gli slot fillers possono essere più o meno strutturati (espressione logica, oppure una stringa in linguaggio naturale, ad esempio: COLLAT = dolori articolari

Definizione di sub-tasks e valutazione di sistemi di IE: Message Understanding Conference DARPA (Defense Advanced Research Projects Agency) ha finanziato ricerche in IE dal Message Understanding Conference (MUC) è la conferenza-gara del settore. Dal 2000 sostituita (inglobata) dalle TREC conferences Generalmente le gare hanno come tema lestrazione di notizie da giornali: –Eventi terroristici –Joint venture –Cambi di management

Applicazioni Job postings Annunci di lavoro Annunci di Seminari Notizie societarie sul web Corsi sul web (continuing education) Informazioni e annunci universitari sul web Annunci di affitto appartamenti Informazioni di biologia molecolare su MEDLINE

Subject: US-TN-SOFTWARE PROGRAMMER Date: 17 Nov :37:29 GMT Organization: Reference.Com Posting Service Message-ID: SOFTWARE PROGRAMMER Position available for Software Programmer experienced in generating software for PC- Based Voice Mail systems. Experienced in C Programming. Must be familiar with communicating with and controlling voice cards; preferable Dialogic, however, experience with others such as Rhetorix and Natural Microsystems is okay. Prefer 5 years or more experience with PC Based Voice Mail, but will consider as little as 2 years. Need to find a Senior level person who can come on board and pick up code with very little training. Present Operating System is DOS. May go to OS-2 or UNIX in future. Please reply to: Kim Anderson AdNET (901) fax Subject: US-TN-SOFTWARE PROGRAMMER Date: 17 Nov :37:29 GMT Organization: Reference.Com Posting Service Message-ID: SOFTWARE PROGRAMMER Position available for Software Programmer experienced in generating software for PC- Based Voice Mail systems. Experienced in C Programming. Must be familiar with communicating with and controlling voice cards; preferable Dialogic, however, experience with others such as Rhetorix and Natural Microsystems is okay. Prefer 5 years or more experience with PC Based Voice Mail, but will consider as little as 2 years. Need to find a Senior level person who can come on board and pick up code with very little training. Present Operating System is DOS. May go to OS-2 or UNIX in future. Please reply to: Kim Anderson AdNET (901) fax Esempio Offerte di lavoro

Struttura estratta (template) computer_science_job id: title: SOFTWARE PROGRAMMER salary: company: recruiter: state: TN city: country: US language: C platform: PC \ DOS \ OS-2 \ UNIX application: area: Voice Mail req_years_experience: 2 desired_years_experience: 5 req_degree: desired_degree: post_date: 17 Nov 1996

IE vs. IR Sono operazioni complementari Data una base documentale: –LIR restituisce il sottoinsieme di documenti rilevanti per una certa interrogazione in input. Linformazione di interesse sarà quindi cercata dallutente –LIE estrae in modo strutturato le informazioni rilevanti per lutente

IE vs. web-IE I sistemi di IE non-web analizzano documenti non strutturati (che tuttavia possono anche essere sul web), utilizzando prevalentemente metodi di analisi del linguaggio naturale NLP e tecniche di machine learning o reasoning (AI) I sistemi web analizzano documenti semi-strutturati (offerte di lavoro, avvisi commerciali, …in html, xml, rdf..) e utilizzano prevalentemente pattern matching o espressioni regolari, comunque in generale metodi più semplici che sfruttano le informazioni sulla struttura del testo fornite dal linguaggio di annotazione (es. XML/RDF template)

WEB IE: Wrappers Sul web ci sono molte sorgenti di informazione strutturata, ad es: elenchi telefonici (pagine gialle), cataloghi di prodotti (es. cataloghi di libri, come AMAZON), previsioni del tempo, stock quotes.. Queste risorse sono formattate per persone, non per la manipolazione da parte di computer Un Wrapper è una procedura per estrarre uno specifico contenuto (ad es. un template filler) Un wrapper identifica linformazione (es. tag xml) che precede o incornicia linformazione principale ricercata I Wrapper possono essere codificati a mano, o usando tecniche di apprendimento automatico Essendo i sorgenti parzialmente strutturati, questo compito è per certi versi più semplice che non estrarre template fillers da testi liberi.

Web IE: Wrappers

Wrappers su pagine web Se il testo ha una struttura ripetitiva, ad esempio tag html o xml che siano informative, questo facilita lanalisi, esempio: Key Features of the SC4525A and SC4524A/B Wide input range of 8V to 28V (SC4525A); from 3V to 28V (SC4524A); and from 3V to 16V (SC4524B) 3A output current (SC4525A) 2A output current (SC4524A/B) 200kHz to 2MHz programmable frequency Peak current-mode control Cycle-by-cycle current limiting Hiccup overload protection with frequency foldback Programmable soft-start and enable Thermal shutdown

Es 2: Descrizione di libri Amazon …. The Age of Spiritual Machines : When Computers Exceed Human Intelligence by <a href="/exec/obidos/search-handle-url/index=books&field-author= Kurzweil%2C%20Ray/ "> Ray Kurzweil <img src=" width=90 height=140 align=left border=0> List Price: $14.95 Our Price: $11.96 You Save: $2.99 (20%) …. The Age of Spiritual Machines : When Computers Exceed Human Intelligence by <a href="/exec/obidos/search-handle-url/index=books&field-author= Kurzweil%2C%20Ray/ "> Ray Kurzweil <img src=" width=90 height=140 align=left border=0> List Price: $14.95 Our Price: $11.96 You Save: $2.99 (20%) …

Template estratto Title: The Age of Spiritual Machines : When Computers Exceed Human Intelligence Author: Ray Kurzweil List-Price: $14.95 Price: $11.96 :

WEB IE: altri problemi I sistemi web-IE devono analizzare la struttura html delle pagine per identificare le porzioni rilevanti Il contenuto è spesso immerso nella pagina, assieme a immagini, altre informazioni non rilevanti rispetto al contenuto.. La struttura a frames può aiutare a selezionare i contenuti utili

Selezionare i frame utili

Per riassumere IE ha a che vedere con lanalisi dei contenuti in un documento Se un documento è sul web, possono esserci problemi aggiuntivi o facilitazioni: –(+) Se il documento è in html, xml, rdf.. informazioni sulla struttura del documento, che è esplicita nel linguaggio di annotazione, può aiutare a recuperare i contenuti utili (wrappers) –(-) Se il contenuto è immerso in altre informazioni (immagini, logo, advertisements..) occore fare un parsing della pagina web per identificare il contenuto di intreresse

Architettura generale dei sistemi di IE non strutturati In generale, tutti i sistemi di IE hanno la seguente struttura: –Definizione dello schema dei templates (manuale o automatica) –Analisi del testo (se web, la cosa è più complicata per la presenza di figure, frames.., ma se il testo è semi- strutturato, ad es xml, può anche essere più semplice) –Estrazione dei fillers, con metodi di ML o pattern matching –Riempimento dei templates

Architettura di un sistema di IE Riempimento dei templates Definizione template Templates (unfilled) Analisi dei testi: POS, NE recognition, ?? Estrazione/matching dei patterns Analisi del discorso, inferenze Definizione/ apprendimento patterns

Definizione di Template Record di coppie attributo (slot) valore (filler). Valori sono parti del testo con cui riempire lo slot. Gli slot vanno riempiti con stringhe la cui natura (lessicale, sintattica, semantica) è in genere predeterminata in modo più o meno specifico –Terrorist act: threatened, attempted, accomplished. –Job type: clerical, service, custodial, etc. –Company type: codice SEC Alcuni slot possono accettare elementi di una classe, es:. –Programming language (JAVA, Prolog, C, ecc.) –Company names (IBM, ACE Inc,...) In alcuni domini si devono estrarre più template da uno stesso documento. Una lista di appartamenti in vendita, in un unico avviso

Template Slot filling Due classi di metodi –Machine learning: imparare ad assegnare stringhe di testo ai vari slot (cioè classificarle come, ad es, purchaser, seller, location,... ). –Pattern matching: costruire espressioni regolari più o meno generalizzate che catturino la regolarità di certe stringhe.

Tecniche per IE in breve Da Kamal Nigam, Google Pittsburgh, Machine Learning for Information Extraction: An Overview Classify Candidates Abraham Lincoln was born in Kentucky. Classifier which class? Sliding Window Abraham Lincoln was born in Kentucky. Classifier which class? Try alternate window sizes: Boundary Models Abraham Lincoln was born in Kentucky. Classifier which class? BEGINENDBEGINEND BEGIN Finite State Machines Abraham Lincoln was born in Kentucky. Most likely state sequence? Wrapper Induction Abraham Lincoln was born in Kentucky. Learn and apply pattern for a website PersonName

Identificazione dei fillers basata su pattern matching Generalmente si usano espressioni regolari: –Pattern che identifica un prezzo in Amazon Book: \$\d+(\.\d{2})? List Price: $14.95 Our Price: $11.96 Lespressione regolare in genere consente di identificare il filler ma impone condizioni anche sui pre-filler e post-filler (il contesto di un filler). –Listino prezzi Amazon: Pre-filler pattern: List Price: Filler pattern:.+ Post-filler pattern:

In testi non strutturati Pattern Matching funziona bene per certi tipi di filler, ad esempio, Named Entities Es. nome di persona: –personTitle personFirstname PersonFamily Name (ex. Mr John Smith) name-title+ capitalised words Es. nome di azienda: –(Jhon Whiley Inc) capitalized-word +company-tag

Natural Language Processing Come abbiamo visto, per alcuni tipi di informazion (named entities) e documenti (semi-strutturati) scrivere espressioni regolari è relativamente facile. In caso contrario, occorre utilizzare alcune tecniche di NLP. –Part-of-speech (POS) tagging –Syntactic parsing –Categorie semantiche (es da WordNet) KILL: kill, murder, assassinate, strangle, suffocate I pattern possono usare categorie lessicali, sintattiche, semantiche. –Crime victim: Prefiller: [POS: V, Hypernym: KILL] Filler: [Phrase: NP]

Apprendimento automatico di pattern per IE Laspetto più critico in IE è la scrittura di pattern specifici per ogni dominio e template Scrivere delle regex accurate richiede tempo ed è una attività domain-dependent (non ri-usabile). Lalternativa è usare tecniche di machine learning: –Si parte da un set di apprendimento in cui esperti umani evidenziano i pattern di interesse (es. si sottolineano i filler degli slots). –Impara un modello generalizzato degli slot-fillers (cioè un pattern) usando algoritmi di ML.

Automatic Pattern- Learning Systems Vantaggi: –Portabile a vari dominii –I pattern hanno una copertura più ampia –Non serve rivolgersi a knowledge engineers Svantaggi: –Bisogna annotare un campione ampio di documenti. –Non funziona sicuramente meglio di un sistema in cui i pattern siano scritti a mano Esempi: ELIE (Ucd), Riloff et al., AutoSlog (UMass); Soderland WHISK (UMass); Mooney et al. Rapier (Utexas) Trainer Decoder Model Language Input Answers Language Input

Un esempio: ELIE ELIE è un sistema freeware di IE, basato su tecniche di apprendimento automatico. ELIE lavora con un set di documenti da usare per l apprendimento (learning set), in cui lutente marca le porzioni di testo che costituiscono i valori con cui riempire gli attributi o campi del template. MINNEAPOLIS, April 3 - Soo Line Corp said it agreed to sell its Lake States Transportation Division to the newly formed Wisconsin Central Ltd. The division conducts rail operations over about 2,000 miles of railroad in Minnesota, Wisconsin, Michigan and Illinois. Soo Line said in January it was seeking bids for the property. ELIE, osservando il LS, impara ad identificare e marcare i vari campi su documenti non inclusi nel LS.

ELIE: fasi Come in ogni sistema di apprendimento automatico, ci sono due fasi: –La fase di apprendimento o training, in cui, dato un campione di testi annotati manualmente, ELIE impara un modello di annotazione automatica, cioè impara a identificare delle porzioni di testo come filler di certi attributi o tag (purchaser, seller..) –La fase di estrazione, in cui lapprendista, utilizzando il modello di etichettatura del testo appreso, classifica testi non manualmente annotati, individuando le porzioni che sono filler dei vari attributi del template.

ELIE: caratterizzazione del testo Il problema affrontato da ELIE consiste nellidentificare, in un testo, stringhe specifiche, e classificarle in una delle categorie rappresentate dagli attributi di un template (nellesempio precedente, acquisizioni di società, le classi sono: venditore (seller) acquirente (purchaser), società/gruppo acquisito (acquired), stato della transazione (status), luogo (loc), ecc.) Per fare ciò, il primo problema è caratterizzare nel modo più generale possibile il testo. La caratterizzazione del testo comebag- of-words produrrebbe uno spazio delle ipotesi troppo ampio Pertanto, il testo deve essere caratterizzato anche mediante features con un numero di valori minori della feature token (i cui valori sono lintero vocabolario di una lingua e la punteggiatura)

ELIE: caratterizzazione del testo Features utilizzate: –Token: una singola parola o punteggiatura –POS: il part-of-speech di quel token –Gaz: la categoria di nome proprio cui (eventualmente) un token appartiene, zero se non è un nome proprio. Gaz assume come valori PERSONA (John, Mario Rossi), LUOGO (Minnesota, Lazio), TEMPO (m, pm, 12:30), TITOLO (Mr Mrs Dr..), address (street, boulevard..) ecc. Si basa su gazzetteers (database di nomi di entità, titoli, ecc.) –Orthographic: se il token è maiuscolo, grassetto..

Esempio {'token': 'honeywell', 'suffix': 'l', 'annotations': [' '], 'erc': [], 'chunks': ['NP_s'], 'stem': 'honeywel', 'pos': 'NNP', 'types': ['WORD', 'LONG', 'CAPITALIZED'], 'gaz': []} {'token': 'inc', 'suffix': '', 'annotations': [' '], 'erc': [], 'chunks': ['NP_e'], 'stem': 'inc', 'pos': 'NNP', 'types': ['WORD', 'CAPITALIZED'], 'gaz': ['stopword']} {'token': 'said', 'suffix': '', 'annotations': [], 'erc': [], 'chunks': [], 'stem': 'said', 'pos': 'VBD', 'types': ['WORD', 'ALL_LOWER'], 'gaz': ['stopword']} {'token': 'it', 'suffix': '', 'annotations': [], 'erc': [], 'chunks': [], 'stem': 'it', 'pos': 'PRP', 'types': ['WORD', 'ALL_LOWER'], 'gaz': ['stopword']} {'token': 'has', 'suffix': 's', 'annotations': [], 'erc': [], 'chunks': [], 'stem': 'ha', 'pos': 'VBZ', 'types': ['WORD', 'ALL_LOWER'], 'gaz': ['stopword']} Honeywell Inc. said it has... Nota: se il testo è stato annotato, le annotazioni sono associate al primo e allultimo token della stringa!

ELIE: apprendisti L1 e L2 La fase di apprendimento del modello avviene in due fasi: –L1 training phase: In questa fase, ELIE impara a identificare i token di inizio e fine sequenza (L1-start/L1-end). Ogni token è rappresentato da un vettore di features (vedi esempio precedente) e L1 impara a classificarlo o come start di un certo attributo (es. purchaser), o comeend, oppure né start né end (negative). –L2 boundary learning: nella fase due, L2-start prende un token classificato da L1-end come end, e cerca il rispettivo start solo fra i k precedenti token. L2-end prende un token classificato come start da L1- start, e cerca il rispettivo end solo fra i k successivi token. –Tag matcher: genera un istogramma delle distanze, nel LS, fra start ed end di ogni attributo. Apprende dunque la probabilità che una end tag sia ad una certa distanza da una start tag, e queste probabilità sono usate in fase di estrazione.

Schema della fase di apprendimento

Algortmo di apprendimento SMO L1 e L2 usano come metodo di apprendimento Sequential Minimal Optimization (SMO), una ottimizzazione di Support Vector Machines (SVM, un metodo algebrico basato su iperpiani di separazione), che varia il modo con cui la SVM viene addestrata Su SMO: Su SVM: machines.org/SVM_soft.htmlhttp:// machines.org/SVM_soft.html

ELIE: fase di estrazione Nella fase di estrazione, ad ELIE vengono sottomessi testi non annotati ma preprocessati (ogni token è un vettore di features, ma fra le features non ci sono le tag di annotazione) Nella fase 1, i modelli L1-start e L1-end fanno le loro predizioni assegnando ad ogni token una classificazione (start, end, negative). Nella fase due, L2-end predice la fine di una stringa a partire da un token etichettato come L1-start, ed analogamente L2-start. Le predizioni accoppiate start-end del livello 2 vengono valutate dal Tag matcher.

Schema della fase di estrazione

ELIE: maggiori dettagli ftware/elie-an-adaptive- information-extraction- system ftware/elie-an-adaptive- information-extraction- system Software scaricabile

Rapier [Califf & Mooney, AAAI-99] Rapier apprende da templates con relativi slots riempiti a mano Rapier impara tre tipi di fillers per ciascuno slot, in stile di : Pre-filler pattern Filler pattern Post-filler pattern Esempio di regola imparata da RAPIER per estrarre il filler dello slot transaction price …paid $11M for the company… …sold to the bank for an undisclosed amount… …paid Honeywell an undisclosed price…

esempio …sold to the bank for an undisclosed amount… POS: vb pr det nn pr det jj nn SClass: price …paid Honeywell an undisclosed price… POS: vb nnp det jj nn SClass: price

Rapier Rules: dettagli Rapier rule := –pre-filler pattern –filler pattern –post-filler pattern pattern := subpattern + subpattern := constraint + constraint := –Word - exact word that must be present –Tag - matched word must have given POS tag –Class - semantic class of matched word –Can specify disjunction with {…} –List length N - between 0 and N words satisfying other constraints

Algoritmo di apprendimento di Rapier Input: set of training examples (list of documents annotated with extract this substring) Output: set of rules Init: Rules = a rule that exactly matches each training example Repeat several times: –Seed: Select M examples randomly and generate the K most-accurate maximally-general filler-only rules (prefiller = postfiller = true). Cioè la regola si applica solo al filler –Grow: Repeat For N = 1, 2, 3, … Try to improve K best rules by adding N context words of prefiller or postfiller context Migliora la regola aggiungendo restrizioni sui pre e post fillers –Keep: Rules = Rules the best of the K rules – subsumed rules

Esempio (una iterazione) 2 examples: … located in Atlanta, Georgia… … offices in Kansas City, Missouri… maximally general rules (low precision, high recall) Seed appropriately general rule (high precision, high recall) Grow maximally specific rules (high precision, low recall) Init

Valutazione dellaccuratezza La valutazione va fatta su testi sui quali non sia stato fatto alcun apprendimento. Misura per ogni documento: –Numero totale di estrazioni corrette : N –Numero totale di coppie slot-valore estratte dal sistema : E –Numero totale di coppie slot-valore estratte dal sistema che sono corrette (rispetto al template-soluzione): C Misure di prestazione: –Recall = C/N –Precision = C/E –F-Measure = media armonica fra recall e precision

Estrazione di fatti su larga scala: KnowItAll [Etzioni et al. 2005] Il primo sistema che estrae fatti da pagine Web in modo: –Non supervisionato –Indipendente dal dominio Parte da un piccolo insieme di pattern indipendenti dal dominio –Quando istanziati per una particolare relazione, forniscono regole di estrazione specifiche per la relazione –Es: NP such as NPcong per estrarre relazioni di categoria (hotel facilities such as swimming pools, gym, sauna; pets such as cats, dogs..)

Pattern utilizzati in KnowItAll Vengono utilizzati i seguenti pattern generali da istanziare sul dominio di interesse: NP1,? such as NP2 NP1,? and other NP2 NP1 is a NP2 NP1 is the NP2 of NP3 the NP1 of NP2 is NP3

KnowItAll 1) Extractor Si parte da un pattern generico, es. such as Si istanzia con la classe di dominio, es. cities 2) Search Engine Si interroga Google con la stringa cities such as I frammenti restituiti sono analizzati per identificare i membri delle classi: We provide tours to cities such as Paris, Nice and Montecarlo 3) Assessor Problema: rumore second-tier cities such as this to take advantage of ample land supplies Data una lista di candidati, si utilizzano i conteggi ottenuti da Google come features per determinare la rilevanza dei candidati Le feature sono combinate in un modello Naive Bayes per produrre un ordinamento dei fatti estratti con la regola istanziata sul dominio 4) Creazione del database

Conclusioni e tools IE= template creation + filling Il problema principale è la dipendenza dal dominio Sviluppi di ricerca: patterns domain-independent (KnowItAll) o strumenti di acquisizione automatica minimally trained Tools: GATE un toolkit di IE open-source