This is an old revision of the document!
Table of Contents
Motivace
Na t-rovině PDT 2.0 proběhlo anotování koreference, a sice viz níže. V anotování koreference je potřeba pokračovat i s ohledem na její automatické určování metodami strojového učení.
Určitě chceme mít jakékoli anotace, pro které se rozhodneme (tedy i koreferenční), PRÁVĚ TEĎ. To znamená, že HNED seženeme anotátory (kolik?), HNED je zacvičíme, HNED na ně seženeme peníze, … Tak HNED to nebude, že ano:-) Zvolme tedy takový způsob anotace, pro který rychle (HNED to nebude ani v tomto případě) seženeme dostatek anotátorů - anotátory nebudeme muset zacvičovat, protože si budou “jenom” hrát.
Motivační publikace
- Návrh projektu na GAČR 2009 Automatické určování koreference v textech na základě dat anotovaných netradiční metodou ## automatické určování koreference metodou strojového učení na textech v jejich lineární podobě;
- Luis von Ahn, Laura Dabish: Labelling Images with a Computer Game, 2004, (pdf) ## nálepkování obrázků hrou ESP
Anotování koreference v českých datech
- rozšířená koreference - viz přehled https://wiki.ufal.ms.mff.cuni.cz/user:hladka:data
- ukázky anotovaných souborů ## ještě k těmto výpisům doplním tektogramatické stromy - někdy jsou k pochopení barviček důležité. Nicméně už z těchto ukázek vyplývá, že budeme muset začít s beletrií a podle zkušeností zkusit noviny.
- Projekt anotace rozšířené textové koreference a bridging vztahů v PDT. (Anja Nedolužko: Technická zpráva)
Automatické určování koreference v českých datech - přehled
- Experiments with Czech so far
- Kučová L., Žabokrtský Z.: Anaphora in Czech: Large Data and Experiments with Automatic Anaphora Resolution. Available: pdf
- Nguy Giang Linh: Návrh souboru pravidel pro analýzu anafor v českém jazyce (A set of rules for anaphora resolution in Czech), MFF UK 2006. Available: pdf
- Nguy Giang Linh; Žabokrtský, Z.: Rule-based approach to pronominal anaphora resolution applied on the Prague Dependency Treebank 2.0 data. In Proceedings of DAARC 2007 (6th Discourse Anaphora and Anaphor Resolution Colloquium). Available: pdf
- Linh's procedure
Návrh hry - brainstorming
26/5/08 Anja, Bára:
- Vstup: Texty v povrchové podobě, tedy NE tektogramatické stromy
- Jaké texty vybrat? Z PDT 2.0? - to by se asi hodilo, protože pak by se nabízelo srovnání s anotací na tektogramatických stromech.
- Výstup hry: koreferenční řetízky
- gramatická koreference … určitě ne v prototypu hru
- TEXTOVÁ KOREFERENCE … v prototypu hry určitě
- bridging anaphora … určitě ne v prototypu hry, (pozn. AN - ale možná potom, třeba jako další úroveň)
- Jak instruovat hráče, aby označovali koreferenční řetízky? Mějme na paměti to, že hráči nesmí být zatíženi jakýmkoli lingvistickým termínem a že by měl při hraní využívat pouze základní vlastnosti tvarosloví a syntaxe. (pozn. AN - Nabízím otázku typu “Označte slova, která pojmenují stejný objekt” třeba stylisticky úpravenou - odkazují na stejnou věc, předmět, osobu, pojem apod. Tím bychom měli na výstupu rozšířenou textovou koreferenci)
- Jak hráčům servírovat texty? Určitě po částech. Na úvod jim zobrazit první čtyři (méně asi ne) věty a následně větu po větě? (pozn. AN - celý text se ke hráči ale stejně nedostane? Nebo jo? Co když má 70 vět? Budeme členit ten text na prolínající se kousky a pak ho zase slepovat? ???)
- Jak budou hráči označovat slova, která k sobě patří? Technicky by měli mít možnost libovolné slovo uchopit a přetáhnout ho přes jiné, ke kterému patří. Různé koreferenční řetízky by se odlišovaly barvou? (pozn. AN - pokud budeme hrát jenom textovou koreferenci, barvičky jsou určitě nejlepším řešením. Vět na vstupu máme jen málo, takže barvy stačí. Jakmile tam dáme bridging, to už tak nepůjde, protože barvy se budou křížit - jedno slovo se může zůčastnit více vztahů. Ale bridging zatím neděláme, takže je to v pořádku)
- Texty před hrou nějak zpracovat? Například, že by se věta automaticky označkovala a všechna substantiva (i zájmena?) by se zvýraznila. Hráči by pak přetahovali pouze takto označená slova. (pozn. AN - pokud to není technicky moc složité, možná by stálo za to spojit dohromady celé NP, tj. aby např. “japonský pán” - “pán z Japonska”, nebo “ekonomická nauka” - “ekonomická věda” - “ekonomie” byly zvýrazněny jako jedna jednotka. Jinak hrač nespojí slovo “věda” se slovem “ekonomie” a bude to ztráta informace. Navíc, takové předznačkování nám dává výhodu před stromovým zobrazením, kde koreferenci můžeme označovat jenom mezi jednotlivými úzly. Další přehlednější příklady dopíšu, až se na ně narazím) (pozn. BH - ano, naše úloha velmi těsně souvisí s NP. Původně jsem si mysleli, že bychom pro hraní mohli vzít i data, na kterých Magda Ševčíková a Zdeněk Žabokrtský vedli ruční klasifikaci NP. Bohužel nemohli, protože oni náhodně vybrali určité množství vět ČNK - tedy nepracovali na souvislém textu, což zase potřebujeme my.)
- Hra kolika hráčů?
- Hra je postavena na shodě hráčů. Jak naložit s koreferenčními řetízky od jednotlivých hráčů? Př. hráč A označí řetízek ´ABCD´a hráč B ´ACD´. Prostým porovnáním řetízků zaznamenali shodu v ´CD´. Ale i ´AB´ a ´BC´ (co ´AC´?) mohou být správně. Co přesně pošleme na výstup? Návrh řešení: do bodů se oběma hráčům započítá pouze jednička, ale do dat, která budou přesně kopírovat partii, se uloží i všechny ostatní dvojice, na kterých se hráči přímo neshodli. Protože s daným textem budou hrát i jiní hráči, pro naše výstupy se budou porovnávat řetízky ze všech partií, při kterých se s ním hrálo. (Pozn. AN - co třeba vzít pro nase vystupy nejdelsi retizky, na kterych se hraci shodli = tj. pokud mame pary AC, ABD, a ABCD, vzit to ABCD?)
26/6/08 Jirka:
- JM: Ja bych navrhoval jednodussi variantu hry. Hraci by nemeli za ukol urcit vsechny koreferencni retizky ve vete, ale jen jeden k danemu slovu. Veta by se nejprve predzpracovala automatickou metodou na odhalovani koreferenci, ktera by byla zamerena na recall, tedy aby nic neprehledla. Tim by vznikli kandidati na slova, na ktera vedou koreferencni sipky. Hraci by byla prezentovana veta se zvyraznenym timto slovem. Jeho ukolem by bylo oznacit vsechna dalsi slova ve vete, ktera na toto slovo odkazuji. Na vyzadani by dostal prvni vetu z kontextu, na dalsi vyzadani vzdy dalsi jednu. Tak by se dalo merit, jak velky kontext clovek potrebuje. Asi to musi byt hra pro nejmene dva protihrace, aby bylo mozno hrace ohodnotit (shoda s protihracem). Problem teto varianty mozna je, ze by hraci mohli mit tendenci po oznaceni prvniho slova vysledek povazovat za hotovy. Druhou moznosti je oznacovat to opacne, ke kteremu slovu odkazuje zvyraznene slovo. Tak by vzdy slo o oznaceni jen jednoho slova. Hralo by se na cas, do te doby, nez nastane shoda hracu a hraci oznaci vysledek za hotovy. Kdo to mel prvni, vyhrava. Jak bylo receno na schuzi, stridaly by se nahodne vety, u kterych koreferenci zname, s novymi vetami. Tak se zajisti, ze hraci nebudou podvadet - kdo bude prilis casto neuspesny na znamych vetach, ten podvadi. Vyhodou druhe varianty (oznacit, ke kteremu slovu dane slovo odkazuje) je rovnez to, ze by vedla k urcovani koreferenci i mimo jednu vetu. Kdyz by referencni slovo nebylo v dane vete, hrac by si musel vyzadat kontext a oznacit slovo v nem.
- (11/2/09)BH: bohuzel nemame zadnou automatickou proceduru na predzpracovani
11/2/09 Bára:
- BH:
- Oznac podstatna jmena (a/nebo zajmena), ktera k sobe patri
- Zakladni strategie: Hra n (n >= 1) hracu. Na zacatku partie se kazdemu hraci zobrazi prvni dve vety dokumentu. Kdyz bude mit hrac pocit, ze oznacil vse, co k sobe patri, vyzada si dalsi vetu. Hrac NECEKA na okamzik, kdy dosahne shody s protihracem - postupuje sam podle sveho tempa. Ovsem jakmile protihrac urci stejnou dvojici, tato skutecnost se vizualne vyjadri.
- Vyvoj partie:
- Rychlejsi hrac muze v kteremkoli okamziku urceneho casu partii ukoncit. Pomalejsi hrac musi dodelat vsechny vety, ktere zpracoval rychlejsi hrac.
- Vyprsel casovy limit.
- Casovy limit jeste nevyprsel a hraci chteji hrat dal: automaticky se natahne dalsi dokument, konkretne jeho prvni dve vety.
- Pocitani skore: Skore se bude pocitat pouze za dvojice, na kterych se oba hraci shodli. Jeste bych do skore zapocitala bonusove body pro toho, kdo byl rychlejsi.
- Vystup: dvojice, na kterych se hraci shodli a neshodli. Shoda bude prinosna, ale co delat s temi dvojicemi, ktere oznacil pouze jeden hrac? Muze se objevit jeste jedna sance na shodu, a to ta, ktera prijde z jine partie se stejnym dokumentem. Proto bude muset byt kladen duraz na rizene podsouvani dokumentu do partii.
- Kontrolni mechanismy, aby hraci nespojovali libovolna dve slova - vzhledem k navrhu na pocitani skore, tj. za shodu, budou hraci aspon castecne motivovani hrat smysluplne.
Specification
Strategy
- Hook up the words which refer to the same entity.
- A game of two players. Players are paired randomly. Computer as a player: automatic coreference resolution ???????
- Session time up to ??????? minutes.
- At the beginning of the game, if there is no coreference pair in the first two sentences (as determined by the manual/automatic pre-annotation), more than two sentences should be displayed, so many that at least one coreference pair occurs there. The players hook up the nouns and pronouns which refer to the same object independently of each other. If a player hooks up all the related words in the given sentence(s) (s)he keeps in mind then (s)he asks for the next sentence(s) (depending on the number of pairs determined by the manual/automatic pre-annotation) of the document. The session goes on this way until the end of the session time. (vypustila jsem tu variantu, ze rychlejsi hrac muzi partii ukoncit kdykoli. Jednalo by se vlastne o znevyhodneni pomalejsiho hrace.) The player who has asked for more sentences in the session obtains bonus speed points.
- What my partner is doing? If (s)he hooks up the same pair of words as I hooked up then the pair of words starts ???????. If (s)he links a word I have not linked so far then a given word starts ???????
- The players can re-hook up any word any time in the session.
- To design the game for a particular language the following data and tools are needed (or, better said, are welcome):
- corpus of manually anotated coreference
- POS tagger
- coreference resolution procedure
Input Texts
Text Selection
- CS data
- Anja's data ## PDT data that are currently being annotated for the extended coreference
- JM: It would be nice if the players could choose a domain of the texts to play on (science-fiction, fantasy, thriller, romance, …), maybe even the author or the very title. The available resources of free electronic books in Czech are scarce but there are plenty of free electronic books in English and other languages, e.g. Project Gutenberg. BH: It is a very nice idea but I would postpone it till the next versions of the PlayCoref game. However, we have already selected more user-friendly texts into the LGame db - see this page. So we can use them for the PlayCoref game as well.
- JM (6/3/09): Predelal jsem data pro playcoref, ted obsahuji jenom koreference mezi uzly s tagy N nebo P. Data jsou v adresari:
/net/work/projects/playlang/playcoref/data/02_bridging_playcoref/train-1
. Spocital jsem tabulku, ve ktere jsou tyto soubory z train-1 serazeny sestupne podle pomeru (pocet koref. sipek)/(pocet slov). Tabulka je tady ( prvni sloupec je pomer (pocet koref. sipek)/(pocet slov), druhy sloupec je nazev souboru, treti sloupec je pocet koref. sipek, ctvrty sloupec je pocet slov.)- BH (16/3/09). Zajmena filtrovat i podle subPOS: POVOLIT: 1 (jejímž), 4 (která), 5, 6, 8 (svých, svůj), 9 (nimž), E, H, J, K, O, P, S (jejich, našemu), Y. ZAMKNOUT: 7 (zvratné se, si), D (to, tomto), L (všechny, všech), Q (čím, tím), W (ničeho, nic), Z
- EN
- search the data that are available; BH (11/3/09) Z dokumentace dat, ktera bychom meli mit, jsem nasla MUC6, ale nevidim tam data s koreferenci. Jirka zjisti, jestli jsou nekde jinde nebo jak jinak se k nim muzeme dostat.
Coding
- utf-8
Internal format
- sgml ## propose dtd file: include the element
cor
and its attributesrc
(manually, automatically, players) into csts.dtd; ve zkratce: u kazde slovni formy <f_id> bude povinne <l>, <t> a volitelne <cor src=“man”>, <cor src=“Linh”>, <cor src=“player_id”>, …, <cor src=“player_id”>. Kdyz se bude s dokumentem hrat poprve, tak tam <cor src=“player_id”> nebude zadne
(Pre)processing
- tagging ## see Tools needed below
- acr by Linh ## dtto
Text handling
- sentence by sentence
- supervised selection of documents for a session
Scoring
pts(A) = w1*ICA(A, acr) + w2*ICA (A,B) + speed_pts(A)
JM:
Já myslím, že do shody je tlačit chceme. Je žádoucí, aby anotace byla co nejúplnější. Když druhý hráč uvidí, že první hráč spojil nějaké slovo, vyvíjí to na něj tlak, aby se podíval, jestli to
nepřehlédl a jestli by ho nemohl zapojit také. Neukazuje se mu kam, takže když nenajde žádný cíl, nezapojí ho a bude se radovat, že první hráč udělal nějakou chybu. Myslím, že ta funkce by měla brát buď automatickou anotaci nebo manuální, podle toho, co je k dispozici. Rovněž si teď myslím, že manuálně anotovaná data budeme používat minimálně - pouze pro změření úspěšnosti anotace pomocí hry - to ale nemusí být vůbec součástí skóre hry, to se udělá off-line. Manuálně anotovaných dat máme málo, jsou už anotovaná a nejsou zábavná. Z toho mi vyplývá, že bych manuální anotaci pro určování skóre nebral vůbec v úvahu a ze vzorečku nahoře bych první člen vyhodil.
BH: Jirka ma pravdu. Pocitani skore musi byt objektivni. Proto jsem vzorecek upravila tak, ze nebude pocitat shodu hrace vzhledem k rucni anotaci.
Output Data Needed
- score list ## player_id, pts, #sessions
- documents after the
n
-th session consist of2*n
players coreference annotation (some of them should be identical, the more identical the better); how to calculate an inter-player agreement? BH: v clanku, ktery budeme posilat na ACL, by mela byt seriozni uvaha o kvalite dat, ktera ziskame z her. Kvalita jde ruku v ruce s mezihracskou shodou a shodou mezi hracem a automatickou procedurou. Pavle, vzal by sis prosim tuto cast na starosti? Jiz jsem prochazela nejake prace a zatim mi z toho vychazi, ze je vhodne okomentovat:
(JM: Mluvil jsem kvůli měření mezianotátorské shody v anotování koreference se Zdeňkem a vyšlo z toho, že na měření shody na šipkách by použil prostě jen F-measure. Její smysl je jasný a je symetrická. Kappa je nevhodná kvůli tomu, že pravděpodobnost náhodné shody je poměrně nízká a těžko se určuje; kappa se hodí spíš pro klasifikační úlohy (proto ji použiju v Anjiině projektu na shodu v určování typu koreference, když už se shodli na šipce); ostatní (G-theory a Pearson correlation) neznám, jsem zvědav, co k tomu řekne Pavel.)
- kappa measure
- G-theory - see wiki, Petra Saskia Bayerl; Karsten Ingmar Paul Identifying Sources of Disagreement: Generalizability Theory in Manual Annotation Studies, Computational Linguistics, Volume 33, Number 1, March 2007.
- the Pearson correlation - see (Snow et al., 2008) Cheap and Fast - But is it Good? ...
- session
- player_A_id, player_B_id
- document(s)
- number of corrections by player_A and by player_B (JM: I do not see the point in this)
- corrections by player_A and by player_B (JM: and maybe nor in this) (BH: I am interested in the players' behaviour. Maybe the corrections will be total mess, but we have to see the data at least from the very first sessions. )
Design
- What info to be displayed in the session?
- session time = elapsed time + remaining time
- how many sentences my partner has read so far
- running pts ??????? (JM: I would be very cautious with this; the user might be tempted to cancel an action if the score decreases; the user might also try to fit the automatic annotation (by trying various arrows and watching if the score goes up or down), which is not what we want)
- Format of the text
- JM: nouns and pronouns might be displayed slightly differently so that the user avoids other parts of speech easily; he should not be allowed to use other parts of speech at all
- Visualization of the coreference pairs
- colors
- arrows (JM: to avoid too many arrows on the screen, possibly only if the mouse pointer hovers over a word, arrows that start or end at the word would be displayed)
- …
Tools needed
- tagger ## tool_chain (CAC2.0)
- Linh's coreference resolution procedure - see TectoMT - JM
- vyzkouset - trenink a test - na datech Anji
- conversion: csts ↔ pml m_coref scheme
Pro toho, kdo bude hru implementovat
ACL - IJCNLP2009
- Short papers, deadline: April 26, 2009. Predposledni verze clanku musi byt hotova do 12. dubna. Nasledne clanek posleme vybranym kolegum (Fred Jelinek, ….), aby meli na precteni a okomentovani tyden. Nam pak bude zbyvat tyden do terminu.
- pracovni adresar
/net/work/projects/playlang/doc/ACL-IJCNLP2009/