Funkční vzorek realizuje specializovaný nástroj pro zpracování mediálních textů (zkráceně COVID19class). Nástroj implementuje různé metody klasifikace sentimentu a kategorií mediálních dokumentů.
Klasifikace textu je základním předpokladem pro hodnocení trendů mediálních zpráv a reakcí či postojů jejich čtenářů. Nástroj vznikl jako podpůrný prostředek při plnění cílů projektu TL04000176.
Implementace a zejména použité modely strojového učení jsou postaveny na archivu zpravodajských článků, článků a diskusních příspěvcích sociálních sítí sbíraných firmou NEWTON Media, a.s., případně již připravených datových sad na dosažitelných na internetu (Yelp, ČSFD). Implementována je klasická klasifikace sentimentu pomocí n ěkolika variant algoritmů rozpoznávání včetně neuronových sítí.
Aktuální modely pro diskuse o onemocnění COVID-19 jsou trénovány s využitím české anotované datové sady, kterou vytvořil tým FSV UK. Z pohledu uživatele umožňuje aplikace COVID19class klasifikaci textových článků a diskusních příspěvků v rozsáhlých textových databázích (odzkoušeno pro databáze mající až 60 tisíc příspěvků).
Nástroj umožňuje volbu klasifikátorů a poskytuje statistické údaje o jednotlivých krocích klasifikace. Nástroj rovněž dovoluje klasifikovat texty podle shluků slov vázajících se k určitému tématu či jeho aspektu.
Takové shluky slov je možné vytvořit manuálně či automatizovaně, např. pomocí shlukovacích metod, metod detekce témat či detekcí komunit. Funční vzorek je implementován v programovacím jazyce Python 3.
Ovládá se přes příkazovou řádku. Je implementován pomocí knihoven Gensim, Sklearn, matplotlib, pandas, numpy.
Vedle příkazové řádky nástroj umožňuje řídit parametry zpracování pomocí konfiguračních souborů. Pro anglické recenze Yelp bylo dosaženo celkové přesnosti klasifikace sentimentu 84 % (F1 scóre) na testovacích datech.
Pro české recenze ČSFD jsme s nástrojem dosáhli celkové přesnosti 77 % (F1 scóre) na testovacích datech. Pro diskusní příspěvky zpráv s kovidovou tématikou anotovaných studenty FSV UK jsme však nepřesáhli přesnost 68 % (F1 scóre) na testovacích datech.
Tato přesnost však odpovídá tomu, že získaný korpus je příliš malý (833 diskusních příspěvků) a dosažené výsledky odpovídají přesnostem, které jsme získali na uměle omezených předchozích dvou korpusech podobného rozsahu. Nejlepších výsledků jsme dosáhli pomocí klasifikátoru MLPClassifier.
Nástroj byl použit i pro studium vlivu velikosti vektoru vnoření a vlivu počtu epoch jejich učení na přesnost klasifikace výsledků. Nástrojem se dají vytvořit i wordcloudy pro lexikon slov sentimentu.