BERT transformer mreža u službi analize formalnog jezika u zakonodavstvu…


Lektura formalnog jezika u zvaničnim, državnim tekstovima predstavlja specifičan izazov, za koji je neophodno poznavanje velikog broja pravila – ne samo gramatičkih, leksičkih i pravopisnih, već i formalnih – koja stoje iza određenog jezika i specifičnog domena njegove upotrebe. Zaseban deo ovog problema odnosi se na proveru pravilne upotrebe formalnog jezika prilikom pisanja tekstova legislative. Ovakvi poslovi delegirani su stručnjacima, domenskim ekspertima, čiji bi svakodnevni posao mogao biti olakšan razvojem softverskih alata za ove specifične namene.

Krajnji cilj, koji je ujedno i najveći izazov, jeste razumevanje jezika od strane mašine. Da bi mašina mogla da nauči određeni jezik, ona mora da razume ne samo reči i pravila koja se koriste u određenom jeziku, već i kontekst njegovih rečenica i značenje koje reči poprimaju u određenom kontekstu. U eksperimentalnom razvoju koji je obavljen, cilj modela SRBerta bio je razumevanje formalnog jezika srpske legislative.

Kreiranje i treniranje SRBerta mreže

Godine 2018. Google Research AI tim predstavio je BERT (eng. Bidirectional Encoder Representation from Transformers) arhitekturu veštačke neuneuronske mreže, postavljajući tada dva cilja: maskirano jezičko modelovanje i predviđanje sledeće rečenice. Polazeći od BERT arhitekture, Facebook AI tim je 2019. godine predstavio RoBERTa (eng. Robustly optimized BERT pretraining approach) mrežu, koja je optimizovana za zadatak maskiranog jezičkog modelovanja. SRBerta je kreirana na osnovu RoBERTa arhitekture, pri čemu je treniranje SRBerta mreže za zadatak razumevanja formalnog jezika srpske legislative izvršeno dvofazno.

U prvoj fazi, za treniranje SRBerta mreže korišćen je OSCAR skup podataka, koji predstavlja veliki skup otvorenih podataka kreiranih korišćenjem jezičke klasifikacije nad podacima iz Common Crawl korpusa. Korišćeni skup podataka činilo je 645.747 tekstova. Proces treniranja SRBerta mreže u prvoj fazi sproveden je kroz 19 ciklusa i trajao je ukupno 6 dana, 17 sati i 30 minuta na GPU kartici NVIDIA Quadro RTX 4000. Evaluacija SRBerta mreže vršena je korišćenjem 10% prethodno izdvojenih ulaznih podataka iz OSCAR dataseta, koji čini 60.000 ulaznih sekvenci, odnosno manjih tekstova na srpskom jeziku. Izvršeno je slučajno maskiranje 15% tokena u svakoj testnoj sekvenci.

Rezultati evaluacije nakon prve faze pokazuju da model SRBerta konvergira oko vrednosti tačnosti od 73% i blago raste do vrednosti 73,7%. Rezultate treba tumačiti na sledeći način: ukoliko poseposedujemo tekst na srpskom jeziku čije su reči u 15% slučajeva maskirane, SRBerta će biti u stanju da u 73,7% slučajeva predvidi identičnu reč (token) koja se krije iza nje, pri čemu će u mnogim drugim slučajevima biti u stanju da predloži i druge potencijalne zamene za maskiranu reč. Testiranje jezičkog modelovanja vršeno je tako što su uračunavana kao tačna samo ona predviđanja mreže koja se apsolutno poklapaju sa labelom koja stoji iza maskirane reči, pritom posmatrajući pet najboljih skorova mreže na izlazu za svaku maskiranu reč. Primer korišćenja modela dobijenog u ovoj fazi prikazan je na slici 1, pri čemu treba imati u vidu da je primenjena softmax funkcija nad izlazima mreže, kako bi se generisale verovatnoće za svaki token iz rečnika rezultata.

U drugoj fazi izvršeno je fino podešavanje SRBerta mreže korišćenjem većeg broja dostupnih tekstova zakona, koji su prikupljeni sa Pravno-informacionog sistema Republike Srbije. Tekstovi koji su korišćeni prilikom finog podešavanja SRBerta mreže obuhvataju legislativu vezanu za Ustav Republike Srbije i državno uređenje, pravosuđe, odbranu, vojsku i unutrašnje poslove, javne prihode, monetarni sistem, finansijske organizacije i poslovanje.

