Automatizace generování stopslov

Transkript

Automatizace generování stopslov
Automatizace generování stopslov
Bc. Jiří Krupník, Ústav informatiky, Provozně ekonomická fakulta,
Mendelova univerzita v Brně, [email protected]
Abstrakt
Příspěvek se zabývá metodou předzpracování textových dokumentů, a to automatizací
generování stopslov. Je zde popsáno několik metod pro vytváření doménově nezávislých
seznamů těchto slov. Následně jsou prezentovány a diskutovány výsledky implementace
metod, kterých bylo dosaženo při testování na kolekci rozsáhlých dokumentů napsaných
v různých přirozených jazycích.
Klíčová slova
Stopslovo, feature selection, text mining, textové dokumenty, třída dokumentu
Abstract
This paper deals with a method of pre-processing of textual documents, namely with
automation of stopwords list generation. Several methods for creating a domain specific list of
stopwords are described. Then the implementation of the methods is presented and discussed.
The paper also contains the results that were obtained by application of the methods to a large
collection of real-world documents written in different natural languages.
Key Words
Stopword, feature selection, text mining, text documents, document class
Úvod
Různé typy subjektů mají pro své rozhodování k dispozici obrovské objemy
nestrukturovaných textových dat. Tato data mohou potenciálně obsahovat užitečné znalosti,
které lze získat metodami z oblasti nazývané text mining. Typické problémy, které lze v rámci
dolování znalostí z textových dat řešit, zahrnují klasifikaci dokumentů, predikci, shlukování,
vyhledávání, sumarizaci, extrakci či analýzu mínění (Weiss et al., 2010). Aby bylo možné
zpracování tohoto typu dat realizovat, je třeba je převést do reprezentace vhodné pro zvolený
algoritmus a případně určitým způsobem předzpracovat. Jednou z nejjednodušších a nejčastěji
používaných reprezentací znalostí, jež zároveň umožňuje snadno provádět algebraické
operace, jsou vektory. Každý dokument je pak reprezentován jedním příznakovým vektorem
(feature vector), kde jednotlivé příznaky často odpovídají slovům v dokumentu obsaženým.
Jedním ze způsobů předzpracování textu je extrakce stopslov. Jedná se o slova nemající
informační význam, někdy bývají označována jako „běžná“ slova nebo negativní slovník.
Taková slova mohou způsobit potíže při úlohách text mining – nižší rychlost zpracování, vliv
na predikci výsledků. Bezvýznamová slova tvoří velkou část textových dat, což je však
problém v rámci úkolů zpracování textu, kde je rozměrnost dat zásadní (Kamel a Makrechi,
2008).
V češtině mohou být zařazena mezi stopslova např. spojky (a, aby, ale, ani), předložky
(na, pro, u), zájmena (její, my, on), málo významová slovesa (být, mít). V jiných jazycích
mezi ně patří také určité a neurčité členy. Dále to bývají slova specifická pro konkrétní
kontext (Kadlec, 2006).
Rozlišujeme dvě kategorie stopslov: obecné a doménově orientované. První kategorie
obsahuje veřejně dostupná, standartní bezvýznamová slova. Druhá kategorie zahrnuje
doménově specifická (orientovaná) slova, jež nemají informační hodnotu v rámci dané
domény nebo kontextu. Takováto slova se liší doména od domény, například pojem učení
může být stopslovo v oblasti vzdělávání, ale naopak klíčové slovo v informatice. Výsledkem
odstranění těchto slov (termů) je vylepšení efektivnosti úloh text mining.
Zásadní důvody vzniku a rozšíření automaticky vytvářených seznamů stopslov jsou:
zastarání – statické seznamy je nutno udržovat stále aktuální; vliv webových technologií –
výrazy používané v elektronické komunikaci se stávají součástí běžného jazyka; dostupnost –
stále existují přirozené jazyky bez standartního seznamu; kontextově specifická slova – úlohy
text mining vždy potřebují doménově specifický seznam;… (Kamel a Makrechi, 2008).
Uvedené důvody lze označit i za hlavní motivaci ke vzniku této práce.
Dosáhnout automatizovaného generování stopslov lze pomocí algoritmů feature
selection. Myšlenka je taková, že definujeme informační významnost každého slova za
použití metrik a uchováváme pouze informačně hodnotnější slova, odstraňujeme
bezvýznamná slova. Rozhodujeme o důležitosti či nedůležitosti každého termu (Dave, 2011).
Obsahem tohoto příspěvku je zaprvé popis vybraných metod pro odhalení doménově
orientovaných stopslov. Za druhé, prezentace výsledků experimentů na textových kolekcích
velkého rozsahu, jež bylo dosaženo prostřednictvím implementace těchto metod.
Práce vzniká v rámci výzkumného projektu Analýza vlivu předzpracování textových
dokumentů na výsledky úloh text mining, který je řešen Ústavem informatiky PEF
MENDELU. Výzkum je zaměřen na analýzu vlivu předzpracování textových dokumentů na
výsledky klasifikace a shlukování textových dat a extrakce stopslov z textových souborů patří
právě mezi úlohy předzpracování textu.
Cíle a metodika
Práce si klade za cíl přispět k rozvoji oblasti analýzy a dolování znalostí z textových dat
vytvořených v přirozeném jazyce prostřednictvím implementace metod automatického
generování stopslov, provedení experimentů a vyhodnocení výsledků.
Extrakce stopslov je založená na algoritmech feature selection, čili ohodnocení každého termu
(slova). Většina je založena na následujícím principu:
 Výpočet hodnoty OHODNOCENÍ(ti, ck) pro každý term ti z kategorie ck vycházejí
