tgoop.com/optozorax_dev/719
Last Update:
Я обучил нейронку, способную ездить при любых физических условиях.
(в видео есть звук, но лучше сначала прочитать пост)
Делать исследования для прошлого поста я начал как раз для этой цели: я захотел обучить нейронку, способную ездить при разных физических условиях: разном сцеплении, разном ускорении итд. А чтобы это сделать, нужно в обучении замерять нейронку на всех этих условиях одновременно.
В этот раз взял такую нейронку: видит разницу между прошлой картинкой, один скрытый слой с 10 нейронами, функция ReLU, 3 RNN нейронов, знает номер текущего трека, угол обзора 180 градусов, итого 790 чисел в нейронке. Не то, чтобы всё это было категорически необходимо для хорошего обучения, но если уж начал обучать нейронку, то к делу нужно подходить серьёзно. А именно такие параметры подобрал через муторные сравнения 100 запусков с построением кучи графиков.
Как видно из прошлого поста, обучение нейронки с нуля таким образом работало плохо. Ещё хуже работало после добавления разных физических условий. Поэтому я пошёл по старому пути: сначала запускаю обучение на простой физике, она доходит до идеального состояния, когда ноль врезаний и все трассы проходит быстро. Затем постепенно усложняю физику и затем ещё 100 поколений на сложной физике.
После этого этапа включаю обучение сразу по множеству сложностей физики: простая физика + сложная физика + промежуточные между ними. Ещё 100 поколений. Идёт долго, но хорошо, по всем фронтам у машинки получается сходиться к нулевому числу врезаний и быстро проходить трассы.
И вот после этого добавляю к прошлому ещё разные физические условия на 100 поколений, но все физические условия запускаются только на сложной физике, поэтому оставляю ещё простую и промежуточные, чтобы она это не забывала.
И после этого ещё всякие дополнительные обучения, когда мне какая-то часть метрики не нравится (когда начал записывать видео, заметил что нейронка плохо ездит на чистой простой физике, пришлось фиксить, дообучать).
И вот я получил нейронку, которая на каждой трассе врезается либо 1 раз, либо чаще вообще не врезается; умеет ездить при разной сложности физики, и при разных условиях сложной физики. Считаю это вполне хорошим майлстоуном и наверное можно чуток успокоиться с проектом, а то делаю его 24/7 в свободное время)))
К сожалению машинка всё ещё ездит медленней меня, и мне ещё ни разу не удавалось получить машинку быстрее. Не знаю почему так происходит, что-то я точно упускаю. Думаю это будем моим следующим фокусом к исследованиям.
#машинки
BY dev optozorax
Share with your friend now:
tgoop.com/optozorax_dev/719