Análise Discriminante: Formulação Matemática dos Classificadores LDA e QDA

Após explorarmos as aplicações práticas da Análise Discriminante, mergulhemos agora nos fundamentos matemáticos que sustentam os classificadores LDA e QDA. Primordialmente, compreender estas formulações nos permitirá aplicar estas técnicas com maior discernimento e interpretar seus resultados de forma mais profunda.

Pressupostos Fundamentais

Conforme mencionamos anteriormente, ambos os métodos assumem que os dados seguem distribuições Gaussianas multivariadas. Analogamente, podemos expressar esta suposição formalmente:

\(P(x | y = k) = \frac{1}{(2\pi)^{d/2} |\Sigma_k|^{1/2}} \exp\left(-\frac{1}{2} (x – \mu_k)^T \Sigma_k^{-1} (x – \mu_k)\right)\)

Onde para cada classe k:

  • μ_k é o vetor de médias
  • Σ_k é a matriz de covariância
  • d é a dimensionalidade dos dados

Teorema de Bayes e Função Discriminante

A decisão de classificação baseia-se no teorema de Bayes:

\(P(y = k | x) = \frac{P(x | y = k) P(y = k)}{P(x)}\)

Como P(x) é constante para todas as classes, maximizar P(y=k|x) equivale a maximizar o numerador. Portanto, definimos a função discriminante como:

\(\delta_k(x) = \log P(x | y = k) + \log P(y = k)\)

Análise Discriminante Linear (LDA)

Pressuposto de Covariância Comum

O LDA assume que todas as classes compartilham a mesma matriz de covariância:

\(\Sigma_k = \Sigma \quad \text{para todo } k\)

Desenvolvendo a função discriminante com este pressuposto, obtemos:

\(\delta_k(x) = x^T \Sigma^{-1} \mu_k – \frac{1}{2} \mu_k^T \Sigma^{-1} \mu_k + \log \pi_k\)

Onde π_k = P(y=k) é a probabilidade a priori da classe k.

Forma Linear da Fronteira de Decisão

A fronteira entre duas classes i e j é determinada por:

\(\delta_i(x) = \delta_j(x)\)

O que resulta em uma equação linear em x:

\(x^T \Sigma^{-1} (\mu_i – \mu_j) – \frac{1}{2} (\mu_i + \mu_j)^T \Sigma^{-1} (\mu_i – \mu_j) + \log(\pi_i/\pi_j) = 0\)

Análise Discriminante Quadrática (QDA)

Matrizes de Covariância Distintas

O QDA permite que cada classe tenha sua própria matriz de covariância:

\(\Sigma_k \neq \Sigma_j \quad \text{para } k \neq j\)

Desenvolvendo a função discriminante, obtemos:

\(\delta_k(x) = -\frac{1}{2} \log |\Sigma_k| – \frac{1}{2} (x – \mu_k)^T \Sigma_k^{-1} (x – \mu_k) + \log \pi_k\)

Forma Quadrática da Fronteira de Decisão

A fronteira entre classes i e j é dada por:

\(\delta_i(x) = \delta_j(x)\)

O que resulta em uma equação quadrática em x, criando fronteiras de decisão curvas.

Estimativa dos Parâmetros

Estimativas de Máxima Verossimilhança

Os parâmetros são estimados a partir dos dados de treinamento:

  • Médias das classes: \(\hat{\mu}_k = \frac{1}{N_k} \sum_{i: y_i = k} x_i\)
  • Probabilidades a priori: \(\hat{\pi}_k = \frac{N_k}{N}\)
  • Matriz de covariância (LDA): \(\hat{\Sigma} = \frac{1}{N-K} \sum_{k=1}^K \sum_{i: y_i = k} (x_i – \hat{\mu}_k)(x_i – \hat{\mu}_k)^T\)
  • Matrizes de covariância (QDA): \(\hat{\Sigma}_k = \frac{1}{N_k-1} \sum_{i: y_i = k} (x_i – \hat{\mu}_k)(x_i – \hat{\mu}_k)^T\)

Comparação Matemática Detalhada

Complexidade de Parâmetros

O número de parâmetros a estimar difere significativamente:

  • LDA: K × d (médias) + d(d+1)/2 (covariância) + K (priors)
  • QDA: K × d (médias) + K × d(d+1)/2 (covariâncias) + K (priors)

Inegavelmente, o QDA requer substancialmente mais parâmetros, especialmente quando o número de features é grande.

Propriedades Estatísticas

Ambos os métodos possuem propriedades interessantes:

  • São classificadores Bayes ótimos sob os pressupostos Gaussianos
  • Produzem estimativas de probabilidade posteriores
  • Podem ser regularizados para melhor generalização
  • São consistentes sob condições apropriadas

Exemplo Prático em Python

Para ilustrar estas formulações matemáticas, implementemos um exemplo que demonstra os cálculos fundamentais:

Interpretação dos Resultados Matemáticos

Analisando a implementação e os resultados, podemos observar que:

  • As funções discriminantes realmente capturam a informação de separação entre classes
  • A matriz de covariância comum no LDA produz fronteiras lineares
  • As probabilidades posteriores são calculadas corretamente via softmax
  • A implementação manual coincide com a do scikit-learn, validando as formulações

Implicações Práticas das Formulações

