Tema 4: Agents que aprenen

59
1 Tema 4: Agents que aprenen 2. Mètodes d’agregació (clustering)

description

Tema 4: Agents que aprenen. 2. Mètodes d’agregació (clustering). Introducció. Els mètodes d’agregació o clustering permeten obtenir una primera aproximació a l’estructura d’un domini - PowerPoint PPT Presentation

Transcript of Tema 4: Agents que aprenen

Page 1: Tema 4:  Agents que aprenen

1

Tema 4: Agents que aprenen

2. Mètodes d’agregació (clustering)

Page 2: Tema 4:  Agents que aprenen

2

Introducció Els mètodes d’agregació o clustering permeten

obtenir una primera aproximació a l’estructura d’un domini

S’utilitzen en una situació de relatiu desconeixement del domini o per trobar patrons no esperats en les dades.

Es tracta d’obtenir una descripció inicial que separi grups d’objectes amb característiques semblants, basant-se només en les dades, sense imposar cap criteri a priori.

Page 3: Tema 4:  Agents que aprenen

3

Representació gràfica: Cada exemple és un punt en

l’espai de classificació. Els atributs defineixen els

eixos de l’espai de classificació.

La distància permet assimilar el concepte d’objectes semblants i objectes propers.

Un veí és un objecte que es troba a una distància molt propera en l’espai de classificació

Cas particular n=2: pla

),...,,,(

),...,,,(

321

321

n

n

yyyyy

xxxxx

X1

X2X

Y

Page 4: Tema 4:  Agents que aprenen

4

Què és el Clustering?

Page 5: Tema 4:  Agents que aprenen

5

Tipus de clustering

Basats en la distància• La similitud entre objectes es basa en la distància

(mesures)

Basats en els concepts• La similitud es basa en conceptes comuns entre els

exemples (fitness de descripcions de conceptes)

Els mètodes depènen fortament de la definició de distancia

Page 6: Tema 4:  Agents que aprenen

6

Distàncies

Cal distingir• Distàncies entre valors numèrics

• Distàncies entre valors no-numèrics

• Híbrides

• Per a conjunts difusos

• Distàncies entre estructura de dades complexes (arbres, ...)

Page 7: Tema 4:  Agents que aprenen

7

Distàncies Definició

• Una distància és una funció que pren valors en un espai n-dimensional i que dóna com a resultat un valor real positiu.

Propietats• A més, donats dos punts X1, X2 en un espai n-dimensional,

perquè una funció sigui qualificada com a distància, ha de complir les propietats següents:

• Dist(X1, X2) = 0 si, i només si, X1 = X2.

• Dist(X1, X2) 0 per a tot X1, X2.

• Dist(X1, X2) = Dist(X2, X1).

• Dist(X1, X2) Dist(X1, X3) + Dist(X3, X2).

Page 8: Tema 4:  Agents que aprenen

8

Distàncies clàssiques per valors numèrics

Distància Euclidea

Distància de Manhattan (city-block)

n

iii yxyxd

1

2)(),(x

y

n

iii yxyxd

1

||),(

x

y

Page 9: Tema 4:  Agents que aprenen

9

Distàncies clàssiques per valors numèrics

Minkowski: per d dimensions

d: dimensionalitat

Euclidea: p=2

Manhattan: p=1

Page 10: Tema 4:  Agents que aprenen

10

Distàncies clàssiques per valors numèrics

Distància de Chebychev

Distància del cosinus

||max),( ,...,1 iini yxyxd

)||||||||

