This is an old revision of the document!
Table of Contents
Automatické určování koreference
poznámky ke schůzce 29. září
implementace v TectoMT ⇒ můžeme použít existující moduly (analýza případně až na tekto rovinu, nám bude stačit analytická rovina)
segmentace → morfologie → tagging → parsing na analytickou rovinu
Co budou markables?
Podle mne všechna podstatná jména a všechna osobní zájmena. Přinejmenším zpočátku, pak se to může vylepšovat či rozšiřovat. Řídil bych se především potřebami projektu PlayCoref a tím, co je anotováno v projektu Bridging.
Na pojmenované entity bych se vykašlal, alespoň zatím. V datech bridging stejně máme šipky mezi jednotlivými uzly. Sice na tekto rovině, ale projekce do analytické roviny a zpět (tedy i na povrch) je podle mne jednoznačná.
Jak poznat nové uvedení slova do diskurzu od slova, které koreferuje už s něčím dříve zmíněným?
Vidím dvě možnosti:
1) Předřadit modul, který to určí; úspěšnost by však musela být velice vysoká, jinak to považuju za zbytečné snižování celkové úspěšnosti. Nicméně není problém takový modul ve scénáři mít či mít možnost ho tam mít.
2) V rankingu určit mez, kterou musí vítězný kandidát překročit, aby vůbec nějaká koreference byla označena. Může i koexistovat s předchozím modulem.
Kdo budou kandidáti?
Předchozí osobní zájmena a podstatná jména, tedy tytéž markables. Předchozí až do nějaké vzdálenosti nebo všichni až do začátku textu? Respektive přesněji: předchozí diskurzní entity - již existující koreferenční řetězec by měl vystupovat jako jeden kandidát. (Nebudou se tím šířit předchozí chyby?)
Narozdíl od některých přístupů bych za antecedent vždy volil nejbližší prvek budoucího koref. řetězce - tzn. i zájmeno může být antecedentem podstatného jména - to je možné právě díky posuzování kandidátů včetně jejich existujícího koref. řetězce.
Jaká metoda, jaké features?
Supervised ranking. Unsupervised metody bych zvážil později, pokud by mohly přispět ke zvýšení úspěšnosti supervised metod, např. při adaptaci na jinou doménu apod.
Ranking - ale jaký?
Co bude ranker posuzovat v jednom kroku? “Anaphor + 1 kandidát” nebo “anaphor + kandidát + všichni ostatní kandidáti”? Mám pocit, že všichni to dělají jen “anaphor + 1 kandidát” - tím můžeme začít, ale nechal bych si možnost rozšířit to. Napadá mě featura typu “Je mezi ostatními kandidáty vlastní jméno?”.
Další možností je využít už existující koreferenční řetězec - neposuzuju kandidáta samostatně, ale už i s jeho koreferenty - mám pocit, že už to někdo někde takhle taky dělal (?). Kandidát pak dostane skóre na základě “shody” i s těmi koreferenty.
Features
Features pro ranking (a jejich váhy) budou různé pro různé typy anaphor (pozná se podle tagu), nejméně tyto tři typy:
- zájmena
- vlastní jména
- ostatní podstatná jména
Features bych pro začátek vzal z různých článků, např. Denis and Baldridge (2008?), Soon et al. (2001); Denis and Baldridge je pěkně rozdělují do skupin podle typu:
Linguistic Form
Sleduje, zda kandidát je vlastní jméno, obecné jméno nebo zájmeno.
Dále:
Demonstrative Noun Phrase - visí na podstatném jménu anaphoru něco jako “tento, tato apod.”?
Context
POS Left - POS slova vlevo od kandidáta
POS Right - POS slova vpravo od kandidáta
POS Surr - POS slova vlevo a slova vpravo od kandidáta
Distance
Distance - vzdálenost anaphoru od kandidáta; v čem měřit? (věty, slovesa, slova - možná víc featur))
Morphosyntactic Agreement
Number Agreement - shoda v čísle
Gender Agreement - shoda v rodu
Person Agreement - shoda v osobě (?)
Both Proper Names - (Soon et al. 2001)
Semantic Similarity
Semantic Similarity - WordNet - existuje nástroj pro měření podobnosti slov na základě Wordnetu v Perlu, je částí OpenNLP Toolkitu.
String Similarity
String Match - na lemmatech (bez přípon) - binární (0/1) nebo editační vzdálenost?
Left substring
Right substring
Apposition
Apposition - Anja tam možná nedělá šipky?
Acronym
Acronym - např. “ČR” a “republika, na které visí česká” - tady můžeme dobře využít analytickou rovinu
Vynecháno ze zmíněných článků, co se nehodí pro češtinu (nebo z jiných důvodů)
- kandidát je definite/undefinite noun phrase
- Semantic Class Agreement - (female, male, person, organization, location, date, time, money, percent, object) - vyžaduje nástroj, který by to určil
- Head word match - to je featura z Denise, ale co to je?