• Nie Znaleziono Wyników

Eksploracja tekstów (Text mining) Nguyen Sinh Hoa

N/A
N/A
Protected

Academic year: 2022

Share "Eksploracja tekstów (Text mining) Nguyen Sinh Hoa"

Copied!
62
0
0

Pełen tekst

(1)

Eksploracja tekstów (Text mining)

Nguyen Sinh Hoa

e-mail: hoa@pjwstk.edu.pl

(2)

Plan

Wprowadzenie

Zadania:

Przetwarzanie tekstów

Grupowanie

Kategoryzacja

Wizualizacja

Ekstrakcja informacji

(3)

Co to jest eksploracja tekstów?

Odkrywanie wiedzy w dokumentach napisanych w języku naturalnym.

Natural Language Processing

Wydobywanie informacji (Information

Extraction IE) (nazwy bytów, relacja między nimi).

Pozyskiwanie informacji (Information

Retrieval IR) (semantyka, znaczenie tekstu)

(4)

Language Identification

Classification

Clustering Summarization

Feature Selection

Podstawowe zadania w eksploracji

tekstów.

(5)

Eksploracja tekstów- Motywacja

80% danych w firmach jest w postaci dokumentów tekstowych

Emails, korespondecja z klientami i raporty.

Dokumenty naukowe

Portale społecznościowe

Strony internetowe

(6)

Wielkie bazy danych tekstowych w sieci

Web pages

Genome databases (GenBank, PIR)

Online dictionary (Oxford Eng. Dict., 600MB)

Emails or plain texts on a file system.

Wielkie, niestrukturalne, różnorodne i dynamiczne dane.

(7)

Text Mining

Przyklad zastosowania

Analiza emaili klienta

Analiza feedback z emaili klientów.

Analiza patentów

Analiza danych patentów do odkrywania trendu rozwoju technologii, wyjątkowych wynalazców czy projektów.

Streszczenie informacji

Podsumowanie wiadomości w gazetach dla serwisów informacyjnych.

(8)

Text Mining :

Przetwarzanie tekstów + Odkrywanie wiedzy

Text collection

Concept-based IF

• Grupowanie dokumentów

• Kategoryzacja dokumentów

• Wizualizacja grafu korelacji ...

Modele predykcyjne Odkrywanie asocjacji Odkrywanie wyjątków Analiza trendu

...

Document-based IF

Text

refining

Knowledge discovery Intermediate

form

Information Extraction

Domain dependent

Domain independent

(9)

Plan

Wprowadzenie

Zadania:

Przetwarzanie tekstów

Grupowanie

Kategoryzacja

Wizualizacja

Ekstrakcja informacji

(10)

Przetwarzanie tekstów - Zadania

Poziom słów (Word Level)

Poziom zdań (Sentence Level)

Poziom dokumentów (Document Level)

Poziom kolekcji dokumentów (Document-Collection Level)

Linked-Document-Collection Level

Poziom aplikacji (Application Level)

(11)

Przetwarzanie tekstów 1:

poziom słów

Słowa omijane (Stop-Words)

Skracanie (Stemming)

Częste N-gramy (Frequent N-Grams)

Słownik bliskoznacznych wyrazów

(WordNet)

(12)

Usuwanie zbłędnych słów:

Stop words

(13)

Skracanie słów do postaci podstawowej:

English Porter stemmer

(14)

English Porter Stemmer -

Reguły

(15)

Stemming – dwa typy błędu

(Pominięcie)

(Zmiana znaczenia)

(16)

Przetwarzanie tekstów 2 – Poziom zdań: n-gramy

N-grams: Sekwencja n kolejnych słów (np. „data mining” jest 2-gram)

Frequent n-grams: n-gramy, które występują często w dokumentach (więcej niż próg częstości MinFreq)

N-gramy są interesujące, bo zachowują kontekst, są proste i można je znaleźć za pomocą programowania dynamicznego.

(Alg. wyszukiwania częstych wzorców, np. Apriori )

(17)

Dokument reprezentowany za

pomocą n-grams

(18)

Google n-gram corpus

In September 2006 Google announced availability of n-gram corpus:

http://googleresearch.blogspot.com/2006/08/all-our-n-gram-are- belong-to-you.html#links

Some statistics of the corpus:

File sizes: approx. 24 GB compressed (gzip'ed) text files

Number of tokens: 1,024,908,267,229

Number of sentences: 95,119,665,584

Number of unigrams: 13,588,391

Number of bigrams: 314,843,401

Number of trigrams: 977,069,902

Number of fourgrams: 1,313,818,354

Number of fivegrams: 1,176,470,663

(19)

WordNet

WordNet składa się z 4 baz:

rzeczowniki, czasowniki, przymiotniki, przysłówki.

Każda baza zawiera

opisy słów: znaczenie, synonimy i relacje

między nimi.

(20)

mouth Is_a Location

face

peck goose limb

creature make

Is_a

Typ_obj sound Typ_subj

preen

Is_a

Part feather

Not_is_a plant

Is_a gaggle

Is_a

Is_a Part Part

catch

Typ_subj Typ_obj claw

wing Is_a

turtle beak

Is_a Is_a

strike Means

hawk

Typ_subj

opening Is_a

chatter

Means

Typ_subj Typ_obj

Is_a Is_a

clean

smooth

bill

Is_a

duck

Is_a

Typ_obj keep

animal quack

Is_a

Caused_by Purpose

bird

meat egg poultry

Is_a

supply

Purpose Typ_obj

Quesp hen

chicken

Is_a Is_a

leg

arm Is_a

Is_a Is_a

Typ_subj

fly Classifier

number

WordNet – excerpt from the graph

sense

sense

relation

26 relations 116k senses

(21)

Przetwarzanie tekstów 3 – poziom dokumentu

Streszczenie (summarization):

Skrócenie i streszczenie tekstu.

Wizualizacja

Segmentacja

Podzielić niestrukturalny tekst na

fragmenty o podobnej treści.

(22)

Streszczenie (Summarization)

Podstawowe fazy:

Analiza tekstu

Wyznaczanie ważnych punktów w tekście (tytuł, wprowadzenie, treść, linki,...).

Synteza otrzymanych informacji i ocena ważności zdań

Ważność zdania Z (linear weighting model):

Weight(Z)=LocationInText(Z) + CuePhrase(Z) + Statistics(Z) + AdditionalPresence(Z)

wiele metod do strojenia parametrów modelu.

Wynik streszczenia:

zdania (text units) o najwyższym stopniu ważności.

(23)

Streszczenie za pomocą selekcji

(Selection-based summarization)

(24)

Wizualizacja tekstu

Dzielenie tekstu na zdania.

Analiza składniowa (parsowanie z użyciem text parser)

Skojarzenie zaimków z nazwą obiektu.

‘he’, ‘she’, ‘they’, ‘him’, ‘his’, ‘her’, etc. Są skojarzone z nazwą własną.

Wydobywanie trójek [Podmiot-Orzeczenie-Dopełnienie]

[Subject-Predicate-Object] (SPO) w zdaniach .

Tworzenie grafu z trójek SPOs

Narysowanie grafu.

(25)

Wizualizacja: New Testament

(26)

Segmentacja tekstu (Text segmentation)

Dzielenie tekstu na zdania.

Prezentować zdanie jako wektor słów

Wyznaczyć podobieństwo między zdaniami.

Szukać fragmentu (sekwencja zdań) o maksymalnym stopniu podobieństwa wewnątrz segmentu i minimalnym

podobieństwie między segmentami.

(27)

Przetwarzanie tekstu 4 - Kolekcja dokumentów

Reprezentacja

Selekcja istotnych cech

Podobieństwo dokumentów

(28)

Bag-of-words document

representation

(29)

TF-IDF (term Frequency-

Inverse Document Frequency)

n(i,j) – liczba wystąpień i-tego słowa w j-tym dokumencie.

|D| - liczba dokumentów w korpusie

|{d: ti  d}| - liczba dokumentów zawierających ti

(30)

Reprezentacja tekstu

(31)

Macierz: term-dokument

(32)

Macierz:

term-dokument-etykieta

(33)

Podobieństwo dokumentów (Simility Evaluation)

Odległość kosinusowa:

 

 

T

l

lj T

l

li T

l

lj li

j i

j i

j i

w w

w w

d d

d d d

d sim

1

2 1

2 1

|

|

| ) |