arccos(),(yx

yxyxd

T

x

y

Page 11: Tema 4:  Agents que aprenen

11

Distàncies clàssiques per valors numèrics

Distància de Mahalanobis

)()(),( 1 yxSyxyxd T

S: matriu de covariàncies

Page 12: Tema 4:  Agents que aprenen

12

Distàncies numèriques: consideracions prèvies

Normalització dels valors dels atributs• Normalització lineal uniforme

minmax

min'

v

v

Abans de normalitzar Després de normalitzar

Page 13: Tema 4:  Agents que aprenen

13

Distàncies numèriques: consideracions prèvies

Normalització dels valors dels atributs• Comparació d’automòbils (distància Euclídea)

Abans de normalitzar Després de normalitzar

Pes (Kg) Llargada (mm) Potència (CV)

Opel Astra 1373 4442 140

Opel Corsa 1160 3999 90

Ferrari F50 1060 4496 513

489496

Page 14: Tema 4:  Agents que aprenen

14

Distàncies numèriques: consideracions prèvies

Normalització dels valors dels atributs• Comparació d’automòbils (distància Euclídea)

Abans de normalitzar Després de normalitzar

Pes (Kg) Llargada (mm) Potència (CV)

Opel Astra 1373 4442 140

1 0,89134809 0,1182033

Opel Corsa 1160 3999 90

0,319 0 0

Ferrari F50 1060 4496 513

0 1 1

1,331,12

Page 15: Tema 4:  Agents que aprenen

15

Distància per a valors no numèrics (categòrics)

Distància de Hamming

On

w: factor de reducció (w=1/n)

m

iii yxyxd

1

),(),(

1),( ii yx

0),( ii yx

ii yx

ii yx x = [blanc,fusta] y = [blanc,metall]

5.02

10),(

yxd

Exemple:

Page 16: Tema 4:  Agents que aprenen

16

Distància per a valors no numèrics (categòrics)

Distància entre strings representats com a vectors

||

||||),(

yx

yxyxyxd

Page 17: Tema 4:  Agents que aprenen

17

Distància per a valors no numèrics (categòrics)

Distància entre strings representats com a vectors

Exercici: Distància entre• X = [p,e,r,n,i,l] Y= [n,a,r,i,u]

• X = [p,e,r,n,i,l] Y= [p,e,r,i,l,l]

||

||||),(

yx

yxyxyxd

Page 18: Tema 4:  Agents que aprenen

18

Distància per a valors no numèrics (categòrics)

Exercici: Distància entre• X = [p,e,r,n,i,l] Y= [n,a,r,i,u]

• X = [p,e,r,n,i,l] Y= [p,e,r,i,l,l]

[p,e,r,n,i,l,a,u] = 8 [n,r,i] = 3

d(x,y) = (8-3)/8 = 0.625

|| yx || yx

[p,e,r,n,i,l,l] = 7 [p,e,r,i,l] = 5

d(x,y) = (7-5)/7 = 0.29

|| yx || yx

Page 19: Tema 4:  Agents que aprenen

19

Consideracions Discretització

• Podem usar mesures categòriques per atributs numèrics si discretitzem els valors

edat: [0,100][0, 2] nadó (18,35] jove(2,10] nen (35,65] gran(10, 18] adolescent (65,100] vell

edat:{nadó,nen,adolescent,jove,gran,vell}

• Hi ha molts mètodes de discretització

Page 20: Tema 4:  Agents que aprenen

20

Mesures híbrides

Eixample

K

k

w

kk

K

k

w

k

k

e

yxdeyxd

1

1

),(),(

kw pes de l’atribut k

ordenat nodiscret un ésk si-1

ordenatdiscret un ésk o

icontinu ésk si

1

|)()(|

icontinu ésk si)()(

|)()(|

),(

)qlv(y),plv(x kk

k

k

kk

kkk

kk

w

V

yqlvxqlv

wklowervalkupperval

yqtvxqtv

yxd

)()( si0

)()( si1)(),(

kk

kkyqlvxqlv yqlvxqlv

yqlvxqlvkk

qtv(xk): valor quantitatiu de l’atribut k de l’exemple xqlv(xk): valor qualitatiu de l’atribut k de l’exmple xupperval(k): valor màxim de l’atribut klowerval(k): valor mínim de l’atribut k

: llindar que diferencia els atributs rellevants del que no ho són

Page 21: Tema 4:  Agents que aprenen

21

Mètodes d’agregació Clustering exclusiu

• k-means Clustering sobreposat (overlapping)

• Fuzzy k-means Clustering jeràrquic

• Clustering jeràrquic Clustering probabilístic

• EM (Expectation-Maximization)

Mapes de Kohonen (SOM)Exemples interactius http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/

Page 22: Tema 4:  Agents que aprenen

22

K-means Es basa en la idea d’obtenir un nombre k de

grups que es fixa al principi del procés. Per a cada grup, es genera un centroide k Es mesuren les distàncies de tots els punts als

centroides, i s’assossien els punts al centroide de més a prop

Es recalcula el centroide S’itera el procés fins que no es produeixien canvis

en els centroides

Page 23: Tema 4:  Agents que aprenen

23

K-means: Exemple, k = 3

Pas 1: Pas 1: Seleccionar les llavors.Seleccionar les llavors.

Pas 2:Pas 2: Assignar els objectes als Assignar els objectes als centres més properscentres més propers

Pas 3:Pas 3: Recalcular els centroides Recalcular els centroides

Page 24: Tema 4:  Agents que aprenen

24

K-means

Fi de l’algorisme: minimitzar funció objectiu

2

1 1

k

j

n

iji cxJ

xi: exemple icj: centroide j||?||: mesura de distància emprada

Page 25: Tema 4:  Agents que aprenen

25

Consideracions

Valors anòmals (outliers)

Page 26: Tema 4:  Agents que aprenen

26

Algorisme k-means

1)Seleccionar les k centroides inicials entre tots els punts disponibles.

