Clasificación y Segmentación Mediante Análisis Cluster en Matlab

21
7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 1/21

Transcript of Clasificación y Segmentación Mediante Análisis Cluster en Matlab

Page 1: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 1/21

Page 2: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 2/21

INTRODUCCIÓN

El presente trabajo tiene como finalidad describir a través de un ejemplo práctico el

funcionamiento de una red neuronal de elaborada con la aplicacin Clusterin! del

soft"are #$T%$& R'()*a no sin antes definir la utilidad de la técnica multivariante de

análisis cluster+ as, mismo es de interés académico contrastar los resultados del

entrenamiento con los -ue ofrece el soft"are I&# ./.. v'01

C%$.I2IC$CIÓN 3 .E4#ENT$CIÓN #EDI$NTE $N5%I.I. C%U.TER EN

#$T%$&

Page 3: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 3/21

El análisis cluster+ cu6o es-uema se muestra en la 2i!ura )+ es una técnica e7ploratoria

de análisis estad,stico de datos dise8ada para revelar concentraciones en los datos o en

las variables 6 -ue su!iere modos potencialmente 9tiles de a!rupar las observaciones1

Es mu6 importante tener presente -ue pueden a!ruparse tanto casos como variables1 El

análisis cluster o de con!lomerados divide las observaciones en !rupos basándose en la

 pro7imidad o lejan,a de unas con otras+ por lo tanto es esencial el uso adecuado del

concepto de distancia1 %as observaciones mu6 cercanas deben de caer dentro del mismo

cluster 6 las mu6 lejanas deben de caer en clusters diferentes+ de modo -ue las

observaciones dentro de un cluster sean :omo!éneas 6 lo más diferentes posibles de las

contenidas en otros clusters1

También :a6 -ue tener mu6 presente el tipo de datos -ue se maneja1 .i las variables de

a!lomeracin están en escalas completamente diferentes será necesario estandari;ar 

 previamente las variables+ o por lo menos trabajar con desviaciones respecto de la

media1 Es necesario observar también los valores at,picos 6 desaparecidos por-ue los

métodos jerár-uicos no tienen solucin con valores perdidos 6 los valores at,picos

deforman las distancias 6 producen clusters unitarios1

También es nocivo para el análisis cluster la presencia de variables correlacionadas+ de

a:, la importancia del análisis previo de multicolinealidad1 .i es necesario se reali;a

un análisis factorial previo 6 posteriormente se a!lomeran las puntuaciones1

%a solucin del análisis cluster no tiene por-ué ser 9nica+ pero no deben encontrase

soluciones contradictorias por distintos métodos1 El n9mero de observaciones en cada

cluster debe ser relevante+ 6a -ue en caso contrario puede :aber valores at,picos1

$demás+ los con!lomerados deben de tener sentido conceptual 6 no variar muc:o al

variar la muestra o el método de a!lomeracin1

Page 4: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 4/21

/RO&%E#$. <UE $&ORD$ E% $N5%I.I. C%U.TER 

El análisis de con!lomerados estudia tres tipos de problemas=

)1 /articin de los datos1> Disponemos de datos -ue sospec:amos son :etero!éneos 6

se desea dividirlos en un n9mero de !rupos prefijado+ de manera -ue=)1)1 Cada elemento pertene;ca a uno 6 solo uno de los !rupos)1'1 Todo elemento -uede clasificado)101 Cada !rupo sea internamente :omo!éneo

/or ejemplo+ se dispone de una base de datos de compras de clientes 6 se desea :acer 

una tipolo!,a de estos clientes en funcin de sus pautas de consumo1

'1 Construccin de jerar-u,as1> Deseamos estructurar los elementos de un conjunto de

forma jerár-uica por su similitud1 /or ejemplo+ tenemos una encuesta de atributos de

distintas profesiones 6 -ueremos ordenarlas por similitud1 Una clasificacin

 jerár-uica implica -ue los datos se ordenan en niveles+ de manera -ue los niveles

superiores contienen a los inferiores1

Este tipo de clasificacin es mu6 frecuentes en biolo!,a+ al clasificar animales+ plantas

etc1

