TDDD02 Föreläsning 5 HT-2013 Informationsutvinning Lars Ahrenberg Litteratur: H. Cunningham: Information Extraction, Automatic Översikt ● Informationsutvinning (IE) ● ● ● Definition och jämförelser Något om semantik och faktarepresentation ● Ontologier och extraktion av semantiska relationer Komponenter i IE-system ● ● ● Namnigenkänning Koreferensbestämning Relationsbestämning – bootstrapping av relationsuttryck Mallinstansiering Exempel ● ● ● ● Åsiktsanalys, Automatisk nyhetsläsning IE gentemot IR ● ● Dokumentsökning (IR) möter givna informationsbehov genom att söka efter dokument Informationsutvinning (IE) möter informationsbehov genom att söka i dokument ● Informationsbehovet formuleras som en mall med en eller flera relationstyper, t.ex. ● ● <HOTELLATTRIBUT: OMDÖME> TYP: <företagstyp> ORT: <ort> ANSTÄLLDA: <antal> IE gentemot IR Dokument Dokumentdatabas Analytiker IR-system Dokumentdatabas Strukturerade fakta IE-system IR-system En karaktärisering ● ● Informationsutvinning ombildar textdata (dvs. ostrukturerade data) till strukturerade data. Systemen bygger på ● identifiering av relevanta ord och fraser, ● semantisk klassificering av dessa, ● strukturering av data efter givna typer eller mallar, ● sammankoppling av information via koreferenser En enkel klassificering av dokument och meningar Subjektiva Positiva Negativa Objektiva Varianter av informationsutvinning ”Message understanding” / Automatisk nyhetsläsning ● ● Systemet söker information om en viss typ av händelse, t.ex. – ekonomisk verksamhet, – kriminell verksamhet, – sjukdomsutbrott, – ... Systemet identifierar förekomster av händelsetypen och specificerar relevanta entiteter och deras relationer Varianter av informationsutvinning Åsiktsanalys (”opinion mining”) ● Systemet söker information om vad folk tycker om en produkt, tjänst eller politiskt förslag, (”hotellet är prisvärt”, ”ligger nära centrum”, ...) Associationer (”media distance”) ● ● Systemet extraherar omdömen som texten kopplar ihop med en person eller produkt. och klassificerar dem sedan t.ex. i positiva/negativa, starkt/svagt hopkopplade, etc. Exempel: sammanställning av associerade begrepp Andel negativa begrepp associerade med Berlusconi under oktober 2011. Källa: http://gavagai.se/blog/2011/10/ 9 Varianter av informationsutvinning ● Sammanställning av information från flera dokument. ● ● ● svårare att avgöra om olika dokument handlar om samma händelse eller inte. Presentation/Hopkoppling av dokument (t.ex. citeringar) ● ● relativt lätt för associerad information t.ex. att skilja ett korrekt citat från ett plagiat. IE för prognoser ● ”Forecasting large-scale human behavior using global news media tone in time and space” (Leetaru, 2011) Varianter av informationsutvinning Ontologiorienterad informationsutvinning ● ● Systemet extraherar namn som instanser av givna klasser, t.ex. identifierar företag, platser, sjukdomar, ... Systemet extraherar synonymer och begreppsrelationer, t.ex. – hyponymi (specificering som i hylla - möbel ) – del-helhetsrelationer (som kök - lägenhet) Exempel på åsiktsanalys: hotellrecensioner Ett bra och prisvärt hotell som endast ligger en kort tunnelbaneresa bort från centrum. Personalen är trevlig och rummen är helt OK. Så länge själva hotellvistelsen inte är det huvudsakliga målet med resan är detta ett alternativ som kan rekommenderas. Är man ute efter en plats att sova på som inte kostar så mycket så är det perfekt. Sängarna är otroligt sköna. Läget är inte jättecentralt, men buss och t-station finns nära. Frukosten innehåller frallor, pålägg fil, cornflakes, musli, juice och kaffe. Ingen hotellfrukost i den vanliga bemärkelsen men den funkar. Är man däremot ute efter en mysig hotellvistelse ska man välja något annat. Hade jag fått bestämma så hade jag nog valt att kalla detta för vandrarhem istället för hotell. Minimala par: <hotell: prisvärt>, <hotell: bra>, ... Några krav på informationsstrukturerna ● Fullständighet ● Semantik Några semantiska begrepp De flesta semantiska modeller bygger på en grundläggande distinktion mellan uttryck och innehåll, eller 'betydare' och 'betytt' ● Den semiotiska triangeln (Ogden & Richards, The meaning of meaning): begrepp SPRÅK ord VÄRLD entiteter Logik och kunskapsrepresentation Gör relationen mellan betydare och betytt entydig och strukturen i utsagor transparent ● Linköping är en stad i Sverige ● Predikatlogisk representation Tillhör(lkpg,sverige)∧ Stad(lkpg) ● ● lkpg och sverige antas här vara unikt (eller universellt) refererande. De är s.k. individkonstanter Tillhör och Stad är också konstanter som står för begrepp Entiteter och relationer En entitet (eller individ) är något som kan urskiljas från sin omgivning och refereras. En relation (eller predikat) är något som uttrycker ett förhållande för en entitet eller mellan flera entiteter och som för givna entiteter kan bestämmas som sann eller falsk. ● Tillhör(lkpg,sverige) sant ● Tillhör(london,sverige) falskt Semantiska webben ”the Semantic Web aims at converting the current web dominated by unstructured and semi-structured documents into a 'web of data'” Länkade data: ● ● ● ● URIer (Universal Resource Identifiers) identifierar saker HTTP URIs gör det möjligt för både människor och maskiner att hitta saker och information om dem Informationen kan representeras i standardformat som RDF/XML Länkar till relaterade URIer kan inkluderas Ontologisk information Plats underbegrepp_till Stad Land instans_av lkpg sthlm Tillhör instans_av sverige argument-1 argument-2 Rel-141 Linked Open Data (källa: bbc.co.uk) Ontologiinlärning som 'reverse engineering' concepts Extraction words Från text till begrepp ● Lemmatisering ● ge alla böjningsvarianter en gemensam representant book, books, book's → book_n book, booked, books, booking → book_vb ● Betydelsebestämning ● identifiera olika betydelser av lemman bar → bar-1, as in chocolate bar bar → bar-2, as in piano bar bar → bar-3, as in standing at the bar ... Språkliga mönster för semantiska relationer Hyponymi (underbegrepp) ● datorer är en slags maskiner som … ● mönster: X är (en/ett (slags)) Y som ● du kan även använda andra bär som röda vinbär eller björnbär ... Instanser ● Skandinavien omfattar Danmark, Sverige och Norge ● Palme var statsminister under åren … ● ... Informationsutvinning, delproblem ● ● Namnigenkänning (Named Entity Recognition) Identifiering av koreferens – – ● ● namnupprepning, pronomenreferens (ord som han, hon, de, den, ...) Relationsigenkänning – enkla mallattribut t.ex. ort, ålder, pris, ... – relationer mellan mallentiteter Mallifyllning – koppla ihop relationer och namn på rätt sätt Informationsutvinning, stödsystem ● ● ● ● Lemmatisering Ordklasstaggning Betydelsebestämning Chunkning – ● identifiera fraser som uttrycker entiteter eller relationer av intresse Parsning – identifiera grammatiska relationer för hela satser och meningar Namnigenkänning ● Inom IE används begreppet namn (named entity) dels om ”vanliga” namn ● ● dels om sifferuttryck ● ● personnamn, företagsnamn, geografiska namn, … årtal, prisangivelser, antalsangivelser, … dels om refererande uttryck som refererar till entiteter som är relevanta i domänen, ● t.ex., företag, sjukdomar, stöldgods, ... Namnigenkänning ● För namnigenkänning används t.ex. ● ● ● namnlistor, (eng. gazetteers) reguljära uttryck för sådana namn som följer specifika teckenmönster klassificering med hjälp av kontextinformation kodad som indikatorer (”features”) t.ex. Naive Bayes Exempel: en namnlista över svenska kommuner Ale Alingsås Alvesta Aneby Arboga Arjeplog Arvidsjaur Arvika Askersund … Östhammar Östra Göinge Överkalix Övertorneå Utvärdering av namnigenkänning ● ● Namnigenkänning är ett sökproblem, varför precision och recall är lämpliga mått. Cunningham anger ”accuracy” till 95% men olika typer av namn är olika svåra att känna igen. Flertydighet är inte ovanlig: ● Ericsson ● Klippan ● Ikeamöbler som Billy, Stockholm, ... En händelsemall Exempel: arbetsmarknadsförändringar Typ_av_förändring: Tid: Källa: Företag Namn: Typ: Ort: Antal_anställda: Omsättning: Berörda Antal: Typ: En text om neddragningar 160 riskerar jobbet i Klippan Skogsbolaget Klippan AB planerar neddragningar i produktionen för att förbättra lönsamheten. Enligt ett förslag kan det innebära att 160 personer förlorar sina jobb i Klippan, skriver Helsingborgs Dagblad. I dag sysselsätter bruket i Klippan 216 personer. Klippan AB har också produktion i Lessebo. För de första nio månaderna förra året redovisade Klippan en förlust på 2,5 miljoner kronor efter finansnetto. Koncernens försäljning uppgick till 619 miljoner kronor. Instansierad mall Typ_av_förändring: neddragningar Tid: Källa: Helsingborgs Dagblad Företag Namn: Klippan AB Typ: skogsbolag Antal_anställda: 216 personer Ort: Klippan Omsättning: 619 miljoner kronor Berörda Antal: 160 Typ: personer Entitetsbaserad representation (jmf. Cunninghams artikel) Klippan id: type: ENTITY-1 ort Klippan AB id: type: ort: ENTITY-2 Skogsbolag ENTITY-1 160 personer id: type: ENTITY-3 berörda Referenser till samma objekt 160 riskerar jobbet i Klippan Skogsbolaget Klippan AB planerar neddragningar i produktionen för att förbättra lönsamheten. Enligt ett förslag kan det innebära att 160 personer förlorar sina jobb i Klippan, skriver Helsingborgs Dagblad. I dag sysselsätter bruket i Klippan 216 personer. Klippan AB har också produktion i Lessebo. För de första nio månaderna förra året redovisade Klippan en förlust på 2,5 miljoner kronor efter finansnetto. Koncernens försäljning uppgick till 619 miljoner kronor. Referenser till samma objekt ● Senare referenser använder (ofta) ● ● delar av (fullständigt) namn – Klippan AB → Klippan – Bo Lennart Johansson → Johansson anaforiska pronomen – ● han, hon, den, det, de, dom, ... beskrivande referenser i bestämd eller demonstrativ form – företaget, koncernen, ... – denna åtgärd, ... En text med pronomen Jan Ahrenbring lämnar sin post som marknadsdirektör vid Ericssons division Konsumentprodukter efter elva år. Ahrenbring slutar på egen begäran. Han kommer dock att vara kvar i Ericssonkoncernen. Hans arbetsuppgifter övertas av holländaren Philip Vanhoutte, som sedan i november i fjol är ansvarig för marknadsstrategi. Philip Vanhoutte har sitt kontor i London. Han kommer närmast från amerikanska teleoperatören MCI-Worldcom. Ericsson beslutade nyligen att lägga ut all tillverkning av mobiltelefoner på amerikanska Flextronics. I stället ska Ericsson koncentrera sig på design, marknadsföring och distribution, de områden som Ahrenbring ansvarat för. Villkor på anaforisk koreferens ● Morfologiska egenskaper ● ● Antecedent och anafor skall ha samma numerus och genus. – Han kommer dock att vara kvar... Syntaktiska egenskaper ● Antecedentens och anaforens syntaktiska positioner måste tillåta koreferens – Ericsson gav honom ett stort avgångsvederlag (Ericsson ≠ honom) Villkor på anaforisk koreferens ● Syntaktiskt-semantiska egenskaper ● ● Semantiska villkor på anaforens referent som ges av den omedelbara syntaktiska kontexten måste passa in även på antecedenten. Erik köpte en pizza på bensinstationen. Han åt genast upp den. (bensinstationen ≠ den) Mjuka villkor eller preferenser ● ● Antecedenten finns oftare i närmast föregående mening än längre bort. Antecedenten är oftare i en framträdande syntaktisk position, t.ex. subjekt, än i en mindre framträdande. ● ● Lisa ringde till Saras mormor. Hon ... Finns flera möjliga kandidater som uppfyller de absoluta villkoren, väljs en kandidat utifrån mjuka villkor. Att hitta relationer Klippan varslar 160 anställda ... <X> varslar <ANTAL> <Y> Strindberg föddes 1849 i Stockholm ... <PERSON> föddes <ÅR> Problem: det finns så många sätt att uttrycka samma relation Olika sätt att identifiera relationer ● Expertdriven systemutveckling ● ● Övervakad inlärning ● ● expert = lingvist förutsätter uppmärkt korpus ”Så frön” ('bootstrapping') ● gissa mönster och/eller instanser/tupler ● Exempel: – – /varslar [0-9]+ / /Volvo [a-zåäö]+ [a-zåäö0-9|\b]{0,3} anställda/ Att använda mönsterfrön Fröexempel: ● [FÖRETAG] varslar [ANTAL] [BERÖRD_PERSON] Tupelexempel: <Klippan, 160, anställda> Att ta reda på ● Vilken variation finns i hur relationen uttrycks? ● Vilken variation finns i ordningen mellan olika entiteter? ● Vad kan finnas mer än relationsuttryck och entitetsuttryck i meningarna? Fröbaserad relationsutvinning (”bootstrapping”) Mönster Mönsterfrön Sökning Extraktion Tupelmängd Mönstermängd Extraktion Tupelfrön Tupler Sökning Att välja ut nya mönster ● Ett nytt mönster kan värderas utifrån dess ● precision och recall på kända tupler ● antal nya tupler som föreslås ● precision på nya tupler Utvärdering av IE-system ● ● Utvärdering på komponentnivå ● namnigenkänning: ca 95% precision och recall ● koreferens: ca 65-70% Utvärdering på systemnivå Vad är viktigt? ● precision vs. recall på händelsenivå? ● precision vs. recall på uppgiftsnivå. Att visualisera data ● Positiva och negativa omdömen kan tabuleras och åskådliggöras grafiskt Positiva Negativa Hotell 1 Rum 120 16 Personal 80 42 Frukost 95 2 Rum 65 28 Personal 75 3 Frukost 24 28 Hotell 2 Resultat för Hotell 1 och Hotell 2 (andel positiva av alla) 0,5 Rum Personal Frukost kommersiell IE (exempel) ● demo.saplo.com ● www.recordedfuture.com ● ...