Redução não linear de dimensionalidade: algoritmos geométricos / topológicos vs. autoencodificadores

7

Pelo que entendi, existem três abordagens principais para a redução não linear da dimensionalidade:

  • Aprendizagem múltipla (algoritmos geométricos / topológicos como ISOMAP, LLE, LTSA)
  • Autoencoders
  • coisas que não se encaixam nas duas primeiras categorias (t-SNE inspirado em probabilidade, Kernel PCA, etc.)

Quais são os benefícios e as desvantagens das duas primeiras abordagens?

Alguém pode pensar que os auto-codificadores superarão completamente o aprendizado múltiplo, como o aprendizado profundo ofuscou a maioria dos algoritmos de aprendizado de máquina em termos de desempenho?

Sengiley
fonte
11
Os auto-codificadores não se enquadram no aprendizado múltiplo?
Franck Dernoncourt 24/11
11
para a aprendizagem colector Quero dizer / algoritmos topológicos geométricas como ISOMAP, LLE, LTSA, assim por diante ...
Sengiley

Respostas:

2

Antes de tentar responder à sua pergunta, quero criar uma separação mais forte entre os métodos aos quais você está se referindo.

O primeiro conjunto de métodos aos quais acredito que você está se referindo são métodos de redução de dimensionalidade baseados em vizinhança, em que um gráfico de vizinhança é construído onde as arestas representam uma métrica de distância. Agora, para bancar o advogado do diabo contra mim, o MDS / ISOMAP pode ser interpretado como uma forma de PCA do kernel. Portanto, embora essa distinção pareça relativamente nítida, várias interpretações mudam esses métodos de uma classe para outra.

O segundo conjunto de métodos aos quais você está se referindo eu colocaria no campo da aprendizagem de rede neural não supervisionada. Autoencoders são uma arquitetura especial que tenta mapear um espaço de entrada em um espaço de menor dimensão que permite decodificar de volta ao espaço de entrada com perda mínima de informações.

Primeiro, vamos falar sobre os benefícios e as desvantagens dos codificadores automáticos. Os autoencodificadores são geralmente treinados usando alguma variante de descida de gradiente estocástico, o que gera algumas vantagens. O conjunto de dados não precisa caber na memória e pode ser carregado e treinado dinamicamente com descida de gradiente. Ao contrário de muitos métodos na aprendizagem baseada na vizinhança, que força o conjunto de dados a existir na memória. A arquitetura dos auto-codificadores permite que o conhecimento prévio dos dados seja incorporado ao modelo. Por exemplo, se o conjunto de dados contiver imagens, podemos criar uma arquitetura que utilize a convolução em 2D. Se o conjunto de dados contiver séries temporais com conexões de longo prazo, podemos usar redes recorrentes fechadas (consulte o aprendizado do Seq2Seq). Esse é o poder das redes neurais em geral. Isso nos permite codificar conhecimento prévio sobre o problema em nossos modelos. Isso é algo que outros modelos, e para ser mais específico, os algoritmos de redução de dimensionalidade não podem fazer.

De uma perspectiva teórica, existem alguns bons teoremas. Quanto mais profunda a rede, a complexidade das funções aprendidas pela rede aumenta exponencialmente. Em geral, pelo menos antes que algo novo seja descoberto, você não encontrará um modelo mais expressivo / poderoso do que uma rede neural corretamente selecionada.

Agora, embora tudo isso pareça ótimo, existem desvantagens. A convergência de redes neurais não é determinística e depende muito da arquitetura usada, da complexidade do problema, da escolha de hiperparâmetros, etc. não escolhido / usado.

Por outro lado, os métodos de vizinhança são menos expressivos e tendem a executar uma quantidade determinística de tempo até a convergência com base em muito menos parâmetros do que as redes neurais.

A escolha do método depende diretamente do problema. Se você tiver um pequeno conjunto de dados que caiba na memória e não utilize nenhum tipo de dados estruturados (imagens, vídeos, áudio), a redução clássica da dimensionalidade provavelmente seria o caminho a seguir. Porém, à medida que a estrutura é introduzida, a complexidade do seu problema aumenta e a quantidade de dados que você tem aumenta as redes neurais se tornam a escolha correta.

Espero que isto ajude.

Armen Aghajanyan
fonte