Estrictamente+ estos métodos no definen !rupos+ sino la estructura de asociacin en

cadena -ue pueda e7istir entre los elementos1 .in embar!o+ como veremos+ la jerar-u,a

construida permite obtener también una particin de los datos en !rupos1

01 Clasificacin de variables1> En problemas con muc:as variables es interesante :acer 

un estudio e7ploratorio inicial para dividir las variables en !rupos1 Este estudio

 puede orientarnos para plantear los modelos formales para reducir la dimensin1 %as

variables pueden clasificarse en !rupos o estructurarse en una jerar-u,a1

Page 5: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 5/21

%os métodos de particin utili;an la matri; de datos+ pero los al!oritmos jerár-uicos

utili;an la matri; de distancias o similitudes entre elementos1 /ara a!rupar variables se

 parte de la matri; de relacin entre variables= para variables continuas suele ser la matri;

de correlacin+ 6 para variables discretas+ se constru6e+ a partir de la distancia ji>

cuadrado1

Page 6: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 6/21

2i!ura )1

Page 7: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 7/21

/%$NTE$#IENTO DE% /RO&%E#$

El Índice de Competitividad Global ?In!lés= Global Competitiveness Index+

si!las GCI@+ es desarrollado 6 publicado anualmente desde )ABA por el 2oro Econmico

#undial1 El informe de '((A>'()( evalu )00 econom,as de pa,ses desarrollados 6 en

desarrollo+ un pa,s menos -ue el informe '((>'((A debido a -ue #oldavia fue

e7cluida por falta de informacin1 En la clasificacin '()(>'()) .ui;a lidera la

clasificacin como la econom,a más competitiva del mundo+ Estados Unidos -ue por 

varios a8os ocup el primer lu!ar a:ora ocupa el cuarto debido a la debilidad de sus

instituciones financieras 6 su inestabilidad macroeconmica1

El ,ndice de competitividad mide la :abilidad de los pa,ses de proveer altos niveles de

 prosperidad a sus ciudadanos1 $ su ve;+ esta :abilidad depende de cuán

 productivamente un pa,s utili;a sus recursos disponibles1 En consecuencia+ el ,ndice

mide un conjunto de instituciones+ pol,ticas 6 factores -ue definen los niveles de

 prosperidad econmica sostenible :o6 6 a medio pla;o1 Este ,ndice es ampliamente

utili;ado 6 citado en art,culos académicos1

$ través de los si!uientes sub,ndices de competitividad publicado por el 2oro

Econmico #undial se pretende jerar-ui;ar 6 a!rupar se!9n la similitud de capacidad

competitiva de estos pa,ses latinoamericanos1

Page 8: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 8/21

SubíndicesParagua

yEcuado

rVenezuel

aArgentin

aColombi

a Per!olivi

a!rasi

lÍndice de estabilidadmacroecon"mica

010) 01A 01') 01* 01A 1*' 01 010

Índice de gasto delgobierno

)1B) '1(' )10 '1(0 '1* '1( )1A 01(B

Índice de cali#icaci"nde riesgo crediticio

'1' )1 '100 )1' '1A( '1) '1) '1(

Índice de propiedad yley

'1'A '1BB '1'B '1' 01) 01)A '1A0 01A'

Índice de corrupci"n 01B0 1) 1)* 1)* *1)( *10 1)( 1'

Índice de innovaci"n )1* )1A '10 '1A '1' '10( '10) '1'*

Índice de $CI '1B '1AB 01*) 01A 010 010 '1' 1'0

Índice detrans#erenciatecnol"gica

01*' 1)) 1B *1(( 1' 1B* 010 *1

2oro Econmico #undial

Page 9: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 9/21

$N5%I.I.C%U.TER 

Page 10: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 10/21

/or defecto en el análisis cluster de #$T%$& se crea 6 tra;a un conjunto de )( por )(

de las neuronas con a6uda de la funcin :e7top topolo!,a+ entonces se encuentra