Vantagens do LDA

  • Menos parâmetros para estimar → mais robusto com dados limitados
  • Computacionalmente mais eficiente
  • Fronteiras de decisão lineares são mais interpretáveis

Vantagens do QDA

  • Mais flexibilidade para capturar relações complexas
  • Melhor performance quando as covariâncias são realmente diferentes
  • Fronteiras de decisão curvas podem se ajustar melhor aos dados

Considerações Finais

As formulações matemáticas do LDA e QDA revelam por que estas técnicas são tão eficazes sob os pressupostos Gaussianos. Embora baseadas em conceitos estatísticos clássicos, continuam sendo ferramentas valiosas no machine learning moderno.

Portanto, compreender estas fundamentações não apenas nos permite aplicar os métodos corretamente, mas também nos capacita a interpretar seus resultados, diagnosticar problemas e fazer escolhas informadas entre diferentes abordagens de classificação.

Análise Discriminante: Redução de Dimensionalidade usando Análise Discriminante Linear

Continuando nossa exploração da Análise Discriminante Linear, chegamos a uma aplicação particularmente valiosa: a redução de dimensionalidade. Enquanto anteriormente discutimos o LDA como classificador, agora focaremos em sua capacidade de projetar dados em espaços de menor dimensão preservando a separabilidade entre classes.

O Conceito de Redução de Dimensionalidade com LDA

Conforme observamos na seção anterior, o LDA busca encontrar eixos que maximizem a separação entre classes. Analogamente, quando aplicado para redução de dimensionalidade, o LDA identifica as direções que melhor discriminam as classes, projetando os dados em um espaço com dimensionalidade reduzida.

Fundamentos Matemáticos

O LDA para redução de dimensionalidade baseia-se na maximização do critério de Fisher:

\(J(w) = \frac{w^T S_B w}{w^T S_W w}\)

Onde:

  • S_B é a matriz de dispersão entre classes (between-class scatter)
  • S_W é a matriz de dispersão dentro das classes (within-class scatter)
  • w são os vetores de projeção que maximizam a separação

Inegavelmente, esta abordagem encontra automaticamente as direções que preservam a informação mais discriminativa dos dados.

Diferenças entre LDA e PCA

Embora tanto LDA quanto PCA realizem redução de dimensionalidade, seus objetivos fundamentais diferem significativamente:

  • PCA: Maximiza a variância total dos dados (não supervisionado)
  • LDA: Maximiza a separação entre classes (supervisionado)

Portanto, o LDA é especialmente útil quando temos labels disponíveis e queremos preservar a estrutura de classes durante a redução de dimensionalidade.

Implementação no scikit-learn

No scikit-learn, a redução de dimensionalidade com LDA é realizada através da mesma classe LinearDiscriminantAnalysis, mas especificando o número de componentes desejado:

  • O parâmetro n_components controla a dimensionalidade do espaço projetado
  • O número máximo de componentes é min(n_classes - 1, n_features)
  • O método transform realiza a projeção dos dados

Vantagens da Abordagem

  • Preserva a informação discriminativa entre classes
  • Reduz ruído e redundância nas features
  • Melhora a performance de classificadores subsequentes
  • Facilita visualização de dados multivariados

Aplicações Práticas

Primordialmente, a redução de dimensionalidade com LDA é útil em cenários como:

  • Pré-processamento para outros algoritmos de machine learning
  • Visualização de dados de alta dimensionalidade
  • Extração de features para sistemas de reconhecimento
  • Análise exploratória de dados com labels

Exemplo Prático em Python

Para ilustrar a redução de dimensionalidade com LDA, vejamos um exemplo completo com visualização:

Interpretação dos Resultados

Analisando o exemplo, podemos observar que:

  • O LDA consegue reduzir significativamente a dimensionalidade mantendo a separabilidade
  • Os componentes LDA capturam direções que maximizam a distância entre classes
  • Mesmo com redução drástica (de 20D para 2D), a estrutura discriminativa é preservada
  • A performance de classificação pode ser mantida ou mesmo melhorada com a redução

Considerações Importantes

Limitações do LDA

Embora poderoso, o LDA para redução de dimensionalidade tem algumas limitações:

  • Assume distribuição normal dos dados
  • Presume matrizes de covariância iguais entre classes
  • Número máximo de componentes é limitado pelo número de classes
  • Sensível a outliers nos dados

Melhores Práticas

Para obter os melhores resultados com LDA:

  • Sempre padronize os dados antes de aplicar LDA
  • Verifique os pressupostos quando possível
  • Use validação cruzada para determinar o número ideal de componentes
  • Combine com outras técnicas de pré-processamento quando necessário

Aplicações em Cenários Reais

Similarmente às aplicações que discutimos anteriormente, a redução de dimensionalidade com LDA é particularmente útil em:

  • Reconhecimento facial e biométrica
  • Análise de expressão gênica
  • Processamento de sinais médicos
  • Análise de documentos e texto

Portanto, o LDA representa uma ferramenta valiosa no arsenal de técnicas de redução de dimensionalidade, especialmente quando trabalhamos com dados supervisionados e buscamos preservar a informação discriminativa entre classes. Inclusive, sua combinação com outros métodos pode levar a soluções ainda mais robustas e eficientes.