, (

di dj

(34)

Podobieństwo dokumentu i

zapytania

(35)

Plan

Wprowadzenie

Zadania:

Przetwarzanie tekstów

Grupowanie

Kategoryzacja

Wizualizacja

Ekstrakcja informacji

(36)

Grupowanie dokumentów (Document clustering)

Klasteryzacja (unsupervised learning):

szukanie naturalnych grup dokumentów (etykiety nie są nieznane)

Popularne metody:

Grupowanie podziałowe k-Means

Grupowanie hierarchiczne aglomeracyjne.

Problem: Jak prezentować grupę

(etykietowanie)?

(37)

Algorytm K-Means

Dane:

Zbiór dokumentów (e.g. TFIDF vectors),

Funkcja odległości (e.g. cosine)

K (liczba grup)

For each of K groups initialize its centroid with a random document

While not converging

Each document is assigned to the nearest group (represented by its centroid)

For each group calculate new centroid (group mass point, average document in the group)

(38)

Grupowananie hierarchiczne (Algorytm podziałowy)

3, 5, 8

0, 2, 4, 7, 10, 11 1, 6, 9

0, 2, 4, 7, 11 10

2, 4, 11 0, 7

0 7

2

4 2, 11

11

1, 9

9

6

1

3, 8 5

3 8

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11

0, 1, 2, 4, 6, 7, 9, 10, 11

(39)

Plan

Wprowadzenie

Zadania:

Przetwarzanie tekstów

Grupowanie

Kategoryzacja

Wizualizacja

Ekstrakcja informacji

(40)

Kategoryzacja tekstów (Text Categorization)

Text categorization (supervised

learning): automatyczne przydzielenie dokumentów do wcześniej

zdefiniowanych kategorii.

Klasyfikacja dokumentów, webpage,

wiadomości.

(41)

Kategoryzacja dokumentów

labeled documents

unlabeled document

document category (label)

???

Machine learning

(42)

labeled documents

(from Yahoo! hierarchy)

Feature construction

unlabeled document document category (label)

??

Architektura systemu

vectors of n-grams

Document Classifier

Subproblem definition Feature selection

Classifier construction

Web

Internet Crawler

(43)

Kategoryzacja tekstów – Znane metody

Instance-Based Learning

K-Nearest Neighbors

Bayesian Learning

Decision Tree

Neural Networks

(44)

Algorytm k-NN (I)

Algorytm klasyfikujący nowy dokument d:

wybierz k dokumentów ze zbioru uczącego najbliższych d

wybierz kategorię, która najczęściej występuje wśród sąsiadów

Parametry:

funkcja odległości

sposób wyboru kategorii

parametr k

d ?

(45)

Algorytm k-NN(II)

Miara odległości:

euklidesowa

cosinus

Wybór kategorii:

najczęściej reprezentowana wśród sąsiadów

w zależności od odległości sąsiada:

Wybór k:

empiryczny

k zależne od:

Podobieństwo dokumentów w klastrze

Jednorodność dokumentów w klastrze

) (

) ,

, ( )

, (

D NN D

j i i j

C

k i

a D D sim D

C S

d ?

(46)

Klasyfikator Bayesowski

Znamy rozkład termów w dokumentach przypisanych do kategorii –> P(t|Ci)

Idea: użyć do przewidywania kategorii nieznanych dokumentów

Chcemy więc znać

nowy dokument przypiszemy do klasy:

P(D)

) )P(C C

| D) P(D

|

P(Ci i i

n

1 j

i j

i) P(t | C )

C

| P(D

)]

( )

| ( [ max arg

)]