2)Assignar els objectes al grup amb centre més proper

3)Recalcular els centres

4)Continuar fins que no hi hagi variació entre els grups

Page 27: Tema 4:  Agents que aprenen

27

K-means: Avantatges:

• Relativament eficient: O(tkn) on n és el nombre d’objectes, k el nombre de clusters i t el nombre d’iteracions.

Normalment tk << n.

• La majoria de les vegades acaba en un òptim local. Desavantatges (comentaris):

• S’ha d’escollir el paràmetre k a priori o provar amb molts valors.

• Els resultats depenen dels valors de k

• La manera d’inicialitzars els centroides no està concretada

• L’algorisme és sensible a les dades sorolloses i als casos extrems (outliers) -- punts que no pertanyen a cap cluster. Això pot modificar la posició dels centroides i arruïnar el clustering.

Page 28: Tema 4:  Agents que aprenen

28

Fuzzy C-means

Es permet que un example pertanyi a un o més clusters

La funció objectiu a minimitzar és:

mcxuJ ji

N

i

C

j

mijm 1

2

1 1

m: paràmetreuji: grau de pertanyença de xi en el cluster cj

xi: exemple icj: centroide j (cluster)||?||: mesura de distància emprada

Page 29: Tema 4:  Agents que aprenen

29

k-means fuzzy c-means

2 grups 2 columnes

N exemples N files

Page 30: Tema 4:  Agents que aprenen

30

Algorisme

1. Inicialitzar la matriu U(0) (U=[uij]) (k=0)

2. Calcular el centroides C(k)

3. Actualitzar U(k) per U(k+1):

4. Si |U(k+1)-U(k)| < aleshores fi. Altrament tornar a 2.

criteri de finalització, [0,1]

Page 31: Tema 4:  Agents que aprenen

31

Clustering Jeràrquic

Comencen considerant que cada objecte forma un grup per si mateix. Creen un arbre en el qual els punts són les fulles i els nodes interns revelen l’estructura de similitud dels punts.

Llavors avaluen les distàncies entre grups i creen per aglomeració els diversos grups finals.

El comportament de l’algorisme depèn de com es defineix la “proximitat del parell de clusters”.

Page 32: Tema 4:  Agents que aprenen

32

Dendrògram

Descompondre les dades en varis nivells de particions anidades (arbre de clusters) anomenat Dendrògram.

L’agrupació de les dades

s’obté tallant el

dendrògram al nivell

desitjat. Cada

component

connectat

forma un cluster.

Page 33: Tema 4:  Agents que aprenen

33

Enllaç senzill: C1C2

dist (C1, C2) = min { dist (X1, X2 ) : X1C1, X2C2 }

Mètodes Aglomeradors

Enllaç complet:

dist (C1, C2) = max { dist (X1, X2 ) : X1C1, X2C2 }

C1C2

Page 34: Tema 4:  Agents que aprenen

