Napredne metode u pronalaženju informacija

Download Report

Transcript Napredne metode u pronalaženju informacija

Napredne metode u
pronalaženju informacija
Cvetana Krstev
čas 7
1
Ekstrakcija informacija



Ekstrakcija informacija se razlikuje od pronalaženja
informacija po tome što njen cilj nije pronalaženje
relevantnih dokumenata već pronalaženje relevantnih
informacija unutar dokumenata.
U principu, tekstovi iz neke elektronske baze podataka ili sa
neke veb lokacije koja se redovno popunjava se analiziaju
pomoću progarma koji u njima traže određene
informacione mete.
Te mete mgu da budu relativno jednostavne lingvističke
stavke, kao što su vlastita imena, ali mogu da se odnose i na
relativno kompleksne lingvističke strukture koje se odnose
na određene tipove događaja.
2
Početak interesovanja za ekstrakciju
informacija




Početkom 70-tih godina XX veka obaveštajne službe počele su da se
interesuju za korišćenje računara da bi nadgledali vesti i drugu
komunikaciju koja teče na raznim nivoima.
Ti prvi sistemi su u tekstovima tražili reči kao što su ‘terrorist’ i ‘bomb’ a
onda bi neko čitao dokument da vidi sadrži li zaista zanimljive informacije.
Savremeni sistemi idu dalje od toga jer pokušavaju da ubrzaju ovaj proces
tako što će u dokumentima da identifikuju, ekstrahuju i krajnjem korisniku
prezentuju zanimljiv sdaržaj.
Osim toga, savremeni sistemi povezuju ekstrahovane podatke sa
dokumentima u vidu meta-podataka, na primer tako što bi zabeležili da
tekst govori o nekoj indstriji ili geografskom regionu.
3
Mesto ekstrakcije informacija u oblasti
NLP



Za razliku od nekih ambicioznijih primena metoda obrade
prirodnih jezika, programi za ekstrakciju informaicja
analiziraju samo mali podskup datog teksta, na primer, onaj
njegov deo koji sadrži takozvane okidače (trigger words),
a zatim pokušavaju da popune prilično jednostavan
formular u kome se prikazuju predmeti ili događaji od
interesa.
Na primer, ako su informacije od interesa ‘preuzimanje
kompanija’ u tekstu će se tražiti, verovatno, ko je preuzeo
koga i za koju cenu.
Ako bi se informacije od interesa ticale personalnih
promena među direktorima u velikim kompanijama,
onda bi se u tekstu tražile informaicje o tome ko je napustio
koje radno mesto, i ko je primljen na to mesto.
4
Koliko je termin razumevanje poruka
adekvatan?




Ekstrakcija informacija se može posmatrati kao deo Obrade
prirodnih jezika u kome je fokus pronalaženje specifičnih
informaicja u nestrukturiranom tekstu.
Neki od istraživača u ovoj oblasti tvrde da njihov program
‘razume’ tekst, odnosno da poseduje ‘veštački inteligenciju’.
Ovi programi se, ipak, najčešće ograničavaju na
pronalaženje u tekstu nekih lingvističkih obrazaca i na
njihovo prikupljanje.
Mnogi zapravo tvrde da je plitko parsiranje i popunjavanje
šablona adekvatno za mnoge poslove ekstrakcije
informaicja i da ništa što bi se približilo razumevanju
prirodnog jezika nije ni potrebno.
5
Konferencije o razumevanju poruka
(MUC)


Njih je inicirala DARPA (Defense Advanced
Research Projects Agency) krajem 80-tih godina
XX veka sa ciljem da se okupe istraživači koji bi se
usredsredili na problem ekstrakcije informacija iz
slobodnog, nestrukturiranog, teksta.
Da bi učestvovao na ovoj konferenciji istraživački
tim je trebalo da izradi operativni sistem koji može
da obavi unapred propisan zadatak i to na takav
način da se rad njegovog sistema može evaluirati i
uporediti sa radom sistema drugih timova.
6
Doprinos MUC konferencija

MUC konferencije su bile veoma plodne iz više razloga:




