Réseau neuronal sous forme de script - page 2

 
YuraZ:
Kombat:
Quelque chose dans la logique de ce script ressemble à un simple encodeur 4v2.

le gadget est intéressant bien sûr !


mais ce sur quoi le filet a été formé est ce sur quoi il est garanti de montrer !


Maintenant, essayez de nourrir ses entrées avec des choses qu'elle n'a pas vues pendant la formation !

Elle devient folle !




test_pat[0] = 1 ;
test_pat[1] = 1 ;
test_pat[2] = 0 ;
test_pat[3] = 0 ;
test_the_network() ;
Print(MathRound( ol_a[0]), " 1100 ", MathRound(ol_a[1]) ) ;

Elle répond 1 0

bien que logiquement il devrait répondre 1 1

---

Le réseau de droite fera de même - il répondra 1 1 même s'il n'a pas vu de telles données pendant la formation !



essayez d'enseigner au réseau l'exemple suivant


OUTPUT = INPUT

30.00 = 100.00
27.50 = 87.50
25.00 = 75.00
20.00 = 50.00
15.00 = 25.00
13.75 = 18.75
12.50 = 12.5
11.25 = 6.25
10.00 = 0.00

et lui donner une entrée de, disons, 62,5 devrait produire une sortie de 22,50.


DOIT = INPUT

22.50 - 62.5

il s'agit d'un exemple simple de mise à l'échelle que les réseaux manipulent comme des cacahuètes sans pelure



Dans cet algorithme, il y a 4 entrées et 2 sorties.



Vous devez donc enseigner le réseau de cette façon :

______ входы_______________выходы

1______2_______3______4 _____1______2

30.00_ 100.00_ 27.50_ 87.50_ 25.00_ 75.00


Mais avant cela, il faut tout diviser par 100 pour entrer dans la plage du réseau 0 - 1 .

En dehors de cette plage, le réseau n'apprend pas. Eh bien, il ne répond pas comme prévu.


______ входы_______________выходы

1______2_______3______4 _____1______2

0,30___ 1,0___ 0,275_ 0,875___ 0,25___ 0,75


Exemple de préparation des données :

 

Une digression lyrique... ;)

Белл с 1873 г. пытался сконструировать гармонический телеграф, добиваясь возможности передавать по одному проводу одновременно семь телеграмм (по числу нот в октаве). Он использовал семь пар гибких металлических пластинок, подобных камертону, при этом каждая пара настраивалась на свою частоту. Во время опытов 2 июня 1875 г. свободный конец одной из пластинок на передающей стороне линии приварился к контакту. Помощник Белла механик Томас Ватсон, безуспешно пытаясь устранить неисправность, чертыхался, возможно, даже используя не совсем нормативную лексику.

Alors qu'il se trouvait dans une autre pièce et qu'il manipulait les plaques de réception, Bell, avec son oreille sensible et entraînée, a capté le son qui passait par le fil. Spontanément attachée aux deux extrémités, la plaque est devenue une sorte de membrane flexible et, se trouvant au-dessus du pôle de l'aimant, a changé son flux magnétique. Par conséquent, le courant électrique qui entrait dans la ligne variait en fonction des oscillations de l'air, provoquées par le murmure de Watson, c'était le moment de l'origine du téléphone. Pendant neuf mois, Bell a perfectionné son invention. Il a déposé une demande de brevet le 14 février 1876 et l'a obtenu le 7 mars.

Trois jours plus tard, le 10 mars 1876, le fil de 12 mètres de long qui relie l'appartement de Ball au laboratoire situé dans le grenier transmet la première phrase articulée qui deviendra historique :
"M. Watson, venez ici. J'ai besoin de toi !"



- Wiki : CHIFRATOR (log. électr.)

- CHIFRATOR

- CHIFRATOR

 

Je vois. Je pense que le réseau peut fonctionner comme un brouilleur.

Ce que vous enseignez, vous l'obtenez. Vous voulez un crypteur, vous voulez un décrypteur.


Et un encodeur est très probablement quelque chose de rigide, adapté à un cas spécifique .

Dans le cas le plus simple, je ferais un encodeur pour un ensemble de données comme ceci .

Autant d'ensembles, autant de morceaux de code.


if ( inp1=10 && inp2=12 && inp3=23 && inp4= 100)
{
  outp1 = 0 ;
  outp2 = 0; 
}
 
sprite:

Je vois. Je pense que le réseau peut fonctionner comme un brouilleur.

Ce que vous enseignez, vous l'obtenez. Vous voulez un crypteur, vous voulez un décrypteur.

Sest s'apprend, c'est son truc .


Et le codeur est soit clair, soit en logique floue ou autre chose . Mais très probablement quelque chose de rigide, adapté au cas particulier .

Dans le cas le plus simple, je créerais un encodeur pour un seul ensemble de données de cette façon .

Autant d'ensembles, autant de morceaux de code.