34

1)Crear un arbre amb un node únic que representi tot el conjunt d’observacions.

2)Mentre no es compleixi criteri de finalització, fer:

3)Anotar quin és el node amb millor qualitat nmax i el següent en qualitat nmax-1. Aleshores:

a)Si en unir nmax i nmax-1 dóna un node amb més qualitat que Max(qualitat(nmax), qualitat(nmax-1)) llavors es crea un node que resulta de la fusió de nmax i nmax-1.

b)Sinó cal considerar si és millor dividir nmax en dos nodes comparant la seva qualitat amb les de les particions resultants.

Per a cada nova Observació Oi ferPer a cada node nj existent fer

Si la qualitat de ni millora incorporant Oi llavors nj=nj U Oi

Si no es troba cap node nj que millori llavors escrea un nou node únicament amb Oi

fPerfPer

L’algorisme

Page 35: Tema 4:  Agents que aprenen

35

A B C D

Dist A B C D

A 20 7 2

B 10 25

C 3

D

Matriu de distànciesDades inicials

Clustering Jeràrquic

Page 36: Tema 4:  Agents que aprenen

36

A B C D

Dist A B C D

A 20 7 2

B 10 25

C 3

D

Clustering Jeràrquic

Matriu de distànciesDades inicials

Page 37: Tema 4:  Agents que aprenen

37

Clusters actuals

Enllaç senzill

Dist A B C D

A 20 7 2

B 10 25

C 3

DA B CD

2

Clustering Jeràrquic

Matriu de distàncies

Page 38: Tema 4:  Agents que aprenen

38

Dist AD B C

AD 20 3

B 10

C

A B CD

Clustering Jeràrquic

Matriu de distànciesClusters actuals

Enllaç senzill

Page 39: Tema 4:  Agents que aprenen

39

A B CD

Dist AD B C

AD 20 3

B 10

C

Clustering Jeràrquic

Matriu de distànciesClusters actuals

Enllaç senzill

Page 40: Tema 4:  Agents que aprenen

40

Dist AD B C

AD 20 3

B 10

C

A BCD

3

Clustering Jeràrquic

Matriu de distànciesClusters actuals

Enllaç senzill

Page 41: Tema 4:  Agents que aprenen

41

Dist ADC B

ADC

10

B

A BCD

Clustering Jeràrquic

Matriu de distànciesClusters actuals

Enllaç senzill

Page 42: Tema 4:  Agents que aprenen

42

A BCD

Dist ADC B

ADC

10

B

Clustering Jeràrquic

Matriu de distànciesClusters actuals

Enllaç senzill

Page 43: Tema 4:  Agents que aprenen

43

Dist ADC B

ADC

10

B

A BCD

10

Clustering Jeràrquic

Matriu de distànciesClusters actuals

Enllaç senzill

Page 44: Tema 4:  Agents que aprenen

44

A BCD

Dist ADCB

ADCB

Clustering Jeràrquic

Matriu de distànciesResultat final

Enllaç senzill

Page 45: Tema 4:  Agents que aprenen

45

Clustering Jeràrquic Criteri de finalització

• Mantenir una distància determinada entre grups.

• Continuar fins que hi hagi un sol grup i com que queda enregistrada la fusió que hi ha hagut, obtenim l’històric del procés i podem veure a quin nivell interessa aturar-se.

Detecció de la proximitat entre grups

• Paràmetre de tall que impedeix el creixement excessiu de l’arbre.

• Si una observació no incrementa suficientment la qualitat del grup no es té en compte.

Qualitat d’una agregació

• Una classe rep un valor més alt quan més alta sigui la similitud entre les observacions que aplega i com més baixa sigui respecte a les de les altres classes.

Page 46: Tema 4:  Agents que aprenen

46

Consideracions sobre la mesura de tall

Més gran un únic cluster Més petita molts clusters

Page 47: Tema 4:  Agents que aprenen

47

Algorisme EM (Expectation-Maximization) Cada centroide (llavor) es representa mitjançant una distribució probabilística

(Gaussiana, per continus, Poisson per discrets) L’algorisme s’itera en dos passos: estimació i maximització, fins que la

