Dependency parsers: Vad är lockelsen med dependency mellan orden istället för fraser?

2015-02-18

Ett till ex. och från Sverige (jag läste den inte) men i övrigt känner jag till två eller tre dependency parsers mer välkänd alla mellan orden:



Och liksom ovan som jag såg i bilden direkt.


De är omåttligt populära bland medicinska forskare (relativt antalet som gör studier nära lingivstik) ty för sådana domäner gynnas välkända koncept lätta att komma igång med vilket jag tror en av dessa är (inriktad om jag minns rätt för att vara enkel utan att behöva kunna parser-teori för att använda parsern).


Men stora värden finns med all teori, grammatiska regler, mönster vid analys, extraktion m.m. från fraser. Så vad man vill ha är fraser men med dependencies som man får ut argument m.m. smidigare:




Och som bonus blir delar av den statistiska analysen jag använder parsningen till smidigare. Bl.a. kan jag ta ut en mängd möjliga ngram implicita (indikerande delar av meningen, liknande kategorier m.m.) såväl som statistiskt rovärdiga flergram samt komplettera för delar av istället den semantiska analysen utnyttja frasen för särskilt NP med kännedom DT (som the m.m.), sättande in singular o.s.v. Mycket enklare med fraser särskilt NP-fraser som har så pass tydlig struktur.


Dependency parsers för fraser sägs vara svårt - av en del menat lätt omöjligt - men självklart om en dependency parser arbetande på ord beskriver samma språk kan vi lika gärna göra det för fraser. I annat fall finns ju inga gemensamma samband för dem. Head driven parser - liksom root theory - teori går att återanvända här.


Annars hade man förstås kunnat göra ett tjusigt träd - kanske att rita upp med många färger - och spara ned för ännu mer tidsödande parsning när man ska återanvända analysen. Här är fördelen är jag intresserad av ett koncept kan jag gå in direkt på det och därifrån ta ut beroenden medan vi för trädstrukturer mer sannolikt (som de regelmässigt alltid görs) måste arbeta ut en massa från det parsande trädet. Och varför ens skapa det om man inte ska återanvända det? Sedan är de förstås bara att skapa om man behöver dem här också och ids skriva koden.


Och jag vet ty jag har parsat annoterade parser träd: Det är inte en sund sak att gör. Och är inte trevligt ens med en chunker och utan chunker tror jag man får med sig mer data än vad som gör något bra om datat nu ska användas till något seriöst krävande lite data likt selectional restrictions. Men så klart en liten chunker som parsar ut det använda bara från parser-träd är vad man kan ha nytta av igen. Men det är inte helt vanliga personer som skulle tycka utvecklande av sådant annat än tvingat som en bra sak att höra eller medverka till det varande nödvändigt - och jag har lite att jämförande havande skrivit en myckenhet "små-mini-parsers" av throw-away typ för att plocka ut annat data av varierade format ofta också skrivit i små på pappret eleganta dataformat likt owl, xml, html o.s.v. Tillochmed när mängden filer är små - snarare än att spindlande webben - är memcopy eller i Perl substr nära nog alltid snabbare för mig. Har man behövt göra det någon gånger prövar man inte ens att starta upp en xml- eller html-parser.