snake-dqn como camiño para ML

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

Atopa en tensorflow-js o que necesitas para os primeiros pasos en ML e negociación.

Este é o adestramento dqn, onde o axente recibe recompensas e penalizacións por accións.

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

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

Resulta que temos unha serpe que aprende da súa propia experiencia a moverse. Ten un certo número de movementos (xirar ou continuar) e a súa tarefa é chegar ao froito. Inicialmente, a serpe non sabe como facer nada, pero no curso do adestramento gaña a capacidade de atopar froitos e esquivar. Moi parecido ao comercio, non?

Ben, polo menos para a nosa tarefa, cando temos datos en execución, e o robot necesita tomar unha decisión de comprar ou vender.

A desvantaxe da serpe é que foi escrita para node.js, e necesitamos poder adestrar nun navegador (para que calquera usuario poida facelo). Polo tanto, foi necesario comezar o mesmo no cliente.

Levei a serpe tal e como está á miña páxina coa gráfica e tente iniciala. Non foi así!

A serpe resistiu de todos os xeitos posibles,

paquetes primeiro,

despois argumentos. (por certo, tamén fixen unha solicitude de extracción xunto á corrección https://github.com/tensorflow/tfjs-examples/pull/353),

entón %% Rexeitamento non controlado (TypeError): Non se pode chamar a unha clase como función %%. Que se repara aquí https://github.com/tensorflow/tfjs/pull/3906/files, pero desde aínda non hai liberación, entón tiven que substituír as miñas mans. Aquí, por certo, moitas persoas teñen un problema https://github.com/tensorflow/tfjs/issues/3384.

Despois estaban os menores, como substituír fs por indexeddb. O traballo co que espiei aquí, por certo. Ben, en xeral, cart-pole inicialmente inspirouse para facer todo sobre o cliente.

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

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

ao final, isto é o que pasou:

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

Ben, iso é todo, a seguinte etapa será:

  1. Axuste aos gráficos
  2. Visualización
  3. Adestra un robot en datos coñecidos para mostrar o resultado máximo

Abaixo no vídeo hai unha demostración do traballo-adestramento de robots no cliente. Algún día tamén intercambiarán futuros de Sberbank en lugar de min.

pskucherov
Rate author
Add a comment