if ( inp1=10 && inp2=12 && inp3=23 && inp4= 100)
{
  outp1 = 0 ;
  outp2 = 0; 
}

Mais la grille a plus de possibilités, non seulement elle peut simuler le fonctionnement de l'encodeur en particulier .

Il peut être réentraîné "à la volée", par exemple dans l'EA, après plusieurs jours de transactions.

En bref, il s'agit d'un phénomène mathématique assez intéressant :) et qui mérite qu'on s'y attarde.


Seules les valeurs d'entrée et de sortie de cet algorithme doivent être conduites dans la zone de visibilité du réseau, c'est-à-dire de 0 à 1 .

Ou refaire le code .

 
kombat:
Il y a quelque chose dans la logique de ce script qui me rappelle un simple encodeur 4v2.

L'encodeur est un système non formateur .

Et le réseau est formé dans ce script. Et le processus d'apprentissage est montré en dynamique d'époque en époque sur l'écran.

Vous pouvez voir comment les poids des neurones de chaque couche changent, et comment la grille devient de plus en plus précise au fur et à mesure de son apprentissage.

Ci-dessus, trois postes où le même algorithme a appris

pour travailler avec trois ensembles de données différents .

Dans le cas d'un encodeur - trois encodeurs seraient nécessaires, pour chaque ensemble de données .

 

Je ne suis pas contre, mais je ne suis pas encore favorable à l'utilisation des réseaux neuronaux dans le trading...


NS est ma compréhension au niveau des directeurs d'ondes qui se tiennent à la table à dessin avec une gomme à effacer.

et de dessiner la situation actuelle du marché avec un crayon dans les mains... :)))


Bien que les perceptronistes soient plus cool que les faiseurs d'ondes... probablement... :)))

 
kombat:

Pas contre, mais pas encore en faveur de l'utilisation des réseaux neuronaux dans le trading...



De même :) ! !!

Mais l'algorithme fonctionne et apprend :) Et puis nous verrons :)


L'intérêt pour les réseaux est encore renforcé par la victoire des EA disposant de réseaux dans le championnat.

Bien sûr, c'est un réseau différent là-bas. Mais l'homme a fait le travail et a obtenu le résultat.

 
sprite:


1. Tout d'abord, vous devez tout normaliser - à la fois l'entrée et la sortie, c'est-à-dire les placer dans l'intervalle 0 - 1.

(ou vous devez réécrire le code du réseau pour la nouvelle gamme de changement de données)

2. Ce réseau a 4 entrées et 2 sorties .

Quels sont les numéros de ces colonnes et quelle est l'entrée qui doit être alimentée ?


Selon l'algorithme

le réseau place chaque quadruple des valeurs d'entrée 1 0 0 0 0

définit une paire de données de sortie 1 0


Il peut y avoir plusieurs ensembles de données de ce type, par exemple 4 .

Et vous devez les nourrir selon l'algorithme du réseau.

entrée _sortie


1 0 0 0_ 0 0

1 0 0 1_ 1 0

1 0 1 0_ 0 1

1 0 1 1_ 1 1


ou comme suit, si 4 entrées et 3 sorties


1 0 0 0_ 1 1 1

1 1 0 0_ 1 0 0

1 0 1 1_ 0 0 1

1 0 1 0_ 0 1 1

1 0 1 0_ 0 0 0

1 1 1 1_ 0 1 0

pour ce cas, changez le code











Il n'est pas toujours nécessaire de normaliser, qui dit qu'un réseau ne peut et ne doit fonctionner qu'avec 0 et 1 ?


Je peux joindre une grille simple avec un exemple, (malheureusement il n'y a pas de matériel à portée de main en ce moment) - je la joindrai plus tard

où un simple NN résout ce problème sans préparation des données avec normalisation

malheureusement, ce n'est pas la source


l'exemple que j'ai donné, cependant ! c'est comme si c'était déjà normalisé.

Il existe deux gammes de conditions


1 0-100

2 10-30


il faut simplement trouver le rapport de la position dans une gamme - qui est connue pour

il s'agit essentiellement d'une mise à l'échelle



Dans l'exemple, j'ai clairement indiqué qu'il connaissait les limites.


0 = 10

...

25 = 15

..

50 = 20

...

75 = 25

...

100 = 30


le problème est simple et ne concerne même pas généralement un réseau, mais un bon réseau trouvera facilement une solution.

---



Votre branche est intéressante !

 
kombat:

Je ne suis pas contre, mais je ne suis pas encore favorable à l'utilisation des réseaux neuronaux dans le trading...


NS est ma compréhension au niveau des directeurs d'ondes qui se tiennent à la table à dessin avec une gomme à effacer.

et de dessiner la situation actuelle du marché avec un crayon dans les mains... :)))


Bien que les perceptronistes soient plus cool que les faiseurs d'ondes... probablement... :)))

C'est une opinion intéressante


vraiment brisé - il a été brisé - par la victoire de BETTER,a au championnat en 2007

Raison: