Qu'est-ce qu'une explication intuitive d'Echo State Networks?


17

Je suis nouveau sur les réseaux de neurones récurrents (RNN) et j'apprends toujours les concepts. Je comprends à un niveau abstrait qu'un Echo State Network (ESN) est capable de (re) produire une séquence d'entrées, c'est-à-dire un signal, même après que l'entrée a été supprimée. Cependant, j'ai trouvé l' article Scholarpedia trop difficile à saisir et à comprendre complètement.

Quelqu'un peut-il expliquer comment l'apprentissage fonctionne mathématiquement sous la forme la plus simple possible.

Réponses:


17

Un Echo State Network est un exemple du concept plus général de Reservoir Computing . L'idée de base derrière l'ESN est d'obtenir les avantages d'un RNN (traiter une séquence d'entrées qui dépendent les unes des autres, c'est-à-dire des dépendances temporelles comme un signal) mais sans les problèmes de formation d'un RNN traditionnel comme le problème du gradient de fuite .

Les ESN y parviennent en ayant un réservoir relativement important de neurones peu connectés utilisant une fonction de transfert sigmoïde (par rapport à la taille d'entrée, quelque chose comme 100-1000 unités). Les connexions dans le réservoir sont attribuées une fois et sont complètement aléatoires; les poids des réservoirs ne sont pas entraînés. Les neurones d'entrée sont connectés au réservoir et alimentent les activations d'entrée dans le réservoir - ceux-ci sont également affectés de poids aléatoires non entraînés. Les seuls poids entraînés sont les poids de sortie qui relient le réservoir aux neurones de sortie.

Lors de la formation, les intrants seront introduits dans le réservoir et une sortie de l'enseignant sera appliquée aux unités de sortie. Les états du réservoir sont capturés dans le temps et stockés. Une fois que tous les intrants d'apprentissage ont été appliqués, une simple application de régression linéaire peut être utilisée entre les états de réservoir capturés et les extrants cibles. Ces poids de sortie peuvent ensuite être intégrés au réseau existant et utilisés pour de nouvelles entrées.

L'idée est que les connexions aléatoires clairsemées dans le réservoir permettent aux états précédents de "résonner" même après leur passage, de sorte que si le réseau reçoit une nouvelle entrée similaire à quelque chose sur laquelle il s'est entraîné, la dynamique dans le réservoir commencera à suivre la trajectoire d'activation appropriée pour l'entrée et de cette manière peut fournir un signal correspondant à ce sur quoi il s'est entraîné, et s'il est bien formé, il pourra généraliser à partir de ce qu'il a déjà vu, en suivant des trajectoires d'activation qui auraient du sens étant donné le signal d'entrée entraînant le réservoir.

L'avantage de cette approche réside dans la procédure d'entraînement incroyablement simple, car la plupart des poids ne sont attribués qu'une seule fois et au hasard. Pourtant, ils sont capables de capturer des dynamiques complexes au fil du temps et sont capables de modéliser les propriétés des systèmes dynamiques. De loin, les articles les plus utiles que j'ai trouvés sur les ESN sont:

Ils ont tous deux des explications faciles à comprendre pour aller de pair avec le formalisme et des conseils exceptionnels pour créer une implémentation avec des conseils pour choisir les valeurs de paramètres appropriées.

MISE À JOUR: Le livre Deep Learning de Goodfellow, Bengio et Courville a une discussion de haut niveau légèrement plus détaillée mais toujours agréable sur les réseaux d'État d'Echo. La section 10.7 traite du problème de gradient qui disparaît (et explose) et des difficultés d'apprentissage des dépendances à long terme. La section 10.8 concerne les réseaux d'état d'écho. Il explique spécifiquement pourquoi il est crucial de sélectionner des poids de réservoir qui ont une valeur de rayon spectral appropriée - il fonctionne avec les unités d'activation non linéaires pour encourager la stabilité tout en propageant les informations dans le temps.


1

L'apprentissage dans un ESN n'est pas principalement obligé d'adapter les pondérations, plus respectivement la couche de sortie apprend quelle sortie produire pour l'état actuel du réseau. L'état interne est basé sur la dynamique du réseau et est appelé état de réservoir dynamique. Pour comprendre comment les états du réservoir se forment, nous devons examiner la topologie d'un ESN.

Topologie ESN

La ou les unités d'entrée sont connectées aux neurones des unités internes (unités de réservoir), les poids sont initialisés de manière aléatoire. Les unités de réservoir sont connectées de manière aléatoire et clairsemée et ont également des poids aléatoires. L'unité de sortie est également connectée à toutes les unités de réservoir reçoit ainsi l'état du réservoir et produit une sortie correspondante.

tt

Avant de pouvoir expliquer en détail le fonctionnement de la formation, nous devons expliquer et définir certaines choses:

TtWfb

Définitions variables:

  • r
  • o
  • t
  • o
  • Tto

Enfin, comment fonctionne la formation en détail?

  • tMtr
  • WoutMWout=T>Wout=MT1

Parce que l'apprentissage est très rapide, nous pouvons essayer de nombreuses topologies de réseau pour en obtenir une qui convient bien.

Pour mesurer les performances d'un ESN:

  • Wfb
  • ||MWoutT||2

Rayon spectral et ESN

Spec-tral1

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.