Eestikeelse teksti genereerimine keelemudelitega Projekt Kaido Lepik Arvutiteaduste Instituut, Tartu Ülikool 1 Töö eesmärk Viimastel aastatel on välja

Seotud dokumendid
Muusika genereerimine närvivõrkude abil

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

raamat5_2013.pdf

3D mänguarenduse kursus (MTAT ) Loeng 3 Jaanus Uri 2013

E-arvete juhend

Inglise keele ainekava 5.klassile Kuu Õpitulemused Õppesisu Kohustuslik hindamine September 1. Räägib loomadest. Vaba aeg. Animals (Wild life 2. Kuula

TARTU ÜLIKOOL Arvutiteaduse instituut Informaatika õppekava Laura Ruusmann Gaussi protsesside usaldusvahemik Bakalaureusetöö (9 EAP) Juhendaja: Meelis

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

Microsoft Word - Toetuste veebikaardi juhend

Microsoft Word - EHR.docx

Microsoft PowerPoint - loeng2.pptx

Tartu Ülikool

loeng2

MTAT Operatsioonisüsteemid - Turvalisus

Microsoft Word - requirements.doc

Kom igang med Scratch

KUULA & KORDA INGLISE KEEL 1

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K

GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev Versioon

Matemaatiline analüüs IV 1 3. Mitme muutuja funktsioonide diferentseerimine 1. Mitme muutuja funktsiooni osatuletised Üleminekul ühe muutuja funktsioo

Microsoft PowerPoint - KESTA seminar 2013

PowerPointi esitlus

Ppt [Read-Only]

Pangalingi spetsifikatsioon Pocopay pangalingilt makse algatamiseks tuleb kasutada teenust Kaupmees teeb päringu Pocopayle aadressile

Andmed arvuti mälus Bitid ja baidid

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019

Mining Meaningful Patterns

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu

Tarkvaraline raadio Software defined radio (SDR) Jaanus Kalde 2017

Praks 1

(loeng3-ohtlikud_koodiloigud)

Suunised Euroopa turu infrastruktuuri määruse (EMIR) kohaste kesksetele vastaspooltele suunatud protsüklilisusvastaste tagatismeetmete kohta 15/04/201

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l

Polünoomi juured Juure definitsioon ja Bézout teoreem Vaadelgem polünoomi kus K on mingi korpus. f = a 0 x n + a 1 x n a n 1 x

Statistikatarkvara

TARTU ÜLIKOOL MATEMAATIKA-INFORMAATIKA TEADUSKOND Matemaatilise statistika instituut Cliona Georgia Dalberg Eesti elektritarbimise prognoos Magistritö

FIDE reitingumäärus 1. juuli 2014 Kuremaa, Marek Kolk

Õppimine Anne Villems, Margus Niitsoo ja Konstantin Tretjakov

Hoia oma arvuti turvaline ja kiire 1.Leia start nupust alustades Juhtpaneel 2.Juhtpaneeli aadressiribalt leia Kõik juhtpaneeli üksused 3.Avanenud tööa

Sekretäri tööülesanded, õigused ja vastutus Ametikohtade eesmärk Ametikoht 1 (sekretär) Asjaajamise, dokumendiringluse ja linnavalitsuse sisekommunika

Operatsioonisüsteemide ehitus

1. AKE Ajalise keerukuse empiiriline hindamine

M16 Final Decision_Recalculation of MTR for EMT

7 KODEERIMISTEOORIA 7.1 Sissejuhatus Me vaatleme teadete edastamist läbi kanali, mis sisaldab müra ja võib seetõttu moonutada lähteteadet. Lähteteade

Matemaatilised meetodid loodusteadustes. I Kontrolltöö I järeltöö I variant 1. On antud neli vektorit: a = (2; 1; 0), b = ( 2; 1; 2), c = (1; 0; 2), d

E-õppe ajalugu

Microsoft Word - Praks1.doc

Saksa keele riigieksamit asendavate eksamite tulemuste lühianalüüs Ülevaade saksa keele riigieksamit asendavatest eksamitest Saksa keele riigi

Pealkiri

MTAT Operatsioonisüsteemid - Turvalisus

Imatra Elekter AS-i võrgupiirkonna üldteenuse arvutamise metoodika 2019 Mai Üldteenuse hinna arvutamise metoodika on kirjeldatud Imatra Elekter AS-i ü

(Microsoft PowerPoint - Kas minna \374heskoos v\365i j\344\344da \374ksi - \334histegevuse arendamise t\344nane tegelikkus Rando V\344rni

ДЕЛОВОЕ ОБЩЕНИЕ

Microsoft Word - ref - Romet Piho - Tutorial D.doc

Microsoft Word a. II kvartali täiendavad aruanded.doc

loeng7.key

ARENGUVESTLUSED COACHINGU PRINTSIIPE SILMAS PIDADES Arendava vestluste printsiibid: Eneseanalüüs, keskendumine tugevustele, julgustamine, motiveeriv e

Sügis 2018 Kõrgema matemaatika 2. kontrolltöö tagasiside Üle 20 punkti kogus tervelt viis üliõpilast: Robert Johannes Sarap, Enely Ernits, August Luur

Microsoft Word a. I kvartali täiendavad aruanded.doc

IFI6083_Algoritmid_ja_andmestruktuurid_IF_3

Image segmentation

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian

Microsoft PowerPoint - IRZ0020_praktikum4.pptx

VL1_praks6_2010k

Tootmise digitaliseerimine

Microsoft PowerPoint - Niitmise_tuv_optiline_ja_radar.pptx

Control no:

(Microsoft PowerPoint - Slaidid Priit P\365ldoja)

ArcGIS Online Konto loomine Veebikaardi loomine Rakenduste tegemine - esitlus

Word Pro - digiTUNDkaug.lwp

Side

Microsoft Word ESMA CFD Renewal Decision Notice_ET

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu

Microsoft PowerPoint - Keskkonnamoju_rus.ppt

DVD_8_Klasteranalüüs

MATEMAATILINE ANALÜÜS I. ESIMESE KONTROLLTÖÖ NÄITEÜLESANDED (1) Leida funktsiooni y = sin x + ln(16 x 2 ) määramispiirkond. (2) Leida funktsiooni y =

Microsoft Word ESMA CFD Renewal Decision (2) Notice_ET

Pealkiri

Antennide vastastikune takistus

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK

Abiarstide tagasiside 2016 Küsimustikule vastas 137 tudengit, kellest 81 (60%) olid V kursuse ning 56 (40%) VI kursuse tudengid. Abiarstina olid vasta

Microsoft Word - installation-guide.doc

E-õppe tehnoloogiad kõrgkoolis E-learning Technologies in Higher Education MTAT

Tartu Kutsehariduskeskus IKT osakond Merlis Karja-Kännaste ASUTUSE DOKUMENDIREGISTRI AVALIK VAADE Analüüs Juhendaja Mirjam-Merike Sõmer Tartu 2015

Excel Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et

(Microsoft PowerPoint - seminar_6_n\365uded-ainemudel tagasiside.ppt [Compatibility Mode])

Juhatuse otsus

Mida me teame? Margus Niitsoo

ITI Loogika arvutiteaduses

Sissejuhatus Informaatikasse Margus Niitsoo

Tervise- ja tööministri a määrusega nr 41 kinnitatud Töölesaamist toetavad teenused lisa 1 vorm A Sihtasutus Innove Lõõtsa Tallinn

Kinnitatud Setomaa Liidu üldkoosolekul Setomaa edendüsfond 1. SEF eesmärk MTÜ Setomaa Liit juures asuv Setomaa edendüsfond (SEF) on loodud

Regressioonanalüüsi kodutöö Indrek Zolk 30. mai a. 1 Andmestiku kirjeldus Käesoleva kodutöö jaoks vajalik andmestik on saadud veebiaadressilt ht

P2P süsteemid

Väljavõte:

Eestikeelse teksti genereerimine keelemudelitega Projekt Kaido Lepik Arvutiteaduste Instituut, Tartu Ülikool 1 Töö eesmärk Viimastel aastatel on välja töötatud terve hulk erinevaid keelemudeleid, mida on peamiselt rakendatud ingliskeelsetel tekstidel. Eesti keel on mitme aspekti poolest veidi keerulisem kui inglise keel: esinevad käänded, tähestik on suurem. Seetõttu ei ole peamiselt inglise keele jaoks välja töötatud mudelite edukas rakendamine eestikeelsetel tekstidel garanteeritud. Projekti eesmärgiks on kasutada rekurrentse (närvi)võrgu mudelit, et genereerida eestikeelset teksti. Idee pärineb Andrej Karpathy blogipostitust ([1]), kus närvivõrke on erinevate ingliskeelsete tekstide genereerimiseks väga edukalt kasutatud. Antud juhul püüame tema tehtud tööd replikeerida eestikeelsetel andmetel. Teksti genereeritakse tähthaaval. 2 Andmed Andmetena kasutame doktoritööde segakorpust ([2]). Andmeallikas on doktoritööd esitatud erinevate.xml failidena. Nendest failidest on kogu info eraldatud (sh pealkirjad, autorid jmt teave), jättes paika lausevahe- ja kirjamärgid. Seejärel on doktoritööd pandud kokku ühte faili, kasutades kahe doktoritöö vahelise eraldajana paari reavahetust. Korpuses on kokku 19 556 988 tähte, korpuses on kokku 128 erinevat sümbolit. 3 Mudel Projektis on teksti genereerimiseks kasutatud rekurrentse võrgu mudelit, mis oma kõige lihtsamal kujul on esitatud joonisel 1. Matemaatiliselt on mudel kirja pandav järgmisel kujul. [3] Oletame, et iga t = 1,..., n korral x t R d, y t R d, h t R m. Seega on maatriksite W hx, W hh, W hy dimensioonid järgmised: W hx R m d,

W hh R m m, W hy R m d. Varjatud kihi vektor sammul t arvutatakse h t = f (W hh h t 1 + W hx x t + b h ), kus f( ) on mittelineaarne funktsioon, nt tanh(z) = ez e z e z + e z, b h R m on vabaliige. Ennustus sammul t arvutatakse ŷ = softmax (W hy h t + b y ), kus e z j softmax(z) j = z, i=1 ez i b y R d on vabaliige. Kaofunktsiooniks on entroopia: J(Θ) = d i=1 y i log(ŷ i ), kus Θ on kõikide parameetrite vektor. Kaofunktsiooni minimiseeritakse gradientmeetodiga. Joonis 1. Rekurrentse võrgu mudel. Igal ajasammul t püütakse treeningandmestikus esineva vastava sisendi x t ja eelmisel ajasammul leitud varjatud kihi vektori h t 1 abil ennustada väljundit y t. Meie ülesandes on x t ja y t tähtede vektorid. Sisuliselt püüame iga tähe ja sellele eelnevate tähtede pealt ennustada järgmist tähte. Vastav visualisatsioon on esitatud joonisel 2.

Joonis 2. Rekurrentse võrgu mudel. Igal ajasammul t püütakse treeningandmestiku vastava tähe x t ja eelmisel ajasammul leitud varjatud kihi h t 1 abil ennustada järgmist tähte y t. Allikas: [1] Olgu meie tähestik V, V = d. Kui t. täht meie treeningandmestikus on i. täht tähestikus V, siis x t = (0,..., 0, 1, 0,..., 0) T, kus 1 esineb i. positsioonil. Ajahetkel t tahame, et meie mudel ennustaks tähte t + 1 meie treeningandmetes. Oletame, et see on tähestikus j. positsioonil, siis y t = (0,..., 0, 1, 0,..., 0) T, kus 1 esineb j. positsioonil. Antud ülesanne ei vaja andmete jaotamist treening- ja testandmeteks, st saame genereerida teksti juba treenimise käigus. Siinkohal saame muuta ka n-ö temperatuuri parameetrit, millega modifitseeritakse mudeli poolt väljastatavaid tõenäosusi. Olgu z = W hy h t + b y, siis z = z, temp (0, ). Kui temperatuur on väike, siis muutub mudel igavamaks, temp väljastades pärast softmax-faasi pigem kindlamaid (suurema tõenäosusega) väärtusi; suurema temperatuuri korral teeb mudel riskantsemaid otsuseid. 4 Tulemused Eelmises peatükis kirjeldatud mudeli Pythoni kood on avaldatud Andrej Karpathy blogipostituses antud projektis on kasutatud selle veidi modifitseeritud varianti. Ühtlasi on realiseeritud veidi keerulisem mudel, mille jaoks on kasutatud Pythoni teeki keras [4]. Keerulisem mudel põhineb kerase githubi lehel toodud näidetel ning sisaldab endas kahte peidetud kihti. Kõikidel juhtudel on peidetud kihi vektori suuruseks 100. Kaofunktsiooni minimiseerimisel kasutatakse adagradi. Enne treenima asumist väljastab mudel suvalisi sümboleid ( - tähistab antud juhul sümbolit, mida muidu niisama lihtsalt väljastada ei saaks).

8vr-i--,-2;{-Í-if--*--7-@---b";_y f-i:hu< Pärast 2 500 000 treeningtähte on tulemus alljärgnev. Juba suudame õigesti kasutada tühikuid. ted v~olgekn j~oäreklist segikteedalv onktevat on b ksil~oigt ) Pärast 20 000 000 treeningtähte (kõik treeningandmed on korra läbitud) on tulemus alljärgnev: ikohud kantsed, tasvulteerutes /raatliseid raosam sellate doodid ingiga 0000 Pärast 5-kordset treeningandmete läbimist on tulemus alljärgnev: on agaga ületavad näid on väitsuse isimisel minnosaasi talmenda vaab külgimise vaal Tegelikult tulemus edaspidi enam väga palju ei muutu. Pärast pea poole miljardi tähe nägemist (treeningandmestik on läbitud juba ca 28 korral), on kaofunktsiooni väärtus ligilähedane ja tulemus endiselt üsna kehv: ulavaa-ribataaleele test suurituumite ja kasvuse seeb ) Olukord on tegelikult natuke parem, kui kasutame madalamat temperatuuri. Kuigi sõnade järjekord ei ole kõige loogilisem, on vähemalt sõnad enamasti grammatiliselt korrektsed. TEMP 0,2: korral, mis on k~oige korral kasutatakse ka sellest koos on teise tegemise kohta. teisest kohaliselt kasutatakse koos on konsti vastus m~oju teiste kohtu v~oimalik korral. m~oju teise suurema ka selle konteksti m~oistes. see on selle kasutatakse kasutatakse koos on selle korral, kui sellest, mis korral, mis on ka selle selle m~oju Keerulisema mudeli korral on tulemus pärast 14. epohhi alljärgnev. Tulemus on ikkagi kehvavõitu, kuigi madala temperatuuri korral on sõnad vähemalt grammatiliselt korrektsed. TEMP 0,2: kasutatud ka sellest tähenduse korral on kasutatud ka kohaliku kohaliku kohtu, mis ka kasutatud ka sellest kohtuse kasutatud ka selle kohtu. kui ka ka teaduse tähenduse selle tagava tegemine, seisust. ka selle kasutamise ka selle ka selle kasutatud ka teaduse ka kasutatud ka selles ka selle korraldatud ka ka selle ka selle kasutatud ka teene kasutatud ka selle teiste sellest p~ohjal TEMP 1,0: jalugu oli emamaal populataja tuhtluse pingratsiooni kasutavad tulepadast cambopatsioganb l~ohka liidevatuvad tüüpi aga eelk~oige kastukratelised kormaginivaaltssoos he juhond, miselistasteks ki kondruujust, mis p~ohjusüütiuku velganud liikutakse viitid. k~oigu tärvastega ( hestastule luuta alas ). selle olel olemisturite drastileetile ; 2-251. 81 ale instiuste prouuste palkonvalistus seega sead.

5 Vähem andmeid, rohkem neuroneid Eelnevalt esitatud tulemused ei olnud kuigi kenad. Proovime, kas genereeritud tekst on mõistlikkum, kui kasutame vähem andmeid ja rohkem neuroneid ning treenime kauem. Põhimõtteliselt uurime, kas suudame treeningandmestikku piisavalt hästi meelde jätta, et normaalseid sõnu genereerida. Mudelina on kasutatud 2-kihilist LSTM-i (veidi keerulisem mudel kui ülalkirjeldatud lihtne rekurrentne võrk, kuid põhimõttelt sama), mille mõlema kihi neuronite arv on 300 (ülaltoodud näites oli 100). Andmetena kasutame vaid ühte doktoritööd (tähti kokku 246073), kuid eristame ka suur- ja väiketähti (unikaalsete tähtede arv on 95). Püüame iga tähe ennustamisel arvesse võtta 50 eelmist tähte ja läbime treeningandmed 60 korda (seega vaadeldakse treenimisel kokku 60 246023 = 14761380 vaatlust). Sedapuhku on arvutused tehtud GPU peal. Lõpptulemused on esitatud järgnevalt. TEMP 0,2: Kui ka kasumiaruande panga tegevuse kohta. Selle suurem on kasutatud kasumiaruande korral panga tegevuse panga tegevuse korral on kasutatavate suurema korral panga tegevuse tulemuste kogumisele. Kui selle suurem on täheleks on kasumi kohta. Kui selle suurem on selle tulemuste kuuluvad on kasumi kasumi korma. Selle näitaja on kasutatud v~oib teenuste kasumit. TEMP 0,5: See suhte mitte v~oimalik arvutamise on siis tegemuse p~ohipanga kliendid on k~oik konkreetse panga klientide laenude labeliks. Selle rahulolema analüüsida neid erinevate matamise kohta. See näitaja maanud poolete arvutamisel siha, kui analüüsi analüüsiliselt kasutatud korma hinnangute suuremiseks on k~oige panga panga trenenisule. Näeme, et tulemused on veidi paremad kui eelnevalt. Kasutatud on keerukamaid ja pikemaid sõnu ning laused lõpevad ning algavad korrektselt. Siiski ei ole genereeritud tekst kuigi loogiline. 6 Kokkuvõte Teksti genereerimise tulemused ei olnud kõige paremad. Samas suutsid mudelid õppida genereerima grammatiliselt enam-vähem korrektset teksti. Rohkem edu võiksime saavutada mudelites olevate mitmete hüperparameetrite tuunimisega: nt varjatud kihtide suurused või ka tuletiste võtmisel learning rate. Kõik mudelid treenivad paraku väga kaua aega ja seetõttu paremini sobivate parameetrite otsingut ei teostatud. Näitena võib tuua Andrej Karpathy mudeli poolt genereeritud ingliskeelset teksti. Tema kasutas oluliselt suuremaid varjatud kihtide väärtusi (mis tähendab oluliselt rohkem parameetreid ja aeglasemat protsessi). Ka siin ei ole tulemus sugugi loogiline, kuigi parem kui ülaltoodud näidetes. TEMP small: is that they were all the same thing that was a startup is that they were all the same thing that was a startup is that they were all the same thing that was a startup is that they were all the same TEMP normal: The surprised in investors weren t going to raise money. I m not the company with the time there are all interesting quickly, don t have to get off the same programmers. There s a super-angel round fundraising, why do you can do.

Viited 1. Karpathy, A. The Unreasonable Effectiveness of Recurrent Neural Networks. http://karpathy.github.io/2015/05/21/rnn-effectiveness/ 2. Arvutilingvistika uurimisrühm. Segakorpus: Doktoritööd. http://www.cl.ut.ee/korpused/ segakorpus/doktoritood/index.php?lang=et 3. Socher, R. et al. CS 224D: Deep Learning for NLP1 Lecture Notes: Part IV2. http://cs224d.stanford.edu/lecture notes/lecturenotes4.pdf 4. Chollet, F. Keras. http://keras.io