disponible un panel de )(( neuronas or!ani;adas en die; por die; rejillas :e7a!onales

consecutivas en un plano bidimensional1

Page 11: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 11/21

El !ráfico muestra cmo al!unos de los pa,ses tomados aleatoriamente en el

entrenamiento caen en determinados :e7á!onos+ el n9mero e7presa la cantidad de

entidades ?en este caso pa,ses@ -ue caen en la re!in+ los :its ?!olpes o accesos@

determinan la separacin de los !rupos+ si bien se encuentran concentrados los !rupos

en un área inferior ?el entrenamiento reconoce similitud !lobal@ los :its del

entrenamiento separan en B !rupos+ uno conteniendo ' paises el resto uno por !rupo+

 pero e7iste la posibilidad de formar con los más cercanos otro cluster+ es decir cabe la

 posibilidad -ue sean los cluster1

Page 12: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 12/21

En el !ráfico+ los )(( :e7á!onos a;ules más pe-ue8os están entrela;ados por una l,nea

de par en par+ estos representan las distancias entre las neuronas vecinas1 %os colores

más brillantes determinan -ue los !rupos son más :omo!éneos 6 en este sentido+ los

más oscuros ma6or diferencia1 En este caso se pueden distin!uir 0 fronteras con

tonalidades oscuras en las -ue nin!9n pa,s ca6+ en términos absolutos B cluster estánseparados pero se podr,a sospec:ar -ue se pueden reclasificar a !rupos pues e7isten

fronteras con tonalidades bajas -ue separan los :e7á!onos !randes1

Page 13: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 13/21

El !ráfico muestra los !rupos de pesos de cada ,ndice para las )(( neuronas+ mediante

éste !ráfico a través de la posicin de los pesos+ se sospec:a la dependencia -ue podr,a

:aber en la relacin inter>caracter,sticas intra>unidades+ as, el ,ndice ) 6 ' 6 B 6 son

 parecidos+ 6 :acen referencia al Fndice de estabilidad macroeconmica e Fndice de !asto

del !obierno 6 al Fndice TCI e Fndice de transferencia tecnol!ica1

Page 14: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 14/21

El !ráfico de dispersin muestra los pa,ses como puntos verdes en sus dos primeras

caracter,sticas o pesos+ estos 9ltimos son representados por los puntos de color a;ul

oscuro+ son conectados a través de l,neas rojas con las neuronas futuras+ en este

entrenamiento con la entrada neta más positiva dará salida a un )+ es decir e7iste

seleccin continua de los pesos a través de su competencia en distancias eucl,dea 6 de

#an:attan+ el peso !anador se despla;a al centro de los pesos con -ue compiti

anteriormente 6 nuevamente se produce la verificacin1

Page 15: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 15/21

.CRI/T

Page 16: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 16/21

.I#/%E .CRI/T

% Solve a Clustering Problem with a Self-Organizing Map% Script generated by Neural Clustering app% Created !-Nov-"#$ "#&'"!%% (his script assumes these variables are defined%% sub)indc - input data*

 + , sub)indc

 % Create a Self-Organizing Mapdimension# , #dimension" , #net , selforgmap./dimension# dimension"01

 % (rain the Networ2/net3tr0 , train.net3+1

 % (est the Networ2y , net.+1

 % 4iew the Networ2view.net1

 % Plots% 5ncomment these lines to enable various plots*

%figure3 plotsomtop.net1%figure3 plotsomnc.net1

%figure3 plotsomnd.net1%figure3 plotsomplanes.net1

%figure3 plotsomhits.net3+1%figure3 plotsompos.net3+1

$DG$NCED .CRI/T

Page 17: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 17/21

% Solve a Clustering Problem with a Self-Organizing Map% Script generated by Neural Clustering app% Created !-Nov-"#$ "#&6"6% (his script assumes these variables are defined% sub)indc - input data* + , sub)indc

% Create a Self-Organizing Mapdimension# , #dimension" , #net , selforgmap./dimension# dimension"01

 % Choose Plot 7unctions

% 7or a list of all plot functions type help nnplotnet*plot7cns , 89plotsomtop939plotsomnc939plotsomnd93 ***

  9plotsomplanes93 9plotsomhits93 9plotsompos9:

 % (rain the Networ2

/net3tr0 , train.net3+1

 

% (est the Networ2y , net.+1

 % 4iew the Networ2

view.net1

 % Plots% 5ncomment these lines to enable various plots*%figure3 plotsomtop.net1%figure3 plotsomnc.net1%figure3 plotsomnd.net1%figure3 plotsomplanes.net1%figure3 plotsomhits.net3+1

%figure3 plotsompos.net3+1 % ;eployment% Change the .false1 values to .true1 to enable the following codebloc2s*% See the help for each generation function for more information*if .false1  % <enerate M=(>=? function for neural networ2 for application  % deployment in M=(>=? scripts or with M=(>=? Compiler and ?uilder  % tools3 or simply to e+amine the calculations your trained neural  % networ2 performs*  gen7unction.net39myNeuralNetwor27unction91  y , myNeuralNetwor27unction.+1

endif .false1

  % <enerate a matri+-only M=(>=? function for neural networ2 code  % generation with M=(>=? Coder tools*

  gen7unction.net39myNeuralNetwor27unction939Matri+Only939yes91  y , myNeuralNetwor27unction.+1

endif .false1

  % <enerate a Simulin2 diagram for simulation or deployment with*  % Simulin2 Coder tools*

  gensim.net1end

Page 18: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 18/21

 &I&%IO4R$2F$ 3 %INHO4R$2F$

1. MathWorks Cluster with Self-Organizing Map Neural Network  

http://www.mathworks.com/help/nnet/ug/cluster-with-self-organizing-

map-neural-network.html2.   Daniel Peña (!!" Análisis de Datos Multivariantes..   #$sar Perez (!!%" !"#ni#as de Análisis Multivariante de Datos

 Apli#a#iones #on S$SS%.   http://www.weforum.org/&.   https://es.wikipe'ia.org/wiki/#)*Dn'ice+'e+#ompetiti,i'a'+loal

Page 19: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 19/21

$NEO.

Page 20: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 20/21

$N5%I.I. C%U.TER EN I&# ./..

Matriz de proximidades

Caso

 Distancia euclídea al cuadrado

1:Paraguay 2:Ecuador 3:Venezuel 4:Argentin 5:Colombia :Per! ":#oli$ia %:#rasil

1:Paraguay &''' 1&14% 2&"1 &3(4 5&(14 %&13 1&1"4 11&4(1

2:Ecuador  1&14% &''' 1&5%4 3&4' 3&15( 4&4"5 &"4( &(3'

3:Venezuel 2&"1 1&5%4 &''' 2&'53 3&52% 5&1"5 2&514 &22(

4:Argentin &3(4 3&4' 2&'53 &''' 5&3" &%" 5&34" "&14

5:Colombia 5&(14 3&15( 3&52% 5&3" &''' &5%( 3&'"5 2&%14

:Per! %&13 4&4"5 5&1"5 &%" &5%( &''' 4&555 3&%'"

":#oli$ia 1&1"4 &"4( 2&514 5&34" 3&'"5 4&555 &''' %&141

%:#rasil 11&4(1 &(3' &22( "&14 2&%14 3&%'" %&141 &'''

Esto es una matriz de disimilaridad)

Historial de conglomeración

Eta*a

Cl!ster combinado

Coe+icientes

Primera a*arici,n del cl!ster de

eta*a

Eta*a siguienteCl!ster 1 Cl!ster 2 Cl!ster 1 Cl!ster 2

1 5 &5%( ' ' 5

2 2 " &"4( ' ' 3

3 1 2 1&11 ' 2

4 3 4 2&'53 ' '

5 5 % 3&311 1 ' "

1 3 3&53 3 4 "

" 1 5 &'1( 5 '

Page 21: Clasificación y Segmentación Mediante Análisis Cluster en Matlab

7/23/2019 Clasificación y Segmentación Mediante Análisis Cluster en Matlab

http://slidepdf.com/reader/full/clasificacion-y-segmentacion-mediante-analisis-cluster-en-matlab 21/21

.i tra;amos una l,nea -ue divida de lado a lado el dendro!rama en la distancia )(+

 podremos reconocer la e7istencia de cluster+ conformados por /er9 6 Colombia+ otro

 por &rasil+ otro por Ecuador+ &olivia 6 /ara!ua6+ 6 otro por Gene;uela 6 $r!entina1