Clusterng Clusterng Raggruare le stanze d un domno n gru tal che gl oggett nello stesso gruo mostrno un alto grado d smlartà e gl oggett n gru dvers un alto grado d dssmlartà Leggere la sezone 6.6 d Wtten e Frank Msure d dstanza o dssmlartà Msure d smlartà Varano tra 0 e + nfnto Dstanze er unt n R n : dstanza eucldea 1 n d (, ( k yk ) y k 1 E un caso artcolare, con, della metrca d Mnkowsk d d k 1 1 (, ( k yk ) y 3 Varano tra 0 e 1 Funzone coseno s cos Coeffcente d Dce s Dce (, (, Smlarta esonente s e (, e T y y T y ( + y ) α ( y ) 4
Relazone tra le msure d smlarta e dssmlarta Un esemo: s (, d (, 1 1+ d (, 1 s(, s(, 5 K-means (versone( d Forg S alca a stanze aartenent a R n Sa k l numero de cluster che s voglono trovare 1. S scelgono k unt a caso n R n come centr de cluster. Le stanze sono assegnate al cluster avente l centro u vcno 3. S calcola l centrode (la meda) de unt n ogn cluster: questo raresenta l nuovo centro del cluster n j c j 1 n j 4. S rarte dal asso fnche tutte le stanze non sono assegnate allo stesso cluster n due terazon successve 6 K-means (versone( d MacQueen) In questo caso centrod vengono rcalcolat doo l assegnazone d ogn attern e non alla fne d un cclo d rallocazone: 1. S scelgono k unt a caso n R n come centr de cluster. S assegnano le stanze a cluster 3. S calcolano nuov centrod de cluster 4. Cascuna stanza e assegnata al cluster avente l centrode u vcno. Doo ogn assegnamento s deve rcalcolare l centrode del cluster che ha guadagnato l elemento e d quello che l ha erso 5. S rarte dal asso 4 fnche tutte le stanze non sono assegnate allo stesso cluster n due terazon successve Rsultato del clusterng Il k-means cerca d mnmzzare la funzone obettvo e k d j 1 cluster ( j) (, ) c j 7 8
Scelta de unt nzal Esemo (versone d Forg Sono ossbl vare scelte: Le rme k stanze nel dataset Etchetta le stanze con numer da 1 a m (numero delle stanze) e scegl quelle con numer m/k,m/k,,(k-1)m/k e m Sceglere a caso k stanze Generare k unt sceglendo a caso valor d cascun coordnata nel range della coordnata Genera un artzone del dataset n k sottonsem mutuamente esclusv e consdera centrod de sottonsem Punt nzal Centr de cluster Doo la seconda terazone Membr del rmo cluster Membr del secondo cluster 9 10 PAM PAM PAM (Parttonng Around Medods) Per trovare k cluster, s determna un oggetto raresentatvo er ogn cluster. Questo oggetto, chamato medod, e l oggetto collocato u centralmente nel cluster. Una volta selezonat medod, gl altr oggett vengono raggruat ntorno a quello u smle a loro 1. Selezona arbtraramente k medod nzal. Per ogn oggetto non selezonato, s vede se scambandolo con uno de medod s ottene un clusterng mglore 3. Contnua fno a che nessuno scambo orta a Sa O un oggetto selezonato come medod e O h l oggetto non selezonato consderato er lo scambo PAM calcola l costo C jh dello scambo tra O h e O er ogn oggetto non selezonato O j C sono 4 cas mgloramento 11 1
Caso 1 1. O j aartene al cluster d O Sa O j u vcno a O j, che a O h coe d(o j, O h )>d(o j, O j, ) dove O j, e l secondo medod u vcno a O j O j va nel cluster d O j, C jh d(o j,o j, )-d(o j,o ) C jh e semre non negatvo Caso. O j aartene al cluster d O. Ma O j e u dstante da O j, che a O h coe d(o j, O h )<d(o j, O j, ) O j va nel cluster d O h C jh d(o j,o h )-d(o j,o ) C jh uo essere sa ostvo che negatvo O j O h O O j, O j O O h O j, 13 14 Caso 3 3. O j aartene al cluster d un O k dverso da O. Sa O j u vcno a O k che a O h O j rmane nel cluster d O k C jh 0 Cas er C jh 4. O j aartene al cluster d un O k, ma O j e u lontano da O k che da O h O j va nel cluster d O h C jh d(o j,o h )-d(o j,o k ) C jh e semre negatvo O j O j O h O k O Oh O k O 15 16
Costo totale Il costo totale d rmazzare O con O h e TC h C jh j Algortmo 1. Selezona k oggett arbtraramente. Calcola TC h er tutte le coe d oggett O, O h dove O e correntemente selezonato e O h no 3. Selezona la coa O, O h che corrsonde al mn O,Oh TC h Se l mnmo e negatvo, sosttusc O con O h e torna al asso. 4. Altrment, assegna cscun oggetto al suo cluster e termna 17 18 Clusterng basato sulla robablta Basato su un modello statstco che s chama fnte mture Una mture e un nseme d k dstrbuzon d robablta, raresentant k cluster, cascuna delle qual descrve la dstrbuzone de valor er membr d quel cluster Ogn dstrbuzone fornsce la robablta che una stanza abba cert valor er suo attrbut suonendo che sa noto a quale cluster aartene Ogn stanza aartene a un solo cluster ma non saamo quale I cluster non hanno la stessa robablta Fnte mture Il caso u semlce e quello n cu s ha una sola varable reale e due cluster con dstrbuzone normale. Meda e varanza della dstrbuzone sono dverse er due cluster Obettvo del clusterng e quello d rendere un nseme d stanze e d trovare la meda e la varanza delle due dstrbuzon normal u la dstrbuzone delle stanze ne cluster 19 0
Esemo Fnte mture roblem A 51 A 43 B 6 A 45 A 4 A 46 A 45 A 45 B 6 A 47 A 5 A 51 B 65 A 49 A 46 A 51 A 5 B 6 A 49 B 6 A 43 A 40 data model A 51 B 63 A 43 B 65 B 66 B 65 A 46 A 39 B 6 A 5 B 63 A 51 A 4 A 41 C sono due cluster A e B con mede e devazon standard µ A, σ A e µ B, σ B I camon sono res da A con robablta A e da B con robablta B con A + B 1 Il rsultato e l dataset mostrato Problema d clusterng (detto anche fnte mture roblem): date le stanze (senza le class A o B), trovare l cnque arametr µ A, σ A, µ B, σ B e A ( B uo essere rcavato da A ) 1 Calcolo d meda e varanza Se s conoscesse da quale dstrbuzone vene ogn stanza, s otrebbero calcolare µ A, σ A, µ B e σ B con le seguent formule: σ 1 + + K+ µ µ + µ + K+ µ ( ) ( ) ( ) 1 1-1 a denomnatore e usato erche σ e calcolata su un camone nvece che sull ntera oolazone (s chama stmatore senza bas). Se e grande c e Calcolo d Pr(A ) Se conoscessmo 5 arametr, otremmo trovare le robablta che una stanza aartenga a cascuna dstrbuzone con la seguente formula Pr(A )Pr( A)Pr(A)f(; µ A,σ A ) A Pr() Pr() dove f(; µ,σ) e la dstrbuzone normale: Pr() non e noto f ( µ ) 1 σ ( ;, ) e µ σ πσ oca dfferenza. 3 4
Calcolo d Pr(A ) Allo stesso modo ossamo trovare l numeratore d Pr(B ). Saamo che Pr(A )+Pr(B )1 qund Qund: f(; µ A,σ A ) A + f(; µ B,σ B ) B 1 Pr() f(; µ A,σ A ) A + f(; µ B,σ B ) B Pr() Pr(A ) f(; µ A,σ A ) A f(; µ A,σ A ) A + f(; µ B,σ B ) B 5 Algortmo EM Il roblema e che non conoscamo ne 5 arametr ne l aartenenza delle stanze a cluster Perco adottamo una rocedura smle a quella del k-means: Comncamo con valor scelt a caso er 5 arametr Calcolamo le robablta de due cluster er ogn stanza usando valor attual de arametr (asso d Eectaton) Usamo la dstrbuzone delle stanze ne cluster er stmare arametr (asso d Mamzaton (della verosmglanza de dat)) Rartamo dal asso d Eectaton 6 Stma de arametr Stma d A In EM non abbamo l aartenenza netta delle stanze a var cluster ma solo una robablta. Perco le formule er la stma de arametr dventano: σ w + w + K+ w 1 1 µ A w1 + w + K+ w w1 ( 1 µ ) + w ( µ ) + K+ w ( µ ) A w1 + w + K+ w Dove w e la robablta che aartenga ad A e dove gl sono tutt gl, non solo quell che aartengono ad A 7 A w1 + w + K+ w 1 B A Dove w e la robablta che aartenga ad A e è l numero totale d camon 8
Quando termnare? Quando termnare K-means s ferma quando le class delle stanze non varano u EM coverge verso un unto fsso ma non c arrva ma effettvamente Possamo ero care quanto e vcno calcolando la verosmglanza (lkelhood) globale che dat dervno da questo dataset, dat valor de 5 arametr La verosmglanza globale s ottene n questo modo ( A Pr( A) + B Pr( B)) (Pr(, A) + Pr(, B)) Pr( ) 9 La verosmglanza globale e una msura della bonta del clusterng e aumenta a ogn terazone dell algortmo EM Attenzone: er Pr( A) s usa la funzone d dstrbuzone normale f(; µ A,σ A ) che non e una robablta ma una densta d robablta. Qund la verosmglanza non e una robablta ma comunque da una msura della bonta del clusterng In ratca, vene calcolato l logartmo della verosmglanza che trasforma rodott n somme Per esemo, un crtero er fermars otrebbe essere: c s ferma quando la dfferenza tra due valor successv della verosmglanza e nferore a 10-10 er dec terazon successve. 30 Proreta dell algortmo EM Anche se e garantto che EM converga a un massmo, non e detto che sa un massmo globale, otrebbe essere un massmo locale. Per questo la rocedura deve essere retuta dverse volte, artendo da dvers valor nzal de arametr La verosmglanza globale vene o usata er confrontare le dverse soluzon ottenute e rendere quella con la verosmglanza u alta 31 Estenson del mture model Usare u d due dstrbuzon: facle se l numero d dstrbuzon e dato come nut Pu d un attrbuto numerco: facle se s assume l ndendenza tra gl attrbut: Le robablta d cascuna classe dato un attrbuto sono moltlcate nseme er ottenere la robablta congunta della classe data l stanza Coe d attrbut numerc correlat: dffcle I due attrbut ossono essere descrtt da una dstrbuzone normale bvarata Ha un meda ma nvece d due varanze ha una matrce d covaranza smmetrca con 4 arametr C sono tecnche standard er stmare le robablta delle class delle stanze e er stmare la meda e la matrce d covaranza date le stanze e le loro robablta delle class 3
Estenson del mture model Pu d due attrbut correlat: dffcle S usano ancora dstrbuzon multvarate Il numero de arametr aumenta con l quadrato del numero d attrbut n attrbut ndendent: n arametr n attrbut correlat: n+n(n+1)/ arametr (er la smmetra della matrce d covaranza) Il numero d arametr causa overfttng Estenson del mture model Attrbut nomnal non correlat: un attrbuto con v valor ossbl e descrtto da v numer er ogn cluster (Pr( v j cluster h )) che raresentano la robablta d ogn valore Passo d eectaton: s calcola Pr(cluster h v j ) usando l teorema d Bayes S calcola Pr(cluster h ) moltlcando var Pr(cluster h v j ) er ogn attrbuto (assunzone d ndendenza) Passo d mamzaton S calcolano var Pr( v j cluster h ) da dat 33 34 Estenson del mture model nel asso d mamzaton c sono due roblem: Non conoscamo l aartenenza d una stanza ad una classe n manera netta ma solo robablstca (s consderano de es) Alcune stme d robablta ossono rsultare nulle. Queste stme annullano le Pr(cluster h v j ) e qund anche Pr(cluster h ) Per questo s usa la stma d Lalace Estenson del mture model Due attrbut nomnal correlat: se hanno v 1 e v ossbl valor, ossamo sostturl con un solo attrbuto covarante con v 1 v valor Il numero d arametr aumenta esonenzalmente con l aumentare del numero d attrbut correlat Presenza d attrbut sa numerc che nomnal: non c sono roblem se nessun attrbuto numerco e correlato con quell nomnal. In caso contraro l roblema e dffcle e non ce ne occuamo 35 36
Estenson del mture model Valor nomnal mancant: due ossblta : Non s consderano ne nel asso d eectaton (non s moltlca er Pr( v j cluster h )) ne nel asso d mamzaton S trattano come un valore n u Valor numerc mancant: stesse ossblta che er valor nomnal Estenson del mture model Al osto della dstrbuzone normale, altre dstrbuzon ossono essere usate: Attrbut numerc: Se c e un valore mnmo (ad es. eso) e meglo la dstrbuzone log-normale Se c e sa un mnmo che un massmo e meglo la dstrbuzone log-odds Se sono contegg nter nvece che valor real e meglo la dstrbuzone d Posson Dstrbuzon dverse ossono essere usate er attbut dvers 37 38 Autoclass Autoclass e un sstema d clusterng svluato dalla NASA che utlzza l algortmo EM Prova dvers numer d cluster e dfferent dstrbuzon d robablta er gl attrbut numerc L algortmo e comutazonalmente esante, er questo s defnsce a ror un temo d esecuzone e l algortmo termna una volta esaurto l temo Con u temo ossamo ottenere rsultat mglor Bblografa Ian Wtten, Ebe Frank Data Mnng: Practcal Machne Learnng Tools and Technques (Second Edton) Morgan Kaufmann Publshers, 005, ISBN 0-1- 088407-0 (dsonble n bbloteca) 39 40