Analýza sentimentu - databáze českých slov s polaritou (AFINN.CZ]

14. 7. 2018 19:58 (aktualizováno) Vilém Řezníček

Pro několik experimentů  jsem potřeboval dostatečně rozsáhlý soubor českých slov pro vyjádření sentimentu mluvčího v psaném textu. Na internetu se lze dopátrat podobných databází, nevyhovovaly ale svým poměrně malým rozsahem, nebo kvalitou klasifikace jednotlivých slov. Po několika pokusech se dostatečně rozsáhlou databázi podařilo sestavit. Tato databáze český slov pro vyjádření sentimentu (pozitivního nebo negativního postoje mluvčího) je inspirována podobným projektem – seznamem anglických slov, který připravil Finn Årup Nielsen (viz. stránka projektu AFINN ). Tato databáze je často využívána pro různé tutoriály (sentiment tweetů apod.), její název je všeobecně dobře známý. Proto jsem CZ verzi, kterou zde předkládám, pojmenoval podobně. Nikoliv za účelem na názvu parazitovat, pouze z důvodu aby byla lépe dohledatelné zájemcům o experimentem s českými texty.

Oproti originálnímu projektu, kde každé v anglické verzi slovo má přiřazeno celé číslo v rozsahu od –5 do +5, v této databázi mají slova přiřazeno pouze buď číslo –1 (negativní postoj), nebo +1 (pozitivní postoj). I při této omezené možnosti úrovní hodnot přesnost detekce sentimentu dosahovala běžně 60%, pro klasifikaci více ohraničených témat a textů až 72%. Oproti dostupným seznamům CZ slov navíc tato DB prošla několika stupni zpřesňování klasifikace. Na základě zpětné vazby supervisorů, kteří konfrontovali výsledek se svým úsudkem, též I na základě strojového vyhodnocení dostupných textů (zbožové vyhledávače, recenze a hodnocení zákazníků), kde zákazník uvedl konečný verdikt ( + nebo -) a s tím související komentář. Srovnáním konečných verdiktů bylo srovnáváno se strojově stanoveným výsledkem, z rozporů pak bylo možné identifikovat nová slova, nebo provádět reklasifikaci a zvýšit spolehlivost.

V DB je nyní téměř 20.000 slov – kritériem pro zařazení slova do DB byla detekce alespoň 2 výskytů v analyzovaných větách, které vyjadřovaly postoj pisatele. Ať už kladný, nebo záporný. Neobsahuje úmyslně emoikony – doporučuji je ale vždy do vyhodnocování sentimentu zahrnovat. 

Z dostupných zdrojů se dá předpokládat, že teoretické maximum přesnosti ve vyhodnocování sentimentu je až 80 procent. Zde se ale už aplikují jiné metody, jako například NLP apod. Pokud někdo z Vás čtenářů by měl zájem participovat na zpřesňování klasifikace slov, nebo máte možnost zpřístupnit nástroje pro klasifikaci na svém hostingu, rád poskytnu další materiály a SW vybavení. 

English annotation: AFINN.CZ is a list of CZECH words rated for valence with a negative value –1 (negative sentiment ) and a positive value ₊1 (positive sentiment). The words have been manually labeled during several experiments in 2005–2018. The file is comma-separated containing approx. 20.000 words. 

This AFFIN.CZ database is made available under the GNU General Public License v3.0

AFFIN.CZ DB Download: https://github.com/vilemr/affin.cz

Sdílet