Ao escrever seu algoritmo, como você sabe quantos neurônios você precisa por camada única? Existem métodos para encontrar o número ideal deles ou é uma regra de ouro?
fonte
Ao escrever seu algoritmo, como você sabe quantos neurônios você precisa por camada única? Existem métodos para encontrar o número ideal deles ou é uma regra de ouro?
Não há uma maneira direta de encontrar o número ideal deles: as pessoas tentam empiricamente ver (por exemplo, usando a validação cruzada). As técnicas de pesquisa mais comuns são pesquisas aleatórias, manuais e em grade.
Existem técnicas mais avançadas, como processos gaussianos, por exemplo, otimização de hiperparâmetros de redes neurais com processos gaussianos para classificação de atos de diálogo , IEEE SLT 2016 .
Para uma abordagem mais inteligente do que pesquisas aleatórias ou exaustivas, você pode tentar um algoritmo genético como o NEAT http://nn.cs.utexas.edu/?neat . No entanto, isso não garante que encontre um ótimo global, é simplesmente um algoritmo de otimização baseado no desempenho e, portanto, vulnerável a ficar preso em um ótimo local.
Papel Szegedy C, Vanhoucke V, Ioffe S, et al. Repensando a arquitetura inicial para visão computacional [J]. pré-impressão do arXiv arXiv: 1512.00567, 2015. fornece alguns princípios gerais de design:
Porém, essas sugestões não oferecem o número ideal de neurônios em uma rede.
No entanto, ainda existem algumas pesquisas de compressão de modelos, por exemplo, Structured Sparsity Learning (SSL) da Deep Neural Networks , SqueezeNet , rede de poda que podem lançar alguma luz sobre como otimizar os neurônios por camada única.
Especialmente no aprendizado de escassez estruturada de redes neurais profundas , ele adiciona um
Group Lasso
termo de regularização na função de perda para regularizar as estruturas (ou seja, filtros, canais, formas de filtro e profundidade da camada) de DNNs, que é zerar alguns componentes ( isto é, filtros, canais, formas de filtro e profundidade da camada) da estrutura da rede e obtém uma notável compactação e aceleração da rede, enquanto mantém uma pequena perda de precisão na classificação.fonte
Você sabe que quando você tem muitos neurônios, é quando você supera o ajuste. Isso significa que não está funcionando bem porque o NN está tentando ativar a correspondência mais perfeita possível. Como dois gatos diferentes com a mesma quantidade de átomos, ou seja, é um detector NN que só é ativado em uma foto do seu gato de estimação e nada mais. Você deseja uma faixa mais ampla para o nn ativar. Como em qualquer foto de gato.
Overfitting é um problema que não tem uma solução rápida real. Você pode começar com muito poucos e continuar adicionando mais. Ou comece com muito e remova-os até que funcione corretamente.
fonte