#10. Обучение с подкреплением или как загнать машину на гору | Генетические алгоритмы на Python

Поделиться
HTML-код
  • Опубликовано: 23 май 2021
  • Решается задача заезда машины на холм с помощью генетического алгоритма, используя принцип обучения с подкреплением. Введение в пакет OpenAI Gym и использование окружения MountainCar-v0. Рассматриваются методы: make(), reset(), step(), render() и close().
    Телеграм-канал: t.me/machine_learning_selfedu
    Инфо-сайт: proproprogs.ru/ga
    ga_10.zip: github.com/selfedu-rus/geneti...
    OpenAI Gym: gym.openai.com/docs/
    DEAP: deap.readthedocs.io/en/master/

Комментарии • 31

  • @Dazai1947
    @Dazai1947 2 месяца назад +2

    Какой шикарный канал, спасибо

  • @friend1cat
    @friend1cat 3 года назад +2

    Спасибо, Сергей!

  • @yan200go
    @yan200go 3 года назад +5

    Спасибо! Классный урок. Но хотелось бы лекцию по настройке нейронных сетей с помощью генетического алгоритма и сравнение отборы лучших особей и турнирного отбора.

    • @selfedu_rus
      @selfedu_rus  3 года назад

      Следующее занятие об этом ))

  • @andreus5113
    @andreus5113 Год назад +1

    очень интересно! Я только начинаю учить подобное, и не все понимаю, но мне оч нравятся ваши видео

  • @user-jl6cl4be6f
    @user-jl6cl4be6f Год назад +1

    Спасибо, отличное видео!

  • @dubinin_s
    @dubinin_s 3 года назад +1

    Спасибо за видео.

  • @vitall789
    @vitall789 Год назад +3

    Не плохо, но хорошо бы было пояснить сколько очков макс. за выполненное задание и подчеркнуть, что за каждую команду = -1, а также сколько за мин. расстояние за игру. И последнее, как вы можете танцевать под такую музыкальную концовку?

  • @archyt88
    @archyt88 2 года назад +4

    И что будет, если поместить этот алгоритм в другую среду? Он же по сути к одной конкретной среде адаптируется. Как сделать алгоритм, который адаптируется под любую среду схожего типа? За уроки спасибо огромное. Колоссальная работа.

    • @selfedu_rus
      @selfedu_rus  2 года назад +1

      для каждой задачи - свой ГА

  • @user-uf3qh3fr7d
    @user-uf3qh3fr7d Год назад +1

    По моему это единственный канал где такая подробная информация.
    Минус есть не раскрывается смысл как работает на самом деле под капотом.
    Это подходит для гуманитарных.
    Я вот не могу понять пока не знаю почему это работает.
    Я начал изучать программирование с того как думает компьютер архитектуру.
    Встречал материал по ии его преподносят так запутанно что это все, теряет смысл.
    Десятки видео уроков показывают что они обучили agents и все уроки вилой по воде.
    Одна вода вода и только.
    Поэтому перешёл на иностранный источник там четко без воды без теоретических сказок.

  • @DRTR-bm8wt
    @DRTR-bm8wt 3 года назад +2

    Спасибо за урок
    Вы никогда не думали о том, чтобы сделать уроки по принципам солид или многопоточности в с++?

    • @selfedu_rus
      @selfedu_rus  3 года назад

      Спасибо, слишком узкая тема, мало просмотров будет.

  • @archyt88
    @archyt88 2 года назад +2

    Можно так сказать: ген. алгоритм в данном случае ускоряет подбор гипер-параметров нейронной сети? Или нет всё таки?

    • @selfedu_rus
      @selfedu_rus  2 года назад

      внутренних параметров, хотя, ее применяют и для гиперпараметров тоже

  • @yuliyaparamonova5596
    @yuliyaparamonova5596 Год назад +1

    Хотел бы задать вопрос не очень по теме, q-learning использует нейронные сети, или для него они не нужны?

    • @selfedu_rus
      @selfedu_rus  Год назад

      Насколько я помню, q-learning - это про то как вычислять выигрыш. Подробнее могу порекомендовать книгу: Саттон Барто. Обучение с подкреплением.

    • @yuliyaparamonova5596
      @yuliyaparamonova5596 Год назад

      @@selfedu_rus Спасибо

  • @dicloniusN35
    @dicloniusN35 Год назад +1

    В генетическом алгоритме есть переобучение? Когда выучит все как есть а на новом не будет хорошо работать, т.е. придется новый обьект агент выводить

    • @selfedu_rus
      @selfedu_rus  Год назад

      Это алгоритм обучения, нахождения решения, а не модель. Переобучается модель, а не алгоритмы обучения. Поэтому смотря к чему ГА применяется. Если к НС, то конечно, переобучение возможно. Если кораблики в морской бой расствляются, то какое здесь переобучение? ))

  • @myrzen5474
    @myrzen5474 3 года назад +3

    Здравствуйте, вопрос: А как реализовать или создать свое собственное окружение при обучении с подкреплением, а не загружать готовые?

    • @selfedu_rus
      @selfedu_rus  3 года назад +2

      Смотря какое окружение, если вы говорите о реализации физики, то для Python посмотрите в сторону физического движка Box2D - как наиболее простого.

    • @myrzen5474
      @myrzen5474 3 года назад

      @@selfedu_rus Спасибо, а если речь идет, например, о статистических данных, как тогда быть? И можно ли где-то почитать об общих принципах построения своего собственного окружения.

    • @selfedu_rus
      @selfedu_rus  3 года назад +1

      @@myrzen5474 тогда Pygame, все это творческий элемент и что-то готового мало

  • @user-im1wq2bv8l
    @user-im1wq2bv8l Год назад

    А откуда берется переменная abs в score = abs(observation[0] - FLAG_LOCATION) ?

    • @ItsBobbyGD
      @ItsBobbyGD 8 месяцев назад +1

      abs это модуль |x|

    • @ItsBobbyGD
      @ItsBobbyGD 8 месяцев назад +1

      если у тебя ошибка типа нет такой переменной, то напиши в начале программы "import math"

  • @yuliyaparamonova5596
    @yuliyaparamonova5596 Год назад +2

    Тут же нет обучения с подкреплением, только генетический алгоритм

    • @selfedu_rus
      @selfedu_rus  Год назад

      обучение с подкреплением - это общая область, суть которой корректировать поведение в зависимости от сигналов внешней среды. В частности, генетический алгоритм выделяет лучших потомков и таким образом поощряет их. Это и есть элемент обучения с подкреплением. Существуют и другие подходы из теории игр, в частности, известные Q-алгоритмы. Наверное, вы о них и подумали.

    • @yuliyaparamonova5596
      @yuliyaparamonova5596 Год назад

      @@selfedu_rus Просто для меня обучение с подкреплением это только q-обучение, видемо я не до конца понимаю смысл термина "обучение с подкреплением"

  • @Dimofey
    @Dimofey 11 месяцев назад

    6:03 _Двухсот ген..._ Вам самому это слух не режет? Правильно ведь говорить _Двухсот генОВ_