MushroomRL — это опенсорсная библиотека на Python для имплементации и проведения RL-экспериментов. Библиотека сокращает время на разработку экспериментов. Она устроена так, что все компоненты RL-задачи готовы. Пользователи фокусируются на имплементации своих алгоритмов и экспериментов. Код, тьюториалы и документация MushroomRL доступны в открытом репозитории на GitHub.
Подробнее про библиотеку
Среди преимуществ MushroomRL разработчики перечисляют универсальность, легковесность, совместимость и простоту в использовании.
Универсальность
Исследования в обучении с подкреплением не всегда задействуют глубокие модели. Такие методы, как Q-Learning, всё ещё важно учитывать. Однако большинство существующих библиотек не включают стандартные алгоритмы. Фундаментальной разницы между традиционным и глубоким обучением с подкреплением нет, поэтому в MushroomRL стандартизирован интерфейс для обучения алгоритмов. В библиотеки доступен такой функционал, как:
- Батч и онлайн алгоритмы;
- Эпизодические и бесконечные задачи;
- On-policy и off-policy обучение;
- Традиционное и глубокое обучение с подкреплением
Легковесность
В MushroomRL пользователю открыт только высокоуровневый интерфейс. Это снижает порог для использования библиотеки.
Совместимость
MushroomRL поддерживает стандартные библиотеки на Python, полезные для задачи обучения с подкреплением:
- Вычисления: Numpy, Scipy;
- Базовое машинное обучение: Scikit-Learn;
- Базовые RL-алгоритмы: OpenAI Gym, DeepMind Control Suite, Pybullet, MuJoCo, ROS;
- Нейронные сети и вычисления на GPU: PyTorch
Простота в использование
Большинство экспериментов в MushroomRL могут быть написаны в пару строчек кода.