top of page

Lõputöö teksti analüsaator

Karl Erik Karindi
hello.png
key features

Mis ja miks?

Olen Karl Erik Karindi, 3. aasta informaatika bakalaureusetudeng ning tegin oma lõputööna Lõputöö teksti analüsaatori.

​

Isiklikust kogemusest olen märganud, et tudengitel on tihti probleeme esseede või lõputööde kirjutamisega. Esseedes ja lõputöödes on nõutud kindlat ja spetsiifilist keelekasutust ehk teadusteksti, ent tudengitel on teadusteksti kirjutamisega vähe kogemusi.

​

Lõputöö juhendajal, Raimond-Hendrik Tunnelil, on loodud veebipõhine keskkond CGLearn, mis saadab igal nädalavahetusel keskkonda registreeritud tudengitele raporti. Raportis oli välja toodud tagasiside lõputöö kirjaliku osa kohta, ent enne analüsaatori loomist oli tagasiside võrdlemisi pinnapealne. Anti vaid üldist statistikat. Näiteks oli välja toodud sõnade, viidete ja piltide arv. Kuna leidsime, et näitajatest pole tudengile kasu, otsustasime luua lõputöö teksti analüsaatori.

​

Analüsaator lahendab kahte põhilist probleemi: see aitab tudengit ja juhendajat teksti kirjutamisel ning muudab CGLearni iganädalased raportid kasulikumaks.

​

Analüsaator annab tagasisidet levinumate vigade kohta ja säästab sedakaudu nii juhendaja kui tudengi aega. Juhendaja ei pea enam niivõrd palju aega ja energiat kulutama levinumate vigade, näiteks liiga pikkade lausete, komavigade ja stiilivigade parandamisele. Analüsaator suudab vead ise tuvastada ja kasutajale esile tuua.

 

Analüsaatori tulemuseks on see, et nii tudeng kui juhendaja kulutavad kirjutamisele vähem aega, ent tekstikvaliteet on parem.

​

​

Rakendus on kättesaadav saidil:

https://thesisanalyzer.cloud.ut.ee

​

Lõputöö leiab siit:

https://comserv.cs.ut.ee/ati_thesis/datasheet.php?id=69686&year=2020

​

Tutvustav video:

https://www.youtube.com/watch?v=RBhzln8UOew

Kuidas?

Lõputöö analüsaatori jaoks loodi lahtine Application Programming Interface (API) mikroteenus. Mikroteenusele esitab päringu veebipõhine õpikeskkond CGLearn või analüsaatori jaoks loodud veebiliides.

 

Mikroteenus on kirjutatud programmeerimiskeeles Python ja see kasutab Flask veebiraamistikku, mis on võrdlemisi kergekaaluline ja sellise projekti jaoks sobiv.

​

Programmeerimiskeeleks valiti Python seetõttu, et selles on kättesaadav EstNLTK teek, millega kaasnevad sisseehitatud keeletöötluse ja -analüüsi funktsionaalsused. Programm jookseb Ubuntu operatsioonisüsteemiga serveril.

​

API diagram.png

Rakenduse kasutamiseks on 2 varianti. Esimene on see, et kasutaja läheb veebilehele https://thesisanalyzer.cloud.ut.ee

Seejärel sisestab kasutaja oma analüüsitava teksti tekstikasti ja klikib nupule "Analüüsi". Lõpuks tagastatakse tulemus, kus on näha kõikide analüüside tagasisidet.

​

Teine variant on luua oma rakendus, mis kasutab programmi API-d. Näiteks CGLearn on eraldiseisev rakendus, mis pöördub rakenduse API poole ja saab seejärel vastuse. Seejärel näitab CGLearn kasutajale ise veebiliideses tulemust.

Tulemus

Rakendus annab tagasisidet 5 levinuma veatüübi kohta.

​

1. Umbisikulisuse analüsaator: Kontrollib, kas tekstis leidub mina- või meie vormi.


2. Lausepikkuse ja -keerukuse analüsaator: Otsib liigselt pikki/keerulisi lauseid.


3. Korduvate sõnade analüsaator: Tuvastab sõnad, mida on ebaharilikult palju kasutatud, toob välja lausete klastrid, kus kindlaid sõnu järjest esineb.


4. Kantseliidi kontroll. Otsib tekstist enim levinud stiilivigu. Kontrollid on võetud ja kohandatud Kaarel Sõrmuse 2017 tööst "Kantseliidi- ja paronüümituvastaja".


5. Puuduvate komade analüüs. Otsib tekstist komavigu ja toob välja kohad, kust koma on puudu.

​

 

 

Järgnevalt on välja toodud analüüside tulemused nii veebiliideses kui CGLearn keskkonnas.

Veebiliides

im1.png
im4.png
im3.png
im2.png
im5.png
im6.png

CGLearn

im1.png
im2.png
im3.png
im4.png
bottom of page