z použité metody.
 Seřazení termů dle hodnoty v sestupném pořadí.
 Aplikování prahové funkce nebo jiné podmínky na seřazený seznam termů.
Existuje několik metod pro určení hodnoty termu, vybrané z nich jsou založeny na operacích
s těmito hodnotami (Li, 2009):
A – počet dokumentů v kategorii ck obsahující term ti.
B – počet dokumentů, které nejsou v kategorii ck a obsahují term ti.
C – počet dokumentů v kategorii ck neobsahující term ti.
D – počet dokumentů, které nejsou v kategorii ck a neobsahují term ti.
N – celkový počet dokumentů.
Výpočty metod (definování hodnot termů) vychází z prací autorů: Yang a Pedersen (1997),
Uchyigit a Clark (2008); k implementaci jsou vybrány následující:
Odds Ratio (ODDR):
Rozsah hodnot metody se nachází mezi nulou a nekonečnem. Hodnota 1 je neutrální výsledek
– slovo se neliší od ostatních v daných kategoriích. Blíže k nule nebo nekonečnu indikuje
odlišnost slova. ODDR upřednostňuje slova korelující s kategorií. V důsledku toho, slova
vyskytující se několikrát v dané kategorii a nikdy se nevyskytující v jiných kategoriích mají
vysoké ohodnocení. Proto mnoho slov, která se vzácně objeví pouze v jedné kategorii,
označuje za stopslova. Ukázka výpočtu:
ODDRslovo, kategorie  
AD
BC
369  7441
ODDRSHOWER, _ N  
 3,7582
103  7093
Information Gain (IG):
IG měří počet bitů informace, která se získá pro predikci kategorie tím, že rozpoznáme
přítomnost nebo nepřítomnost slova v dokumentu. Jedná se o metodu poskytující rozporuplné
výsledky. Důvodem by mohly být rozdílné zkoumané oblasti (domény) a různé klasifikační
algoritmy, které byly použity při experimentech.
IGti , ck   A  log
A
B
 B  log
( A  C )( A  B)
( B  D)( A  B)
C
D
 C  log
 D  log