distribució no es mou Estimació: calcular la responsabilitat de cada distribució per a cada punt Maximització: la mitjana de les distribucions es selecciona com a nou

centroide

Page 48: Tema 4:  Agents que aprenen

48

Algorisme

1. Inicialitzar els parametres: (t=0)0={1

(0), 2(0),… k

(0), p1(0), p2

(0),… pk(0)}

2. E-step: Cálcul de la probabilitat d’un exemple, donat els centres i

(t)

3. M-step: iteracció

R: nombre d’exemples

Page 49: Tema 4:  Agents que aprenen

Demo Algorisme EM (Expectation-Maximization)

49

http://www.youtube.com/v/v-pq8VCQk4M

Page 50: Tema 4:  Agents que aprenen

50

Mapes auto-organitzatius Kohonen

Xarxa neural de 2 capes

Wn

Input2Input1

Size x

Entrades:exemples

Size y

Page 51: Tema 4:  Agents que aprenen

51

Mapes auto-organitzatius Kohonen

Wn

Input2Input1

Size x

Size y

Entrades:exemples

Xarxa neural de 2 capes

Page 52: Tema 4:  Agents que aprenen

52

Passos

1. Selecció de la neurona guanyadora (ng)

2. Desplaçament dels pesos de ng perquè representi millor els exemples

Page 53: Tema 4:  Agents que aprenen

53

Selecció d’una neurona guanyadora

1. Agafar un exemple del conjunt

2. Calcular la distància entre l’exemple i cada una dels pesos(w) de les neurones

d(x,wni)

3. Etiquetar com a guanyadora la neurona més propera a l’exemple

4. Repetir el procés per cada exemple del conjunt fins que l’error sigui inferior a un error ε

Page 54: Tema 4:  Agents que aprenen

Selecció d’una neurona guanyadora

54

Page 55: Tema 4:  Agents que aprenen

55

Desplaçament del prototipus (aprenentatge) L’aprenentatge s’aplica després de cada exemple. Suposant que s’ha usant una distància euclídea:

: rati d’aprenentatge• Varia a mesura que avança l’aprenentatge• Mètodes d’aproximació

es decrementa en una constant petita al final de cada cicle d’aprenentatge

es decrementa seguint un esquema logaritmic (primer molt, després molt poc, fins que es fa zero)

0

))()()(( twtxt

dt

dijpij

si n és guanyadora

Altrament

)()1( tt

x

N

N

W1j+(x1-W1j)

W2j+(x2-W2j)

n = neurona guanyadora

Page 56: Tema 4:  Agents que aprenen

Exemple: Mapa de qualitat de vida

Objectiu:classificar i ordenar els països del món d’acord amb la seva qualitat de vida descrita per un conjut d’indicadors: salut, nutrició, serveis educatius, etc.

La xarxa SOM entrenada amb tots els països s’autoriganitza de forma que els països amb nivell similars de qualitat de viada queden situats propers:

Superior-esquerra: països ‘rics’.

Inferior-dreta: països ‘pobres’

Cada hexagon representa una cel.lula (node) sobre una trama hexagonal (unified distance matrix, u-,matrix)

Page 57: Tema 4:  Agents que aprenen

1

Page 58: Tema 4:  Agents que aprenen

Dubtes?

Transparències: Bianca Inocenti

Beatriz López

Albert Plà ([email protected])

http://eia.udg.edu/~apla/t4-s2.ppt

58

Page 59: Tema 4:  Agents que aprenen

Bibliografia Demos: http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/index.html

Distàncies i Algorismes:• Jain, AK. Data Clustering: A Review (1999)

• Xui, R. Survey of Clustering Algorithms (2005)

Distàncies entre strings:• Cohen, W. Et Al. A Comparison of String Distance Metrics for Name-Matching Tasks

Expectation Maximization:• Moon, T.K. The expectation-maximization algorithm (1996)

Self Organizing Maps / Mapes de kohonen• Kohonen, T. Self-Organizing Maps (2001)

• Gay et Al. Self Organizing Maps for Public-Cycling Transport Modelling and Management (2010)

59