Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università...
-
Upload
sofia-proietti -
Category
Documents
-
view
214 -
download
1
Transcript of Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università...
![Page 1: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/1.jpg)
Algoritmi di classificazione e reti neuraliSeminario su clustering dei dati – Parte I
Università di Roma“La Sapienza”
Dipartimento di Informatica e Sistemistica
Corso di Laurea in “Ingegneria Gestionale”
A.A. 2011-2012
a cura di Silvia Canale
contatto e-mail: [email protected]
![Page 2: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/2.jpg)
2
Definizione del problema di clustering di dati
Apprendimento automatico e data mining
Schema generale di una procedura di clustering
Applicazioni del clustering di dati
Definizioni preliminari e rappresentazione dei dati
Misure di similarità e di dissimilarità – distanze
Problema della partizione in clique
definizione e formulazione
algoritmo dei piani di taglio
ARGOMENTI DEL SEMINARIO
![Page 3: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/3.jpg)
3
DEFINIZIONE DEL PROBLEMA
CLUSTERING: classificazione di oggetti sulla base delle similarità percepite
Gli oggetti sono descritti:
- dagli attributi che lo definiscono (misure oggettive o soggettive)
- dalle relazioni con gli altri oggetti
Lo scopo è quello di determinare un’organizzazione degli oggetti che sia:
- valida
- facile da determinare
Un cluster è un gruppo di oggetti simili (criterio di omogeneità). Oggetti che appartengono a cluster diversi non sono simili (criterio di separazione).
![Page 4: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/4.jpg)
4
DEFINIZIONE DEL PROBLEMA
Un cluster è un gruppo di oggetti simili.
SeSe gli oggetti sono puntipunti in uno spazio di distanza spazio di distanza alloraallora possiamo dare la seguente definizione:
Un cluster è un sottoinsieme di punti tali che la distanza tra due punti qualsiasi del cluster è minore della distanza tra un qualsiasi punto del cluster ed un punto esterno al cluster.
Sia X uno spazio di oggetti e d una distanza definita su X.
Indicheremo con (X,d) lo spazio di distanza definito da d su X.
Un sottoinsieme V X è un cluster se e solo se
d(i,j) d(k,l) per ogni i,j,k V, l V
1
11
4
4
5
![Page 5: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/5.jpg)
5
APPRENDIMENTO AUTOMATICO
Apprendimento: Processo di ragionamento induttivoragionamento induttivo che permette di passare dalle osservazioni alle regole generali (tipico dell’uomo che impara dall’esperienza)
Automatico: Definizione automatica, distinta da quella naturale, delle regole generali a partire dalle osservazioni (dati sperimentali)
Scopo: Estrazione di informazione interessante dai dati nuova (non è qualcosa di già noto, analisi esplorativa) oppure
attesa (ipotesi a priori da convalidare, analisi confermativa) implicita: presente nei dati analizzati ma non immediatamente
accessibile potenzialmente utile: può essere utilizzata per prendere delle
decisioni
REGOLE
OSSERVAZIONI
Processo deduttivo
Processo induttivo
INFORMAZIONE
![Page 6: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/6.jpg)
6
APPRENDIMENTO AUTOMATICO
Processo automatico di estrazione di informazioni su un sistema fisico S incognito partendo da un insieme finito di n osservazioni.
L’insieme { v1, v2, …, vn } prende il nome di training set.
Apprendimento non supervisionatonon supervisionato (clustering): Il sistema S non ha ingressi e lo scopo è determinare una regola che metta in relazione le osservazioni del training set sulla base di una misura di similarità definita.
Apprendimento supervisionatosupervisionato (analisi discriminante): Il sistema S riceve gli ingressi { c1, c2, …, cn
} e lo scopo è determinare una regola che metta in relazione le osservazioni del training set con gli ingressi.
S
v1
v2
v3
vn
c1
c2
c3
cn
![Page 7: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/7.jpg)
7
ESTRAZIONE DELLA CONOSCENZA
Pulizia ed integrazione
dei dati
Data Mining
Valutazioneregole
Database
Selezione e trasformazione
dei dati
Informazione
Datawarehouse
Regole
APPRENDIMENTO AUTOMATICO
![Page 8: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/8.jpg)
8
APPLICAZIONI
Segmentazione di immagini – partizione di un’immagine in regioni che siano omogenee rispetto ad una proprietà di interesse (es. intensità, colore, struttura, …)
Riconoscimento di oggetti e caratteri – Analisi di immagini allo scopo di riconoscere particolari strutture
Information retrieval – Processo di raccolta e recupero automatico di informazioni (es. libri e riviste di una biblioteca)
Segmentazione di grandi database in gruppi omogenei di dati
Classificazioni di documenti web
Analisi predittiva in Customer Relationship Management- Customer profiling- Customer retention- Market segmentation- … ….E MOLTE ALTRE
![Page 9: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/9.jpg)
9
CLUSTERING – SCHEMA GENERALE
1. Rappresentazione dei dati
• Definizione del numero, del tipo e della scala delle caratteristiche (o attributi)
• Definizione del numero di cluster (o classi)
• Selezione delle caratteristiche (opzionale)
• Estrazione delle caratteristiche (opzionale)
2. Definizione di una misura di similarità sull’insieme dei dati
3. Applicazione di un algoritmo di clustering
4. Astrazione sui dati
5. Valutazione dei risultati
studio dell’andamento dei cluster
analisi della validità dei cluster confronto esterno confronto interno controllo relativo
DESCRIZIONE COMPATTA DESCRIZIONE COMPATTA E SINTETICA DEI CLUSTERE SINTETICA DEI CLUSTER
![Page 10: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/10.jpg)
10
DEFINIZIONI PRELIMINARI
Un algoritmo di clustering partizionale raggruppa le osservazioni del training set in cluster sulla base di una misura di similarità definita sull’insieme delle coppie di osservazioni.
Due tipi di algoritmi di clustering partizionale:
- clustering di tipo “hard”: un’osservazione è assegnata ad un solo cluster;
- clustering di tipo “fuzzy”: un’osservazione ha un grado di appartenenza per ciascuno dei cluster individuati.
Le osservazioni possono essere rappresentate in due formati standard:
matrice delle istanze di dato
matrice delle similarità
![Page 11: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/11.jpg)
11
MATRICE DELLE ISTANZE
Un’osservazione (o istanza) v è rappresentata da un vettore di m caratteristiche (o attributi).
v1
v2
v = ……vm
L’insieme X = { v1, v2, …, vn } delle osservazioni viene
rappresentato come una matrice n x m detta matrice delle istanze.
X =
nm
n2
n1
2m
22
21
1m
12
11
v .... v v
.... .... .... ....
v .... v v
v .... v v
![Page 12: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/12.jpg)
12
TIPI DI DATO
Un’istanza può rappresentare un oggetto fisico oppure un concetto astratto.
Un attributo può essere di diversi tipi:
quantitativo
• continuo (es. peso, larghezza, temperatura)
• discreto (es. età di un individuo)
• intervallo (es. durata di un evento)
qualitativo
• nominale (es. colori)
• ordinato (es. intensità di un suono, valutazione di una sensazione)
Sono inoltre possibili altre rappresentazioni delle istanze.
![Page 13: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/13.jpg)
13
MATRICE DELLE RELAZIONI
Sia X = { v1, v2, …, vn } un insieme di n istanze.
Indichiamo con V = { 1, 2, …, n } l’insieme degli indici da 1 a n.
Una relazione r definita sullo spazio X x X delle coppie di istanze può essere rappresentata come una matrice n x n detta matrice delle relazioni.
R =
Consideriamo relazioni simmetriche ( per ogni i, j V ) e in particolare: relazioni di similarità (più vi e vj sono simili, più è grande) relazioni di dissimilarità (più vi e vj sono simili, più è basso)
nnn2n1
2n2221
1n1211
r .... r r
.... .... .... ....
r .... r r
r .... r r
jiij r r
ijr
ijr
![Page 14: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/14.jpg)
14
DISTANZE
i)d(j,j)d(i,
0i)d(i,
Una distanzadistanza d definita sull’insieme X è una relazione che gode delle seguenti proprietà:
a) d è simmetrica per ogni coppia (i,j) in V.
b) d assume valore nullo per ogni coppia (i,i) in V.
Indicheremo con (X,d) lo spazio di distanza definito da d su X.
Se inoltre d soddista la proprietà:
c) d soddisfa la diseguaglianza triangolare per ogni terna (i,j,k) in V
allora d è una semimetricasemimetrica sull’insieme X.
Si definisce metricametrica una semimetrica d che soddisfa l’ulteriore proprietà:
j)d(k,k)d(i,j)d(i,
ji 0j)d(i,
v1
13
4
v2
v3v1
12
4
v2
v3
![Page 15: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/15.jpg)
15
NORME
Se X è uno spazio vettoriale definito sul campo dei reali , una
funzione || • || : X + si definisce norma se:
i. || v || = 0 v = 0 per ogni v in X.
ii. || v || = | | || v || per ogni in , v in X.
iii. || vi + vj || || vi || + || vj || per ogni vi ,vj in X.
Si definisce spazio normato la coppia (X, || • ||).
Ad uno spazio normato (X, || • ||) può essere associata la topologia metrica indotta dalla norma || • || tramite l’identità:
Consideriamo lo spazio normato (m, || • ||p) dove || • ||p è la norma lp
jiji v-v )v,(vd METRICA METRICA NORMANORMA
p1m
1k
pkp
)|v|(v
![Page 16: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/16.jpg)
16
UNA METRICA NORMA È UNA METRICA
Dim. Sia || • || : X + una norma definita su X. La funzione
a) è simmetrica
b) d assume valore nullo per ogni coppia (i,i) in V.
c) d soddisfa la diseguaglianza triangolare per ogni terna (i,j,k) in V
jiji v-v )v,(vd
)v,(vdv-vv-v v--1(vv-v )v,(vd ijijijijjiji |1|)
|| v || = | | || v ||
00 iiii v-v )v,(vd
|| v || = 0 v = 0
)v,(vd)v,(vdvvv(v
vvv(vvvv-vv-v )v,(vd
kjkijkki
jkkikkjijiji
)()
)()|| vi + vj || || vi || + || vj ||
![Page 17: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/17.jpg)
17
METRICHE NORME
Una classe molto importante di metriche è quella delle metriche dlp
indotte dalle diverse norme lp:
p = 1 – distanza di Manhattan o metrica “city-block”
p = 2 – distanza Euclidea
p = – distanza di Lagrange
p = 0 – distanza di Hamming
p1
pm
1k
jk
ikp
jiji )|v-v|(v-v )v,(vdp
|v-v| )v,(vdm
1k
jk
ik
ji
1
2m
1k
jk
ik
ji |v-v| )v,(vd2
|| jk
ik
m1,...,k
jiji v-vmaxv-v )v,(vd
0}| |v-v| :m1,...,k |{v-v )v,(vd jk
ik0
jiji
0
![Page 18: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/18.jpg)
18
PROBLEMA DI PARTIZIONE
Un algoritmo di clustering partizionale di tipo “hard” determina una partizione delle osservazioni del training set sulla base di una misura di similarità definita sull’insieme delle coppie di osservazioni.
Si definisce partizione P di un insieme X = { v1, v2, …, vn } è una
famiglia finita di k insiemi V1, V2, …, Vk
P = { V1, V2, …, Vk }
tali che
ogni insieme Vj in P è un sottoinsieme non vuoto di X: Vj X
XVk
1jj
jik 1,..., ji, 0VV ji
![Page 19: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/19.jpg)
19
RAPPRESENTAZIONE DEI DATI
Dato un insieme di osservazioni X = { v1, v2, …, vn } e la matrice
delle similarità relative all’insieme X, si definisce grafo associato a
X il grafo G(N,A) tale che:
N rappresenta l’insieme dei nodi { 1, 2, …, n } tale che ciascun
nodo i N sia associato ad un’osservazione vi X
A sia l’insieme degli archi che connettono ogni coppia non
ordinata (vi, vj) di osservazioni in X con vi vj.
L’arco in A che connette due nodi i e j viene indicato con (i,j) o con
ij.
Siano n e m il numero di nodi e di archi, rispettivamente, in N e A.
Il grafo associato a X è completo! 21)n(n
m
![Page 20: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/20.jpg)
20
INSIEME DELLE SOLUZIONI – DEFINIZIONI
Si definisce clustering del grafo G(N,A) una partizione
P(G) = { V1, V2, …, Vk }
dei nodi del grafo G(N,A).
Gli elementi ViP(G) vengono definiti componenti o cliqueclique del
clustering P(G).
Dato un grafo G(N,A) si definisce cliqueclique un sottoinsieme V N dei nodi tali che per ogni coppia di nodi i e j l’arco ij appartiene ad A.
A)G(N,
1
23
4
5
6
Se il grafo G(N,A) è completo, ogni sottoinsieme V N è una cliqueclique.
}4,3,2,1{1V
}6,5,4,3{2V
}5,4,2,1{3VNON è una clique:
25 A
![Page 21: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/21.jpg)
21
INSIEME DELLE SOLUZIONI – DEFINIZIONI
Si definisce clustering del grafo G(N,A) una partizione
P(G) = { V1, V2, …, Vk }
dei nodi del grafo G(N,A).
Come sono fatte le soluzioni di un problema di clustering?
Sia Vh N. Indichiamo con (Vh)
l’insieme degli archi che connettono
nodi in Vh e nodi fuori da Vh
Se |Vh| = 1, (Vh) è la stella del nodo in Vh.
hhh Vj,VA|iij)δ(V Vδ(V)
i
j
![Page 22: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/22.jpg)
22
INSIEME DELLE SOLUZIONI – DEFINIZIONI
Siano Vh, Vl N. Indichiamo con
(Vh ,Vl) l’insieme degli archi che
connettono nodi in Vh e nodi in Vl
In generale, dati k sottoinsiemi
V1,…, Vk N, l’insieme
degli archi con estremi in due
sottoinsiemi diversi viene
indicato con
lhlh Vj,VA|iij)V,δ(V
lh k,1,...,lh,Vj,VA|iij)V,....,δ(V lhk1 ,
1V
2V3V
)V,δ(V 31
1V
2V3V
)V,V,δ(V 321
![Page 23: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/23.jpg)
23
INSIEME DELLE SOLUZIONI – DEFINIZIONI
Ad ogni clustering P(G)= { V1, V2, …, Vk } del grafo G(N,A) è
possibile associare un insieme multi-cutmulti-cut (P(G))
(P(G)) = ( V1, V2, …, Vk )
Definiamo il vettore di incidenza yP
di un insieme multi-cutmulti-cut (P(G)) 1V
2V3V
)V,V,V,δ(V 4321
4V
otherwise 0
δ(P(G))ij 1y 0,1y ij
mP
![Page 24: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/24.jpg)
24
INSIEME DELLE SOLUZIONI – DEFINIZIONI
1V)E(V1u
v
Sia Vi N. Indichiamo con E(Vi) l’insieme degli archi che
connettono
nodi in Vi.
Se |Vi| = 1, E(Vi) è vuoto.
In generale, dati k sottoinsiemi
V1,…, Vk N, l’insieme degli
archi con estremi nello stesso
sottoinsieme viene indicato con
iii Vv,VA|uuv)E(V
)E(V ... )E(V)V,....,E(V k1k1 1V
2V3V
)V,V,E(V 321
![Page 25: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/25.jpg)
25
INSIEME DELLE SOLUZIONI – DEFINIZIONI
Ad ogni clustering P(G)= { V1, V2, …, Vk } del grafo G(N,A) è
possibile associare un insieme partizionepartizione E(P(G))
E(P(G)) = E( V1, V2, …, Vk )
Definiamo il vettore di incidenza xP
di un insieme partizione E(P(G))partizione E(P(G)) 1V
2V3V
)V,V,V,E(V 4321
4V
otherwise 0
E(P(G))ij 1 x0,1x ij
mP
mPP 1yx Gli insiemi multi-cutmulti-cut e partizionepartizione definiscono una partizione di A
![Page 26: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/26.jpg)
26
VETTORE DI INCIDENZA DI UNA PARTIZIONE
1V
2V
3V
)E(V3
)E(V1
)E(V2
1
8
76
5
43
2
1
1
1
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
78
68
67
58
57
56
48
47
46
45
38
37
36
35
34
28
27
26
25
24
23
18
17
16
15
14
13
12
321 V,V,VP(G)
Esempio –– Sia X = { v1, v2, v3, v4, v5, v6, v7, v8 }.
Definiamo il grafo G(N,A) associato all’insieme X, dove
N = { 1, 2, 3, 4, 5, 6, 7, 8 } e A = { ij | 1 i j 8 }.
Consideriamo il clustering
P(G)= { V1, V2, V3 }
Px
![Page 27: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/27.jpg)
27
INSIEME DELLE SOLUZIONI
Supponiamo di voler determinare una partizione in k cluster.
Sia s = . Se vogliamo che i cluster contengano un numero numero
ugualeuguale di osservazioni, il problema è equivalente al problema di
determinare una partizione in cluster che abbiano ciascuno un
numero di osservazioni non inferiori a s.
kn
k
ji
δ(i)1sxx ikij
2
L’insieme S delle soluzioni del problema di clustering di X è
l’insieme dei vettori di incidenza di tutte le possibili insiemi
partizione E(P(G)) del grafo G(N,A) associato a X.
E(P(G)) di incidenza di vettore x :{0,1}xS Pm
P
δ(i)ij
ijx 1 s Ni
Vincolo di
dimensione
s =3
![Page 28: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/28.jpg)
28
PROBLEMA DI PARTIZIONE IN CLIQUE
In base al valore di s possiamo avere diversi problemi:
}
{
Ni 1sx
,P(G) di incidenza di vettore x :{0,1}xS
δ(i)ijij
Pm
P
se s 1, S è l’insieme delle soluzioni del problema di partizione partizione
in in cliqueclique (CPP) dei nodi di un grafo
Consideriamo l’insieme delle soluzioni
se s 1, S è l’insieme delle soluzioni del problema di partizione partizione
in in clique con vincolo di dimensioneclique con vincolo di dimensione (CPPMIN)
se k = 2, S è l’insieme delle soluzioni del problema di
equipartizioneequipartizione se n è multiplo di s, S è l’insieme delle soluzioni del problema di
equipartizione in k sottoinsiemiequipartizione in k sottoinsiemi Ni 1sx 1sxδ(i)ij
ijδ(i)ij
ij
![Page 29: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/29.jpg)
29
CRITERIO DI OTTIMALITÀ
Esempio –– Sia X = { v1, v2, v3, v4, v5, v6, v7, v8 } e s = 2
Definiamo il grafo G(N,A) associato all’insieme X, dove
N = { 1, 2, 3, 4, 5, 6, 7, 8 } con n = 8, e A = { ij | 1 i j 8 }.
Consideriamo i due clustering P1(G)= { V1, V2, V3 } e P2(G)= { V4, V5,
V6 }
Come valutare le soluzioni in S? Qual è la migliore soluzione?
1V
2V
3V1
8
76
5
43
24V
5V
6V
1
8
76
5
43
2
In P1(G) i punti appartenenti allo stesso cluster sono più vicini…
![Page 30: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/30.jpg)
30
CRITERIO DI OTTIMALITÀ
1V
2V
3V1
8
76
5
43
24V
5V
6V
1
8
76
5
43
2
In P1(G) i punti appartenenti allo stesso cluster sono più vicini…
La matrice delle relazioni contiene le informazioni relative alla similarità o alla dissimilarità tra i punti
Sia D la matrice n x n delle relazioni di dissimilarità (più i e j sono simili, più è basso)ijd
1
1 1
5.1
1
11
1
1 1
32 3
1
3
Assegniamo ad ogni arco ij di A il peso ijd
![Page 31: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/31.jpg)
31
CRITERIO DI OTTIMALITÀ
1V
2V
3V1
8
6
5
43
24V5V
6V
1
8
6
5
43
2
Assegniamo ad ogni cluster V N la somma dei pesi degli archi in E(V)
1
1 1
5.1
1
11
1
1 1
32 3
1
3
Assegniamo ad ogni arco ij di A il peso ijd
E(V)ij
ijdc(V)
7 73)c(V2
3)c(V3
5.1)c(V1
11)c(V5
1)c(V6
3)c(V4
Assegniamo ad ogni partizione P(G)= { V1, V2, …, Vk } del grafo G(N,A) la somma dei costi degli elementi della partizione
P(G)V
i
i
)c(Vc(P(G))
c(P1(G)) = 1.5 + 3 + 3 =
7.5
c(P2(G)) = 15<
P1(G) è migliore di P2(G)
![Page 32: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/32.jpg)
32
CRITERIO DI OTTIMALITÀ
Ad ogni partizione P(G)= { V1, V2, …, Vk } del grafo G(N,A) associamo il costo
P(G)V
i
i
)c(Vc(P(G))
Ad ogni P(G)= { V1, V2, …, Vk } è associato il vettore di incidenzavettore di incidenza
xP di un insieme partizione E(P(G))partizione E(P(G))
k
ji
E(V)
otherwise 0
E(P(G))ij 1 x0,1x ij
mP
k1,..., h
),E(Vij x hij
1
V
)V,...,E(VE(P(G)) k1
∑∑A∈ij
ijijE(P(G))∈ij
ij xddc(P(G)) ==
ijx
jkxikx
![Page 33: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/33.jpg)
33
CRITERIO DI OTTIMALITÀ
Ad ogni partizione P(G)= { V1, V2, …, Vk } del grafo G(N,A) associamo il costo
Aij
ijijxdc(P(G))
1
1
1
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
78
68
67
58
57
56
48
47
46
45
38
37
36
35
34
28
27
26
25
24
23
18
17
16
15
14
13
12
Px
Esempio –– Sia X = { v1, v2, v3, v4, v5, v6, v7, v8 } e s = 2
Consideriamo la soluzione xP associata al
clustering P(G)= { V1, V2, V3 }
1V
2V
3V1
8
6
5
43
2
1
1 1
5.1
1
11
7 3)c(V2
3)c(V3
5.1)c(V1
Aij
ijijxdc(P(G))
5.7
786867
45353412
ddd
dddd
![Page 34: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/34.jpg)
34
FORMULAZIONE MATEMATICA DEL CPP
S x
xd minAij
ijij
} { Ni 1sx,P(G) di incidenza di vettore x :{0,1}xSδ(i)ij
ijPm
P
Risolvere il problema di partizione in cliquepartizione in clique dei nodi di un grafo
significa determinare la soluzione del seguente problema
dove l’insieme delle soluzioni è
![Page 35: Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.](https://reader035.fdocument.pub/reader035/viewer/2022070312/5542eb57497959361e8c1899/html5/thumbnails/35.jpg)
35
MATERIALE DEL SEMINARIO
Le slide di questo seminario sono reperibili al seguente link:
http://www.dis.uniroma1.it/~canale/didattica/ACRN1.ppt