insistiranje na izradi sistema koji zaista rade posao uticalo je na
istraživače da izbegavaju uobičajenu (prirodnu) tendenciju bavljenja
problemom koji će možda biti moguće rešiti u budućnosti.
Uvođenje jedinstvenog skupa podataka za obuku i testiranje
podstaklo je rigoroznu evaluaciju koja se zasnivala na dogovorenom
skupu mera.
Uvođenje takmičarskog duha i činjenica da je prijem na koji nečiji
sistem nailazi bio odmah poznat učinilo je da ove konferencije
veoma zanimljivim.
Učesnici na ovom takmičenju bili su istraživački timovi i iz
industrije i sa univerziteta.
7
Primer konferencije MUC-3 iz 1991.
godine



Tema ove konferencije je bila ekstrakcija
informacija o terorističkim aktivnostima iz
nestrukturiranog novinskog teksta.
Korpus na kome je rađeno je dobijen iz jedne
elektronske baze podataka postavljanjem upita
određenim ključnim rečima.
Na taj način je izvučeno 1300 tekstova koji su
predstavljali podatke za obučavanje, i još 100
tekstova koji su korišćeni za testiranje i za
poluautomatsko ocenjivanje.
8
Tipičan tekst iz korpusa MUC-3
konferencije

Tipičan tekst je počinjao ovako:



Last night’s terrorist target was the Antioquia Liqueur Plant.
Four powerful rockets were going to explode very close to the
tanks where 300,000 gallons of the so-called Castille crude,
used to operate the boilers, is stored.
Zadatak stavljen pred svaki program koji se takmičio bio je
da se izvuku i zableže sve informacije vezane za događaj.
Tipične informacije su datum događaja, mesto događaja,
cilj, upotrebljeno sredstvo (raketa, bomba, itd) i opšti tip
(ubistvo, požar).
Svi učesnici takmičenja su za svaki događaj popunjavali, u
potpunosti ili delimično, unapred zadati šablon.
9
Šabloni za odgovore


Svi programi su trebali da popune unapred pripremljene prazne šablone:
Primer (pojednostavljen) jednog popunjenog šablona
identifikacija polja
popunjavanje
MESSAGE ID
TST-MUC3-0001
DATE OF INCIDENT
04 FEB 90
TYPE OF INCIDENT
ARSON
PERPETRATOR
“GUERRILAS”
PHYSICAL TARGET
“TANK TRUCK”
HUMAN TARGET
INSTRUMENT
LOCATION OF INCID.
GUATEMALA:PETEN:FLORES
10
Uspešnost MUC sistema


Rezultati najboljih MUC-3 sistema su imali odziv od
50% i preciznost od 60%. To znači da su pronalazili
otprilike polovinu onoga što su tražili, dok je među
pronađenim bilo manje od polovine onoga što se
nije tražilo.
Rezultati MUC-6 sistema su bili već znatno bolji:
odziv je bio 75%, a preciznost takođe 75%, za šta
mnogi misle da je plafon i da se mnogo bolje od
toga ne može postići.
11
Koliko su ovakvi rezultati dobri u realnim
situacijama


Službenik obaveštajne službe koji prati vesti o terorističkim
aktivnostima bi mogao da bude zadovoljan ako bi dobio
“na tanjiru” 75% vesti o ovoj temi sa svim potrebnim
detaljima, čak i ako bi od svih tih vesti trebalo da odbaci ok
četvrtinu (25%) kao pogrešne ili nerelevantne.
Advokat koji traži presude koje su od značaja za njegov
tekući slučaj bi sa ovakvim rezultatima bio manje
zadovoljan (koliko uopšte može da pronađe slučajeva koji
su od interesa za njegov slučaj?) i on bi verovatno morao d
atraži i neka druga sredstva koja bi mu mogla pomoći.
12
FASTUS sistem



FASTUS – Finite State Automata-Based Text
Understanding System – je tipičan uspešan predstavnik
MUC konferencija.
Na MUC-4 konferenciji čija tema je bio terorizam u
Latinskoj Americi je dobro prošao jer je na korpusu od 100
vesti za testiranje ostvario odziv od 44% i preciznost od
55%.
Na MUC-6 konferenciji čije teme su bile korporativno
upravljanje i pregovaranje o sporovima vezanim za radne
odnose je uspeh bio mnogo bolji: odziv 74% i preciznost
od 75%. U prepoznavanju imenovanih entiteta su bili još
bolji: odziv 92% i preciznost od 96%.
13
Na čemu se zasniva FASTUS



