Sunteți pe pagina 1din 24

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Reg˘asirea Informat¸iilor pe WEB

Curs 11: Web Mining – Tehnici Graph Mining

¸s.l. dr. ing. Alexandru ARCHIP alexandru.archip@cs.tuiasi.ro

Facultatea de Automatic˘a ¸si Calculatoare, Ia¸si

an universitar: 2014 – 2015

Not¸iuni recapitulative

Cuprins

Descrierea problemei

Not¸iuni fundamentale

1 Not¸iuni recapitulative

2 Descrierea problemei

3 Not¸iuni fundamentale Definit¸ii

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

4 Algoritmi ¸si metode de analiz˘a a grafurilor Backward link count Forward link count Algoritmul PageRank Algoritmul HITS

5 Discut¸ii

Bibliografie

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Recapitulare grafuri

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Completat¸i definit¸iile

1 Un graf reprezint˘a

Pentru un graf, se define¸ste gradul unui nod ca fiind

2 Un digraf reprezint˘a unui nod ca fiind

3 Un graf bipartit reprezint˘a

4 Dou˘a grafuri sunt izomorfe dac˘a

Pentru un digraf, se define¸ste gradul interior al ¸si gradul exterior al unui nod ca fiind

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Ce se poate rezolva utilizˆand tehnici de graph mining ?

Scenariul interact¸iunii cu utilizatorul

Utilizatorul introduce un set de cuvinte cheie.

Pe baza acestor cuvinte cheie se aplic˘a o metod˘a de c˘autare pentru a obt¸ine un set de rezultate.

Rezultatele pasului anterior, sortate ˆın ordinea relevant¸ei, sunt prezentate utilizatorului.

ˆ

Intrebarea pentru care dorim s˘a afl˘am r˘aspunsul

CUM DETERMIN RELEVANT¸A DOCUMENTELOR STOCATE RELATIV LA UN SET DE CUVINTE CHEIE?

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Definit¸ii

Definit¸ii

Graph Mining

Analiza structural˘a (sau analiza datelor de structur˘a eng: structure mining sau structured data mining ) reprezint˘a acea metod˘a de analiz˘a a datelor ce se axeaz˘a pe modul de organizare a seturilor de date. Graph Mining (analiza grafurilor ) reprezint˘a un caz particular de analiz˘a structural˘a.

Tipuri de analiz˘a a grafurilor [6]

axate pe obiecte (vˆarfuri) axate pe leg˘aturi (muchii) ierarhizarea obiectelor clasificarea obiectelor
axate pe obiecte (vˆarfuri)
axate pe leg˘aturi (muchii)
ierarhizarea obiectelor
clasificarea obiectelor
clusterizarea obiectelor
identificarea unui anumit obiect
predict¸ia existent¸ei unor link-uri
predict¸ia tipului de link
predict¸ia num˘arului de link-uri
axate pe grafuri ˆın ansamblu
identificarea subgrafurilor frecvente
clasificarea grafurilor

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Definit¸ii

Exemple Graph Mining

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Ierarhizarea obiectelor [6]

1 Dat fiind un set de pagini/documente WEB ce satisfac un anumit criteriu de c˘autare, care este ordinea acestora din punct de vedere al conectivit˘at¸ii ˆın cadrul WWW?

2 Dat fiind un grup de autori/co-autori ¸si o list˘a de lucr˘ari, care sunt grupurile de lucru ¸si/sau ariile de interes?

3 Dat˘a fiind o ret¸ea social˘a, care este cel mai popular membru al ret¸elei?

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Definit¸ii

Definit¸ii (2)

Site director

Site-ul director (hub) reprezint˘a acel tip de site/pagin˘a web ce furnizeaz˘a un num˘ar foarte mare de leg˘aturi c˘atre pagini considerate relevante din punct de vedere al informat¸iei.

Site autoritate

Site-ul autoritate reprezint˘a acel tip de site/pagin˘a web ce cont¸ine informat¸ii relevante pentru domeniul pentru care a fost dezvoltat.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Backward link count

