snake-dqn ML ga yo’l sifatida

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

Tensorflow-js da ML va savdodagi birinchi qadamlar uchun kerak bo’lgan narsalarni topdi.

Bu agentga xatti-harakatlari uchun mukofotlar va jazolar beriladigan dqn treningi.

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

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

Ma’lum bo’lishicha, bizda harakat qilishni o’z tajribasidan o’rganadigan ilon bor. U ma’lum miqdordagi harakatlarga ega (burilish yoki davom etish) va uning vazifasi mevaga erishishdir. Dastlab, ilon qanday qilishni bilmaydi, lekin mashg’ulot jarayonida u mevalarni topish va qochish qobiliyatiga ega bo’ladi. Bu savdoga juda o’xshaydi, shunday emasmi?

Xo’sh, hech bo’lmaganda bizning vazifamiz uchun, bizda ma’lumotlar mavjud bo’lganda va robot sotib olish yoki sotish to’g’risida qaror qabul qilishi kerak.

Ilonning minus tomoni shundaki, u node.js uchun yozilgan va biz brauzerda mashq qila olishimiz kerak (har qanday foydalanuvchi buni qila oladi). Shuning uchun mijozga ham xuddi shunday qilish kerak edi.

Men ilonni qanday bo’lsa, o’z sahifamga chizma bilan sudrab olib, uni ishga tushirishga harakat qildim. U erda yo’q edi!

Ilon qarshilik ko’rsatdi

birinchi navbatda paketlar,

keyin argumentlar. (Aytgancha, men https://github.com/tensorflow/tfjs-examples/pull/353 tuzatishning yonida tortish so’rovini ham qildim),

keyin %% Ishlanmagan rad etish (TypeError): Sinfni %% funksiya sifatida chaqirib bo‘lmaydi. Bu erda ta’mirlanmoqda https://github.com/tensorflow/tfjs/pull/3906/files, lekin beri Hozircha hech qanday reliz yo’q, shuning uchun uni qo’llarim bilan almashtirishim kerak edi. Bu erda, aytmoqchi, ko’p odamlar muammo bor https://github.com/tensorflow/tfjs/issues/3384.

Voyaga etmaganlar allaqachon ishni fs dan indexeddb bilan almashtirish kabi oldinga borishgan. Aytgancha, men bu erda josuslik qilgan ish. Umuman olganda, arava ustuni meni mijozga hamma narsani qilishga ilhomlantirdi.

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

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

Oxir-oqibat, shunday bo’ldi:

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

Ha, aslida, keyingi qadam:

  1. Diagrammalarga moslash
  2. Vizualizatsiya
  3. Maksimal natijani ko’rsatish uchun robotni ma’lum ma’lumotlarga o’rgating

Quyida mijozda robotlarning ishini o’rgatishning video demosi keltirilgan. Qachondir ular mening o‘rniga Sberbank fyucherslarini ham sotadilar.

pskucherov
Rate author
Add a comment