"New Neural" est un projet de moteur de réseau neuronal Open Source pour la plateforme MetaTrader 5. - page 80

 
Urain:

En ce qui concerne la sparsité (j'ai écrit plus haut), vous pouvez créer un tableau d'index pour chaque neurone basé sur le masque, qui après comptage indiquera où placer les sorties.

Il semblerait plus logique de prendre les entrées d'où, et de laisser qui veut prendre les sorties.
 

Oui ! !! le sujet est très intéressant. J'aimerais aborder le sujet de l'optimisation des réseaux neuronaux à l'aide d'algorithmes naturels, en prenant pour exemple un essaim d'abeilles ou un essaim de particules. Quand j'ai lu l'article sur cette méthode j'ai eu une idée de ce à quoi elle ressemble, ça n'a rien à voir avec OpenCL mais directement applicable à neuronc alors pourquoi ne pas essayer de l'implémenter avec des DDL graphiques supplémentaires OpenGL par exemple, surtout que tester le permet. Si quelqu'un est intéressé, je peux donner un lien vers un article intéressant, il y a aussi un lien vers le code source.

 
MetaDriver:
Mais cette approche ne contient même pas le germe pour essayer de croiser génétiquement les topologies.

Je n'ai jamais entendu parler d'une telle chose. Le croisement de topologies différentes conduirait-il à quelque chose de mieux que l'évolution de la même topologie ?

 
gpwr:

Je n'ai jamais entendu parler d'une telle chose. Le croisement de topologies différentes conduirait-il à quelque chose de mieux que l'évolution de la même topologie ?

Les mules et les chevaux sont mieux adaptés à certaines activités que les ânes et les chevaux. Ce n'est qu'une idée. L'idée est encore en cours d'élaboration.
 
gpwr:

Je n'ai jamais entendu parler d'une telle chose. Le croisement de topologies différentes conduirait-il à quelque chose de mieux que l'évolution de la même topologie ?

Ça arrive. Par exemple un cochonen avec un perseptron.
 
son.humain :
Il semble plus logique de prendre les entrées d'où, et de laisser qui veut prendre les sorties.

Vous pouvez le faire de cette façon, mais cela ne change pas l'essence du modèle. Bien qu'il soit nécessaire de vérifier la vitesse de l'option qui sera la plus rapide.

gpwr:
Les couches sont nécessaires car dans certains réseaux, les différentes couches traitent différemment les entrées et les connexions des neurones entre eux au sein d'une même couche. En fait, je ne comprends pas l'aspect pratique de l'objectif consistant à construire un réseau universel. Il existe de nombreux réseaux avec leurs nuances (fonctions des neurones dans les différentes couches, leur connexion, l'entraînement des poids, etc.) Les décrire tous dans un seul modèle me semble impossible ou inefficace. Pourquoi ne pas créer une bibliothèque de différents réseaux ?

Chaque neurone peut être défini par son propre type (sans parler de la couche), qui sera défini par la fonctionnalité extensible des descendants de la classe de base CProcessing. Au fait, j'ai conçu l'idée, mais j'ai travaillé sur la mise en œuvre tout seul. Je voulais en discuter, et ensuite mettre en œuvre quelque chose de déjà réfléchi. Je pensais qu'il serait clair que dans CProcessing il devrait y avoir une fonction Trening, et pour chaque type de neurone elle peut être différente, dépendant de la dérivée et Dieu sait quoi d'autre. Et il peut y avoir une propagation en avant et en arrière du Trening.

Avec la topologie universelle, nous obtenons un schéma d'apprentissage universel, ce qui doit être fait avec un neurone pour qu'il apprenne est décrit dans le neurone lui-même et le traitement de l'apprentissage est une progression unique et standardisée à travers la maille.

Avez-vous vu quelque part, par exemple dans le MLP, des neurones à base radiale sont intégrés, et tout a été appris normalement ? C'est réalisable ici.

 

L'idée d'une description universelle (incluant une description complète de la topologie) est prometteuse, au moins parce qu'il sera possible (enfin !) de s'abstraire du "type de grille" - un concept plutôt artificiel, si vous le comprenez.

Je ne suis pas contre le fait de donner des noms spécifiques à certaines topologies (par pure commodité). Mais seulement tant que ces noms ne commencent pas à hypnotiser et à créer des barrières de perception de l'essence, et à interférer avec le croisement des idées entre elles. Et cela s'observe à chaque étape dans tous les domaines de l'activité de la vie.

 

En lisant vos commentaires sur le sujet, j'en suis arrivé à la conclusion suivante : j'aimerais voir le projet bêta quand il sera ? et un article avec une description détaillée.

 
Urain:
...
Donc il y a peut-être, quelque part, une boucle de rétroaction ?
 
GKS:

En lisant vos commentaires sur le sujet, j'en suis arrivé à une conclusion : j'aimerais voir une version bêta du projet quand il sera ? et un article avec une description détaillée.

Bien que la discussion fonctionne, le temps nous le dira.

MetaDriver:

L'idée d'une description universelle (y compris une description complète de la topologie) est prometteuse au moins parce qu'il sera possible (enfin !) de s'abstraire du "type de grille" lui-même - un concept plutôt artificiel, si vous le comprenez.

Je ne suis pas contre le fait de donner des noms spécifiques à certaines topologies (par pure commodité). Mais seulement tant que ces noms ne commencent pas à hypnotiser et à créer des barrières à la perception de l'essence, et à interférer avec le croisement des idées entre elles. Et cela s'observe à chaque étape dans tous les domaines de la vie.

Il serait possible de faire des modèles d'amorçage par nom, par exemple, le modèle "MLP" indique les types de tous les neurones par "perseptrons".