Qu'est-ce qui fait obstacle aux réseaux de neurones pulsés utilisés dans les applications?
13
Les réseaux de neurones pulsés ou dopés intègrent davantage la dynamique des membranes des neurones biologiques, où les impulsions transportent des informations vers la couche suivante. Les neurones ne doivent pas nécessairement "tirer" tous en même temps, comme ils le feraient dans un backprop, par exemple.
Pourtant, il semble y avoir des obstacles à l'utilisation de ces modèles pour les problèmes d'apprentissage automatique. Quels problèmes spécifiques empêchent les praticiens de l'apprentissage automatique d'utiliser des modèles plus réalistes sur le plan biologique?
Le problème majeur est que personne ne sait comment fonctionne le cerveau :)
Théorie
Pour autant que je sache, il y a trois grandes étapes dans la recherche sur les réseaux de neurones:
Modèle de perceptron (ou de seuil), où toute fonction booléenne peut être calculée par un perceptron multicouche avec une seule couche cachée.
Modèle de neurone - version améliorée de la précédente, où les éléments du réseau utilisent la fonction d'activation sigmoïde (ensemble continu d'entrées et de sorties possibles). Ils peuvent également calculer n'importe quelle fonction booléenne (après avoir appliqué un seuil) et, en outre, peuvent approximer n'importe quelle fonction continue.
Modèle de neurones dopés, qui utilise le "codage temporel" pour transmettre des informations entre les éléments du réseau. Il peut faire tout ce que fait le modèle précédent, et souvent avec moins de neurones.
Fondamentalement, l'évolution ici est de se rapprocher du fonctionnement du cerveau humain, et le dernier modèle a la meilleure fidélité.
Entraine toi
Les SNN semblent très prometteurs et il y a même un produit commercial SpikeNET construit dessus (sous "Qu'est-ce que SpikeNET peut faire" et "Qu'est-ce que SpikeNET ne peut pas encore faire", vous pouvez voir les problèmes rencontrés).
Je ne peux pas parler de problèmes spécifiques avec les réseaux de dopage - mais en général, j'ai l'impression que les problèmes surviennent parce que les gens veulent que les SNN fonctionnent de plus en plus comme un cerveau humain:
ils veulent choisir comment coder les informations - ce qui peut être fait via un codage différé (les neurones plus fortement stimulés ont tendance à augmenter plus fréquemment et plus tôt ), le codage binaire (les informations sont représentées par le nombre de pointes dans un intervalle de temps donné), le codage temporel (l'information est l'inverse de la granularité de l'intervalle de temps reconnaissable), le codage par ordre de rang (les premiers pics reçus par un neurone reçoivent une influence et les suivants sont inhibés) et ainsi de suite.
ils émulent la plasticité hébbienne qui augmente les poids entre les neurones lorsque les deux neurones sont "allumés" (ou les deux "éteints") en même temps.
ils appliquent l'auto-organisation où un groupe de neurones rivalise avec le neurone gagnant inhibant la réponse des autres neurones. Avec un neurone dopé, le gagnant peut être calculé rapidement en fonction uniquement des événements de tir unique.
Wikipédia a un lien vers le livre "Pulsed Neural Networks" qui contient la section "Implémentation des réseaux de neurones à impulsions codées" mais je ne suis pas assez éduqué pour commenter cela.
En ce qui concerne l'introduction au sujet, je recommande cet article: Réseaux de neurones pulsés et leur application ( pdf )
Je suis d'accord que personne ne sait comment fonctionne le cerveau, mais il existe de bons modèles de membranes physiologiquement précises depuis les années 30 environ. Excellente information dans la réponse, mais d'après ce que vous avez écrit, je pense que les pratiquants seraient encouragés à les utiliser, plutôt que découragés.
jonsca
Oui exactement - ils sont encouragés par ces problèmes! :)
andreister
0
il semble que tous les algorithmes de réseaux neuronaux utilisent une certaine forme de descente de gradient dans leurs algorithmes d'apprentissage et même les modèles non ANN utilisent une descente de gradient. il ne semble pas y avoir de théorie sur la façon d'appliquer la descente de gradient de façon temporelle sur les SNN. une possibilité est une montée en puissance de l' informatique neuromorphique qui utilise des modèles biologiquement plus réalistes similaires aux SNN. mais il semble qu'il n'y ait pas de repères / percées d'apprentissage machine solides à ce jour dans le domaine neuromorphique comme avec des repères très précis atteints avec les ANN dans de nombreux problèmes de ML standard comme la reconnaissance de l'écriture manuscrite, la reconnaissance vocale, la reconnaissance d'objets, la traduction de la langue, etc.
il semble que tous les algorithmes de réseaux neuronaux utilisent une certaine forme de descente de gradient dans leurs algorithmes d'apprentissage et même les modèles non ANN utilisent une descente de gradient. il ne semble pas y avoir de théorie sur la façon d'appliquer la descente de gradient de façon temporelle sur les SNN. une possibilité est une montée en puissance de l' informatique neuromorphique qui utilise des modèles biologiquement plus réalistes similaires aux SNN. mais il semble qu'il n'y ait pas de repères / percées d'apprentissage machine solides à ce jour dans le domaine neuromorphique comme avec des repères très précis atteints avec les ANN dans de nombreux problèmes de ML standard comme la reconnaissance de l'écriture manuscrite, la reconnaissance vocale, la reconnaissance d'objets, la traduction de la langue, etc.
la source