Dobývání znalostí z textů text mining Text mining - data mining na nestrukturovaných textových dokumentech 2 možné přístupy: Předzpracování dat + běžné algoritmy pro data mining Speciální algoritmy pro text mining 2 typy úloh: Vyhledávání informací (information retrieval) práce na úrovni celých dokumentů Extrakce informací (information extraction) analýza obsahu dokumentu P. Berka, 2011 1/18
Reprezentace dokumentu (předzpracování) Nutnost převést volný text na řádek v datové matici: Lexikální analýza (nalezení jednotlivých slov) Lematizace (převedení slova na základní gramatický tvar) ignorování stop-slov (slov, která nenesou informaci o obsahu textu typicky spojky, předložky) řádek v datové matici - vektor který má tolik složek, kolik je možných termínů (bag-of-words). Termíny kódovány: binárně tedy výskyt/nevýskyt v dokumentu, počtem výskytů v dokumentu, @relation analcatdata-authorship @attribute a INTEGER @attribute all INTEGER @attribute also INTEGER @attribute an INTEGER @attribute and INTEGER @attribute any INTEGER @attribute are INTEGER @attribute as INTEGER @attribute at INTEGER @attribute be INTEGER..... @attribute Author {Austen,London,Milton,Shakespeare} @data 46,12,0,3,66,9,4,16,13,13,4,8,8,1,0,1,5,0,21,12,16,3,6,62,3,3,30,3,9,14,1,2,6,5,0,1 0,16,2,54,7,8,1,7,0,4,7,1,3,3,17,67,6,2,5,1,4,47,2,3,40,11,7,5,6,8,4,9,1,0,1,Austen P. Berka, 2011 2/18
pomocí hodnoty TFIDF (term frequency inverse document frequency) TFIDF = n * log M m n je počet výskytů termínu v dokumentu m je počet výskytů termínu v celé kolekci M je počet dokumentů v kolekci Výhody: invariantní vůči pořadí termínů v dokumentu nevyžaduje předzpracování dat Nevýhody: nezachytí víceslovné fráze lze řešit tak, že se místo jednoho termínu kódují fráze, nebo použitím n-gramů např. Mistr Jan Hus: bigramy Mistr Jan, Jan Hus trigramy Mistr Jan Hus nevyužije strukturu dokumentů lze řešit pomocí vah termínů příliš veliká dimenze vektorů (~ 10 000) - je třeba řešit metodami předzpracování selekce atributů metoda obálky = využití hrubé síly počítačů metoda filtru = vyhodnocení relevance jednotlivých termínů transformace atributů např. indexace latentní sémantiky: P. Berka, 2011 3/18
reprezentace dokumentů pomocí menšího počtu konceptů př. předzpracování v SAS text mineru: text parsing P. Berka, 2011 4/18
text filtering P. Berka, 2011 5/18
text topic P. Berka, 2011 6/18
Podobnost dokumentů Pro dva dokumenty x 1 ={x 11,x 12,, x 1m } x 2 ={x 21,x 22,, x 2m } Kosínová míra podobnosti sim C (x 1, x 2 ) = cos (x 1, x 2 ) = x 1 x 2 x 1 x 2 Míra symetrického překrytí sim S (x 1, x 2 ) = j min(x 1j,x 2j ) min( j x 1j, j x 2j ) Diceho míra podobnosti sim D (x 1, x 2 ) = 2 x 1 x 2 x 1 + x 2 = 2 x 1 x 2 j x 1j + j x 2j Jacardova míra podobnosti sim J (x 1, x 2 ) = x 1 x 2 x 1 x 2 = x 1 x 2 j x 1j + j x 2j - x z kde x 1 x 2 = m j=1 x 1j x 2j x = x x = m j=1 x j 2 P. Berka, 2011 7/18
A) Úloha vyhledávání informací (information retrieval) dokument chápan jako celek Information retreival v klasickém smyslu: nalézt dokumenty, které nejlépe odpovídají zadanému dotazu 1. booleovský model = vyhledávací podmínka tvořena pomocí logických spojek AND, OR a NOT neumožňuje vzít do úvahy důležitost termínů v dokumentu neumožňuje vzít do úvahy důležitost termínů v dotazu nabízí jen hrubou škálu (dokument vyhovuje/nevyhovuje) 2. fuzzy rozšíření = využití více hodnot než TRUE, FALSE např. pro dotaz Q zadaný pomocí vážených termínů t j :v j a t k :v k a dokument D obsahující stejné termíny (s vahami w) t j :w j a t k :w k, bude míra relevance R(D,Q) dokumentu D vzhledem k dotazu Q pro dotaz D daný konjunkcí t j :v j AND t k :v k R(D,Q) = min (v j w j,v k w k ) a pro dotaz D daný disjunkcí t j :v j OR t k :v k R(D,Q) = max (v j w j,v k w k ). P. Berka, 2011 8/18
3. vektorový model = využití výše uvedených měr podobnosti hodnocení výsledků vyhledávání přesnost (precision) a úplnost (recall) TP TP Přesnost = Úplnost = TP + FP TP + FN Vztah přesnosti a úplnosti úzké dotazy (AND) naleznou relativně malý počet dokumentů, které jsou většinou relevantní, široké dotazy (OR) naleznou relativně velký počet dokumentů, které ale nebývají většinou relevantní P. Berka, 2011 9/18
Text mining na úrovni dokumentů: text categorization klasifikace dokumentů do více tříd document clustering seskupování dokumentů na základě podobnosti document filtering klasifikace dokumentů do 2 tříd (zajímavé vs. nezajímavé, spam vs. ham) duplication detection hledání podobných dokumentů SAS Document duplication detection P. Berka, 2011 10/18
sentiment analysis klasifikace dokumentů dle emočního obsahu (obvykle 3 třídy: pozitivní, negativní a neutrální emoce) SAS sentiment analysis P. Berka, 2011 11/18
Systémy a algoritmy pro vyhledávání informací algoritmus SMART (System for Manipulating And Retrieving Text) vektorová reprezentace, TFIDF, kosínovou míru a míru symetrického překrytí (Salton, 1971) naivní bayesovský klasifikátor pro klasifikaci dokumentů model založený na pravděpodobnostech P(i-té_slovo_ je_ X dokument_patří_do_třídy) (Lewis, 1991), (Mitchell, 1997), (Grobelnik, Mladenic, 1998) Kohonenova neuronová síť SOM - geometrická interpretace Kohonenovy mapy se převádí na interpretaci pojmovou; čím více jsou dva shluky od sebe v Kohonenově mapě dále, tím rozdílnější obsah odpovídá příslušným dokumentům WebSOM (Honkela, 1996), (Kohonen, 1998) - kategorizace dokumentů na Internetu genetické algoritmy - dokumenty reprezentovány bitovými řetězci (chromozomem) kódujícími výskyt (1) nebo nevýskyt (0) určitého termínu, funkce fit bude odpovídat některé míře podobnosti (např. Jaccardově) mezi dokumentem a dotazem, rovněž reprezentovaným bitovým řetězcem (Gordon, 1988) P. Berka, 2011 12/18
SAS Text Miner P. Berka, 2011 13/18
P. Berka, 2011 14/18
B) Úloha extrakce informací (information extraction) analýza nestrukturovaného textu za účelem nalezení určitého typu informace 1. text summarization: vytvoření souhrnu textu např: SAS Text Summarization Vybírá důležité věty z textu - důležitost je dána výskytem uživatelem definovaných konceptů, čím více konceptů ve větě je, tím je důležitější. Při definici konceptů je možné využít regulární výrazy a gramatická pravidla Možnosti shrnutí: Celý dokument, odstavce nebo sekce 2. named entity recognition: hledání atomických elementů typu jméno osoby, jméno organizace, místní název, časový údaj a pod.) např. (Labský, Svátek, 2007) v rámci projektu MedIEQ P. Berka, 2011 15/18
3. template mining: hledání sekvence slov (obvykle zadáno formou tzv. regulárního výrazu) např. SAS Content Categorization: klasifikační koncept definovaný seznamem slov nebo pomocí regulárních výrazů gramatický koncept definovaný lingvistickými pravidly definice gramatického konceptu nalezení gramatického konceptu P. Berka, 2011 16/18
Hledání přídavných jmen: přesnost i úplnost je 13/17=0.75 4. hledání asociací: mezi výskytem různých frází v souboru dokumentů A S,.. píše-li se o A, píše se současně i o B Systém FACT (Finding Associations in Collections of Text) - aplikace na zprávy o politických událostech (Feldman, Hirsh, 1997) {Iran,USA} Reagan Systém Document Explorer - aplikace na ekonomické texty (Feldman a kol, 1998) america online inc, bertelsmann ag joint venture (13, 0.72) Rozhodující pro provádění automatické extrakce informací je dostatečné množství doménových znalostí. V případě systému FACT to byly geopolitické znalosti a znalosti linguistické (synonyma k vybraným termínům) v případě systému Document Explorer se jednalo o znalosti o firmách. P. Berka, 2011 17/18
Systémy pro text mining Intelligent Miner for Text firmy IBM http://www.software.ibm.com/ Text Analyst firmy Megaputer Intelligence http://www.megaputer.com Text Miner (SAS Institute Inc.) http://www.sas.com/technologies/analytics/datamining/ textminer Po vhodném předzpracování textů do podoby relační tabulky lze použít i běžné systémy pro dobývání znalostí z databází. weka P. Berka, 2011 18/18