| (

[ max

* arg

i i

C i

C P C D P D C P C

Cii

(47)

Drzewo decyzyjne

Drzewo testujące jedynie te cechy (frazy), które odróżniają dokumenty.

Konstrukcja indukcyjna na podstawie zbioru uczącego.

Zaleta: Drzewa decyzyjne znajdują słowa kluczowe odróżniające dokumenty o różnych etykietach.

(48)

Drzewo decyzjne

bankruptcy

conversion assets

sport

ekonomia

nauka

ekonomia polityka

>1 1

0

present absent >1 <=1

(49)

Zespół klasyfikatorów

Bagging: Agregacja wyników uzyskanych na tym samym korpusie przez różne klasyfikatory.

Liniowa kombinacja dwóch systemów wyszukiwania działa lepiej od każdego z nich, jeśli wyniki tych systemów:

mają możliwie takie same zbiory prawidłowych dokumentów

mają możliwie różne zbiory nieprawidłowych dokumentów

Kombinacja klasyfikatorów daje dobre wyniki, jeżeli ich właściwości się uzupełniają:

np. low precision with high recall + high precision with low recall

(50)

Ocena jakości modelu

(51)

Ocena działania

metryki:

precyzja:

czułość (recall):

F-measure:

fp tp

tp

fn tp

tp

(52)

Ocena działania

metryki:

accuracy:

fallout:

errors:

liniowa kombinacja:

N tn tp 

tn fp

fp

fn fp 

fn tn

fp

tp fp tn fn

tp   

   

(53)

Plan

Wprowadzenie

Zadania:

Przetwarzanie tekstów

Grupowanie

Kategoryzacja

Wizualizacja

Ekstrakcja informacji

(54)

Kartoo.com – visualization of search results

http://kartoo.com/

(55)

SearchPoint – re-ranking of search results

(56)

NewsMap – visualization of news articles

http://www.marumushi.com/apps/newsmap/newsmap.cfm

NewsMap

(57)

Plan

Wprowadzenie

Zadania:

Przetwarzanie tekstów

Grupowanie

Kategoryzacja

Wizualizacja

Ekstrakcja informacji

(58)

Ekstrakcja Job Openings from the Web

foodscience.com-Job2

JobTitle: Ice Cream Guru Employer: foodscience.com JobCategory: Travel/Hospitality JobFunction:Food Services JobLocation: Upper Midwest Contact Phone: 800-488-2611

DateExtracted: January 8, 2001 Source:

www.foodscience.com/jobs_midwest.html OtherCompanyJobs: foodscience.com-Job1

(59)

Ekstrakcja informacji: Metoda

Information Extraction =

segmentation + classification + association + clustering

Techniki:

October 14, 2002, 4:00 a.m. PT

For years, Microsoft CorporationCEOBill Gatesrailed against the economic philosophy of open-source software with Orwellian fervor, denouncing its communal licensing as a

"cancer" that stifled technological innovation.

Today, Microsoftclaims to "love" the open- source concept, by which software code is made public to encourage improvement and development by outside programmers. Gates himself says Microsoftwill gladly disclose its crown jewels--the coveted code behind the Windows operating system--to select customers.

"We can be open source. We love the concept of shared source," said Bill Veghte, a

MicrosoftVP. "That's a super-important shift for us in terms of code access.“

Richard Stallman, founderof the Free Software Foundation, countered saying…

Microsoft Corporation CEO

Bill Gates Microsoft Gates Microsoft Bill Veghte Microsoft VP

Richard Stallman founder

Free Software Foundation

*

*

*

*

Job Openings

(60)

“Hubs and authorities exhibit what could be called a mutually

reinforcing relationship”

Iterative relaxation:

p q q q p q

q p

q p

: :

) ( Hub )

( Authority

) ( Authority )

( Hub

Hubs Authorities

Hubs and Authorities

(Kleinberg 1998)

(61)

PageRank

Stworzony przez założycieli (Larry Page i Sergey Brin) Google w roku 1998.

Cel: ocenić ważność stron internetowych

Ocena strony zależy od ważności stron, z którymi jest połączona.

Metoda: Algorytm PageRank: wyzanczenie macierzy wag grafu sąsiedztwa.

PageRank może być obliczony efektywnie za pomocą algorytmu iteracyjnego

.

(62)

Literatura

KRDL’s Text Mining site

http://textmining.krdl.org.sg/resources.html

KDNuggets:Data Mining and

Knowledge Discovery Resources

http://www.KDNuggets.com

Cytaty

Powiązane dokumenty

An efficient exact adjoint of the parallel mit general circulation model, generated via automatic differentiation. An XML-based platform for semantic transformation of

This simplified structural model can be coupled with a fluid model, like the 3D lifting line method of Leloup [3] to provide information about kite

Współczesny kryzys małżeństwa rodziny i występujące w niej sytuacje kry- zysowe, których symptomy stają się coraz bardziej wyraźne, mają bezpośrednie przełożenie na

Można by więc powiedzieć, że w miarę postępu akcji rozrastają się coraz bardziej obrazy, pomnaża się liczba współdziałających osób, urozmaica się tło..

Firmy fintech mogą również skorzystać z umieszczania blokad cyfrowych na kopiach swoich prac, aby zapewnić dodatkowe bezpieczeństwo. Obejście blokad cyfrowych w

Although, the usual Hilbert space approach to quantum mechanics is very pop- ular it is not the best approach for developing a theory of quantization in any canonical coordinate

With the change history view, we aim to learn whether (i) production code has an associated (unit) test; and (ii) whether these are added and modified at the same time.. As such,

This research will focus on the design of the skin of the dwelling as the filter between the inside and the outside and as the face to the public.. This text should clarify the