Blogipostitus on valminud Greteli Mittali ja Maria Kristina Andranikyana bakalaureusetöö „Keelemudelipõhine ajaleheartiklite eraldamine ja temaatiline analüüs“ põhjal.
Taust
Eesti Rahvusraamatukogu (RaRa) DIGAR-i Eesti artiklite portaal sisaldab praegu üle 758 000 väljaande numbri, 7,4 miljoni lehekülje ja ligi 23 miljoni artikli1. Materjalist moodustavad suure osa ajalehed, millest paljud on kättesaadavad ainult lehekülje tasandil: kogu lehekülje tekst on salvestatud ühe järjepideva tekstiblokina, kus üksikute artiklite vahel puuduvad selged piirid. See tähendab, et üks ajalehe lehekülg võib sisaldada kümneid eri teemasid käsitlevaid artikleid, kuid need kõik on liidetud üheks tekstiks.
Artiklite tuvastust nimetatakse segmenteerimiseks. RaRa-s toimub segmenteerimine automaatse tööriista abil, mille tulemusi kontrollivad ja parandavad RaRa segmenteerijad. Kui praegu kuulub digiteerimise töövoogu ka artiklite tuvastamine, siis digiteerimisprotsessi algusjärgul ajalehti ei segmenteeritud. TalTechi informaatikatudengite Greteli Mittali ja Maria Kristina Andranikyana bakalaureusetöö „Keelemudelipõhine ajaleheartiklite eraldamine ja temaatiline analüüs“ uurib, kas artiklite piiride tuvastamiseks lehekülje tekstist saaks kasutada keelemudelit.
Milles seisneb keerukus?
Lahenduse leidmise muudab keeruliseks kaks peamist asjaolu.
1. Digiteeritud materjali kvaliteet. Paljud vaid leheküljetasandil kättesaadavad ajalehed on digiteeritud üle kümne aasta tagasi, kui tekstituvastuseks (ka OCR ehk Optical Character Recognition) kasutati praeguseks vananenud tööriistu. Selle tõttu sisaldab tekst sageli tuvastusvigu, katkisi sõnu ja ebakorrapäraseid reavahetusi. Seega peab lahendus töötama „mürase“ tekstiga, mitte ainult puhta ja hästi struktureeritud sisendiga.
2. Lehekülje visuaalse info puudumine. Ajalehe teksti tuvastuse käigus läheb kaduma info pealkirja suuruse, veergude asukoha ja artiklitevaheliste eraldusjoonte kohta. Mudel peab artiklite algused tuvastama ainult teksti enda põhjal, omamata infot, milline leht välja nägi.
Tehniline lahendus
Lahendusena peenhäälestasime eestikeelse keelemudeli EstBERT (tartuNLP/EstBERT) binaarseks klassifikaatoriks. EstBERT on Tartu Ülikooli tartuNLP grupi poolt eesti keelel eeltreenitud BERT-arhitektuuriga mudel2.
BERT (Bidirectional Encoder Representations from Transformers) on eeltreenitud keelemudel, mille eripäraks on kahesuunaline kontekstianalüüs – mudel arvestab iga sõna tõlgendamisel nii eelnevat kui ka järgnevat teksti. See erineb varasematest mudelitest, mis lugesid teksti ainult vasakult paremale. Kahesuunalisus on artiklipiiri tuvastamisel oluline: selleks, et otsustada, kas lause alustab uut artiklit, on oluline teada nii seda, mis lauset eelneb, kui ka seda, mis järgneb.3
Mudeli ülesanne on sisuliselt lihtne: iga lause kohta tuleb otsustada, kas see alustab uut artiklit (silt 1) või jätkab eelmist (silt 0). Selleks kasutasime nn kolmikpõhist sisendit – mudelile antakse korraga kolm järjestikust lauset:
[eelnev lause] [SEP] [praegune lause] [SEP] [järgnev lause]
See on oluline, kuna üksik lause (eriti OCR-müraga tekstis) ei anna tihti piisavalt infot klassifitseerimisotsuse tegemiseks. Kontekstiaken enne ja pärast aitab mudelil paremini hinnata, kas lausete vahel toimub teemavahetus.
Andmestik ja treenimine
Treeningandmestiku koostamiseks kasutasime RaRa segmenteeritud ajalehti. Lõplik andmestik sisaldas 85 716 näidet.
Treenimisel kerkis esile oluline tehniline väljakutse: klasside tasakaalustamatus. Artikli algused moodustavad ajalehetekstis vaid umbes 6% kõigist lausetest, ülejäänud 94% on jätkulaused. Ilma täiendavate meetmeteta kipub mudel ennustama alati enamikklassi ja ei tuvasta ühtegi tegelikku artiklipiiri, saavutades seejuures näiliselt kõrge õigsuse.
Selle lahendamiseks kasutasime kaalutud kaotuse funktsiooni (weighted cross-entropy loss): vähemusklassile anti treenimise käigus suurem kaal, mistõttu saab mudel suurema karistuse, kui jätab mõne artikli alguse tuvastamata.
Mudeli hindamiseks kasutame F1-skoori, mis on täpsuse (kui paljud tuvastatud piirid olid tegelikult õiged) ja saagise (kui suur osa tegelikest piiridest tuvastati) harmooniline keskmine. Tasakaalustamata andmestike puhul annab F1-skoor oluliselt ausama pildi mudeli tegelikust toimivusest.
Mudel saavutas:
Demonstratsioon: kaks ajalehte, kaks ajastut
Mudeli praktiliseks demonstreerimiseks ja temaatiliseks analüüsiks kasutasime kahe ajalehe artikleid, mida treenimisse ei kaasatud:
Kaht väljaannet lahutab 33 aastat ning need esindavad erinevaid ühiskondlikke ja ajakirjanduslikke kontekste. Valik võimaldab seega hinnata, kuidas tuleb mudel toime materjaliga, mida ei ole varem näinud.
Segmenteerimine viidi läbi liugakna meetodiga (sliding window method): mudel liigub üle lausete ja ennustab iga lause kohta artiklipiiri tõenäosuse. Kui tõenäosus ületab määratud läve, märgitakse see koht artikli alguseks.
Segmenteerimise tulemused
| Näitaja | Päevaleht 1991 | Pärnu Kommunist 1958 |
|---|---|---|
| Lehekülgi | 52 | 26 |
| Lauseid pärast eeltöötlust | 34 777 | 12 272 |
| RaRa segmenteeritud artikleid | 2870 | 824 |
| Mudeli tuvastatud artikleid | 2943 | 733 |
| Erinevus | +73 | -91 |
78 lehekülge töödeldi umbes poole tunniga. Päevalehe puhul kaldub mudel pigem ülesegmenteerima (liiga palju piire), Pärnu Kommunisti puhul aga alasegmenteerima. Viimane võib olla tingitud 1958. aasta materjali kõrgemast OCR-müra tasemest ning vanemast kirjaviisist, millega mudel ei oska arvestada.
| Seadistus | Lävi | Täpsus | Saagis | F1-skoor | Õigsus |
|---|---|---|---|---|---|
| Vaikelävi | 0,50 | 0,743 | 0,736 | 0,739 | 0,962 |
| Optimeeritud lävi | 0,05 | 0,712 | 0,764 | 0,737 | 0,960 |
Mudel tuvastas õigesti 2584 artiklipiiri 3384-st ehk ligi 76% kõigist tegelikest piiridest.
Artiklite pikkuste jaotus
Artiklite pikkuste jaotus peegeldab kahe ajalehe erinevat toimetuslikku formaati.
| Pikkus (ridu) | Päevaleht 1991 | Pärnu Kommunist 1958 |
|---|---|---|
| 1 rida | 280 (9,5%) | 48 (6,5%) |
| 2–5 rida | 1172 (39,8%) | 179 (24,4%) |
| 6–15 rida | 826 (28,1%) | 238 (32,5%) |
| 16–30 rida | 366 (12,4%) | 143 (19,5%) |
| 30+ rida | 299 (10,2%) | 125 (17,1%) |
Päevalehes on selgelt lühiuudised: ligi 50% segmentidest on kuni 5-realised. See vastab 1991. aasta Päevalehe formaadile, kus esikülg ja siseküljed koosnesid sageli paljudest lühikestest uudistest – Eesti taasiseseisvumise järgne periood oli sündmusterohke ja iga uudis vajas oma rida.
Pärnu Kommunisti jaotus on ühtlasem. Pikematel artiklitel (16+ rida) on märkimisväärselt suurem osakaal (36,6% vs. 22,6%), mis peegeldab nõukogudeaegse kohaliku lehe žanrilist traditsiooni – tootmisaruanded, sotsialistliku võistluse kokkuvõtted ja pikemad propagandalood nõudsid rohkem ruumi.
Sagedasemad märksõnad
Artiklite sisulise analüüsi aluseks võtsime sõnasageduste loendid mudeli segmenteeritud tekstist, kust eemaldati levinumad funktsioonisõnad (et, on, ja jms). Tabel näitab kümmet sagedaseimat sisukat märksõna mõlemas ajalehes.
| Järk | Märksõna (Päevaleht 1991) | Sagedus (Päevaleht 1991) | Märksõna (Pärnu Kommunist 1958) | Sagedus (Pärnu Kommunist 1958) |
|---|---|---|---|---|
| 1 | eesti | 4078 | pärnu | 1327 |
| 2 | liidu | 1257 | linna | 373 |
| 3 | vabariigi | 1024 | kolhoosi | 233 |
| 4 | soome | 874 | pärnus | 202 |
| 5 | euroopa | 771 | tööd | 189 |
| 6 | ülemnõukogu | 674 | eesti | 188 |
| 7 | tallinna | 583 | nõukogude | 174 |
| 8 | balti | 519 | noorte | 164 |
| 9 | saksamaa | 516 | noored | 159 |
| 10 | riigi | 471 | partei | 154 |
Erinevus märksõnades on selgelt näha. 1991. aasta Päevalehe sõnavara on rahvusvaheline ja poliitiliselt laetud: domineerivad Eesti riikluse, Nõukogude Liidu lagunemise ja Euroopa integratsiooni mõisted. Soome kõrge esinemissagedus (874) peegeldab Soome olulist rolli Eesti naabrina sel ajastul. Balti, Saksamaa ja Euroopa viitavad laiale rahvusvahelisele tähelepanule, mida Eesti taasiseseisvumine pälvis.
1958. aasta Pärnu Kommunisti levinumad märksõnad näitavad hoopis teistsugust maailma: teemakäsitlus on kohalik ja majanduslik. Esikohal on Pärnu kui piirkonnakeskus, kolhoosielu ja noorsoo kasvatamine. Märksõnad „partei“ ja „nõukogude“ kinnitavad nõukogudeaegset ideoloogilist konteksti.
Temaatiline jaotus
Artiklite temaatiliseks kategoriseerimiseks kasutasime sõnapõhist klassifitseerimist, kus igale segmendile omistati juhtiv teema vastavalt levinumate sisusõnade esinemisele. Tegemist on illustratiivse analüüsiga, mille eesmärk on näidata, millist tüüpi sisuülevaadet mudeli segmenteerimise tulemusel saab kiirelt konstrueerida.
| Teema | Päevaleht 1991 | Pärnu Kommunist 1958 |
|---|---|---|
| Välispoliitika / rahvusvaheline | 42,8% | 8,9% |
| Eesti iseseisvus / sisepoliitika | 28,8% | 22,4%* |
| Nõukogude Liit / Venemaa | 2,7% | 1,9% |
| Majandus / tööstus | 2,7% | 24,3% |
| Põllumajandus / kalastus | 1,0% | 10,8% |
| Kultuur / haridus / sport | 2,1% | 8,5% |
| Sotsialism / tootmisvõistlus | 2,7% | 3,8% |
| Sõda / relvastuskonflikt | 1,9% | 0,8% |
| Kohalik elu | 3,3% | 7,1% |
| Kategoriseerimata | 12,1% | 11,6% |
1991. aasta Päevaleht peegeldab selgesti Eesti ajaloo murdepunkti. Üle 71% artiklitest käsitleb kas rahvusvahelist poliitikat või Eesti enda sisepoliitikat. 1991. aasta sügis oli aeg, mil lehekülgi täitsid Nõukogude Liidu riigipöördekatse järelkajad, Balti riikide rahvusvaheline tunnustamine ja Jugoslaavia sõja esimesed kajastused. See seletab ka lühiuudiste rohkust pikkuse tabelis – ühel küljel kajastati korraga mitut rahvusvahelist sündmust.
1958. aasta Pärnu Kommunist esindab klassikalist nõukogudeaegse kohaliku lehe mudelit. Üle 35% artiklitest käsitleb tootmist ja põllumajandust. Eriti silmatorkav on kalanduse osakaal (10,8%) – Pärnu roll kalatööstuspiirkonnana peegeldub selgelt andmestikus, kus leidub mahukaid artikleid Pärnu Kalakonservikombinaadi ja kalurikolhooside kohta. Sotsialistliku tootmisvõistluse rubriik, kus kolhoosid ja vabrikud teatavad plaani täitmisest, moodustab omaette žanri.
Kokkuvõte
Käesolev töö näitab, et avatud lähtekoodiga keelemudelil põhinev lahendus suudab tuvastada artiklite piire tekstituvastuse müraga digiteeritud ajalehetekstis, kasutades üksnes tekstilist konteksti. Peenhäälestatud EstBERT-põhine klassifikaator saavutas välisel testandmestikul F1-skoori 0,74, sealhulgas tuvastades artiklipiire kahest erinevast ajaperioodist pärit ajalehtedest.
Demonstratsioon näitas ka seda, milline analüütiline potentsiaal peitub segmenteeritud tekstis. Kahe ajalooliselt erineva ajalehe (1991. aasta Päevaleht ja 1958. aasta Pärnu Kommunist) artiklite pikkused, enim esinevad märksõnad ja temaatiline jaotus annavad kiire ning täpse ülevaate kahe ajastu ajakirjanduslikest prioriteetidest, ilma et uurija peaks läbi lugema tuhandeid artikleid.
Treenitud mudel on avalikult kättesaadav Hugging Face’i platvormil ning töö lähtekood on avaldatud GitHubis. Mudeli ja selle kirjeldusega saab tutvuda RaRa digilaboris.
Kasutatud allikad
1. Eesti Rahvusraamatukogu. DIGAR – Eesti Rahvusraamatukogu digiarhiiv. https://dea.digar.ee
2. Tanvir, H. jt (2021). EstBERT: A Pretrained Language-Specific BERT for Estonian. Proceedings of the 23rd Nordic Conference on Computational Linguistics (NoDaLiDa), lk 11–19. https://aclanthology.org/2021.nodalida-main.2
3. Devlin, J. jt (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. CoRR abs/1810.04805. https://arxiv.org/abs/1810.04805
4. Eesti Entsüklopeedia. Päevaleht (1990–1995). 12. köide, 2011. https://etbl.teatriliit.ee/artikkel/p%C3%A4evaleht_(1990%E2%80%931995)
5. Pärnu Postimees. Kuidas hakkas ilmuma Pärnu Kommunist. https://parnu.postimees.ee/271386/kuidas-hakkas-ilmuma-parnu-kommunist
Eesti Rahvusraamatukogu
Tõnismägi 2, 10122 Tallinn
+372 630 7100
info@rara.ee
rara.ee