Automatikus névfelismertetés szépirodalmi szövegkorpuszokon

Cél

A PIM-ben jelenleg elérhető és a jövőben feldolgozni tervezetthez hasonló szövegek esetében megvizsgáljuk annak a lehetőségét, hogyan tudjuk a nevek felismertetését automatikus eszközökkel megtámogatni. 

Források

Ehhez a különféle műfajokat reprezentáló tesztkorpuszt kell összeállítanunk. 
A szövegekben kézzel kell bejelölni a neveket. Ennek a munkának a haladási tempója kb. 10.000 token/nap. Érdemes minden szöveget két annotátorral annotáltatni, és közöttük egyetértést számolni, amit 100% felé érdemes közelíteni.

 

  • DIA szövegek közül: minden műfajból (kivéve rajz és bibliográfia) 3000 token = összesen 33.000 token

    • fiktív

      • dráma

      • próza

      • regény

      • vers

    • nem fiktív

      • életrajz

      • esszé

      • interjú

      • levél

      • napló

      • riport

      • szociográfia

  • Móricz levelezés: 3.000 token

  • MEK: két olyan műfajból, ami a DIA-ban is van, 3-3.000 token = összesen 6.000 token

Konkrét forrásokat lásd a csatolmányok alatt. 

A válogatás szempontjai

A DIA-ban lekérdezhető 13 műfaj közül a rajzot és a bibliográfiát kihagytam. A maradék 11 műfajhoz műfajonként kb. 3000 tokennyi szöveget gyűjtöttem. A műfajokat fiktív és nem fiktív csoportokra osztottam.

A válogatás szempontjai voltak:

  • Egy szerzőtől lehetőség szerint csak egy mű legyen. Ez néha kettő lett, de ilyen esetekben az egyes műfajokhoz kevés szöveget választottam egy szerzőtől. 

  • Minden műfajhoz legalább kettő forrás legyen. 

  • Legyen a választott művek között magyarul született és fordítás is. 

  • Nem teljes műveket válogattam, hanem nagyobb művek kisebb részeit. Mindig saját címmel ellátott, lekerekített, önmagában is megálló részleteket választottam, nem  random módon egy mű közepéből. A részletek saját címét jelöltem a 'Szerző: mű' oszlopban. 

  • A választott szövegek mind a 20. századból származnak.

 

A MEK-ből olyan műfajú szövegeket válogattam, amely műfajok a DIA-nál is szerepeltek. Egy fiktív és egy nem fiktív műfajt választottam. Ugyanúgy műfajonként kb. 3000 tokennyi szöveget gyűjtöttem. Az összetett keresésben a 'Dokumentumtípus' keresőmezőbe írtam be, hogy 'riport', illetve 'regény'. 

A válogatás szempontjai ugyanazok voltak, mint a DIA esetében, plusz:

  • A választott mű legyen elérhető valamilyen szöveges formátumban (rtf). 

Feldolgozás

  • az xml-ből kinyerni a sima szöveget → UTF-8 sima szöveg

  • végigzavarni az emtsv-n: tok, mor, pos, ner, bert-ner

  • leelemeztetni a huspacy-val is

Kézi annotálás

  • WebAnno

  • az annotálás során a tag-for-tagging elvet lenne jó követni, mert

    • a névfelismerés elsődleges célja az entitásazonosítás, vagyis hogy a szövegekben előforduló entitásokat egy névtér szereplőivel azonosítsák, vagyis névtér ID-kat rendeljenek hozzájuk;

    • a Móricz-levelekben szereplő névjelölés már így van

  • az annotálás során a tag-for-meaning elvet lenne jó követni, mert 

    • a névfelismerő rendszerek olyan korpuszokon lettek tanítva, amelyek ezt követik, vagyis mindig hibaként fog kijönni a kiértékelésnél, ami nem igazán az;

    • a névfelismerő rendszerek ilyen korpuszokon lesznek tanítva a későbbiekben is, vagyis érdemes erre felkészülni

  • mivel mindkét elv jó lenne, ezért igyekszünk ötvözni a kéttőt, és legalább a gyakori típusoknál mindkettőt jelölni olyan címkékkel, amelyek jelzik ezt a jelenséget, és mindkét irányba könnyen átalakíthatók, pl. ORG:LOC

  • csak akkor jelöljük a metonimikusságot, ha a tárgyalási univerzumban marad a teljes referenciaátvitel

  • minden szöveget két annotátornak adunk ki

  • annotátorok közötti egyetértést számolunk → a kérdéses eseteket megbeszéljük, javítjuk

  • fixáljuk a gold standardet

Kiértékelés

  • a gold standardhoz hasonlítjuk az egyes taggerek kimenetét → kiértékelés

  • BIE1-re konvertálok mindent, abban értékelek ki

  • a tag-for-meaning miatti címkéket át kell alakítani 

  • kiértékelni: bert-ner (embert), bert-ner (hubert), ner, huspacy 

  • eredmények: a PIM NER eval google spreadsheetben

  • egyéb kiértékelés: az eleve névtageket tartalmazó szövegek esetében a táblázat egy újabb oszlopába átvezetni az x(ht)ml fájlokban jelölt névelemeket → összehasonlítani