A classificação baseada em redes neurais precisa de uma redução de dimensão?

9

Estou usando um classificador baseado em redes neurais para executar uma classificação para meus dados em n-dimensional.

Então, pensei que seria uma boa ideia executar a redução de dimensão como PCA para meus dados primeiro e depois colocar os resultados do PCA no classificador (eu mantenho 3 PCs). No entanto, a classificação nos recursos de dimensão reduzida não é tão boa quanto usar os recursos de alta dimensão originais diretamente.

Então me deparei com este post NN como um DR1 que discutia as redes neurais como um método de redução de dimensão. Também algumas informações podem ser encontradas neste documento NN como DR2 . Estou confuso agora:

  1. Se eu usar a classificação baseada em redes neurais (no Matlab), ela reduzirá automaticamente a dimensão para mim?
  2. Devo executar a redução de dimensão como o PCA antes de executar a classificação da Neural Networks?
  3. Existem outras razões pelas quais a classificação nos resultados do PCA não é tão boa quanto usar os recursos originais de alta dimensão?
Samo Jerom
fonte

Respostas:

18

Principalmente, a transformação linear realizada pelo PCA também pode ser realizada pelos pesos da camada de entrada da rede neural, portanto, não é estritamente necessário. No entanto, à medida que o número de pesos na rede aumenta, a quantidade de dados necessários para determinar com segurança os pesos da rede também aumenta (geralmente com bastante rapidez), e o excesso de ajuste se torna mais um problema (o uso de regularização também é uma boa ideia). O benefício da redução de dimensionalidade é que ela reduz o tamanho da rede e, portanto, a quantidade de dados necessários para treiná-la. A desvantagem do uso do PCA é que as informações discriminativas que distinguem uma classe da outra podem estar nos componentes de baixa variação, portanto, o uso do PCA pode piorar o desempenho.

Como a maioria das coisas no reconhecimento de padrões estatísticos, não existe uma receita única que funcione de maneira confiável para todos os problemas, e a melhor coisa a fazer é tentar as duas abordagens e ver qual funciona melhor.

Dikran Marsupial
fonte
1

Se eu usar a classificação baseada em redes neurais (no Matlab), ela reduzirá automaticamente a dimensão para mim? Resposta: se você estiver usando mais de uma camada para classificação e o número de neurônios na camada oculta for menor que os neurônios de entrada, você terá um tipo de rede neural de redução dimensional. se na imagem n> m você tiver uma rede de redução de dimensão mas pode não ser um PCA.

mohammad amiri
fonte
0

Como a rede neural pode aproximar qualquer mapeamento não linear através do aprendizado e está livre das restrições de um modelo não linear, não havia necessidade de reduzir previamente a dimensão como o PCA. Isso também mostra que a rede neural artificial (RNA) possui um forte poder de computação não linear.

ywj_huang
fonte