Predstavujeme SlovakBERT, prvý veľký neurónový jazykový model pre slovenčinu

KInIT v spolupráci s Gerulata Technologies prináša nový jazykový model pre slovenčinu, ktorý pomôže zlepšiť automatické spracovanie slovenských textov.

Neurónové jazykové modely sú za posledné roky najvýznamnejším pokrokom v oblasti spracovania prirodzeného jazyka (NLP). Pomocou jazykových modelov dokázali výskumníci zlepšiť výsledky v mnohých úlohách spracovania textu a slúžia ako technologický základ aj v takých aplikáciách ako Google Search alebo Google Translate, ktoré denne používajú miliardy ľudí. Takéto modely spočiatku vznikali najmä pre angličtinu a následne pre veľké jazyky, ako čínština, francúzština, neskôr pribudla napr. aj čeština a poľština. Dostupné sú dokonca aj multilingválne modely.

Dnes predstavujeme prvý takýto moderný (s tzv. transformer architektúrou) jazykový model pre slovenčinu – SlovakBERT1. Model, ktorý natrénovali naši partneri z Gerulata Technologies, konzultoval a vedecky vyhodnocoval náš NLP tím. SlovakBERT sa učil o slovenčine zo zhruba 20 GB slovenského textu zozbieraného z webu. Tieto dáta tvoria obraz toho, čo model považuje za slovenčinu. Natrénovanie SlovakBERTu nebola ľahká úloha, vyžadovalo to skoro dva týždne výpočtov na serveri s výkonným hardvérom. Pre porovnanie, na počítači s grafickou kartou strednej triedy by tieto výpočty trvali roky, s bežným pracovným notebookom možno aj desaťročia. Teraz je SlovakBERT otvorený svetu a prístupný NLP komunite. Veríme, že týmto krokom dôjde k zlepšeniu úrovne automatizovaného spracovania slovenčiny pre výskumníkov, firmy, ale aj pre laikov.

Potenciál SlovakBERTu sme ako výskumníci overili a vyskúšali sme, ako dobre funguje na rozličné úlohy. Zistili sme, že dosahuje výborné výsledky pri gramatickej analýze, sémantickej analýze, rozpoznávaní sentimentu či klasifikácii dokumentov. Výsledky experimentovania sme opísali vo verejne dostupnom článku SlovakBERT: Slovak Masked Language Model. Model sa ukázal natoľko dobrý, že ho už zapájame aj do projektov s našimi partnermi z priemyslu a čoskoro sa možno objaví v prvých nasadených aplikáciách, napríklad v pripravovanom systéme pre analýzu sentimentu v komunikácii so zákazníkmi na verejných profiloch sociálnych sietí. 

Zároveň si ale uvedomujeme možné úskalia takéhoto modelu. Keďže je natrénovaný na texte dostupnom na webe, neexistuje žiadny filtračný mechanizmus, ktorým by sme dokázali overiť vhodnosť tohto textu. SlovakBERT sa teda učil aj z textu obsahujúceho vulgarizmy, konšpirácie, predsudky, stereotypy a mnohé ďalšie javy, ktoré používatelia slovenčiny  na webe vyprodukovali. Je teda istým zrkadlom všetkého, čo sa deje v spoločnosti. V blízkej budúcnosti sa plánujeme výskumne venovať práve tejto problematike – ako rozličné predsudky v jazykových modeloch identifikovať a podľa potreby aj potlačiť.


Názov nadväzuje na pôvodný model BERT z dielne Google, ktorý bol natrénovaný pre angličtinu. Je to skratka pre “Bidirectional Encoder Representations from Transformers”, teda použitú technológiu hlbokého učenia neurónovej siete.

2 SlovakBERT at GitHUB

3 Matúš Pikuliak, Štefan Grivalský, Martin Konôpka, Miroslav Blšták, Martin Tamajka, Viktor Bachratý, Marián Šimko, Pavol Balážik, Michal Trnka, Filip Uhlárik. 2021. SlovakBERT: Slovak Masked Language Model