# Lõputöö analüsaator

# Tekstianalüüsi tulemused

Lausete arv: 414 - Sõnade arv: 4982

Analüüsiks kulunud aeg: 34.79 sekundit

Uus analüüs

##### Tekstis ei leidu mina- või meie-vormi.

##### Analüüs ei tuvastanud ühtegi pikka lauset.

##### Analüüs ei tuvastanud üheski lauses puuduvat koma.

Poolt-tarind on võõrapärane vorm, mis jätab lauses tegija tagaplaanile.

##### Analüüs ei tuvastanud ühtegi poolt-tarindit.

Öeldistäiteks olev v- või tav- kesksõna võib mõjuda bürokraatlikult.

##### Analüüs ei tuvastanud ühtegi olema-kesksõna rikkumist.

Märgib omaduste või seisundite juhuslikkust, ajutist iseloomu.
Parem on kasutada kindlamat kõneviisi.

##### Analüüs ei tuvastanud ühtegi määrust saavas käändes.

Mine-vormi kasutus koos tühiverbiga.

##### Analüüs ei tuvastanud ühtegi nominalisatsiooni mine-vormis.

lausepikkus 10x | Analüsaatorid 16 5.1 Tsitaadi- ja viitetuvastaja 16 5.2 Umbisikulise tegumoe kontroll 16 5.3 Korduvate sõnade kontroll 19 5.4 Lausepikkuse ja -keerulisuse kontroll 24 5.5 Kantseliidi kontroll 27 5.6 Puuduvate komade kontroll 27 6. Kasutaja näeb kokkupandavate lahtritena nelja põhilist analüüsi: umbisikulise tegumoe, lausepikkuse , kantseliidi ja sõnakorduste kontrolli. Korduvate sõnade analüsaatori tulemus 5.4 Lausepikkuse ja -keerulisuse kontroll Eesti Keele Instituudi (EKI) definitsiooni järgi jaguneb lause moodustajateks ehk vahetervikuteks ning seejärel üksiksõnadeks. Lõputöö analüsaatoris kontrollib lausepikkust moodul sentences_analyzer. Kuna loetelust ei ole üldiselt lugejal keeruline aru saada, ei tohiks ka lausepikkuse ja -keerulisuse analüsaator seda keerulise lausena välja tuua. Lisareegli tõttu võetakse eelneva lause puhul lausepikkuse ja -keerulisuse analüüsis arvesse vaid ühte osalauset (Eelmise sajandi kuulsaimad kirjanikud on Charles Dickens, Virginia Woolf, James Joyce, F. Scott Fitzgerald ja Arthur C. Clarke), milles leidub verbiahel on. Lausepikkuse ja -keerulisuse analüsaatori eesmärk on aidata tuvastada lauseid, mis võivad raskesti arusaadavad olla. Seetõttu on lausepikkuse ja -keerulisuse analüsaator teksti autorile siiski kõigest abivahend. Lausepikkuse ja -keerulisuse analüsaatori algoritm 5.5 Kantseliidi kontroll Lõputöö analüsaator kontrollib sisendtekstis ka kantseliiti.
veebiliides 17x | Programmi ülevaade 10 4.1 API 10 4.2 Veebiliides 10 4.3 Tulemuste salvestamine 12 4.4 Jõudlus 12 4.5 EstNLTK 13 4.6 Flask 15 5. Edasiarendamise võimalused 29 7.1 Sisendteksti formaadi muutmine 29 7.2 Teistele keeltele laiendamine 30 7.3 Veebiliidese kasutajamugavus 30 7.4 Skaleeruvus 30 7.5 Kasutaja eelistuste salvestamine 31 Viited 34 1. Selleks, et lõputööde analüsaator oleks lihtsasti kättesaadav kirjutajatele, kes pole CGLearn õpikeskkonda registreeritud, loodi programmi jaoks ka veebiliides . Veebiliidesest tuleb rohkem juttu peatükis ,,Programmi ülevaade”. 4.2 Veebiliides Lõputöö analüsaatoril on veebiliides (joonis 2), mida saab kasutada koheseks tekstianalüüsiks. Kõik veebiliidese kaudu tehtud päringud salvestatakse andmebaasi. Lõputöö analüsaatori veebiliides Joonis 3. Analüüsi tulemuse vaade 4.3 Tulemuste salvestamine Selleks, et jälgida veebiliidese kasutust ja analüüsida programmi tulemusi, on võimalik salvestada kõik veebiliidese kaudu tehtud analüüsid andmebaasi. Võttes näiteks selle sama peatüki pealkirja ja esimese lause: kui kasutaja kopeerib terve lõputöö teksti veebiliidesesse , siis kuna vaadeldava peatüki nime lõpus pole punkti, tuvastab EstNLTK tekstilõigu „5. 7.3 Veebiliidese kasutajamugavus Praeguses veebiliideses saab kasutaja sisestada oma teksti ainult kopeerides. Üks variant, kuidas protsessi lihtsustada, oleks lisada veebiliidesele võimalus laadida üles oma lõputöö teksti fail. Kuna backend on niikuinii eraldiseisev API, saab veebiliidese teenust serveerida eraldi serveril. Niiviisi ei pea üks server tegelema kahe asjaga, nii veebiliidese kui analüüsiga.
teadustekst 10x | Teadustekst 7 3. Seda kirjutades on oluline kasutada korrektset ja akadeemilist keelekasutust ning -stiili, mis on omane teadustekstile . Tudengil on aga teadusteksti norme ja tavasid tihtipeale raske järgida, kuna selle kirjutamisega on üldiselt vähe kogemusi. Teadustekst Olgugi, et pole olemas ametlikku tekstiliikide jaotust, saab sellegipoolest tänapäeval jaotada keelekasutust argikeeleks, ilukirjanduslikuks keeleks ja tarbekeeleks, millest viimast on võimalik omakorda jaotada ajakirjanduslikuks keeleks, ametikeeleks ja teaduskeeleks [3]. Üks levinumaid ekslikke arusaamasid on see, et teadustekst peab olema keeruline, ent tegelikkuses peaks see olema selgesti arusaadav ja sujuvalt loetav ilma, et see muutuks liiga primitiivseks [5]. Mitmete teadustekstide autorid nagu näiteks Sirkka Hirsjärvi, Pirkko Remes ja Paula Sajavaara väidavad, et teadusteksti autor peab enda isikut tagaplaanil hoidma [11]. Kuna tasakaalus korpus on segu ajakirjandus-, ilukirjandus- ja teaduskirjanduskorpuse lemmadest ja nende sagedustest, ei andnud see teadusteksti analüüsi puhul siiski kõige paremaid tulemusi. Seejärel leitakse sõna tegelik sagedushinnang teadustekstide korpusest.
lõputöö 55x | Tartu Ülikool Arvutiteaduse instituut Informaatika õppekava Karl Erik Karindi Lõputöö teksti analüsaator Bakalaureusetöö (9 EAP) Juhendaja: Raimond-Hendrik Tunnel, MSc Tartu 2020 Lõputöö teksti analüsaator Lühikokkuvõte: Bakalaureusetöö on lõputööde automaatne analüüs ja tagasisidestamine. Lõputöö kirjutamise protsessi käigus tekib kirjutades nii stiili- kui ka grammatikavigu, mille parandamisele kulub palju aega ja energiat. Veelgi probleemsem on olukord, kus vead jäävad märkamata ja lõputöö kvaliteet seepärast kannatab. Seetõttu luuaksegi lõputööna programm, mis keeletehnoloogilisi lahendusi kasutades tuvastab vead ja annab soovitusi, kuidas neid parandada. Lõputöö analüüsijast peaks kasu saama tudengid ja juhendajad nii töö kirjutamise käigus kui ka lõpliku töö ülevaatusel. Sissejuhatus Igal aastal lõpetab Tartu Ülikooli üle 2000 tudengi, kellest igaüks peab lõpetamiseks kirjutama lõputöö [1]. Lõputöö on demonstratsioon teadmistest ja oskustest, mida tudeng on oma õpingute vältel omandanud. Lisaks kasutati ja arendati olemasolevaid lahendusi, mis olid leitud kas internetist või varasematest lõputöödest . Programm aitab järgida head lõputööle omast keelekasutust, -stiili ja -nõudeid. Töö idee tuli veebipõhise õpikeskkonna CGLearn lõputööde moodulist [CG0]. Lõputööde moodul võimaldab aga lõputöö kirjutajaid efektiivsemalt juhendada [CG1]. Näiteks saab moodulis nii juhendaja kui ka juhendatav lihtsasti jälgida lõputöö kirjutamise protsessi. Juhendatav saab ka logida lõputööle kulutatud aega ja jälgida graafikust kinni pidamist. CGLearni registreeritud tudengid saavad iga nädala alguses raporti oma lõputöö kirjalikust osast. Enne lõputöö analüsaatori loomist analüüsis veebirakendus ainult ingliskeelsete lõputööde tekstikeerukust. Igal nädalal esitab CGLearni õpikeskkond lõputööde analüsaatori programmi API-le päringu, mille vastusest saab tekstianalüüside tulemused kätte. Seejärel lisatakse tulemused raportisse, kust juhendatavad saavad näha automaatset tagasisidet oma lõputööde tekstidele. Selleks, et lõputööde analüsaator oleks lihtsasti kättesaadav kirjutajatele, kes pole CGLearn õpikeskkonda registreeritud, loodi programmi jaoks ka veebiliides. Lõputöö viimases faasis uuriti, kas loodud analüüsid olid eestikeelsete lõputööde kirjutamisel tudengite jaoks kasulikud. Alternatiivid Eesti- ning ingliskeelsete tekstide puhul pole olemas programmi, mille põhieesmärgiks on lõputööde ehk akadeemilise teksti automaatne analüüs ja tagasisidestamine. Programmi ülevaade 4.1 API Lõputöö analüsaatori jaoks loodi lahtise API-ga mikroteenus, millele esitab päringu veebipõhine õpikeskkond CGLearn. 4.2 Veebiliides Lõputöö analüsaatoril on veebiliides (joonis 2), mida saab kasutada koheseks tekstianalüüsiks. Kasutaja peab vaid kopeerima oma lõputöö teksti vastavasse tekstilahtrisse ning seejärel vajutama nupule „Analüüsi“. Lõputöö analüsaatori veebiliides Joonis 3. Antud lõputöös olid suurima vaatluse all osalausestamise, sõnestamise, morfoloogilise analüüsi ja lausestamise funktsionaalsused. Käesolevas lõputöös otsustati kasutada EstNLTK versiooni 1.6. morph_analysis kiht oli lõputöös korduvalt kasutatud sõnade analüüsi puhul võtmetähtsusega. Lõputöös otsustati rakenduse backendi puhul Flaski kasuks, kuna selle kohta on palju dokumentatsiooni ning sellega on lihtne ja kiire luua REST arhitektuuril põhinevat arendusserverit. Erinevates instituutides võib lõputöö kirjutamisnõuetes tegumoe nõue varieeruda, aga arvutiteaduse instituudis on soovituslik kasutada mina-vormi asemel umbisikulist tegumoodi. Lõputöö analüsaatori programmis loodi umbisikulisuse kontrollimiseks Pythoni moodul impersonality_analyzer, mis analüüsib ja otsustab, kas lõputöö on täielikult umbisikulises tegumoes kirjutatud. On aga võimalik, et kuigi sisendteksti autor ei kasutanud lõputöös mina- või meie-vormi töö sisupeatükkides, siis sellegipoolest leidub mina-vorm kas tsitaadis, mõistes või väljaspool sisupeatükke (nt Kokkuvõtte peatükis). <> Lõputöö analüsaatoris loodi moodul overused_word_analyzer, mis toob välja ülekasutatud ehk liiga palju korduvad sõnad. Lõputöös loodud ülekasutatud sõnade analüsaator on see-eest kirjutatud Pythonis ja analüüsib hetkel vaid eesti keelt. Võrreldes programmiga Synonymy, on tehtud ka lisaks edasiarendusi ja kohandusi vastavalt lõputööde analüsaatori API vajadustele. Lõputöös kasutatakse Eesti Keeleressursside Keskuse (EKK) koostatud teaduskirjanduskorpuse lemmade sagedusloendit [531]. Näiteks oli ühes testimiseks kasutatud lõputöös mainitud ainet „Programmeerimise alused“ 31 korda, mistõttu märgiti ka lemma „programmeerimine“ ülekasutatuks. Lõputöö analüsaatoris kontrollib lausepikkust moodul sentences_analyzer. Lausepikkuse ja -keerulisuse analüsaatori algoritm 5.5 Kantseliidi kontroll Lõputöö analüsaator kontrollib sisendtekstis ka kantseliiti. Kantseliidi kontrollid on suuresti võetud üle Kaarel Sõrmuse 2017. aasta bakalaureusekraadi lõputööst „Kantseliidi- ja paronüümituvastaja“ [551]. Võttes näiteks selle sama peatüki pealkirja ja esimese lause: kui kasutaja kopeerib terve lõputöö teksti veebiliidesesse, siis kuna vaadeldava peatüki nime lõpus pole punkti, tuvastab EstNLTK tekstilõigu „5. Näiteks salvestati idee katsetamiseks Microsoft Word-is lõputöö tekst . Seetõttu otsustati, et lõputöö analüsaator võtab sisendiks siiski puhtal kujul teksti. See tähendab, et kasutaja peab võtma lahti oma lõputöö tekstifaili ja seejärel kopeerima liidesesse oma teksti. Üks variant, kuidas protsessi lihtsustada, oleks lisada veebiliidesele võimalus laadida üles oma lõputöö teksti fail. 7.4 Skaleeruvus Lõputöö analüsaator jookseb Ubuntu 18.04 serveril, millel on 4 tuuma ja 4 GB vahemälu. Näiteks võib tuua olukorra, kus kasutaja proovib lõputööde analüsaatorit teist korda. Näiteks CGLearn saadab iganädalaselt raporti koos lõputöö analüsaatori tulemustega. Kui lõputöö kirjutaja ei soovi valepositiivset lauset muuta, oleks kasulik, kui ta saaks märkida lauset sobivaks.
| Tartu Ülikool Arvutiteaduse instituut Informaatika õppekava Karl Erik Karindi Lõputöö teksti analüsaator Bakalaureusetöö (9 EAP) Juhendaja: Raimond-Hendrik Tunnel, MSc Tartu 2020 Lõputöö teksti analüsaator Lühikokkuvõte: Bakalaureusetöö on lõputööde automaatne analüüs ja tagasisidestamine. Lõputöö kirjutamise protsessi käigus tekib kirjutades nii stiili- kui ka grammatikavigu, mille parandamisele kulub palju aega ja energiat. Veelgi probleemsem on olukord, kus vead jäävad märkamata ja lõputöö kvaliteet seepärast kannatab. Seetõttu luuaksegi lõputööna programm, mis keeletehnoloogilisi lahendusi kasutades tuvastab vead ja annab soovitusi, kuidas neid parandada. Lõputöö analüüsijast peaks kasu saama tudengid ja juhendajad nii töö kirjutamise käigus kui ka lõpliku töö ülevaatusel.
| Töö idee tuli veebipõhise õpikeskkonna CGLearn lõputööde moodulist [CG0]. [...] Lõputööde moodul võimaldab aga lõputöö kirjutajaid efektiivsemalt juhendada [CG1]. Näiteks saab moodulis nii juhendaja kui ka juhendatav lihtsasti jälgida lõputöö kirjutamise protsessi. [...] Juhendatav saab ka logida lõputööle kulutatud aega ja jälgida graafikust kinni pidamist. [...] CGLearni registreeritud tudengid saavad iga nädala alguses raporti oma lõputöö kirjalikust osast. Enne lõputöö analüsaatori loomist analüüsis veebirakendus ainult ingliskeelsete lõputööde tekstikeerukust
lemma 23x | Selleks, et üleskasutatud sõnade analüüsi teostada, on vaja andmestikku lemmadest ja nende esinemissagedustestest tekstides. Lõputöös kasutatakse Eesti Keeleressursside Keskuse (EKK) koostatud teaduskirjanduskorpuse lemmade sagedusloendit [531]. Kuni töö katsetamisfaasi viimase iteratsioonini kasutati EKK tasakaalus korpuse lemmade sagedusloendit [532]. Kuna tasakaalus korpus on segu ajakirjandus-, ilukirjandus- ja teaduskirjanduskorpuse lemmadest ja nende sagedustest, ei andnud see teadusteksti analüüsi puhul siiski kõige paremaid tulemusi. Seetõttu valiti andmeteks siiski teaduskirjanduskorpuse lemmad ja nende esinemissagedused tekstides. Vaadates morfoloogilise analüüsikihi tulemusi, leitakse sõnade lemmad . Luuakse sõnastik, kus võtmeteks on lemmad ning väärtusteks kõik sõnad (koos indeksitega), mis sellele lemmale tekstis vastavad. Lemmade sõnastikust eemaldatakse lemmad , mis on kas stoppsõnad või esinevad tekstis vähem kui 7 korda. Iga lemma puhul kasutatakse valemit, et leida selle tekstisisene sagedushinnang. Tuvastatakse ülekasutatud sõnad sedakaudu, et võrreldakse lemma sagedushinnangut ja selle tegelikku sagedust tekstis. Kui tulemus on suurem kui 5 ehk tekstisiseselt on kasutatud lemmat 5 korda rohkem kui oodatud, märgitakse lemma ülekasutatuks. Ülekasutatud lemmad sorteeritakse sagedushinnangu järgi kahanevalt. See tähendab, et esimene lemma on tekstis kõige rohkem ülekasutatud. Infoliigsuse vältimiseks jäetakse järele ainult 8 ülekasutatud lemmat . Iga ülekasutatud lemmaga kaasneb ka info sõnade ja nende positsioonide (indeksite) kohta, mis sellele lemmale vastavad. Lauseklastriteks peetakse tekstiosasid, kus ühise lemmaga sõnad ei ole üksteisest kaugemal kui 300 karakterit. Seetõttu, kui üks lemma sisaldub enam kui 20 lauses, näidatakse kasutajale ainult esimest 20 lauset, milles sõna sisaldub. Näiteks oli ühes testimiseks kasutatud lõputöös mainitud ainet „Programmeerimise alused“ 31 korda, mistõttu märgiti ka lemma „programmeerimine“ ülekasutatuks.
| Selleks, et üleskasutatud sõnade analüüsi teostada, on vaja andmestikku lemmadest ja nende esinemissagedustestest tekstides. [...] Lõputöös kasutatakse Eesti Keeleressursside Keskuse (EKK) koostatud teaduskirjanduskorpuse lemmade sagedusloendit [531]. Kuni töö katsetamisfaasi viimase iteratsioonini kasutati EKK tasakaalus korpuse lemmade sagedusloendit [532]. Kuna tasakaalus korpus on segu ajakirjandus-, ilukirjandus- ja teaduskirjanduskorpuse lemmadest ja nende sagedustest, ei andnud see teadusteksti analüüsi puhul siiski kõige paremaid tulemusi. Seetõttu valiti andmeteks siiski teaduskirjanduskorpuse lemmad ja nende esinemissagedused tekstides
| Vaadates morfoloogilise analüüsikihi tulemusi, leitakse sõnade lemmad . Luuakse sõnastik, kus võtmeteks on lemmad ning väärtusteks kõik sõnad (koos indeksitega), mis sellele lemmale tekstis vastavad. [...] Lemmade sõnastikust eemaldatakse lemmad , mis on kas stoppsõnad või esinevad tekstis vähem kui 7 korda. [...] Iga lemma puhul kasutatakse valemit, et leida selle tekstisisene sagedushinnang. [...] Tuvastatakse ülekasutatud sõnad sedakaudu, et võrreldakse lemma sagedushinnangut ja selle tegelikku sagedust tekstis. [...] Kui tulemus on suurem kui 5 ehk tekstisiseselt on kasutatud lemmat 5 korda rohkem kui oodatud, märgitakse lemma ülekasutatuks. [...] Ülekasutatud lemmad sorteeritakse sagedushinnangu järgi kahanevalt. See tähendab, et esimene lemma on tekstis kõige rohkem ülekasutatud. Infoliigsuse vältimiseks jäetakse järele ainult 8 ülekasutatud lemmat . [...] Iga ülekasutatud lemmaga kaasneb ka info sõnade ja nende positsioonide (indeksite) kohta, mis sellele lemmale vastavad
sisendtekst 9x | Edasiarendamise võimalused 29 7.1 Sisendteksti formaadi muutmine 29 7.2 Teistele keeltele laiendamine 30 7.3 Veebiliidese kasutajamugavus 30 7.4 Skaleeruvus 30 7.5 Kasutaja eelistuste salvestamine 31 Viited 34 1. Originaalsest sisendtekstist luuakse Text objekt, millele saab erinevaid analüüsikihte lisada. On aga võimalik, et kuigi sisendteksti autor ei kasutanud lõputöös mina- või meie-vormi töö sisupeatükkides, siis sellegipoolest leidub mina-vorm kas tsitaadis, mõistes või väljaspool sisupeatükke (nt Kokkuvõtte peatükis). Nimelt ei suuda analüsaator sisendteksti puhul eristada, kas tekst on kaldkirjas või mitte. Iga sõna puhul, mis sisendtekstis esineb, arvutatakse selle sõna tekstisisene sagedushinnang. Tulemusena saab võrrelda, kas sõna esineb sisendtekstis rohkem kui on tavaliselt teadustekstides oodatud. Lausepikkuse ja -keerulisuse analüsaatori algoritm 5.5 Kantseliidi kontroll Lõputöö analüsaator kontrollib sisendtekstis ka kantseliiti. Edasiarendamise võimalused 7.1 Sisendteksti formaadi muutmine Programm võtab sisendiks JSON kujul infot.
tegumood 12x | Analüsaatorid 16 5.1 Tsitaadi- ja viitetuvastaja 16 5.2 Umbisikulise tegumoe kontroll 16 5.3 Korduvate sõnade kontroll 19 5.4 Lausepikkuse ja -keerulisuse kontroll 24 5.5 Kantseliidi kontroll 27 5.6 Puuduvate komade kontroll 27 6. Kasutaja näeb kokkupandavate lahtritena nelja põhilist analüüsi: umbisikulise tegumoe , lausepikkuse, kantseliidi ja sõnakorduste kontrolli. QuoteAnalyzer ja CitationAnalyzer 5.2 Umbisikulise tegumoe kontroll Teadustekst peaks üldise arusaama järgi olema objektiivne ja neutraalne nii keeleliselt kui ka sisult [10]. Eesti keeles on nii isikuline kui umbisikuline tegumood , millest viimast kasutatakse selleks, et kirjutaja isikut kõige paremini tagaplaanile jätta [10]. Erinevates instituutides võib lõputöö kirjutamisnõuetes tegumoe nõue varieeruda, aga arvutiteaduse instituudis on soovituslik kasutada mina-vormi asemel umbisikulist tegumoodi . Lõputöö analüsaatori programmis loodi umbisikulisuse kontrollimiseks Pythoni moodul impersonality_analyzer, mis analüüsib ja otsustab, kas lõputöö on täielikult umbisikulises tegumoes kirjutatud. Umbisikulisuse analüüs tagastab lõpuks kõik laused, kus eirati umbisikulist tegumoodi . Kui QuoteAnalyzer tuvastab, et sõna on jutumärkide vahel, siis umbisikulise tegumoe analüsaator seda arvesse ei võta. Umbisikulise tegumoe analüsaatori algoritm 5.3 Korduvate sõnade kontroll Üks levinumaid stiilivigasid on see, et tekstis kasutatakse teatud sõnu liiga palju. Selles spetsiifilises näites annaks aga umbisikulise tegumoe analüüs tagasisidet, et lauses leidub mina-vormis sõna „mina“.
kaldkiri 8x | Nimelt ei suuda analüsaator sisendteksti puhul eristada, kas tekst on kaldkirjas või mitte. Niiviisi võib lihtsasti tekkida valepositiivseid tulemusi, kus teksti autor on mõiste või tsitaadi jaoks jutumärkide asemel kasutanud kaldkirja . Kuigi kaldkirja on lubatud kasutada nii tsitaadi kui ka mõiste jaoks, kohtleb analüsaator seda siiski tavalise tekstina. Näiteks ei saa JSON kaudu otseselt tuvastada, kas tekstilõik on näiteks pealkiri, alampealkiri või kaldkirjas . Analoogne näide on ka kaldkirjas tekstiga. Tihtipeale märgistatakse tsitaate või mõisteid mitte jutumärkidega, vaid hoopis kaldkirjaga . Sõna I tähendab eesti keeles mina → Sõna I tähendab eesti keeles mina Niiviisi oleks üpriski lihtne parsida tekstist välja kaldkiri , pealkirjad ning alampealkirjad.