snake-dqn comme chemin vers ML

Программирование

Trouvé dans tensorflow-js ce dont vous avez besoin pour les premières étapes du ML et du trading.

Il s’agit d’une formation dqn, où l’agent reçoit des récompenses et des pénalités pour ses actions.

https://github.com/tensorflow/tfjs-examples/tree/master/snake-dqn

https://storage.googleapis.com/tfjs-examples/snake-dqn/index.html

Il s’avère que nous avons un serpent qui apprend de sa propre expérience à se déplacer. Elle a un certain nombre de coups (tourner ou continuer) et sa tâche est d’atteindre le fruit. Au départ, le serpent ne sait rien faire, mais au cours de l’entraînement, il acquiert la capacité de trouver des fruits et d’esquiver. C’est très similaire au trading, n’est-ce pas ?

Eh bien, au moins pour notre tâche, lorsque nous avons des données en cours d’exécution et que le robot doit prendre la décision d’acheter ou de vendre.

L’inconvénient du serpent est qu’il a été écrit pour node.js, et nous devons pouvoir nous entraîner dans un navigateur (afin que tout utilisateur puisse le faire). Par conséquent, il était nécessaire de démarrer le même sur le client.

J’ai pris le serpent tel quel sur ma page avec le graphique et j’ai essayé de le démarrer. Ce n’était pas le cas !

Le serpent a résisté de toutes les manières possibles,

paquets d’abord,

puis des arguments. (au fait, j’ai aussi fait une pull request à côté du correctif https://github.com/tensorflow/tfjs-examples/pull/353),

then %% Rejet non géré (TypeError) : impossible d’appeler une classe en tant que fonction %%. Qui est réparé ici https://github.com/tensorflow/tfjs/pull/3906/files, mais depuis il n’y a pas encore de libération, alors j’ai dû substituer mes mains. Ici, d’ailleurs, beaucoup de gens ont un problème https://github.com/tensorflow/tfjs/issues/3384.

Ensuite, il y avait les mineurs, comme substituer fs à indexeddb. Le travail avec lequel j’ai espionné ici, d’ailleurs. Eh bien, en général, cart-pole inspirait initialement de tout faire sur le client.

https://github.com/tensorflow/tfjs-examples/tree/master/cart-pole

https://storage.googleapis.com/tfjs-examples/cart-pole/dist/index.html

au final voilà ce qui s’est passé :

https://github.com/pskucherov/opexflow/pull/16/files

Bon, c’est tout, la prochaine étape sera :

  1. Ajuster aux graphiques
  2. Visualisation
  3. Former un robot sur des données connues pour afficher le résultat maximum

Ci-dessous, dans la vidéo, une démonstration de la formation au travail des robots sur le client. Un jour, ils échangeront également des contrats à terme sur Sberbank à ma place.

pskucherov
Rate author
Add a comment