Ove tekstove legislative, pri čemu svaki od njih čini između 12 i 15 MB podataka, bilo je potrebno pripremiti, odnosno preprocesirati na malo specifičniji način, sa ciljem generisanja što većeg broja ulaznih sekvenci. Ovaj proces obrade ima za cilj da na prvom mestu smanji broj podataka koji bi mogli biti odsečeni, što se dešava ukoliko je veličina ulazne sekvence duža od maksimalne definisane veličine, koja iznosi 512 tokena. Stoga su svi tekstovi zakona bili podeljeni na manje jedinice, dužine 512 tokena, koje su zatim spojene korišćenjem karaktera za novi red. Ovim su dobijeni novi tekstovi koji će biti optimalno iskorišćeni od strane mreže prilikom njene obuke. Nakon preprocesiranja i kreiranja ulaznih sekvenci (tenzora), čije se kreiranje obavlja na sličan način kao što je to bilo odrađeno i u procesu inicijalnog obučavanja mreže za srpski jezik, kreirane su maskirane ulazne sekvence za trening, ukupne veličine 10.266.

Obavljena su četiri ciklusa finog podešavanja, pri čemu je najbolja izmerena vrednost za metriku tačnosti iznosila 84,8%. Mreža SBRerta, koja je nastala kao rezultat procesa treniranja u trajanju od ukupno 6 dana i 19 sati, koristeći pritom veliki korpus tekstova na srpskom jeziku prikupljenih sa interneta i još jedan manji, ali višestruko kvalitetniji korpus srpskih zakona, postigla je u završnom testiranju tačnost od čak 84,8% nad zadatkom maskiranog jezičkog modelomodelovanja tekstova legislative, dokazavši na taj način izvodljivost kreiranja ovakvog alata nad prethodno definisanim principima obrade prirodnih jezika.

Pogledajmo primer rada SRBerta modela. Realni scenario korišćenja ovog modela bi, na primer, obuhvatao proveru sledećeg teksta, tako da bi maskirana reč mogla da bude na mestu prikazanom na slici 2.

Tekst za analizu: ако код послодавца није основан синдикат или ниједан синдикат не испуњава услове репрезен- тативности или није закључен {maska} о удруживању у складу са овим законом. Model je predvideo dve reči za koje je u ovom slučaju visoko siguran da mogu da stoje na mestu maskirane reči, a to su reči ugovor i sporazum.

Potencijal za unapređenja

Na osnovu svega navedenog, razvoj i testiranje nameću zaključak da je moguće postići visok nivo tačnosti (industrijski prihvatljiv, od preko 90% tačnosti), pri čemu je jedini preduslov posedovanje dovoljno kvalitetnog i velikog skupa podataka i odgovarajuće fizičke arhitekture sistema na kome vršimo proces obučavanja. Obučavanje mreže da razume srpski jezik omogućilo bi rešavanje širokog spektra problema, kreiranjem fino podešenih modela koji počivaju na konceptu obrade i procesiranja prirodnih jezika.

Buduća unapređenja predstavljenog modela obuhvatiće korišćenje većeg i boljeg fizičkog sistema, na kome je moguće sprovesti kvalitetniji proces treniranja i koji bi pritom dozvolio korišćenje velikih mini-serija podataka (u slučaju RoBERTa mreže korišćena veličina serije iznosila je čak 8.000 trening uzoraka, dok je u našem slučaju najviša vrednost koju je dati GPU procesor mogao da podrži u okviru procesa pretreniranja iznosila maksimum 8).

Jelena Tošić, Elektronski fakultet, Univerzitet u Nišu i Doc. Dr Miloš Bogdanović, COMING

0 komentara

Najnoviji

Novi-NetApp-proizvodi

Novi NetApp proizvodi

Da li su vam već poznati novi NetApp sistemi C-serije, sa QLC Flash tipom...
Veštačka-inteligencija-u-našim-rukama

Veštačka inteligencija u

Broj oblasti u kojima se eksperimentiše sa različitim dostignućima veštačke...
Azure-Active-Directory--postaje-Entra-ID

Azure Active Directory

Azure Active Directory je sada Entra ID. I premda većina korisnika ovu promenu...
Transformacija-tehničkog-duga--pomoću-DevOps-tehnologija

Transformacija tehničkog duga

Najveću opasnost za organizacije ne predstavlja samo postojanje tehničkog duga...

Sveobuhvatna platforma za

U vreme kada su sajber pretnje sve složenije i opasnije, timovima koji brinu o...