O "New Neural" é um projecto de motor de rede neural Open Source para a plataforma MetaTrader 5. - página 80

 
Urain:

Em relação à sparsity (eu escrevi acima), você pode criar um array índice para cada neurônio baseado na máscara, que após a contagem indicará onde colocar as saídas.

Pareceria mais lógico tirar inputs de onde, e deixar quem quiser tirar outputs.
 

Sim!!! o tópico é muito interessante. Gostaria de abordar o tema da otimização de redes neurais usando algoritmos naturais, usando um enxame de abelhas ou de partículas como exemplo. Quando li o artigo sobre este método, pensei no que parece, não é nada parecido com OpenCL, mas se aplica diretamente aos neurônios, então por que não tentar implementá-lo com OpenGL DDL gráfica adicional, por exemplo, especialmente como o testador permite. Se alguém estiver interessado eu posso dar um link para um artigo interessante, há também um link para o código fonte.

 
MetaDriver:
Mas. Esta abordagem nem sequer contém o germe para tentar criar topologias geneticamente cruzadas.

Ainda não ouvi falar de tal coisa. O cruzamento de diferentes topologias levaria a algo melhor do que a evolução da mesma topologia?

 
gpwr:

Ainda não ouvi falar de tal coisa. O cruzamento de diferentes topologias levaria a algo melhor do que a evolução da mesma topologia?

Mulas e cavalos são mais adequados para algumas atividades do que burros e cavalos. Isso é apenas um pensamento. A idéia ainda é um trabalho em andamento.
 
gpwr:

Ainda não ouvi falar de tal coisa. O cruzamento de diferentes topologias levaria a algo melhor do que a evolução da mesma topologia?

Acontece. Por exemplo, um cohonen com um perseptron.
 
ela.humana:
Parece mais lógico tirar inputs de onde, e deixar quem quiser tirar outputs.

Você pode fazer dessa maneira, mas isso não muda a essência do modelo. Embora seja necessário verificar a velocidade da qual a opção será mais rápida.

gpwr:
As camadas são necessárias porque em algumas redes diferentes camadas têm diferentes processamentos de inputs e diferentes conexões de neurônios entre si dentro de uma camada. Na verdade, eu não entendo a praticidade do objetivo de construir uma rede universal. Existem muitas redes com suas nuances (funções dos neurônios em diferentes camadas, sua conexão, treinamento de pesos, etc.). Descrevê-los todos num só modelo parece-me impossível ou ineficiente. Porque não criar uma biblioteca de redes diferentes?

Cada neurônio pode ser definido por seu próprio tipo (para não mencionar a camada), que será definido pela funcionalidade extensível dos descendentes da classe base CProcessing. A propósito, eu concebi a idéia, mas a implementação que eu modelei de joelhos. Eu queria discutir isso, e depois implementar algo já pensado. Eu pensei que seria claro que em CProcessing deveria haver uma função Trening, e para cada tipo de neurônio pode ser diferente, dependendo da derivada e Deus sabe o que mais. E pode haver uma propagação para a frente e para trás da Trindade.

Junto com a topologia universal obtemos um esquema de aprendizagem universal, o que precisa ser feito com um neurônio para que ele aprenda é descrito no próprio neurônio e o processamento da aprendizagem é uma progressão única padronizada através da malha.

Você já viu em algum lugar, por exemplo no MLP há neurônios radiais embutidos, e tudo foi aprendido normalmente? É realizável aqui.

 

A ideia de uma descrição universal (incluindo uma descrição abrangente da topologia) é promissora, pelo menos porque será possível (finalmente!) abstrair-se do próprio "tipo grade" - um conceito bastante artificial, se o entender.

Eu não sou contra dar nomes específicos a algumas topologias específicas (apenas por conveniência). Mas apenas enquanto esses nomes não começarem a hipnotizar e a criar barreiras de percepção da essência, e interferirem no cruzamento de idéias entre si. E isso é observado a cada passo em todas as áreas de atividade da vida.

 

Lendo seus comentários sobre o tema chegou à conclusão - eu gostaria de ver o projeto beta quando ele será? e um artigo com uma descrição detalhada.

 
Urain:
...
Então pode haver, em algum lugar, um loop de feedback?
 
GKS:

A leitura dos seus comentários sobre o tema chegou a uma conclusão - eu gostaria de ver um beta do projeto quando ele será? e um artigo com uma descrição detalhada.

Enquanto se trabalha, o tempo o dirá.

MetaDriver:

A idéia de uma descrição universal (incluindo uma descrição abrangente da topologia) é promissora pelo menos porque será possível (finalmente!) abstrair-se do próprio "tipo de grade" - um conceito bastante artificial, se você o entender.

Eu não sou contra dar nomes específicos a algumas topologias específicas (apenas por conveniência). Mas apenas enquanto esses nomes não começarem a hipnotizar e a criar barreiras à percepção da essência, e interferirem no cruzamento de ideias entre si. E isso é observado a cada passo em todas as áreas da vida.

Seria possível fazer modelos de bootstrap por nome, por exemplo, o modelo "MLP" indica os tipos de todos os neurónios por "perseptrons".