Aula 12: Análise de Componentes Principais
Técnica de análise de dados para redução de dimensionalidade
PCA transforma um conjunto de variáveis possivelmente correlacionadas em um conjunto menor de variáveis chamadas componentes principais
Visualização: normalmente é o primeiro passo ao analisar datasets de alta dimensionalidade
Acelerar treinamento de modelos de aprendizado de máquina
\[ \begin{bmatrix} x_1\\ x_2\\ x_3 \end{bmatrix} = \begin{bmatrix} \mu_1\\ \mu_2\\ \mu_3 \end{bmatrix} + \left[ \begin{bmatrix} x_1\\ x_2\\ x_3 \end{bmatrix}- \begin{bmatrix} \mu_1\\ \mu_2\\ \mu_3 \end{bmatrix} \right] \]
\[ x = \mu + [x-\mu] = x+y\]
Subtraindo a média de cada coordenada-variável, temos um novo vetor \(y\) com média zero em cada coordenada.
A nuvem de pontos é deslocada rigidamente para a origem
Primeiro z-normalizamos os dados:
Problema: encontrar vetor unitário \(u\) que maximiza a variância dos dados projetados em \(u\).
Dizer que o vetor \(x_W\) é o vetor mais próximo a \(x\) em \(W\) equivale a dizer que a diferença \(x - x_W\) é ortogonal a \(W\)
Se \(x_{W\perp} = x - x_W\), então \(x = x_W + x_{W^\perp}\), onde \(x_W\) está em \(W\) e \(x_{W^\perp}\) está em \(W^\perp\)
Teorema. Seja \(W\) um subespaço do \(\mathbb R^n\) e \(x\) um vetor em \(\mathbb R^n\). Então podemos escrever \(x\) de forma única como \[x = x_W + x_{W^\perp}\]
Onde \(x_W\) é o vetor mais próximo a \(x\) em \(W\) e \(x_{W\perp}\) está em \(W^\perp\)
Definição. A Equação anterior é chamada decomposição ortogonal de \(x\) com relação à \(W\); vetor \(x_W\) é a projeção ortogonal de \(x\) em \(W\).
Seja \(W\) o espaço gerado por \(\{v_1,\ldots,v_m\}\) e \(A\) a matriz cujas colunas são \(\{v_1,\ldots,v_m\}\). Para calcular a decomposição ortogonal de \(x\) em relação a \(W\):
\(x_W = Ac\) e \(x_{W\perp} = x-x_W\)
Seja \(B=\{v_1,\ldots,v_n\}\) uma base de \(\mathbb R^n\). As coordenadas do vetor \(x\) em relação à \(B\), \(a = [a1,\ldots,an]^\top = [x]_B\) são obtidas a partir de \[a_1v_1 + a_2v_2 + \ldots + a_nv_n\] ou seja \[[v_1 v_2 \ldots v_n][x]_B = [x]\]
Seja \(V\) a matriz cujas colunas são os vetores da base \[ V = [v_1 v_2 \ldots v_n]\]
Então para qualquer vetor \(x\) temos \[ V[x]_B = x\] e \[[x]_B = V^{-1}x\]
DEFRA (Department for Environment, Food and Rural Affairs) data: consumo (g/pessoa/semana), 17 tipos de comida, quatro países Reino Unido em 1997.
Como analisar estes dados? Existem correlações entre os países? Plotar todos de uma vez? Plotar variáveis 2 a 2?
O objetivo do PCA é identificar novo conjunto de eixos ortogonais de coord. a partir dos dados.
No primeiro passo, PCA encontra a primeira componente principal (PC1), direção que maximiza variância através das coords.
Após encontrar PC1, projetamos os dados neste novo eixo. Como?
Também obtemos influência de cada variável original nos PCs