Если вы следите за исследованиями, то знаете, что обучение с подкреплением находится на подъеме с тех пор, как AlphaGo выиграла у всех чемпионов по го. «AlphaZero» (DeepMind) и «Hide & Seek» (OpenAI) — несколько недавних примеров достижений в обучении с подкреплением. С помощью этой серии постов вы будете внедрять обучение с подкреплением (RL) с нуля.

Во-первых, нам нужно определить компоненты для любой настройки RL. Существует среда и агент. Они взаимодействуют через «действие/наблюдение», когда агент может совершить действие, на которое среда отреагирует и предоставит следующее наблюдение для агента. . Чтобы сделать этот процесс нетривиальным, мы добавили в него простой стимул под названием Награда. Если агент действует и среда реагирует определенным образом, агент получает вознаграждение.

Во-вторых, нам нужно выбрать симулятор, который позволит нам создать настройку агента среды и создать цикл подкрепления. OpenAI предоставляет Gym, но мы будем использовать сервисы Unity. В Unity есть API под названием ML-Agents, который позволяет нам использовать предварительно определенные среды и агентов и обучать агентов с помощью обучения с подкреплением. Он соединяет наш код машинного обучения TensorFlow с движком Unity.

Наконец, этот пост предназначен для того, чтобы помочь вам установить все требования, прежде чем вы начнете писать код для обучения своих агентов. Вам потребуется установить следующее:

  1. "Единство"
  2. ML-Агенты
  3. VS Code или любая IDE

Первым шагом является загрузка и установка Unity, которая, по сути, загружает и устанавливает UnityHub.

ПРИМЕЧАНИЕ. Вам будет предложено активировать лицензию, прежде чем вы перейдете к этому представлению. Я уже активировал лицензию и добавил проект.

Затем вам нужно зарегистрироваться в Unity и активировать свою лицензию. вам не нужно платить за лицензию, но вы должны активировать ее, чтобы использовать UnityEditor. Наконец, установите версию Unity, которая в основном устанавливает Unity Engine в вашей системе. Я рекомендую выбрать самую последнюю версию LTS для вашей ОС/платформы.

Не волнуйтесь, если это сбивает с толку, продолжайте читать, и вы найдете все ответы.

Далее вам необходимо установить ML-Agents, что подробно описано на официальном сайте GitHub.

Наконец, вы можете установить любую IDE, я буду использовать VS Code. Есть несколько расширений, которые вы можете установить в VS Code, которые помогут вам в работе над проектом.

ext install Unity.unity-debug

ext install Tobiah.unity-tools

Подсказки

Процесс установки прост, но он никогда не работает с первой попытки. В этом разделе я расскажу об ошибках, чтобы вы могли быстро приступить к написанию кода для своих агентов.

  1. Когда вы запускаете Unity, он открывает UnityHub, который отличается от UnityEditor. UnityHub помогает вам создавать проекты, поддерживать версии Unity, просматривать темы и курсы сообщества и управлять своей учетной записью. Чтобы обновить свой Unity Engine, вы можете добавить новые выпуски отсюда.
  2. При активации вашей учетной записи Unity вам не нужен файл активации. Некоторые ресурсы могут предположить, что, но с новой учетной записью, unity позволяет создавать и активировать лицензию на лету.
  3. VS Code необходимо подключить к UnityEditor для работы IntelliSense. Для этого вам нужно `Unity-› Настройки-› Внешние инструменты-› Внешний редактор сценариев - › Обзор-> Вручную выберите VS Code`. Если вы используете Mac/Linux, вам нужно найти двоичный файл VS Code. Используйте which code, чтобы найти местоположение.

Дальнейшие шаги

Теперь у вас есть все необходимое для начала вашего путешествия. В этой серии постов мы обсудим проект Unity HummingBird и расширим его с точки зрения обучения с подкреплением и глубокого обучения. Я настоятельно рекомендую пройти этот курс, прежде чем переходить к части 2. В следующей части мы продолжим с конца этого курса и рассмотрим, как улучшить процесс обучения агентов и что еще мы можем добавить в среду, чтобы сделать его более реальным. . Если вы следовали всему в этом посте и прошли курс HummingBird, то картинка ниже покажется вам знакомой.

Примечание. Не открывайте проект напрямую в VS Code. Импортируйте его в UnityEditor, затем щелкните правой кнопкой мыши вкладку проектов и откройте с помощью VS Code. Это будет работать только после того, как вы подключите VS Code к UnityEditor, как указано выше. Таким образом будет создан правильный файл .sln, необходимый VS Code для распознавания агентов машинного обучения с помощью IntelliSense, в противном случае, по моему опыту, это не сработает.

Благодарности

Я должен поблагодарить Unity за предоставление бесплатного премиум-курса и Адама Келли за разработку этого курса. Он объясняет всю тяжелую работу, проделанную при разработке этого курса, и то, что вы должны ожидать от него. Если у вас возникнут какие-либо проблемы во время прохождения курса, пожалуйста, не стесняйтесь комментировать ниже, и я сделаю все возможное, чтобы помочь вам.