Regras de Associação

Dona de casa selecionando uma amostra da sopa que ela preparou
1.2 – Nao Supervisionado
1.2.3 – Regras de Associacao
1.2.3.1 – Apriori, FP-Growth, Eclat
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

descobrindo itens que andam juntos

Regras de associação identificam relações e padrões de co-ocorrência em grandes conjuntos de dados. Diferente de classificação, não há variável alvo, apenas buscas por associações interessantes. Primeiramente, o algoritmo analisa transações para encontrar itens que frequentemente aparecem juntos. Além disso, gera regras do tipo “se A então B” com métricas de confiança. Por exemplo, “quem compra pão também compra manteiga” em supermercados. É amplamente usado em análise de cestas de compras e recomendação. Essa técnica revela padrões que não são imediatamente óbvios.

métricas essenciais: suporte, confiança, lift

Suporte mede a frequência com que um conjunto de itens aparece nas transações. Primeiramente, suporte alto indica padrão frequente nos dados analisados. Além disso, confiança mede a probabilidade de B ocorrer dado A. Lift compara a confiança com a probabilidade esperada por acaso. Por exemplo, lift > 1 indica associação positiva relevante. Essas métricas filtram regras significativas entre milhões de possibilidades. São fundamentais para encontrar padrões verdadeiramente interessantes.

algoritmo apriori: mineração eficiente

Apriori é o algoritmo clássico para mineração de regras de associação em grandes bases. Primeiramente, ele usa o princípio de que subconjuntos de itens frequentes também são frequentes. Além disso, gera candidatos iterativamente, podando combinações pouco frequentes precocemente. Por exemplo, se {pão} é raro, {pão, manteiga} também será raro. Essa poda reduz drasticamente o espaço de busca. É eficiente para transações com muitos itens diferentes. Apriori é a base para sistemas de recomendação de supermercados.

aplicações além de cestas de compras

Regras de associação vão muito além da análise de mercado tradicional. Primeiramente, em saúde, identificam combinações de sintomas que indicam doenças. Além disso, em sistemas web, encontram páginas frequentemente acessadas juntas. Detecção de fraudes usa regras para identificar padrões suspeitos em transações. Por exemplo, “se saque noturno e valor alto então possível fraude”. Em bioinformática, descobrem genes que frequentemente aparecem juntos. Para iniciantes, regras de associação mostram como descobrir relacionamentos ocultos em dados. É uma ferramenta poderosa para explorar padrões não supervisionados.

PCA, t-SNE, LDA, UMAP, Autoencoders

poda
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!

`