Backward link count

Principiul metodei

Intuitiv, o pagin˘a referit˘a de un num˘ar mare de pagini este considerat˘a a fi mai relevant˘a decˆat una referit˘a de un num˘ar mai mic de link-uri (ˆın acela¸si context).

Metoda se bazeaz˘a practic pe principiul cit˘arii.

Metoda se bazeaz˘a practic pe principiul cit˘arii . Metrica metodei Pentru o pagin˘a oarecare P, scorul

Metrica metodei Pentru o pagin˘a oarecare P, scorul este dat de num˘arul paginilor care o refer˘a (WEB-ul mapat ca digraf : gradul interior al nodului P).

( WEB-ul mapat ca digraf : gradul interior al nodului P). Dezavantaj Nu se poate cunoa¸ste

Dezavantaj

Nu se poate cunoa¸ste topologia exact˘a a WEB-ului.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Forward link count

Forward link count

Principiul metodei

O pagin˘a ce refer˘a un num˘ar mare de pagini WEB este considerat˘a o pagin˘a valoroas˘a.

Exemple de astfel de pagini/documente WEB: directoarele WEB.

de astfel de pagini/documente WEB: directoarele WEB . Metrica metodei Pentru o pagin˘a oarecare P, scorul

Metrica metodei Pentru o pagin˘a oarecare P, scorul este dat de num˘arul paginilor referite de P (WEB-ul mapat ca digraf : gradul exterior al nodului P).

( WEB-ul mapat ca digraf : gradul exterior al nodului P). Poate fi util˘a pentru identificarea,

Poate fi util˘a pentru

identificarea, ˆın conjunct¸ie cu alt¸i factori, a paginilor de tip index de resurse WEB.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank

Generalit˘at¸i

Familie de algoritmi orientat¸i pe asignarea de valori numerice ponderate pentru paginile WEB ˆın vederea obt¸inerii unor informat¸ii de tip relevant¸˘a.

Algoritmii au fost dezvoltat¸i de Larry Page ¸si Sergey Brin – 1998.

Corelat¸i cu alte metrici, sunt la baza motorului de c˘autare Google ˆın determinarea relevant¸ei/important¸ei unei pagini.

PageRank – marc˘a ˆınregistrat˘a a Google.

Procesul PageRank – patent atribuit Universit˘at¸ii Stanford

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (2)

Principiul algoritmilor

Sistem de votare : Dac˘a pagina A indic˘a pagina B, atunci pagina B a primit un vot de ˆıncredere din partea paginii A.

O pagin˘a pentru care nu exist˘a voturi nu poate fi considerat˘a relevant˘a.

Algoritmi recursivi : PageRank-ul unei pagini depinde de num˘arul ¸si de metrica PageRank a paginilor care o refer˘a.

Motorul de c˘autare Google

Este orientat pe ponderarea voturilor. Se bazeaz˘a pe faptul c˘a voturile primite din partea unor
Este orientat pe ponderarea voturilor.
Se bazeaz˘a pe faptul c˘a voturile primite din partea unor pagini cu un grad
ridicat de ˆıncredere sunt mai valoroase.
2005 – implementeaz˘a un nou atribut pentru elementul HTML link:
rel=“nofollow” (elementul anchor ).

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (3)

Algoritmul PageRank Algoritmul PageRank (3) Scenariu 1 Avem o subpartit¸ie din WEB format˘a din 4

Scenariu 1 Avem o subpartit¸ie din WEB format˘a din 4 documente WEB – primul document este referit de toate celelalte.

