Если вы следите за исследованиями, то знаете, что обучение с подкреплением находится на подъеме с тех пор, как AlphaGo выиграла у всех чемпионов по го. «AlphaZero» (DeepMind) и «Hide & Seek» (OpenAI) — несколько недавних примеров достижений в обучении с подкреплением. С помощью этой серии постов вы будете внедрять обучение с подкреплением (RL) с нуля.
Во-первых, нам нужно определить компоненты для любой настройки RL. Существует среда и агент. Они взаимодействуют через «действие/наблюдение», когда агент может совершить действие, на которое среда отреагирует и предоставит следующее наблюдение для агента. . Чтобы сделать этот процесс нетривиальным, мы добавили в него простой стимул под названием Награда. Если агент действует и среда реагирует определенным образом, агент получает вознаграждение.
Во-вторых, нам нужно выбрать симулятор, который позволит нам создать настройку агента среды и создать цикл подкрепления. OpenAI предоставляет Gym, но мы будем использовать сервисы Unity. В Unity есть API под названием ML-Agents, который позволяет нам использовать предварительно определенные среды и агентов и обучать агентов с помощью обучения с подкреплением. Он соединяет наш код машинного обучения TensorFlow с движком Unity.
Наконец, этот пост предназначен для того, чтобы помочь вам установить все требования, прежде чем вы начнете писать код для обучения своих агентов. Вам потребуется установить следующее:
Первым шагом является загрузка и установка 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
Подсказки
Процесс установки прост, но он никогда не работает с первой попытки. В этом разделе я расскажу об ошибках, чтобы вы могли быстро приступить к написанию кода для своих агентов.
- Когда вы запускаете Unity, он открывает UnityHub, который отличается от UnityEditor. UnityHub помогает вам создавать проекты, поддерживать версии Unity, просматривать темы и курсы сообщества и управлять своей учетной записью. Чтобы обновить свой Unity Engine, вы можете добавить новые выпуски отсюда.
- При активации вашей учетной записи Unity вам не нужен файл активации. Некоторые ресурсы могут предположить, что, но с новой учетной записью, unity позволяет создавать и активировать лицензию на лету.
- 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 за предоставление бесплатного премиум-курса и Адама Келли за разработку этого курса. Он объясняет всю тяжелую работу, проделанную при разработке этого курса, и то, что вы должны ожидать от него. Если у вас возникнут какие-либо проблемы во время прохождения курса, пожалуйста, не стесняйтесь комментировать ниже, и я сделаю все возможное, чтобы помочь вам.