PCA, t-SNE, LDA, UMAP, Autoencoders

1.2 – Nao Supervisionado
1.2.2 – Reducao de Dimensionalidade
1.2.2.1 – PCA, t-SNE, LDA, UMAP, Autoencoders
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

O que é redução de dimensionalidade

A redução de dimensionalidade é uma técnica não supervisionada. Ela transforma dados com muitas características em poucas dimensões. Por exemplo, imagens de 1000 pixels viram 2 ou 3 coordenadas. O objetivo é visualizar padrões e reduzir ruído. Diferentemente da clusterização, aqui o foco é a compressão. Essa compressão preserva ao máximo a estrutura original. Primeiramente, os dados são projetados em um espaço menor. Em seguida, é possível plotar e interpretar os resultados. Além disso, modelos de machine learning ficam mais rápidos. Contudo, alguma informação é inevitavelmente perdida.

Cinco modelos principais são frequentemente utilizados. PCA é linear e baseado em autovetores da covariância. t-SNE é não linear e ótimo para visualização local. LDA é supervisionado, mas adaptável para redução. UMAP é moderno, rápido e preserva topologia global. Autoencoders usam redes neurais para compressão não linear. Cada método tem vantagens e desvantagens específicas. Por conseguinte, a escolha depende do problema. Iniciantes devem começar com PCA e t-SNE. Eles são bem documentados e fáceis de usar.

Arquitetura e características dos modelos

O PCA encontra direções de máxima variância nos dados. Sua arquitetura é baseada em álgebra linear pura. Primeiro, calcula-se a matriz de covariância das características. Depois, obtêm-se os autovalores e autovetores dessa matriz. Os autovetores são as componentes principais ordenadas. A fórmula da primeira componente principal é: \(PC_1 = \arg\max_{||w||=1} Var(Xw)\). Projeções subsequentes são ortogonais à primeira. O t-SNE, por outro lado, usa probabilidades condicionais. Ele mapeia similaridades de alta dimensão para baixa dimensão. Uma arquitetura de rede neural é usada pelos autoencoders. Eles têm um codificador e um decodificador simétrico. O codificador comprime os dados no “gargalo” (bottleneck). O decodificador reconstrói os dados a partir da compressão. A perda de reconstrução é minimizada durante o treinamento.

O UMAP combina teoria de variedades e topologia. Ele constrói um grafo fuzzy de vizinhanças nos dados. Depois, otimiza um embedding de baixa dimensão similar. Sua arquitetura é eficiente e escala para milhões de pontos. O LDA é supervisionado, mas pode ser usado sem rótulos. Ele maximiza a separação entre classes conhecidas. Para redução não supervisionada, PCA é mais recomendado. Cada modelo tem hiperparâmetros específicos e críticos.

Hiperparâmetros e fórmulas matemáticas

No PCA, o principal hiperparâmetro é o número de componentes. Ele determina quantas dimensões serão mantidas. A variância explicada acumulada guia essa escolha: \(Var_{acum}(k) = \frac{\sum_{i=1}^{k} \lambda_i}{\sum_{i=1}^{d} \lambda_i}\). Aqui, \(\lambda_i\) são os autovalores ordenados. Para t-SNE, a perplexidade é o hiperparâmetro mais importante. Ela controla o equilíbrio entre vizinhos locais e globais. Valores típicos variam entre 5 e 50. O número de iterações e a taxa de aprendizado também contam. No UMAP, n_neighbors e min_dist são os principais ajustes. n_neighbors controla o tamanho da vizinhança local. min_dist define quão próximos os pontos ficam no embedding. Autoencoders têm muitos hiperparâmetros: camadas, neurônios, taxa de aprendizado. A regularização evita overfitting em redes neurais. A fórmula da perda de reconstrução para autoencoder é: \(L = \frac{1}{N}\sum_{i=1}^{N} ||x_i – \hat{x}_i||^2\). Essa é a distância euclidiana entre entrada e saída.

Enunciado do exemplo clássico (dígitos MNIST)

Você recebeu imagens de dígitos escritos à mão (MNIST). Cada imagem tem 784 pixels (28×28 em escala de cinza). Seu objetivo é reduzir essa dimensionalidade para 2D. Use PCA, t-SNE e UMAP para comparar os resultados. Visualize os dígitos em um gráfico de dispersão colorido. Cada cor representa um dígito de 0 a 9. Avalie qual método separa melhor os grupos naturais. O código abaixo resolve este enunciado completamente. Ele roda no Google Colab e baixa o MNIST automaticamente. Boa prática! A redução de dimensionalidade revela estruturas.

Esse código compara três métodos de redução dimensional. O PCA é linear e rápido, mas separa menos os dígitos. O t-SNE revela agrupamentos mais nítidos e locais. O UMAP oferece bom equilíbrio entre velocidade e qualidade. Cada ponto colorido representa um dígito de 0 a 9. Clusters bem separados indicam boa redução dimensional. A reconstrução com PCA mostra a compressão e perda. Para instalar UMAP no Colab, use: !pip install umap-learn. Redução de dimensionalidade é essencial para visualização. Parabéns por explorar essas poderosas ferramentas!

`

Deixe um comentário