WEB – primul document este referit de toate celelalte. Formula de calcul P R ( A

Formula de calcul

PR(A) = PR(B)+ PR(C )+ PR(D) (1)

( B ) + P R ( C ) + P R ( D ) (

Figura 1: Subpartit¸ie graf WEB (modelul simplist)

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (4)

Algoritmul PageRank Algoritmul PageRank (4) Scenariu 2 Avem o subpartit¸ie din WEB format˘a din 4

Scenariu 2 Avem o subpartit¸ie din WEB format˘a din 4 documente WEB – leg˘aturile dintre pagini sunt date de Figura 2.

WEB – leg˘aturile dintre pagini sunt date de Figura 2. Formula de calcul Ecuat¸ia (1) devine:
Formula de calcul Ecuat¸ia (1) devine: PR(A) = PR(B) +PR(C )+ PR(D) (2) 2 3
Formula de calcul
Ecuat¸ia (1) devine:
PR(A) = PR(B) +PR(C )+ PR(D)
(2)
2
3
(1) devine: PR(A) = PR(B) +PR(C )+ PR(D) (2) 2 3 Figura 2: Subpartit¸ie graf WEB

Figura 2: Subpartit¸ie graf WEB

(modelul extins)

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (5)

Formula de calcul – cazul simplist ˆ In cazul general, ecuat¸ia (2) devine: PR(P) PR(A)
Formula de calcul – cazul simplist
ˆ
In cazul general, ecuat¸ia (2) devine:
PR(P)
PR(A) =
,
(3)
LC (P)
P→A
unde: LC (P) indic˘a num˘arul de leg˘aturi ce pleac˘a din pagina P (gradul exterior al
nodului P).

Considerente suplimentare

Un vot indirect are un coeficient de ˆıncredere mai sc˘azut decˆat un vot direct, deci voturile sunt transferate dup˘a un anumit coeficient d – numit factor de amortizare.

Nivelul init¸ial de ˆıncredere este acela¸si pentru toate paginile: 1–d.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (6)

Formula de calcul – cazul simplist (2) Ecuat¸ia (3) devine: PR(P) PR(A) = (1 −
Formula de calcul – cazul simplist (2)
Ecuat¸ia (3) devine:
PR(P)
PR(A) = (1 − d) + d·
(4)
LC (P)
P→A
Observat¸ii:
Parametrul PageRank (PR) este un parametru dinamic.
ˆ
In condit¸iile ˆın care toate paginile analizate primesc init¸ial o aceea¸si valoare a
PR, dac˘a PR se recalculeaz˘a permanent pentru toate paginile indexate,
atunci valorile PR vor tinde spre stabilizare.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (7)

Formula de calcul – cazul complex

Presupune navigarea paginilor WEB prin salturi. Dup˘a ce a fost atins un anumit num˘ar de
Presupune navigarea paginilor WEB prin salturi.
Dup˘a ce a fost atins un anumit num˘ar de link-uri (pornind de la o pagin˘a
init¸ial˘a), se va alege spre vizitare o alt˘a pagin˘a selectat˘a aleator (modelul
random surfer ).
Valoarea PageRank (PR) ar reprezinta ˆın acest caz num˘arul de acces˘ari al
paginii respective ˆıntr-un eventual browser WEB.
Tranzit¸iile ˆıntre leg˘aturile prezente ˆın aceea¸si pagin˘a sunt ˆın mod egal
probabile.
Tranzit¸iile aleatoare pentru toate nodurile WEB au aceea¸si probabilitate:
q = (1 − d) = 0.15.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (8)

Formula de calcul – cazul complex (2) ˆ In aceste condit¸ii, ecuat¸ia (4) se rescrie
Formula de calcul – cazul complex (2)
ˆ
In aceste condit¸ii, ecuat¸ia (4) se rescrie ca:
PR(P)
PR(A) =
N q + (1 − q)·
,
(5)
LC (P)
P→A
unde
N – reprezint˘a num˘arul total de pagini din mult¸imea de lucru.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (9)

Formula de calcul – cazul complex (4) Considerˆand ecuat¸ia (5), pentru o mult¸ime de N
Formula de calcul – cazul complex (4)
Considerˆand ecuat¸ia (5), pentru o mult¸ime de N pagini valorile PageRank se vor
determina utilizˆand:
 
q
l(p 1 , p 1 )
l(p 1 ,
p
2 )
l(p 1 , p N )
N
q
l(p 2 , p 1 )
l(p 2 , p 2 )
l(p 2 , p N )
  
 
R =
 
N
 + (1 − q)·
· R
(6)
 
 
q
l(p N , p 1 )
l(p N , p 2 )
l(p N , p N )
N

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul PageRank

Algoritmul PageRank (10)

Formula de calcul – cazul complex (5)

ˆ In ecuat¸ia (6) s-au utilizat urm˘atoarele notat¸ii: R reprezint˘a vectorul PageRank al mult¸imii de
ˆ
In ecuat¸ia (6) s-au utilizat urm˘atoarele notat¸ii:
R reprezint˘a vectorul PageRank al mult¸imii de pagini de lucru:
PR(p 1 )
 PR(p 2 ) 
R =
PR(p N )
l(p i , p j ) reprezint˘a funct¸ia de adiacent¸˘a:
l(p i , p j ) = 0, dac˘a pagina p j nu indic˘a pagina p i
N
i=1 l(p i , p j ) = 1

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul HITS

Algoritmul HITS

Generalit˘at¸i

Algoritmul a fost dezvoltat de Kleinberg, ˆın 1998.

Denumirea complet˘a: Hypertext Induced Topic Search

SCOP: determinarea site-urilor autoritate ¸si a celor de tip director pe un anumit subdomeniu, prin analiza unei subpartit¸ii a WEB-ului.

Principiul algoritmului

Site-urile director (hub-uri) indic˘a mai multe autorit˘at¸i.

Autorit˘at¸ile sunt referite de mai multe site-uri director.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul HITS

Algoritmul HITS (2)

Scopul algoritmului

Algoritmul analizeaz˘a structura subgrafului S determinat de o anumit˘a interogare pentru a identifica site-urile
Algoritmul analizeaz˘a structura subgrafului S determinat de o anumit˘a
interogare pentru a identifica site-urile director ¸si pe cele autoritate incluse
ˆın S.
Subgraful S se construie¸ste astfel:
fie R mult¸imea de pagini rezultat pentru o anumit˘a interogare;
init¸ial: S ← R;
se adaug˘a la S toate paginile indicate de pagini incluse ˆın R;
se adaug˘a la S toate paginile care indic˘a pagini incluse ˆın R.

Not¸iuni recapitulative

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Algoritmul HITS

Algoritmul HITS (3)

Bibliografie Algoritmul HITS Algoritmul HITS (3) Algoritmul iterativ Pentru fiecare pagin˘a p din S, se

Algoritmul iterativ Pentru fiecare pagin˘a p din S, se ment¸in 2 valori:

Scorul autoritate: a p (ˆın cadrul unui vector a, locat¸ia p). Scorul hub: h p (ˆın cadrul unui vector h, locat¸ia p).

Init¸ial:

Actualizarea vectorilor a ¸si h se realizeaz˘a conform ecuat¸iilor de mai jos:

a p = h p = 1

a p = h q

q:qp

h p = a q

q:pq

(7)

(8)

Vectorii sunt memorat¸i ˆın form˘a normalizat˘a.

Not¸iuni recapitulative

Discut¸ii

Descrierea problemei

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

Problem˘a

F˘ar˘a a calcula efectiv, care sunt, conform ecuat¸iei (4), valorile PageRank pentru 2 pagini ce se indic˘a una pe alta?

Not¸iuni recapitulative

Descrierea problemei

Bibliografie

Not¸iuni fundamentale

Algoritmi ¸si metode de analiz˘a a grafurilor

Discut¸ii

Bibliografie

1 M. Craus et al., Reg˘asirea Informat¸iilor pe WEB, Editura POLITEHNIUM, Ia¸si 2005, capitolul 4

3 Usama Fayyad, Gregory Piatetsky-shapiro & Padhraic Smyth. From Data Mining to Knowledge Discovery in Databases. AI Magazine, vol. 17, pages 37 – 54, 1996.