Em uma tarefa recente, fomos instruídos a usar o PCA nos dígitos do MNIST para reduzir as dimensões de 64 (8 x 8 imagens) para 2. Em seguida, tivemos que agrupar os dígitos usando um Modelo de Mistura Gaussiana. O PCA que usa apenas dois componentes principais não produz clusters distintos e, como resultado, o modelo não é capaz de produzir agrupamentos úteis.
No entanto, usando t-SNE com 2 componentes, os clusters são muito melhores separados. O Modelo de Mistura Gaussiana produz clusters mais distintos quando aplicados aos componentes t-SNE.
A diferença no PCA com 2 componentes e no t-SNE com 2 componentes pode ser vista no par de imagens a seguir, onde as transformações foram aplicadas ao conjunto de dados MNIST.
Eu li que o t-SNE é usado apenas para visualização de dados de alta dimensão, como nesta resposta , mas dados os clusters distintos que produz, por que não é usado como uma técnica de redução de dimensionalidade que é usada para modelos de classificação ou como um método de cluster independente?
Respostas:
1
1
Nós também podemos ter usado a classificação (o que nos leva de volta ao uso de auto-codificadores).fonte
O t-SNE não preserva distâncias, mas basicamente estima distribuições de probabilidade. Em teoria, os algoritmos t-SNE mapeiam a entrada para um espaço de mapa de 2 ou 3 dimensões. O espaço de entrada é assumido como uma distribuição gaussiana e o espaço do mapa como uma distribuição t. A função de perda usada é a divergência KL entre as duas distribuições, que é minimizada usando a descida do gradiente.
De acordo com Laurens van der Maaten, co-autor do t-SNE
Referência:
https://lvdmaaten.github.io/tsne/
https://www.oreilly.com/learning/an-illustrated-introduction-to-the-t-sne-algorithm
fonte
Como uma declaração geral: dado um classificador suficientemente poderoso (/ adequado), ou cluster-er, nunca se aplicaria qualquer redução de dimensionalidade.
A redução de dimensionalidade perde informações.
Como esse agrupador ou classificador (esp classificadores, menos agrupadores), internamente já incorpora alguma forma de projeção a um espaço significativo. E a redução da dimensionalidade também é uma projeção para um espaço (esperançosamente) significativo.
Mas a redução da dimensionalidade precisa fazê-lo de maneira desinformada - ela não sabe para qual tarefa você está reduzindo. Isso é especialmente verdadeiro para a classificação, na qual você possui informações supervisionadas diretas. Mas também se aplica ao clustering, onde o espaço para o qual o projeto seria projetado para clustering é melhor definido (para esse algoritmo) do que apenas "ter menos dimensões). A resposta da @ usεr11852 fala sobre isso. Como eu disse, a redução de dimensionalidade não sabe o que tarefa para a qual você está reduzindo - você o informa em sua escolha de qual algoritmo de redução de dimensionalidade você deve usar.
Com frequência, em vez de adicionar uma etapa de redução de dimensionalidade como pré-processamento antes do agrupamento / classificação, é melhor usar um classificador / agrupador diferente que incorpore uma projeção útil.
Uma coisa que a redução de dimensão tem a seu favor nesse sentido é sua natureza não supervisionada na criação da projeção para o espaço (esperançosamente) significativo. O que é útil se você tiver poucos dados de etiqueta. Mas muitas vezes existem outros métodos que estão intimamente ligados ao seu classificador (por exemplo, para redes neurais, usando o autoencoder, por exemplo, pré-treinamento de redes de crenças profundas) que funcionarão melhor, porque foram projetados com a tarefa final em mente. Não é a tarefa mais geral de redução de dimensionalidade.
fonte