Parsiranje tekstova se zasniva na kaskadama konačnih
automata (Finite State Automata - FSA), koje se
ponekad nazivaju mašine s konačnim brojem stanja
(Finite State Machines – FSM).
FSM su idealizovane mašine koje se kreću iz jednog u drugo
unutrašnje stanje u seriji diskretnih koraka.
Njihov značaj za obradu prirodnih jezika leži u tome što
mogu da se koriste i za generisanje i za prepoznavanje
jedne klase formalnih jezika, a to su regularni jezici
(najjednostavnija klasa).
14
Mašine konačnih stanja i parsiranje



Matematičar i logičar Klini (Stephen Cole Kleene) je pokazao da su
regularni jezici i FSA ekvivalentni, tj. svaki FSA prepoznaje jezik
koji generiše regularna granmatika i obrnuto. Drugim rečima,
nijedan FSA ne prepoznaje jezik koji ne bi bio iz klase regularnih
jezika.
Lingvista Noam Čomski (Avram Noam Chomsky) je pokazao da
prirodni jezici nisu regularni jer sadrže ugnježdene i isprepletane
strukture koje se ne mogu prepoznati uz pomoć FSA.
Računarski lingvista Kenet Čerč (Kenneth Church) je pokazao da
se bez obzira na ograničenje mogu uspešno koristiti za modeliranje
prirodnih jezika jer je dobro poznato da ljudi imaju “kratko
pamćenje” što čini da u praksi ne koriste preterano složene
rečenične strukture u kojima se lako mogu izgubiti.
15



Bez obzira na ograničenja, FSM su se pokazala
veoma uspešnim za ektrakciju informacija u onim
primenama u kojima se složenije gramatičke
strukture mogu ignorisati.
Na primer, ako se iz teksta vade imena kompanija,
onda se u velikoj meri mogu ignorisati predloške
fraze i zavisne rečenice.
Na ovaj način se mogu uspešno ekstrahovati i
događaji što pokazuje sistem FASTUS i njegova
uspešnost od oko 70% za odziv i preciznost.
16
Pristup parsiranju u sistemu FASTUS


FASTUS koristi kaskadu modula koja je tipična za mnoge
sisteme za ekstrakciju informacija u kojoj izlaz iz jednog
procesa predstavlja ulaz za drugi proces.
Zbog toga se arhitektura koju koristi i sistem FASTUS
ponekad naziva kaskadni konačni automati.
tokenizator
tager
vrste reči
sravnjivanje
Reg izrazima
popunjavanje
šablona
spajanje
šablona
17
Faza sravnjivanja regularnih izraza


U ovoj fazi FSM cilja određene imeničke i glagolske grupe i
pokušava heuristički da ih sravni.
To znači da se koriste neka zdravorazumska pravila (“rules
of thumb”), na primer o sintaktičkim ili semantičkim
ograničenjima koja postoje pri povezivanju imeničkih i
glagolskih fraza.


npr, u engleskom, vlastito ime u jednini zahteva gaoglski oblik koji
se jasno razlikuje od ostalih oblika.
Pomaže i odbacivanje nekih nesuvislih kombinacija, iako tu
treba biti obazriv pošto su metaforiška značenja uvek
moguća

npr, mašina koja guta papir ili pije benzin i sl.
18
Faza popunjavanja šablona


U ovoj fazi se uzimaju obrasci pronačeni u prethodnoj fazi
koji se onda smeštaju u neku podatkovnu strukturu.
Na primer, iz sledeće tri vesti bi, bar u teoriji, trebalo da se
ekstrahuju iste informacije i da se iz njih generiše ista
podatkovna struktura.



Terrorists attacked the mayor’s home in Bogota.
The mayor’s Bogota home was attacked by terrorists.
The home of the mayor of Bogota suffered a terrorist attack.
19
Šabloni za odgovore za domen terorizma

Iako su u dobijenoj tabeli izostavljeni mnogi lingvistički i drugi detalji, u
mnogim slučajevima program uspeva da prave podatke povež sa njihovom
ulogom u modelu događaja
identifikacija polja
popunjavanje
MESSAGE ID
TST-MUC3-0002
DATE OF INCIDENT
04 FEB 90
TYPE OF INCIDENT
ARSON
PERPETRATOR
TERRORIST
PHYSICAL TARGET
HOME
HUMAN TARGET
MAYOR
INSTRUMENT
LOCATION OF INCID.
BOGOTA
20
Faza spajanja šablona