( A  C )(C  D)
( B  D)(C  D)
F-measure Feature Ranking (FFR):
FFR ti , ck  
2A
2A  B  C
The Chí Statistic (CHI):
Chí kvadrát měří absenci nezávislosti mezi termem a kategorií. Přirozenou hodnotou je nula,
nastává v případě, že slovo a třída jsou nezávislé.
( AD  BC ) 2
CHI ti , ck  
( A  B)(C  D)( A  C )( B  D)
Mutual Information (MI):
Výzkumy provedené s MI mají protichůdné výsledky. Některé práce uvádějí, že použitím této
metody dosahují nejlepších výsledků, jiné opak. Příčina může být v tom, že slova vyskytující
se v textu vzácně jsou vysoce ohodnocena a tudíž jsou často označena za stopslova.
MI t i , ck   log
A N
( A  C )( A  B)
Koeficient Ng-Goh-Low (NGL):
NGL koeficient byl navržen jako korelační koeficient – varianta Chí kvadrátu, mocnina ve
jmenovateli obsahuje hodnotu Chí. Kladné ohodnocení slova značí, že slovo koreluje
s ostatními v kategorii. Zatímco záporné ohodnocení značí, že slovo koreluje se slovy jiných
kategorií. Na rozdíl od Chí se vybírají slova, která korelují s danou kategorií (jsou pozitivní)
a nevybírá slova, která korelují se s jinými kategoriemi.
NGLt i , ck  
N  ( AD  BC )
( A  C )( B  D)( A  B)(C  D)
Koeficient Galavotti-Sebastiani-Simi (GSS):
Koeficient GSS byl navržen jako zjednodušení Chí kvadrátu (odstraněním tří faktorů ze
jmenovatele a čitatele). Obdobně, jak tomu je u koeficientu NGL, kladné hodnoty odpovídají
funkci korelace s danou kategorií, zatímco záporné hodnoty odpovídají funkci korelace
s jinými kategoriemi.
GSS ti , ck   AD  CB
Metodika řešení
Výzkum, v rámci něhož tato práce vzniká, se zaměřuje primárně na doménu hotelových
recenzí. Pro experimenty byly použity zdrojové soubory různých jazyků, každý obsahující
více než 10 tisíc recenzí (řádků). Účelem implementace je dosáhnutí převodu dat do takové
vnitřní formy, že s nimi lze provádět operace.
Vstupem je soubor v kódování UTF8, jehož jednotlivé řádky mají strukturu:
C\tTEXT\n
kde C je třída dokumentu (několik znaků), \t je tabelátor, TEXT je posloupnost znaků, \n je
znak konce řádků. Z každého textu jsou odebrány tagy, entinty a znaky, které nejsou písmena.
Text je převeden na tzv. bag-of-words reprezentaci, neboli posloupnost slov, kde pořadí není
důležité (Novák a Dařena, 2012). Příklad vstupního souboru:
_N
SHOWER WATER NOT HOT ONLY JUST WARM.
_P
GREAT LOCATION, GOOD BREAKFAST BUFFET.
Prvním krokem je tedy uložení očištěných vstupních souborů do vektorové reprezentace. U
každého termu se pokračuje s výpočtem hodnot proměnných – A, B, C, D (viz výše). Po
tomto výpočtu lze aplikovat vybranou metodu, protože jsou již známy veškeré proměnné,
které se vyskytují v uvedených vzorcích (ODDR, FFR,…). Výsledek představuje hodnota
definující každý term. Struktura termů je vnitřně reprezentována polem, s těmito prvky:
I: Reprezentace termu
@array
slovo
kategorie
Ukázka
SHOWER _N
A
B
C
D
hodnota
369
103
7093
7441
3,7582
Termy jsou dále seřazeny dle jejich ohodnocení. Posledním krokem je vytvoření
výstupu – seznamu. Seznam se vygeneruje na základě parametru (n), který určuje, kolik slov
má obsahovat. Za stopslova označíme prvních n slov.
Výsledky
Vybrané metody, s jejichž pomocí jsou generovány seznamy stopslov, jsou implementovány
programovacím jazykem Perl. Výsledkem je tedy program, jehož vstupem jsou ohodnocené
textové dokumenty v daném formátu a výstupem požadovaný seznam stopslov.
Uvedené příklady vygenerovaných seznamů stopslov jsou z oblasti hotelových recenzí.
Tabulky II, III a IV zobrazují výsledky, kterých bylo dosaženo.
II: Stopslova - angličtina
CHI
MI
NGL
GSS
FFR
ODDR
IG
VERY
OPPOSIT
LOCATION
STAFF
AND
THIN
ROOM
LOCATION
REMVI
STAFF
LOCATION
THE
PEACEFUL
LOCATION
STAFF
ARTWORK
GOOD
NOT
STAFF
SMELL
STAFF
GOOD
UNSUAL
NOT
GOOD
VERY
CHARMING
FRIENDLY
NOT
WALLABIES
FRIENDLY
AND
A
SHABBY
GOOD
FRIENDLY
PROFFECIONAL
HELPFUL
FRIENDLY
WAS
FABULOUS
NOT
HELPFUL
ANTEROOM
EXCELLENT
VERY
NOT
CLEAR
HELPFUL
EXCELLENT
REUNION
CLEAN
CLEAN
LOCATION
NOBODY
EXCELLENT
CLEAN
SPEEK
NO
HELPFUL
IN
STRANGE
CLEAN
NO
WELOME
COMFORTABLE
NO
TO
OUTSTANDING
NO
III: Stopslova - španělština
CHI
MI
NGL
GSS
FFR
ODDR
IG
NO
GUIAN
NO
NO
Y
AMPLITUD
NO
PERSONAL
SACARTELO
PERSONAL
Y
LA
CERCANIA
TODO
UBICACIÓN
CONSCIENTES
UBICACIÓN
MUY
NO
INCÓMODO
PERSONAL
POCO
SÉPTICA
POCO
PERSONAL
DE
CORTINAS
UBICACIÓN
MUY
PERSONEN
MUY
QUE
MUY
INMEJORABLE
POCO
Y
VERTIDO
Y
UBICACIÓN
EL
EXCELENTES
EXCELENTE
BUENA
DOLÍAN
BUENA
POCO
QUE
DEBERIAN
MUY
EXCELENTE
ESTRICTAS
EXCELENTE
UN
EN
INCOMODO
Y
TRATO
DEBÍAS
TRATO
BUENA
UN
POBRE
BUENA
SE
DESACONSEJA
QUE
SE
DEL
PRECIOSA
TRATO
IV: Stopslova - čeština
CHI
MI
NGL
GSS
FFR
ODDR
IG
PERSONÁL
OBTĚŽOVÁNÍ
PERSONÁL
PERSONÁL
A
KLIDNÉ
PERSONÁL
POLOHA
OHLÁŠENÍ
POLOHA
A
V
PŘÍJEMNÝ
PŘÍJEMNÝ
PŘÍJEMNÝ
VNIKÁNÍ
PŘÍJEMNÝ
POLOHA
NA
VÝBORNÁ
POLOHA
BY
NEZDVOŘILÉ
BY
HOTEL
PERSONÁL
ZÁPACH
DOBRÁ
DOBRÁ
PRIVITAL
DOBRÁ
PŘÍJEMNÝ
HOTEL
NEFUNKČNÍ
OCHOTNÝ
OCHOTNÝ
RANNICH
OCHOTNÝ
VELMI
HOTELU
ŠPATNÉ
PROSTŘEDÍ
PROSTŘEDÍ
ZRUŠENÍ
PROSTŘEDÍ
DOBRÁ
VELMI
ABSENCE
CENTRA
CENTRA
ODEČTENA
CENTRA
CENTRA
SE
ATMOSFÉRA
BY
HLUK
PŘEDLOŽENA
HLUK
OCHOTNÝ
SNÍDANĚ
KLIDNÁ
VÝBORNÁ
POKOJI
ÚČTENKA
POKOJI
PROSTŘEDÍ
JE
PLÍSEŇ
KLIDNÉ
Diskuze
Výstupy poskytované programem budou použity k dalšímu zpracování v rámci výzkumného
projektu. Předně je nutno ověřit vliv extrakce stopslov na výsledky konkrétních úloh text
mining – pokročilejší automatické analýzy z hlediska odhalování mínění autorů vztažených
k pouze jednomu tématu, a to jak aplikací klasifikačních technik, tak i metod objevování
shluků podobných dokumentů (clustering).
Uvedené výsledky (Tabulky II–IV) ilustrují, jak jsou jednotlivé metody navrženy.
Seznamy pro některé metody jsou dost podobné (např. CHI a NGL), jiná obsahují dost
odlišná slova (např. MI a FFR).
Algoritmy pro výpočet NGL a GSS vycházejí z metody CHI, proto dosahují podobných
výsledků. Nutno podotknout, že seznamy nejsou identické a použití těchto zdánlivě
podobných metod může mít vliv na výsledky úloh (text mining), proto je potřeba ještě provést
experimenty. Metoda MI, jak bylo uvedeno, má tendenci zahrnovat mezi stopslova vzácné
výskyty slov. Tento fakt se odráží v uvedených výsledcích. ODDR zahrnuje do seznamu
slova, která se objevují pouze v jedné kategorii, zatímco v druhé se téměř nevyskytují (např.
výraz PLÍSEŇ má 40 výskytů ve třídě _N a pouze jeden výskyt ve třídě _P). FFR klade větší
důraz při svém výpočtu na proměnou A (tzn. počet recenzí ve třídě obsahující slovo), proto
jsou ve výstupu hojně zastoupeny slova s vyšší četností výskytu (spojky, předložky, aj.
a slova typická pro danou doménu – HOTEL, PERSONÁL,…). IG zařazuje do seznamu
slova, která nesou nejmenší hodnotu informace o dané třídě.
Závěr
Primárním cílem práce byla implementace vybraných metod pro automatizaci generování
stopslov. Podařilo se vytvořit program obsahující principy algoritmů feature selection, který je
obecně vhodný pro nasazení do oblasti úloh text mining. Tzn. výstupy jsou uplatnitelné
v kontextově rozdílných úlohách, což je zásadní rozdíl od obecných a veřejně dostupných
seznamů. Použitelnost programu byla ověřena na rozsáhlých textových datech.
Tento článek vznikl v rámci řešení projektu IGA 4/2013 Analýza vlivu předzpracování
textových dokumentů na výsledky úloh text mining.
Zdroje
DAVE, K., 2011: Study of feature selection algorithms for text-categorization. Las Vegas:
University of Nevada.
KADLEC, P., 2006: Stopslovo. In: Wikipedia: the free encyclopedia [online]. San Francisco
(CA): Wikimedia Foundation, 9. 3. 2013 [cit. 2013-10-06]. Cited from:
http://cs.wikipedia.org/wiki/Stopslovo.
LI, S., et al., 2009: A framework of feature selection methods for text categorization. In:
Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th
International Joint Conference on Natural Language Processing of the AFNLP: Volume 2Volume 2. Association for Computational Linguistics. pp. 692-700.
MAKREHCHI, M., KAMEL, M. S., 2008: Automatic extraction of domain-specific
stopwords from labeled documents. In: Advances in information retrieval. Springer Berlin
Heidelberg, pp. 222-233.
NOVÁK, Z., DAŘENA, F., 2012: Aplikace pro přípravu textových dat. [CD-ROM]. In:
PEFnet 2012. ISBN 978-80-7375-669-7.
UCHYIGIT, G., CLARK, K., 2008: Personalization techniques and recommender systems.
Singapore: World Scientific. ISBN 978-981-2797-025.
WEISS, S. M., et al., 2010: Fundamentals of predictive text mining. New York: SpringerVerlag, xiii, 226 p. Texts in computer science. ISBN 9781849962261-.
YANG, Y., PEDERSEN, J. O., 1997: A comparative study on feature selection in text
categorization. In: ICML. pp. 412-420.

