1.13k likes | 1.27k Views
Análise de agrupamentos. Prof. José Francisco Moreira Pessanha professorjfmp@hotmail.com. Análise de agrupamentos Cluster Analysis.
E N D
Análise de agrupamentos Prof. José Francisco Moreira Pessanha professorjfmp@hotmail.com
Análise de agrupamentosCluster Analysis Abrange uma variedade de métodos que têm por objetivo fracionar um conjunto de objetos em um determinado nº de subconjuntos mutuamente exclusivos (agrupamentos ou clusters), de tal forma que os objetos em um mesmo cluster sejam semelhantes entre si, porém diferentes dos objetos dos outros clusters. Os clusters devem exibir elevada homogeneidade interna (pequena variabilidade dentro de cada grupo) e elevada heterogeneidade externa (grande separação entre os grupos). Os clusters não são conhecidos previamente, mas são obtidos pela análise das semelhanças ou diferenças entre os objetos do conjunto de dados. Os métodos de análise de agrupamentos têm por objetivo determinar uma estrutura de grupos que se ajuste aos dados disponíveis, i.e., classificar os objetos de acordo com o agrupamento natural dos dados.
Análise de agrupamentosCluster Analysis Identificação dos clusters a partir dos dados Cada ponto representa uma empresa Clusters Algoritmo de análise de agrupamentos
O que é possível fazer com a análise de agrupamentos ? • Formar uma taxonomia das observações Identificar grupos naturais no interior dos dados, i.e., uma classificação empírica dos objetos. • Simplificar os dados (compressão de dados) Descrever de forma compacta um razoável volume de dados por meio dos elementos típicos dos clusters (médias ou medianas). • Identificar relações entre objetos • Revelar similaridades e diferenças entre objetos não reveladas de outra maneira. • Identificar observações aberrantes.
Características da análise de agrupamentos • É descritiva, os métodos são exploratórios e a idéia é gerar hipóteses. • Cria grupos indiferentemente a existência de alguma estrutura nos dados. • Variedade de vias e critérios para definição dos grupos o que implica na possibilidade de obter soluções diferentes variando-se um ou mais critérios. • A solução da análise de agrupamentos não é generalizável por que ela é totalmente dependente tanto das variáveis usadas como dos critérios em que ela se baseia.
Medidas de similaridade e de dissimilaridade Clusters são grupos de objetos semelhantes. Para formar clusters é necessário ter uma medida do grau de similaridade entre os objetos ou de diferença (dissimilaridade) entre eles. Vamos trabalhar com medidas de dissimilaridade (distâncias), por exemplo, o quadrado da distância euclidiana. Distâncias pequenas indicam objetos próximos, ou seja, semelhantes em um conjunto de atributos. Sejam os objetos X e Y caracterizados por p atributos quantitativos: X = (x1,x2,...,xp) e Y = (y1,y2,...,yp). O quadrado da distância euclidiana entre X e Y é dado por: ||X-Y||2 = (x1 – y1)2 + (x2 – y2)2 +...+ (xp - yp)2 =
Centro de gravidade da nuvem de pontos Matriz de dados Nuvem de pontos com centro de gravidade C C As coordenadas do centro de gravidade C são as médias em cada atributo: Abscissa de C = (1 + 1,5 + 5 + 6 + 1 + 1,5 + 5,5 + 6,5) / 8 = 3,5 Ordenada de C = (1 + 1,5 + 5,5 + 7 + 3 + 3,5 + 1 + 2) / 8 = 3,06
Inércia total, medida de dispersão da nuvem de pontos ao redor do centro de gravidade da nuvem C #1 Nuvem de pontos com centro de gravidade C Matriz de dados Quadrado da distância entre o objeto #1 e o centro de gravidade C: ||#1 – C||2 = (1 – 3,5)2+ (1 - 3,06)2 = 10,1 A inércia total é a soma dos quadrados das distâncias entre cada objeto e o centro de gravidade da nuvem de pontos (ponto C): Inércia total = ||#1 – C||2 + ||#2 – C||2 +...+ ||#8 – C||2 = 75,72
Centros de gravidade dos clusters (centróides) Centros de gravidade dos clusters (centróides) Matriz de dados C C2 C1 O centro de gravidade de um cluster é a média dos seus objetos: Abscissa do centróide C1 = (1 + 1,5 + 1 + 1,5) / 4 = 1,25 Ordenada do centróide C1 = (1 + 1,5 + 3 + 3,5) / 4 = 2,25 Abscissa do centróide C2 = (5 + 6 + 5,5 + 6,5) / 4 = 5,75 Ordenada do centróide C2 = (5,5 + 7 + 1 + 2) / 4 = 3,88
Inércia inter-cluster medida de separação dos clusters C2 C C1 É a soma dos quadrados das distâncias dos centróides dos clusters ao centro de gravidade da nuvem de pontos, ponderadas pelos respectivos tamanhos dos clusters. 4x||C1 – C||2 + 4x||C2 – C||2 Contribuição do cluster 1 para a inércia inter-cluster = 4x||C1 – C||2 4x[(1,25 - 3,50)2 + (2,25 - 3,06)2] = 22,89 Contribuição do cluster 2 para a inércia inter-cluster = 4x||C2 – C||2 4x[(5,75 - 3,50)2 + (3,88 - 3,06)2] = 22,89 Inércia inter-cluster = 22,89 + 22,89 = 45,78
Inércia intra-clustermedida de heterogeneidade interna dos clusters #4 #3 É a soma dos quadrados das distâncias dos objetos aos centróides dos clusters onde estão alocados. C2 C #6 #5 #8 #7 #1 C1 #2 Contribuição do cluster 1 para a inércia intra-cluster ||#1 - C1||2 + ||#2 - C1||2+ ||#5 - C1||2 + ||#6 - C1||2 = 4,5 Contribuição do cluster 2 para a inércia intra-cluster ||#3 - C2||2+||#4 - C2||2+||#7 - C2||2 +||#8 - C2||2 = 25,44 Inércia intra-cluster = 4,5 + 25,44 = 29,94
Decomposição da inércia #4 #3 C2 C2 C C #6 #5 #8 #7 #1 C1 C1 #2 C Inércia intra-cluster 29,94 Inércia total 75,72 Inércia inter-cluster 45,78 Inércia total = Inércia intra-cluster + Inércia inter-cluster
Há várias formas de dividir um conjunto em k clusters, a melhor é aquela que produz clusters mais homogêneos Melhor solução com 2 clusters A inércia total permanece constante e independe da forma como os objetos são agrupados Inércia Intra-cluster = 29,94 Inércia Inter-cluster = 45,78 Inércia Total = 75,72 2 clusters Quanto menor a inércia intra-cluster, mais homogêneos são os clusters formados Inércia Intra-cluster = 52,81 Inércia Inter-cluster = 22,91 Inércia Total = 75,72 2 clusters Quanto maior a inércia inter-cluster, maior é a separação dos clusters Inércia Intra-cluster = 71,81 Inércia Inter-cluster = 3,91 Inérica Total = 75,72
Inércias intra e inter variam com o número de clusters (k), porém a soma é constante e independe de k 2 clusters A inércia total permanece constante e independe do nº de clusters Inércia Intra-cluster = 29,94 Inércia Inter-cluster = 45,78 Inércia Total = 75,72 3 clusters A inércia intra-cluster diminui a medida que aumentamos o nº de clusters Inércia Intra-cluster = 7,13 Inércia Inter-cluster = 68,59 Inércia Total = 75,72 4 clusters A inércia inter-cluster aumenta a medida que aumentamos o nº de clusters Inércia Intra-cluster = 3,13 Inércia Inter-cluster = 72,59 Inérica Total = 75,72
Etapas da análise de agrupamentos • Seleção dos objetos a serem agrupados. (no caso da caracterização da carga são as curvas típicas dos dias úteis da amostra de clientes e redes) • Definição de um conjunto de variáveis que caracterizam os indivíduos. • (no caso da caracterização da carga são as demandas da curva de carga) • 3) Seleção de uma medida de similaridade ou dissimilaridade entre objetos. (em geral é utilizada a distância euclidiana ou o seu quadrado) • 4) Seleção de um algoritmo de agregação dos indivíduos. (há uma enorme variedade de métodos com esta finalidade) • 5) Definição do nº de clusters ou tipologias. • 6) Interpretação e validação dos clusters obtidos.
Métodos de análise de agrupamentos Métodos não hierárquicos: k-Means , Nuvens dinâmicas Métodos hierárquicos: métodos de encadeamento (linkage methods) e Método de Ward Métodos não hierárquicos Métodos hierárquicos Procuram diretamente uma partição de N objetos em um número pré-definido de k clusters que satisfaçam duas premissas básicas: coesão interna e isolamento dos clusters. O número de agrupamentos deve ser especificado a priori Particionam um conjunto com N objetos seqüencialmente em 1,2,3,4 até N clusters, obtendo no final uma estrutura em árvore, semelhante as classificações zoológicas (espécies, gêneros, famílias, ordem, etc.).
K-Means xi Distância entre os dois pontos cj Demanda fora de ponta Demanda ponta Divide um conjunto de n objetos em kclusters (k é dado de entrada), de tal forma que a heterogeneidade interna dos clusters seja minimizada. Dado um conjunto de k centróides, cada objeto xi, i=1,n, é alocado ao cluster com o centróide cjmais próximo. é o quadrado da distância do objeto xi ao centróide do cluster j Em cada cluster j, j=1,k, a heterogeneidade interna é avaliada pela seguinte soma de quadrados ou WSS(j): Acumulando ao longo dos k clusters temos a inércia intra-cluster ou WSS:
K-Means Quanto menor WSS(j), menor é a heterogeneidade do j-ésimo cluster. Logo, para minimizar a heterogeneidade interna dos clusters devemos minimizar a inércia intra-cluster (WSS). Menor heterogeneidade interna dos clusters Menor Inércia Intra-cluster (WSS) Dado que o objetivo é dividir o conjunto de n objetos em kclusters tal que a heterogeneidade interna dos clusters seja mínima,devemos identificar os k centróides cj , j=1,k, que minimizem a inércia intra-cluster (WSS).
K-Means Algoritmo do Método K Means Passo 1 Especifique um conjunto de kcentróides iniciais cj , j=1,K (escolhidos ou gerados aleatoriamente com base na amostra). Passo 2Percorra a lista de objetos, calcule o quadrado da distância de cada objeto em relação ao centróide de cada cluster e aloque cada objeto ao cluster cujo centróide é o mais próximo. Passo 3 Calcule o valor da inércia intra-cluster (WSS). Pare se o valor da função objetivo estiver abaixo de uma tolerância ou se a melhoria em relação a iteração anterior for desprezível. Passo 4 Atualize os centróides calculando a média dos objetos em cada cluster e volte para o passo 2. objeto i classificado no cluster j se • O algoritmo deve continuar até o momento que não haja realocação de objetos de um cluster para outro
K-Means Lebart, L., Piron, M, Morineau, A. Statistique exploratoire multidimensionnelle, Dunod, 2000
K-Means Objetos Coordenadas X1 X2 A 5 3 B -1 1 4 X2 C 1 -2 A 3 D -3 -2 2 B 1 X1 0 -4 -3 -2 -1 0 1 2 3 4 5 6 -1 D C -2 -3 Exemplo Dado o conjunto de 4 objetos (n=4), use o algoritmo k-Means para identificar 2 clusters (k=2)
K-Means Centróide Objetos Coordenadas dos centróides dos clusters Coordenadas X1 X1 X2 X2 A C1 2 5 3 2 C2 B -1 -1 1 -2 B C A D Cluster com centróide C2 Cluster com centróide C1 Cluster com centróide C2 Cluster com centróide C2 C 1 -2 D -3 -2 Exemplo Alocação dos objetos aos clusters ||A - C1||2 = (5-2)2 + (3-2)2 =10 ||A - C2||2 = (5+1)2 + (3+2)2 =61 Centróides iniciais (seleção aleatória) ||B - C1||2 =(-1-2)2 + (1-2)2 = 10 ||B - C2||2 =(-1+1)2 + (1+2)2 = 9 Lista de objetos ||C - C1||2 =(1-2)2 + (-2-2)2 = 5 ||C – C2||2 =(1+1)2 + (-2+2)2 = 4 ||D - C1||2 =(-3-2)2 + (-2-2)2 = 39 ||D – C2||2 =(-3+1)2 + (-2+2)2 = 4
K-Means Clusters Coordenadas dos centros de gravidade X1 X2 A 5 3 BCD -1 -1 4 X2 A 3 2 B 1 X1 0 -4 -2 0 2 4 6 -1 centro de C gravidade D -2 -3 Exemplo Atualiza os centróides
K-Means D A B C Cluster com centróide C1 Cluster com centróide C2 Cluster com centróide C2 Cluster com centróide C2 Exemplo Alocação dos objetos aos clusters 4 ||A - C1||2 = (5-5)2 + (3-3)2 =0 ||A - C2||2 = (5+1)2 + (3+1)2 =61 X2 A 3 C1 2 B 1 ||B - C1||2 =(-1-5)2 + (1-3)2 = 40 ||B - C2||2 =(-1+1)2 + (1+1)2 = 4 X1 0 -4 -2 0 2 4 6 -1 C D -2 C2 ||C - C1||2 =(1-5)2 + (-2-3)2 = 39 ||C – C2||2 =(1+1)2 + (-2+1)2 = 5 -3 Não houve realocação de objetos, portanto, o algoritmo convergiu e dois clusters foram identificados: A e B,C,D ||D - C1||2 =(-3-2)2 + (-2-2)2 = 41 ||D – C2||2 =(-3+1)2 + (-2+1)2 = 5
K-Means • Vantagens • Tendem a maximizar a dispersão entre os centros de gravidade dos clusters (clusters bem separados). • Simplicidade de cálculo, calcula somente as distâncias entre os objetos e os centros de gravidade dos clusters. • Desvantagens • A solução é dependente dos conjuntos de sementes iniciais, principalmente se a seleção das sementes é aleatória. • Não há garantias de um agrupamento ótimo dos objetos.
Exemplo: definição das metas de continuidade do fornecimento de energia elétrica com o K-Means A Resolução ANEEL 024/2000: introduziu a análise comparativa (yardstick competition) dos desempenhos dos conjuntos de unidades consumidoras, como meio de definição das metas dos indicadores DEC e FEC. A idéia é estabelecer metas diferenciadas que reconhecem a diversidade física e econômica das regiões atendidas pelas distribuidoras. A análise comparativa e a definição das metas de continuidade está implementada no ANABENCH, um sistema computacional desenvolvido pelo CEPEL. • Atributos dos conjuntos: • km de rede aérea primária – ERAP • área do conjunto – AREA • potência instalada – PNI • número de consumidores - NUC • consumo médio - CMM • Isolado ou interligado Cerca de 6000 conjuntos de unidades consumidoras informados pelos sistema GESTTOR/ANEEL Formação dos clusters de conjuntos semelhantes pelo K-Means Definição das metas de DEC e FEC em cada cluster Clusters Metas PESSANHA, J.F.M., CASTELLANI, V.L.O., HASSIN, E.S., CHEBERLE, LA.D. ANABENCH – Sistema Computacional para Estabelecimento de Metas de Continuidade, XVI Seminário Nacional de Distribuição de Energia Elétrica, Brasília, 2004.
Exemplo: definição das metas de continuidade do fornecimento de energia elétrica com o K-Means Inércia Inter-cluster (SQInter) para diferentes níveis de agregação • A inércia inter-cluster cresce com o nº de clusters. • Quantos clusters devem ser formados ? • Uma partição em 30 cluster é razoável, pois: • concentra mais de 80% da inércia inter-cluster (SQInter) • a partir deste ponto o ganho de SQInter com a adição de mais clusters torna-se muito pequeno
Métodos hierárquicos Particionam um conjunto com N objetos seqüencialmente em 1,2,3,4 até N clusters, obtendo no final uma estrutura em árvore, semelhante as classificações zoológicas (reino, espécies, gêneros, famílias, ordem, etc.). Produzem uma série de partições encaixadas: o grupo formado em um determinado passo corresponde a união de grupos formados em passos anteriores. O resultado é apresentado na forma de uma árvore de classificação conhecida por dendrograma Dois tipos de procedimentos hierárquicos de agrupamento: aglomerativo e divisivo dendrograma objetos distância O dendograma mostra a sequência de agregação dos objetos
Métodos hierárquicos • Aglomerativo (método mais comum) • No início cada objeto forma um cluster que sucessivamente sofre uma série de fusões com outros clusters até que no final todos os objetos estejam em um único agrupamento. • Um cluster formado em uma dada interação corresponde a união de clusters formados em passos anteriores. • Divisivo • No início há apenas um cluster formado pelo conjunto de objetos que é dividido sucessivamente até que no final cada cluster contenha apenas um objeto. • Clusters formados em uma dada interação correspondem a fragmentação de um cluster formado no passo anterior. Exemplo: Considere 5 veículos caracterizados pelos seguintes atributos: n° de portas, autonomia (km/l), preço, cilindrada, conforto, tamanho.
Métodos hierárquicos: matriz de distância Objeto 1 Matriz de dados Objeto n Variável 1 Variável p Os métodos hierárquicos dependem de uma matriz de distância entre os objetos. Matriz de distãncias
Métodos hierárquicos: matriz de distância (Reis, 2001) Com o objetivo de encontrar grupos estratégicos, pretende-se aplicar a análise de agrupamentos a uma amostra de seis grandes empresas comerciais portuguesas, para as quais foram medidas as seguintes dimensões estratégicas: X1 = nº de lojas X2 = dimensão média das lojas (m) X3 = % da área alimentar no total das vendas X4 = montante da área alimentar no total de caixa ($ 1000) Matriz de dados
Métodos hierárquicos: matriz de distância (Reis, 2001) Variáveis em escalas diferentes padronização Valor padronizado da variável j na i-ésima empresa Dados padronizados
Métodos hierárquicos aglomerativos • Vários métodos: • Encadeamento Simples ou vizinho mais próximo (Single linkage ou nearest neighbor) • Encadeamento Completo ou vizinho mais longe (Complete linkage ou furthest neighbor) • Encadeamento Médio (Average linkage) • Método de Ward (Ward´s method) MELHOR MÉTODO HIERÁRQUICO • Método do Centróide (Centroid method) • Todos estes métodos partem de uma matriz de distâncias entre os objetos. Os métodos diferem na maneira de como calculam as distâncias entre os objetos e clusters.
Métodos hierárquicos aglomerativos F E C D B A Objetos Solução inicial com 6 clusters, cada um com 1 objeto Qual o par de objetos mais próximos, ou seja, parecidos? É o par E,F, logo estes objetos são os primeiros a serem agrupados Matriz de distâncias entre os clusters (matriz simétrica)
Métodos hierárquicos aglomerativos F E C D B A Solução intermediária com 5 clusters. As distâncias passam a ser calculadas em relação ao cluster e não mais em relação aos seus objetos Atualiza matriz de distâncias Qual o par de objetos mais próximos? É o par A,B, logo estes objetos são os próximos a serem agrupados Matriz de distâncias entre os clusters (matriz simétrica)
Métodos hierárquicos aglomerativos F E C D B A Solução intermediária com 4 clusters Atualiza matriz de distâncias Qual o par de objetos mais próximos? É o par (E,F),D logo estes objetos são os próximos a serem agrupados Matriz de distâncias entre os clusters (matriz simétrica)
Métodos hierárquicos aglomerativos F E C D B A Solução intermediária com 3 clusters Atualiza matriz de distâncias Qual o par de objetos mais próximos? É o par (E,F,D),C logo estes objetos são os próximos a serem agrupados Matriz de distâncias entre os clusters (matriz simétrica)
Métodos hierárquicos aglomerativos F E C D B A Solução intermediária com 2 clusters Atualiza matriz de distâncias Matriz de distâncias entre os clusters (matriz simétrica) O próximo passo seria agrupar todos os objetos em um único cluster (solução trivial). 27,35 é a distância entre os dois clusters
Métodos hierárquicos aglomerativos 5 clusters 4 clusters 6 objetos = 6 clusters Matriz de distâncias 5x5 Menor distância = 1 Matriz de distâncias 4x4 Menor distância = 2,667 Matriz de distâncias 6x6 Menor distância = 0,5 A cada iteração o número de clusters diminui de uma unidade e os novos agrupamentos tornam-se mais heterogêneos internamente. 1 cluster 2 clusters 3 clusters Matriz de distâncias 2x2 Menor distância = 27,35 Matriz de distâncias 3x3 Menor distância = 3,02
Métodos hierárquicos: dendrograma A sequência das agregações e as distâncias em que elas ocorrem são descritas no dendrograma, um gráfico útil na definição do número de agrupamentos. • Melhor solução tem 2 clusters: • Cluster AB • Cluster CDEF
Métodos hierárquicos aglomerativos Algoritmo • Inicie com N clusters, cada um contendo apenas um objeto e construa a matriz de distâncias de ordem N. • 2) Identifique o menor elemento da matriz de distâncias para encontrar o par de clusters mais similares. • 3) Reúna os dois clusters identificados na etapa 2 em um único cluster e atualiza a matriz de distâncias, retirando as linhas e colunas relativas aos dois clusters identificados em 2 e incluindo a linha e coluna com as distâncias entre os demais clusters e o novo cluster formado. Note que a ordem da matriz de distâncias diminui de uma unidade a cada vez que a etapa 3 é executada • 4) Repita os passos 2 e 3 até que reste apenas um cluster. A cada iteração guarde a identificação dos clusters que foram fundidos e também a distância entre eles, estas informações serão utilizadas na montagem do dendrograma.
Métodos hierárquicos: encadeamento simples (single linkage) A B Em qualquer estágio, a fusão de dois clusters baseia-se na menor distância individual entre os seus elementos. Utiliza a distância mínima entre dois objetos para definir a distância entre dois clusters. Quando os objetos estão pobremente estruturados, o single linkage pode reunir em um cluster elementos bastante diferentes, desde que haja entre eles uma cadeia de outros elementos que sejam semelhantes entre si (efeito de cadeia). Tende a concentrar a maior parte dos objetos em um pequeno número de clusters e formar muitos clusters com poucos objetos. Exemplo de como a ligação individual pode agregar pontos distintos A e B
Exemplo encadeamento simples (Reis, 2001) Feira Nova Supa/Jumbo Minipreço Continente Modelo Pingo Doce 1ª iteração Menor distância = d12 = 0,3 entre Modelo e Pingo Doce 5 clusters
Exemplo encadeamento simples (Reis, 2001) Feira Nova Supa/Jumbo Minipreço Continente Modelo Pingo Doce Atualização da matriz de distâncias d13 = 12,2 d23 = 9,2 Qual a distância entre Feira Nova e o cluster Modelo/Pingo Doce ? d12,3 = ? Pelo encademaneto simples = d12,3 = min(12,2 ; 9,2) = 9,2