U poslednjoj fazi treba slične strukture za koje se
može pretpostaviti da predstavljaju opis istog
događaja spojiti u jednu strukturu da bi se izbegla
redundantnost podataka.
To znači da šabloni proizvedeni iz različitih vesti
koje opisuju isti događaj ne moraju biti isti ali su
dovoljno slični da se može zaključiti da se radi o
istom događaju.
Tada se podaci različitim šablonima mogu spojiti.
21
Šabloni za odgovore za domen terorizma

Na primer, ako bi treća vest o napadu na gradonačelnika Bogote glasila:
 The home of the mayor of Bogota suffered a grenade attack
identifikacija polja
popunjavanje
MESSAGE ID
TST-MUC3-0002
DATE OF INCIDENT
04 FEB 90
TYPE OF INCIDENT
ARSON
PERPETRATOR
TERRORIST
PHYSICAL TARGET
HOME
HUMAN TARGET
MAYOR
INSTRUMENT
GRENADE
LOCATION OF INCID.
BOGOTA
22
Uloga rečnika u definisanju pravila



Da bi zdravorazumska pravila bila doboljno opšta potreban
je rečnik, jer se onda pravila mogu formulisati preko vrste
reči i drugih gramatičkih kategorija, a ne samo preko
pojedinačnih reči.
Na primer, imenička fraza NG bi mogla da se definiše kao
determinator (DET) iza koga sledi modifikator (MOD) iza
koga sledi imenica (NOUN): DET MOD NOUN.
Onda bi se sledeća rečenica:


The local mayor, who was kidnapped yesterday, was found
dead today.
mogla predstaviti u obliku NG RELPRO VG, to jest,
imenička fraza, fraza koja počinje odnosnom zamenicom
(who i which) i glagolska fraza.
23
Složeniji obrasci koje koristi FASTUS



PERP attacked HUMANTARGET’s PHYSICALTARGET in
LOCATION on DATE with DEVICE
U ovom pravilu se mešaju opšte kategorije (zapisane velikim slovima) i
pojedinačne reči (zapisane malim slovima). Na primer, PERP je
specifičnije od NOUN, jer če moći da se sravni samo sa nekom
podklasom imenica (koja može da bude izvršilac nečega), a ta
informacija je zapisana u rečniku.
Ovo pravilo će se sravniti sa sledećom rečenicom:


Terrorrists attacked the Mayor’s home in Bogota on Tuesday with
garandes.
ali neće sa ledećom rečenicom baš zbog ograničenja koje uvode
podkategorije:

Bush charged the Democrats in the House on Tuesday with
obstruction.
24
Koliko pravila treba napisati?

Treba napisati mnogo pravila jer se u prirodnom jeziku
svaka stvar može reći na mnogo načina:



The Mayor’s home in Bogota was attacked on Tuesday by
terrorists using granades.
On Tuesday, the Bogota home of the Mayor was attacked by
terrorists armed with grenades.
Dodatni problem čine nepoznate reči jer one neće moći da
popune zadato mesto u pravilu počto ih nema u rečniku.
Na primer, ime nekog manjeg mesta u Kolumbiji koje se
javlja u vestima a nema ga u rečniku.
25
Komplet alata GATE (GATE toolkit)




GATE je skraćenica od General Architecture for Text
Engeneering za jedan komplet alata otvorenog koda.
Razvijen je u Velikoj Britaniji, na Univerzitetu u Šefildu
(University of Sceffield’s Natural Processing Group)
GATE je sistem koji prihvata ulazni tekst, proizvodi tabelu
anotacija koja se može primeniti na tekst propuštanjem i
teksta i tabele kroz kanal uzastopnih programa za anotaciju.
Kao primer, posmatrajmo problem identifikovanja imena
advokata iz tekstualnog bafera

Bill Parker represented the defendant.
26
Primer GATE obrade
tekstualni
bafer
tabela
anotacija
tokenizator
pretraga rečnika
vlastitih
imena
automat za
imena
advokata
27
Prvi korak u GATE kanalu