Podobné dokumenty

odkazu zde - Boulevard restaurant

odkazu zde - Boulevard restaurant Výroba rumu Základem pro výrobu tzv. pravého rumu je melasa, vedlejší produkt vznikající při výrobě cukru z cukrové třtiny. Sklizeň začíná tím, že se opálí spodní uschlé listy. Pak přijdou na řadu ...

Více

TESE - Tezaurus pro vzdělávací systémy v Evropě

TESE - Tezaurus pro vzdělávací systémy v Evropě Kromě zde uvedených příkladů byly v české verzi TESE jako nedeskriptory použity i termíny odpovídající českému prostředí. Postavení termínů ovlivnily i požadavky na terminologickou návaznost na Evr...

Více

bizers vize svět

bizers vize svět kolem sebe a nemusí se nutně jednat o třídění knih nebo textů. Jedním z příkladů může být rozdělení výrobků do kategorií v internetovém obchodě, dalším zařazení dřeviny mezi stromy a dále mezi list...

Více

Univerzita Karlova v Praze Ústav informační studií a knihovnictví

Univerzita Karlova v Praze Ústav informační studií a knihovnictví Historie Internetu začíná před rokem 1962, v době, kdy počítače přestože jsou primitivní a s malou pamětí stojí stovky, tisíce dolarů. Firma RAND Corporation (http://www.rand.org) v této době řešil...

Více

Informace a Internet

Informace a Internet Historie Internetu začíná před rokem 1962, v době, kdy počítače přestože jsou primitivní a s malou pamětí stojí stovky, tisíce dolarů. Firma RAND Corporation (http://www.rand.org) v této době řešil...

Více