Rodrigo A. Scarpel Rodrigo A. Scarpel Rodrigo A. Scarpel Rodrigo A. Scarpel rodrigo@ita.br rodrigo@ita.br rodrigo@ita.br rodrigo@ita.br www.mec.ita.br/~rodrigo www.mec.ita.br/~rodrigowww.mec.ita.br/~rodrigo www.mec.ita.br/~rodrigo
MÉTODOS
MULTIVARIADOS
INTRODUÇÃO
Semana Conteúdo
Introdução aos métodos multivariados Análise de componentes principais
2 Aplicações de análise de componentes principais 3 Princípios de análise fatorial exploratória
4 Análise fatorial exploratória e aplicações
5 Métodos de visualização de dados e escalonamento multidimensional 6 Análise de agrupamentos: métodos hierárquicos
7 Análise de agrupamentos: métodos não-hierarquicos 8 Prova
9 Análise de agrupamentos: método da mistura (baseados em densidade). Métodos avançados de formação de agrupamentos.
Introdução aos modelos de classificação Métodos de detecção de iterações
11 Classificadores lineares e análise discriminante paramétrica 12 Regressão Logística
13 FERIADO (11/6)
Métodos de classificação baseados em programação matemática Support Vector Machine
Métodos de avaliação da performance de modelos de classificação Mistura de especialistas 16 Prova 15 1 10 14
GERAÇÃO DE AGRUPAMENTOS
• Objetivos: agrupar observações (linhas de uma base de dados, indivíduos em uma população, ...) para “descobrir estruturas” nos dados.
• Os métodos de geração de agrupamentos são fundamentalmente uma coleção de métodos de exploração de dados, sendo utilizados para verificar se existem
agrupamentos naturais.
• Os métodos de geração de agrupamentos podem ser divididos em:
Aglomerativos Partitivos Iteration 1 2 3 4 Aglomerativos Partitivos Iteration 1 2 3 4 1 2 3 4
MÉTODOS HIERÁRQUICOS
• Os métodos hierárquicos de geração de agrupamentos são enquadradoscomo aglomerativos e comumente utilizados para sumarizar estruturas em bases de dados.
• Os agrupamentos são gerados a partir de uma matriz de dissimilaridades.
• Os agrupamentos gerados são representados em uma estrutura, na forma de árvore, denominada dendograma que mostra como as observações foram aglomeradas.
• Os métodos hierárquicos mais utilizados são:
– Ligação simples (método do vizinho mais próximo) – Ligação completa (método do vizinho mais distante) – Ligação média
– Centróide – Ward
Média = (21/2+ ...+1451/2) / 5 = 6,05
Diferenças:
• Número ideal de agrupamentos:
1 2 3 4 5 6 0,00 5,25 10,51 15,76 Observations Distance
DENDOGRAMA
261/2 - 21/2 = 3,68 1061/2- 261/2 = 5,19 21/2 21/2 1061/2 1451/2 261/2 1451/2- 1061/2 = 1,75 0 5 10 15 20 25 0 10 20 30 40 Renda (R$ mil) E d u c a ç ã o ( a n o s)Para o método de Ward: R2 = 1 – (SQW / SQT), em que
SQW é a soma de quadrados “within-cluster”,
SQT é a soma de quadrados total
MÉTODOS HIERÁRQUICOS
• Problema com os métodos hierárquicos: i. Grande número de observações
3 6 6 4 7 7 3 0 04 4 7 6 4 8 218 1 7 3 4 1 4 3 6 3202738704 7 3 4 6 7 4 7 9 4 8 1 2 5 4 4 7 8 4 1 1 3 2 2 3 9 1 48 0 1 9 8 4 3 0 3 1 4 3 3 3 58474 4 7 5 3 1 9 2 9 5 1 7 0 2 2 571210 4 5 1 4 5 22 4 1 4 2 9 0 4 6 2 4 6 1 4 6 9 4 2 9 4 4 1 3 9 0 4 1 05 6 4 6 8 3 0 8 3 2 0 3 8 2 3 9 847219 4 6 2 8 2 9 0 1126182936 4 6 4 4 6 5 4 6 3 4 7 0 4 2 5 0 5 293 1 47 886080 2 5 7 3 8 6 3 2 1 3 4 2 1 1 6 2 1 8 1 7 7 1 8 8264163 1 9 7 2 6 0 5 6 9 4 2 7 4 5 8 4 5 9 2 8 4 6 6 4 5 3 2 7 0 4 5 5 1 5 4 0 7 2 5 3 4 1 3 4 3 1 4 0 0 4 3 3 3 2 3 1 6 0 3 2 8 3 9 4 2 4 8 2 9 2 3 6 0 3 7 9 2 8 7 3 2 5 3 5 64181923 2 5 2 2 6 7383 4 3 2 2 7 8 3 8 5 2 7 6 4 1 2 3 5 1 3 8 4 3 1 0 3 1 6 2 0 1 2 1 6 1 9 3 2 2 2 2 3 6 1 6 2 2 6 9 2 0 6 2 2 9 2 8 5 3 0 7120168 1 7 3 2 2 8 2 9 4 1 3 7 3 7 2 3 9 6 4 0 2 4 4 5 4 4 7 3 9 5 4 0 3 2 6 3 3 7 8 3 5 4 3 3 6 2 4 1 2 0 0 2 4 2 2 7 4 2 8 8 4 2 0 4 2 6 3 7 7 4 0 4 3 5 2 4 1 5 6 3 6 3 3 7 9 9 6 6 7 54867 4 2 2 4 3 6 4 4 2 4 3 8 4 4 0 4 1 6 4 3 7 4 1 7 3 7 1 3 7 5 2 2 1 2 2 6 3 4 7 2 8 1 2 2 3 2 3 9 2 5 1 2 5 6 1 7 9 1 8 3 1 3 9 1 4 2 1 0 0 7 3 8 1 1 0 7 8 7 8 9 1 7 6 3 2 7 3 6 5 3 6 8 1 8 2 2 1 3 2 7 3 2 4 4 2 9 6 1 6 1 2 0 4 2 5 5 3 3 7 2 1 2 1 4 9 1 5 6 2 5 8 1 9 0 2 4 9 2 6 134942 8 2 4 3 3 2 2 7 9 3 0 4304659 4 4 4 4 5 0344015116106 1 3 276 2 1 9 1 0 5 1 5 0 91 1 3 8 8 4 1 3 1 1 4 4321325230 3 1 1 3 2 9 3 3 9 2 7 7 2 4 0 2 1 4 1 9 5 2 0 8 2 2 0 8 3 1 1 4 1 4 6 1 2 2 1 4 5 3 6 4 5 7853549 79 2 0 3 3 5 7 3 3 4 3 4 6 3 6 9 1 7 2 1 8 6 3 0 3 1 2 9 3 0 6 3 4 3 2 9 1 2 4 5 2 8 3 1 5 2 1 8 0 1 3 5 1 9 6 1 6 4 1 8 744955 3 7 3 4 4 8 3 9 3 4 3 445 4 2 1 4 0 8 4 2 3 72 4 3 9 3 9 9 4 1 9 4 0 5 4 2 4 4 2 535937 0 3 7 6 2 2 7 3 1 8 2 7 5 3 0 1 1 4 3 3 8 1 2 1 1 2 2 4 1 6 5 3 9 7 3 1 3 3 1 8 5 2 0 9 1 6 6 1 7 1 1 8 1 2 3 3 3 1 7 4 0 1 3 8 0 3 5 0 3 5 5 3 2 4 3 3 1 3 0 2 2 3 4 2 6 6 2 6 2 2 6 8 1 9 9 2 4 3 2 4 6 3 6 1 3 6 7 3 9 2 4 0954536494103 2 1 0 1 9 2 2 1 7 2 8 6 2 3 1 2 5 9 1 0 1 9 2 1 1 0 1 4 8 1 5 3 6 8 7 795 1 3 0 1 1 1 9 8 1 0 8 1 2 3 3 3 0 3 3 5 1 5 5 2 0 2 3 2 6 3 4 1 3 0 9 2 8 4 2 9 8 2 9 9 2 9 7 2 8 0 1 5 8 1 9 1 2 0 5 2 7 2 2 1 5 2 3 8 1 8 4 1 8 9 4 751 717497 1 2 6 1 3 6 2 9 3 2 8 9 2 3 2 2 6 5 3 1 5 3 4 0 3 0 5 3 3 8 1 1 7 1 2 8 1 4 186 1 1 8 1 2 5 1 4 0 1 6 7 1 3 3 1 7 5 1 0 4 1 1 2 9 6 1 1 5 1 1 3 1 54 783944914 2 1 2 4 7 2 3 5 2 5 0 1 3 4 1 7 8 443109 1 6 9 3 1 2 3 4 8 4 0 6 2 0 7 3 8 7 2 7 1 2 3 7 2 8 2 3 1 3 1 0 2 1 2 1 65 1 7 4 1 1 9 1 2 4344 3 4 5 3 7 4 3 6 2 3 8 9 3 8 8 4 4 6 4 5 6 4 5 74 7 1 4 6 0 4 3 5 4 5 4 1 5 7 2 2 6 1 1 2 7 1 5 9 3 5 3 3 5 8 0 5 1 0 1 5 2 0 2 5 Cluster Dendrogram hclust (*, "single") dist(sqrt(AGRUP)) H e ig h t
MÉTODOS HIERÁRQUICOS
• Problema com os métodos hierárquicos:
ii. Não são iterativos (se duas observações são agrupadas elas nunca mais deixarão se estar no mesmo agrupamento)
x = rnorm(1000, mean=0, sd=.5) y = rnorm(1000, mean=0, sd=.5)
Partitivos Iteration 1 2 3 4 Partitivos Iteration 1 2 3 4 1 2 3 4 • Os métodos não-hierárquicos de geração
de agrupamentos são enquadrados como
partitivos (dividem os n dados existentes em k partições).
• O número de partições deve ser conhecido a priori.
• São métodos que buscam encontrar uma partição dos dados que maximize algum critério pré-definido relacionado a similaridade entre as observações dentro do agrupamento e dissimilaridade entre observações de diferentes agrupamentos.
• Os diferentes métodos existentes diferem relação ao critério (função objetivo) a ser otimizado e ao procedimento (variável de decisão) de otimização adotado.
• Função Objetivo:
Sendo a dispersão total dos dados medida por:
a dispersão dos agrupamentos (within-groups) é obtida por:
Portanto, é natural imaginar em uma problema de otimização com
F.O. Minimizar Tr(Sw) e zci como variáveis de decisão.
(
)(
)
∑
∑
= ==
′
−
−
=
n i n in
que
em
n
1 11
1
ˆ
i i im
x
m
m
x
x
Σ
(
)(
)
∑ ∑
= =′
−
−
=
k c n i c c icz
n
1 11
m
x
m
x
S
w i i n 1,..., i e k 1,..., c , contrário caso , 0 c agrup. ao pertencer i ponto o se , 1 1 1 1 1 = = = = =∑
∑
∑
= = = ic n i ic n i ic n i ic c z z z z n que em mc xi xi Variability between Groups Variability within Groups Total VariabilityMÉTODOS NÃO-HIERÁRQUICOS
• Variações na F.O. da formulação:
(
)(
)
∑ ∑
= =′
−
−
=
k c n i c c icz
n
Tr
Min
O
F
1 11
)
(
.
.
S
wx
im
x
im
a. Como Tr(Sw) depende da escala das variáveis uma alternativa é Minimizar Tr(Σ-1S w) b. Minimizar |Sw| c. Maximizar Tr(Sw-1S B), em que SB = Σ- Sw d. Maximizar o autovalor de Sw-1SB ^ ^
∑
(
)(
)
= ′ − − = k c c c c n n 1 m m m m Variability between Groups Variability within Groups Total VariabilityMÉTODOS NÃO-HIERÁRQUICOS
∑∑
∑
= = = − n 1 i 1 2 1 p 1 j 2 ) ( . . k c cj ij ic x m z Min O F n 1,..., i e k 1,..., c , contrário caso , 0 c o agrupament ao pertencer i ponto o se , 1 k 1,..., c 1 n 1,..., i 1 . . 1 1 = = = = ≥ = =∑
∑
= = ic n i ic k c ic z z z A S p 1,..., j e k 1,..., c 1 1 = = =∑
∑
= = n i ic n i ij ic cj z x z m • K-médias:Que é um problema de otimização combinatória (com função objetivo não linear). Por esse método os agrupamentos formados são caracterizados pelos
centróides mcj (matriz k x p).
• Dificuldades na implementação do K-médias:
– Problema difícil de ser resolvido (problema de otimização combinatória com F.O. não linear)
– Ótimo global x ótimos locais
– Solução depende do ponto de partida (solução inicial)
– Dimensão do problema: o número de partições, não triviais, de n observações em k agrupamentos é
( )
n k c c kc
c
k
k
∑
= −
−
11
!
1
MÉTODOS NÃO-HIERÁRQUICOS
• Alternativas propostas para implementação do K-médias:
– Relaxação nas restrições do problema
– Modificações na formulação:
• Centróides como variáveis de decisão do problema
• Eliminação das restrições do problema (fuzzy partition)
– Combinação de alternativas
• Relaxação das restrições do problema:
∑∑
∑
= = = − n 1 i 1 2 1 p 1 j 2 ) ( . . k c cj ij ic x m z Min O F p 1,..., j e k 1,..., c 1 1 = = =∑
∑
= = n i ic n i ij ic cj z x z mk
1,...,
c
e
n
1,...,
i
1
0
k
1,...,
c
1
n
1,...,
i
1
.
.
1 1=
=
≤
≤
=
≥
=
=
∑
∑
= = ic n i ic k c icz
z
z
A
S
Vantagem: transforma um problema de otimização combinatória (com função objetivo não linear) em um problema de programação não-linear.
• Modificação na formulação (centróides como variáveis de decisão do problema):
Passos:
1. Especificar o número de clusters (k)
2. Selecionar k centróides iniciais (sementes) 3. Aloque cada observação ao cluster mais
próximo (distância euclideana até o centróide) e atualize os centóides
4. Realoque cada observação. Pare, se não ocorrer realocações (ótimo local).
Esse processo interativo é repetido até que fique estável (o valor das médias calculadas não varie).
• Modificação na formulação (centróides como variáveis de decisão):
Decisões:
a. Método utilizado para obter os centróides iniciais: - Selecione aleatóriamente k valores
- Selecione as k primeiras observações
- Selecione sequêncialmente de forma que a distância entre os centróides seja maior do que um valor pré-definido
- Utilize alguma heurística para que estejam o mais distante possível entre si.
b. Regra utilizada para realocar as observações:
- Atualize o centróide e realoque, simultâneamente, todas as observações
- Atualize o centróide em cada realocação
∑
= ∑ − − ∑ − − = = = k c m x m x ic cj ij cj ij e e P 1 ) ( ) ( 2 1 p 1 j 2 2 1 p 1 j 2• Eliminação das restrições do problema (fuzzy partition):
Vantagem: transforma em um problema de programação não-linear irrestrito.
∑∑
∑
= = =
−
n 1 i 1 2 1 p 1 j 2)
(
.
.
k c cj ij icx
m
P
Min
O
F
ou• Alguma combinação entre alternativas:
– Por exemplo: fuzzy partition + combinatória
• Como esse problema pode ser formulado como um problema de otimização combinatória e como um problema de otimização não-linear (com ou sem restrições) há muitos algoritmos para resolver esse problema.
MÉTODOS NÃO-HIERÁRQUICOS
( ) ( )(
)
( ) ( )(
)
∑
= − Σ − − − Σ − − − − = k c m x m x m x m x ic T c c T c T c c T c e e P 1 1 1 , c=1,...,k• Arbitra-se o número ideal de agrupamentos em função do decrescimento do valor da F.O. (k=1, k=2, ..., k=n)
Determinação do número ideal de agrupamentos:
j1 j2
F.O.
k
MÉTODOS NÃO-HIERÁRQUICOS
Cluster Validity Measure:
(Partition Coefficient – Bezdek, 1981)∑∑
= =<
<
⇒
=
n i k c icPC
k
P
n
PC
1 1 21
1
1
em que Pic é o grau de pertinência (membership degree) da observação i ao agrupamento c (i=1,...,n e c=1,...,k)Bezdek, J.C. (1981) Pattern recognition with fuzzy objective function algorithms. Plenum Press, New York.
• Para casa:
– Lista de exercícios 3 (Data de entrega: 22/04/2010)
– Leitura do artigo: Knowledge discovery from process operational
data using PCA and fuzzy clustering (Y.M. Sebzalli, X.Z. Wang)
– Leitura do artigo: Comparing SOM neural network with Fuzzy
c-means, K-means and traditional hierarchical clustering algorithms (S. A. Mingoti and J. O. Lima)