Glossário

Incorporação de vizinhos estocásticos t-distribuídos (t-SNE)

Explora o t-SNE, uma técnica poderosa para visualizar dados de alta dimensão. Aprende as suas utilizações, vantagens e aplicações em IA e ML.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

O t-distributed Stochastic Neighbor Embedding (t-SNE) é uma técnica poderosa utilizada para a redução da dimensionalidade, concebida principalmente para a visualização de conjuntos de dados de elevada dimensão num espaço de baixa dimensão, normalmente de duas ou três dimensões. Desenvolvida por Laurens van der Maaten e Geoffrey Hinton, a t-SNE é excelente para revelar a estrutura local subjacente dos dados, como clusters e manifolds. Isto torna conjuntos de dados complexos gerados ou processados por modelos de Inteligência Artificial (IA) e de Aprendizagem Automática (AM) mais fáceis de interpretar através de inspeção visual. É amplamente utilizado em vários domínios, incluindo a visão por computador (CV) e o processamento de linguagem natural (PNL).

Como funciona o t-SNE

A ideia central do t-SNE é mapear pontos de dados de alta dimensão para um espaço de baixa dimensão (por exemplo, um gráfico 2D) de forma a preservar as semelhanças entre os pontos. Modela a semelhança entre pares de pontos de alta dimensão como probabilidades condicionais e, em seguida, tenta encontrar uma incorporação de baixa dimensão onde as probabilidades condicionais entre os pontos mapeados são semelhantes. Este processo centra-se na retenção da estrutura local - os pontos que estão próximos uns dos outros no espaço de alta dimensão devem permanecer próximos uns dos outros no mapa de baixa dimensão.

Ao contrário dos métodos lineares, como a análise de componentes principais (PCA), a t-SNE é não linear e probabilística. Isto permite-lhe captar relações complexas e não lineares, como colectores curvos, que a PCA pode não captar. O algoritmo calcula as semelhanças usando uma distribuição Gaussiana no espaço de alta dimensão e uma distribuição t de Student (com um grau de liberdade) no espaço de baixa dimensão. A utilização da distribuição t ajuda a separar os pontos dissemelhantes mais afastados no mapa de baixa dimensão, atenuando o "problema de aglomeração", em que os pontos tendem a juntar-se. A incorporação óptima é encontrada minimizando a divergência (especificamente, a divergência de Kullback-Leibler) entre as duas distribuições de probabilidade utilizando técnicas de otimização como a descida gradiente. Para uma compreensão técnica aprofundada, consulta o documento original sobre t-SNE.

t-SNE vs. PCA

Embora tanto o t-SNE como o PCA sejam técnicas comuns de redução da dimensionalidade, diferem significativamente:

  • Linearidade: A PCA é uma técnica linear, enquanto a t-SNE é não linear. A PCA encontra componentes principais que maximizam a variância, essencialmente girando os dados. t-SNE modela semelhanças entre pares.
  • Foco: O PCA tem como objetivo preservar a estrutura global e a variância máxima dos dados. O t-SNE dá prioridade à preservação da estrutura local (vizinhança dos pontos).
  • Caso de uso: O PCA é frequentemente utilizado para compressão de dados, redução de ruído e como uma etapa de pré-processamento de dados antes de aplicar outros algoritmos de ML. O t-SNE é utilizado principalmente para visualização e exploração de dados devido à sua capacidade de revelar clusters.
  • Interpretabilidade: Os eixos num gráfico PCA representam componentes principais e têm uma interpretação matemática clara relacionada com a variância. Os eixos e as distâncias entre clusters num gráfico t-SNE não têm uma interpretação global tão direta; o foco está no agrupamento relativo de pontos.

Aplicações em IA e ML

O t-SNE serve como uma ferramenta de visualização inestimável para compreender dados complexos e de elevada dimensão, frequentemente encontrados em pipelines de IA e ML, como a exploração dos embeddings aprendidos por modelos de aprendizagem profunda.

Considerações

Embora seja poderosa para a visualização, a t-SNE tem algumas considerações a fazer:

  • Custo computacional: Pode ser computacionalmente dispendioso e lento para conjuntos de dados muito grandes, devido aos seus cálculos em pares. Técnicas como a aproximação de t-SNE ou a aplicação de PCA primeiro podem ajudar.
  • Hiperparâmetros: Os resultados podem ser sensíveis a hiperparâmetros como a "perplexidade" (relacionada com o número de vizinhos mais próximos considerados) e o número de iterações para a descida do gradiente.
  • Estrutura global: O t-SNE concentra-se na estrutura local; as distâncias relativas entre clusters no gráfico final podem não refletir com precisão a separação no espaço original de alta dimensão. Os tamanhos dos clusters também podem ser enganadores. As implementações estão disponíveis em bibliotecas como Scikit-learn e estruturas como PyTorch.
Lê tudo