Eu queria saber se, em algumas circunstâncias, é possível que a ANN funcione melhor se você remover algumas conexões com elas, como por exemplo:
Construindo uma RNA, tomando duas RNAs A e B de várias camadas em paralelo (mesmos nós de entrada e saída) adicionando algumas conexões de "comunicação" entre as camadas ocultas de A e B?
Alguém poderia obter melhores resultados de generalização?
Isso é de alguma forma usado na prática ou sempre se usa apenas redes totalmente conectadas em várias camadas?
classification
neural-networks
SlimJim
fonte
fonte
Como regra geral, redes pequenas e / ou esparsas generalizam melhor. Você pode permitir que seu algoritmo de treinamento elimine conexões desnecessárias em uma rede de tamanho fixo, aplicando alguma forma de redução de peso, ou você pode aplicar um algoritmo que visa otimizar a arquitetura / topologia de rede, removendo entradas desnecessárias, nós ou conexões ocultos.
Dê uma olhada nessas referências de idéias e pontos de partida para futuras pesquisas ou analise o uso de algoritmos evolutivos para projetar, podar e otimizar arquiteturas.
fonte
Na maioria dos casos, se você remover conexões desnecessárias, obterá uma rede melhor. É fácil treinar demais (overfit) a rede - nesse caso, ela terá um desempenho ruim no conjunto de dados de validação.
A remoção de conexões desnecessárias provavelmente reduzirá a probabilidade de overtraining. Por favor, consulte: http://en.wikipedia.org/wiki/Overfitting .
fonte
Sim, é possível. Podemos considerar, a conexão entre as unidades computacionais, o número de camadas ocultas, as unidades por camada oculta etc. como hiperparâmetros. É possível encontrar valores ótimos para esses parâmetros, realizando uma série de experimentos.
Por exemplo:
Você pode dividir seu conjunto de dados da seguinte maneira: conjunto de treinamento 60% dos dados, validação cruzada 20% dos dados, teste 20% dos dados,
Em seguida, treine seu NN usando o conjunto de dados de treinamento e o parâmetro de ajuste usando o conjunto de dados de validação cruzada.
Finalmente, você pode usar seu conjunto de dados de teste para avaliar o desempenho do seu NN.
fonte