L'étiquette du marché ou les bonnes manières dans un champ de mines - page 15

 
Neutron >> :

Vous pouvez chercher les formules vous-même dans la littérature, qui est abondante sur Internet.

Ne soyons pas trop hâtifs. Et n'essayez pas de vous compliquer la vie avec toutes sortes d'artifices, comme "l'apprentissage non linéaire", etc... cela vient du Malin. Beauté et fiabilité dans la simplicité et l'harmonie !

Sauvez et ayez pitié...

 
:-)
 
Neutron >> :

Allons-y doucement. Et n'essayez pas de vous compliquer la vie avec toutes sortes d'artifices comme "l'apprentissage non linéaire" et autres. Beauté et fiabilité dans la simplicité et l'harmonie !

Ы ? C'est un classique. Bref, je vous laisse.

 
Neutron >> :

Vous avez un vecteur de signaux d'entrée (unidimensionnel) de longueur n échantillons, et n+1 échantillons sont un test de la qualité de l'apprentissage du réseau. Vous lui donnez ce vecteur (n échantillons), en assimilant tous les poids à des valeurs aléatoires dans la plage +/-1 avec une distribution de densité de probabilité uniforme, et vous voyez ce que produit la grille. Supposons que l'on fixe +5,1, et que l'on vérifie que n+1 compte (la valeur à laquelle la grille formée sur le vecteur d'apprentissage doit aspirer) +1,1. Ensuite, on prend la différence entre la valeur obtenue et le +4 souhaité et on ajoute cette valeur, en gardant son signe à chaque poids du neurone de sortie (s'il est sans FA), ou bien on trouve la dérivée de FA à partir de cette valeur et on l'ajoute aux poids du neurone d'entrée (s'il a un FA). Et ainsi de suite.

Si vous digérez ce morceau, je vous dirai comment pousser plus loin l'erreur vers les poids d'entrée de la première couche (d'entrée).

1. Si je comprends bien, la grille doit avoir deux modes de fonctionnement : 1 - apprentissage, 2 - reconnaissance et ces modes ne sont pas compatibles, c'est-à-dire que la grille se trouve dans l'un des deux à tout moment.


2. Un vecteur de signaux d'entrée de longueur n, est, par exemple, un tableau V[n,3] (pour une grille à trois entrées) de valeurs RSI sur n barres - n'est-ce pas ? Alors le compte n+1 est le même RSI sur la barre n+1. Dans ce cas, j'entraîne la grille à prédire le comportement futur du RSI, sur la base de son comportement précédent.

Si c'est le cas, les poids sont tous clairs, jusqu'au moment où je dois prendre la dérivée de la fonction FA non lisse.( Je veux dire, je ne sais pas encore comment faire... Peut-être faut-il simplement prendre le coefficient angulaire entre deux points FA(RSI(i)) adjacents. ? Bon, ok, c'est un problème technique - il sera résolu).

 
paralocus писал(а) >>

1. Si je comprends bien, la grille doit avoir deux modes de fonctionnement : 1 - apprentissage, 2 - reconnaissance et ces modes ne sont pas compatibles, c'est-à-dire que la grille se trouve dans l'un des deux à tout moment.

2. Un vecteur de signaux d'entrée de longueur n, est, par exemple, un tableau V[n,3] (pour une grille à trois entrées) de valeurs RSI sur n barres - n'est-ce pas ? Alors le compte n+1 est le même RSI sur la barre n+1. Dans ce cas, j'entraîne la grille à prédire le comportement futur du RSI, sur la base de son comportement précédent.

Si c'est le cas, les poids sont tous clairs, jusqu'au moment où je dois prendre la dérivée de la fonction FA non lisse.( Je veux dire, je ne sais pas encore comment faire... Peut-être faut-il simplement prendre le coefficient angulaire entre deux points FA(RSI(i)) adjacents. ? Bon, ok, c'est un problème technique - il sera résolu).

C'est très bien expliqué dans le livre de F. Wasserman, Neurocomputing - Theory and Practice.

 
Vinin >> :

Très bien expliqué dans l'ouvrage de F. Wasserman, Neurocomputing - Theory and Practice.

Oui, merci, j'en ai trouvé un.

 
paralocus писал(а) >>

1. Si je comprends bien, la grille doit avoir deux modes de fonctionnement : 1 - apprentissage, 2 - reconnaissance et ces modes ne sont pas compatibles, c'est-à-dire que la grille se trouve dans l'un des deux à tout moment.

2. Un vecteur de signaux d'entrée de longueur n, est, par exemple, un tableau V[n,3] (pour une grille à trois entrées) de valeurs RSI sur n barres - n'est-ce pas ? Alors le compte n+1 est le même RSI sur la barre n+1. Dans ce cas, j'entraîne la grille à prédire le comportement futur du RSI, sur la base de son comportement précédent.

Si c'est le cas, les poids sont tous clairs, jusqu'au moment où je dois prendre la dérivée de la fonction FA non lisse.( Je veux dire, je ne sais pas encore comment faire... Peut-être faut-il simplement prendre le coefficient angulaire entre deux points FA(RSI(i)) adjacents. ? Bon, ok, c'est un problème technique - il sera résolu).

1. Avec l'arrivée d'une nouvelle donnée, la grille est entraînée sur le nouveau vecteur d'entraînement et, immédiatement après l'entraînement, produit une prédiction avec un pas d'avance, et ainsi de suite jusqu'à l'infini. C'est-à-dire qu'il s'agit d'une formation supplémentaire des SN à chaque étape.

2. Le maillage à trois entrées lit trois dernières lectures du vecteur de longueur n+1+3, et est entraîné sur celui-ci par un décalage séquentiel d'un pas de tous les n temps.

Il n'y a pas de problème avec le produit dérivé. Si nous utilisons comme FA la tangente hyperbolique FA=th(x), alors nous n'avons aucun problème pour en trouver la dérivée dFA=1-th(x)^2 et le poids de correction à l'entrée de ce neurone sera : dw=delta*(1-th(s)^2), où delta est l'erreur entre la sortie de la grille et la valeur réelle de l'échantillon, s est la sortie de la grille.

 
Neutron >> :

1. Avec l'arrivée d'une nouvelle donnée, la grille est entraînée sur le nouveau vecteur d'entraînement et, immédiatement après l'entraînement, produit une prédiction avec un pas d'avance, et ainsi de suite jusqu'à l'infini. C'est-à-dire que nous parlons d'une formation supplémentaire des SN à chaque étape.

2. Le maillage à trois entrées lit les trois dernières lectures du vecteur de longueur n+1+3, et est entraîné sur celui-ci par un décalage séquentiel d'un pas de tous les n temps.

Il n'y a pas de problème avec le produit dérivé. Si nous utilisons comme FA la tangente hyperbolique FA=th(x), alors nous n'avons aucun problème pour en trouver la dérivée dFA=1-th(x)^2 et le poids de correction sur l'entrée de ce neurone sera : dw=delta*(1-th(s)^2), où delta est l'erreur entre la sortie de la grille et la valeur réelle de l'échantillon, s est la sortie de la grille.

C'est ça ! Il n'y a donc pas besoin de la recycler. Oh, génial !

2. Une grille à trois entrées, lit les trois derniers échantillons d'un vecteur de longueur n+1+3, et est entraînée sur celui-ci en décalant séquentiellement d'un pas toutes les n fois.


Je dois m'être mal exprimé ici. Pas une grille avec trois entrées, mais un neurone avec trois synapses, chacune recevant un signal d'entrée :

1synaps - th(RSI(i))

2synaps - th(RSI(i+dt))

3synaps - th(RSI(i+td*2))

1. nous initialisons les poids des synapses avec des valeurs aléatoires (-/+1), ce qui est logique - il n'y en a que trois.

2. Ensuite, nous devons alimenter chaque entrée avec n échantillons du signal d'entrée, c'est-à-dire une séquence de signaux d'entrée sur n barres précédentes.

3. Ensuite, le neurone de sortie sur la nième barre et la compare avec la valeur n+1 du signal d'entrée, la différence (erreur) avec son signe doit être ajoutée à chaque poids si la sortie du neurone sans FA.

Si la sortie provient de FA, nous ajoutons l'erreur multipliée par la prudence de FA (à la n-ième barre) aux poids.

4. Avancez d'une mesure (la n+1ème devient la nème) et répétez les étapes 2 à 4.


Questions :

1. n = k*w*w/d ?

2. Pour calculer la valeur d'erreur, il faut toujours soustraire le nombre de tests de la valeur de sortie de la grille ?

 

Oui !

Passons ensuite aux époques d'apprentissage. Il y en aura de 10 à 1000, selon les objectifs et les moyens, et nous verrons plus en détail comment former un vecteur de correction des poids (il est en effet commutatif à l'intérieur d'une époque) et a une longueur égale au nombre de synapses w sur un échantillon de longueur n-comptés.

En bref, ne vous embêtez pas encore.

 
Neutron >> :

Oui !

Passons ensuite aux époques d'apprentissage. Il y en aura de 10 à 1000, selon les objectifs et les moyens, et nous verrons plus en détail comment former un vecteur de correction des poids (il est en effet commutatif à l'intérieur d'une époque) et a une longueur égale au nombre de synapses w sur un échantillon de longueur n-comptés.

En bref, ne vous réjouissez pas trop vite.

Neutron, je vais prendre un petit temps mort. Je dois tout repenser une fois de plus et le mettre en code au moins pour un neurone. Bref, un jour ou deux, et ensuite nous continuerons.

Je vous remercie beaucoup !