Universidade Federal do Paraná
Departamento de Informática
Reconhecimento de Padrões
PCA
Luiz Eduardo S. Oliveira, Ph.D.
[Link]
Objetivos
• Introduzir os conceitos de PCA e suas
aplicações para extração de
características
– Revisão dos conceitos básicos de estatística
e álgebra linear.
1
Estatística
• Variância
– Variância de uma variável aleatória é uma
medida dispersão estatística, indicando qual
longe em geral os seus valores se encontram
do valor esperado.
– Desvio padrão é a raiz da variância
• O resultado do desvio se dá na mesma medida
dos dados da população ou amostra.
Estatística
• Covariância
– Variância é uma medida unidimensional.
– É calculada de maneira independente pois
não leva em consideração as outras
dimensões.
– Covariância por sua vez, é uma medida bi-
dimensional. Verifica a dispersão, mas
levando em consideração duas variáveis
aletórias.
2
Estatística
• Matriz de covariância
– Para 3 variáveis aleatórias, x, y e z, o cálculo
de todas as covariâncias (x-y, x-z e y-z) pode
ser acomodada em uma matriz, a qual
denomina-se matriz de covariância.
Cov(x,y) = cov(y,x) Cov(z,z) = var(z)
Álgebra
• Autovetores
– Como sabe-se duas matrizes podem ser
multiplicadas se elas possuem tamanhos
compatíveis. Autovetores são casos especiais
neste contexto.
Múltiplo do
vetor resultante
3
Autovetores
• Nesse caso (3,2) representa um vetor que
aponta da origem (0,0) para o ponto (3,2).
• A matriz quadrada, pode ser vista como
uma matriz de transformação.
• Se esta matriz for multiplicada por outro
vetor, a resposta será outro vetor
transformado da sua posição original.
• É da natureza desta transformação que
surgem os autovetores.
Autovetores
• Propriedades
– Podem ser achados somente em matrizes
quadradas.
– Nem todas as matrizes possuem autovetores.
– Para uma data n x n matriz, existem n autovetores.
– Se o vetor for multiplicado por uma constante, ainda
obteremos o mesmo resultado
Apenas fazemos o
vetor mais longo, mas
não mudamos a
direção.
4
Autovetores/Autovalores
• Todos os autovetores são ortogonais
(perpendiculares), ou seja os dados
podem ser expressos em termos destes
vetores.
• O valor pelo qual o vetor é multiplicado é
conhecido como autovalor
– Um autovetor sempre possui um autovalor
associado.
Análise dos Componente Principais
(PCA)
• Uma maneira de identificar padrões em dados,
colocando em evidência suas similaridades e
diferenças.
• Ferramenta importante para altas dimensões,
onde não podemos fazer uma análise visual.
• Uma vez encontrados esses padrões, podemos
comprimir os dados sem grande perda de
qualidade.
• Extrator de características (representação)
5
PCA Tutorial
• 1) Escolha um conjunto de dados.
• 2) Normalize esses dados, subtraindo-os
da média.
Dados Normalizados
Dados
PCA Tutorial
6
PCA Tutorial
• 3) Calcule a matriz de correlação para os
dados normalizados. Uma vez que os
dados possuem duas dimensões, teremos
uma matriz 2x2
PCA Tutorial
• 4) Encontre os autovetores e autovalores
para a matriz de covariância.
– Uma vez que a matriz de covariância é
quadrada podemos encontrar os autovetores
e autovalores.
O que esses valores significam ??
7
PCA Tutorial
PCA Tutorial
• 5) Escolhendo os componentes que vão
formar o vetor
– Como vimos, os autovalores são bastante
diferentes.
– Isso permite ordenar os autovetores por
ordem de importância.
– Se quisermos eliminar um componentes,
devemos então eliminar os que tem menos
importância.
8
PCA Tutorial
• No nosso exemplo temos duas escolhas
– Manter os dois.
– Eliminar um autovetor, diminuindo assim a
dimensionalidade dos dados
• Maldição da dimensionalidade
• Quanto maior a dimensionalidade do seu vetor,
mais dados serão necessários para a
aprendizagem do modelo.
PCA Tutorial
• 5) Construindo novos dados.
– Uma vez escolhidos os componentes
(autovetores), nós simplesmente
multiplicamos os dados pelo autovetor(es)
escolhidos.
– O que temos?
• Dados transformados de maneira que expressam
os padrões entre eles.
• Os PCs (Principal Components) são combinações
linear de todas as características, produzindo
assim novas características não correlacionadas.
9
PCA Tutorial
Dados transformados
usando 2 autovetores
PCA Tutorial
• Exemplo
Usando a função pcacov do
Matlab, três parâmetros são
retornados.
-autovetores
-autovalores
-percentagem da variância
total explicada pro cada modelo
10
PCA Tutorial
− W1 × x − b
• Exemplo 2 y=
W2
AUTOVETORES
-0.6779 -0.7352
-0.7352 0.6779
AUTOVALORES
1.2840
0.0491
VARIÂNCIA EXPLICADA
96.3181
3.6819
PCA Tutorial
• Exercício
– Gere diferentes conjuntos de dados em duas
dimensões e aplique PCA. Verifique e discuta
a variância explicada em função da dispersão
dos dados.
11
12