U prvom koraku u kanalu, tekst i prazna tabela
anotacija se prosleđuju kao ulaz u tokenizator koji
generiše anotacije koje popunjavaju tabelu anotacija.
Tabela anotacija ima red za svaki token iz ulaznog
teksta.
Svaki red sadrži položaj početka i kraja
odgovarajućeg tokena u ulaznom tekst (mereno
brojem karaktera), zatim vrstu otkena i atribute koji
su mu pridruženi.
Posle tokenizacije vrsta svakog tokena je samo
“token”.
28
Tabela anotacija posle tokenizacije primera
opseg
vrsta
atributi
0-4
token
string=Bill, orth=upperinitial, lenght=4
5-11
token
string=Parker, orth=upperinitial, lenght=6
12-23
token
string=represented, orth=lower, lenght=11
24-27
token
string=the, orth=lower, lenght=3
28-37
token
string=defendant, orth=lower, lenght=9
38-39
token
string=punctuation, lenght=1
29
Drugi korak u GATE kanalu





Posle tokenizacije, tekst i tabela anotacija se prosleđuju modulu koji
generiše anotacije pretragom rečnika vlastitih imena (gazetteer).
Ovaj program uzima niskovne vrednosti tokena i traži ih u
specijalnom, jednostavnom rečniku koji se sastoji od lista ličnih
imena, prezimena, geografskih imena, profesija (ne moraju uvek ni
biti vlastita imena), itd.
Neka u ovom našem primeru imamo takve liste koje sadrže lična
imena kao što su Bill i Parker, i koje mogu da identifikju uloge u
pravničkom postupku, kao što su defendant (optuženi) i plaintiff
(tužilac).
Na osnovu onoga što je pronađeno, u ovom koraku se dodaju nove
antoacije tipa Lookup u tabelu anotacija.
Za naš primer bile bi dodate tri anotacije.
30
Tabela anotacija posle pretrage listi
vlastitih imena
opseg
vrsta
atributi
0-4
token
string=Bill, orth=upperinitial, lenght=4
0-4
Lookup type=person
5-11
token
5-11
Lookup type=person
12-23
token
string=represented, orth=lower, lenght=11
24-27
token
string=the, orth=lower, lenght=3
28-37
token
string=defendant, orth=lower, lenght=9
28-37
Lookup type=defendant
38-39
token
string=Parker, orth=upperinitial, lenght=6
string=punctuation, lenght=1
31
Treći korak u GATE kanalu



Posle pretrage listi vlastitih imena, tekst i tabela anotacija se
prosleđuju automatu za imena advokata koji generiše nove
anotacije.
Ovaj treći modul se zasniva na takozvanim JAPE
transduktorima (FSA sa izlazom) – JAPE Java Annotation
Pattern Language
JAPE transduktor je zapravo konačni automat sa izlazom
zapisan u sepcijalnom JAPE jeziku; ovaj automat učitava
anotacije iz tabele anotacija i emitouje nove anotacije koje
su pridružene uspešno pređenim putevima u transduktoru.
32
Tabela anotacija posle izvršavanja GATE
transduktora za imena advokata
opseg
vrsta
atributi
0-4
token
string=Bill, orth=upperinitial, lenght=4
0-4
Lookup
type=person
5-11
token
string=Parker, orth=upperinitial, lenght=6
5-11
Lookup
type=person
12-23
token
string=represented, orth=lower, lenght=11
24-27
token
string=the, orth=lower, lenght=3
28-37
token
string=defendant, orth=lower, lenght=9
28-37
Lookup
type=defendant
38-39
token
string=punctuation, lenght=1
0-11
AttorneyName
type=defending
33
Kako izgledaju JAPE pravila

Na primer pravilo za imena advokata glasi:




ako se naiđe na dva uzastopne Lookup anotacije “osoba” iza kojih
sledi token čija je vrednost “represented” iz koga sledi Lookup
anotacija “defendant”, onda treba kreirati anotaciju AttorneyName
čiji je tip “defending”.
JAPE je u kombinaciji sa listama vlastitih imena moćno
sredstvo za anotiranje i dostupan je besplatno u okviru
otvorenog koda GATE-a.
Važno je znati da se u GATE kanal može staviti i neki drugi
softverski modul, sve dok taj modul čita tekst i tabelu
anotacija i umeće nove anotacije u tabelu.
Štaviše, mnogi durgi moduli otvorenog koda su uspešno
umetani u GATE kanal, na primer tager vrste reči, modul z
apodelu na rečenice, modul za razrešavanje koreferenci.
34