Основы Habitat-Lab
Habitat-Lab — это уровень алгоритмов поверх Habitat-Sim. Он предоставляет стандартизированные задачи, метрики оценки и API, поэтому исследователь может сосредоточиться на проектировании, обучении и оценке алгоритмов воплощённого ИИ, не занимаясь деталями нижнего уровня симуляции.
1. Особенности Habitat-Lab
1. Предопределённые воплощённые задачи
- Навигационные: PointGoalNav (навигация к точке), ObjectNav (навигация к объекту), VLN (визуально-языковая навигация).
- Интерактивные: Rearrange (перестановка объектов), PickPlace (захват и укладка), OpenDoor (открывание двери).
- Поддерживаются пользовательские задачи (например, совместная работа нескольких агентов или длинное планирование).
2. Стандартизированная система оценки
- Встроенные основные метрики (успешность SR, эффективность пути SPL, оценка выравнивания DTW и др.) позволяют сразу сравнивать алгоритмы.
- Поддерживается согласование с публичными бенчмарками (например, Habitat Challenge), что упрощает воспроизведение статей и сравнение результатов.
3. Модульная архитектура агента
- Разделены цепочки «датчики → энкодер → стратегия → контроллер», поэтому компоненты легко заменить (например, визуальный энкодер на CNN или Transformer, а принятие решений — на RL или IL).
- Глубокая интеграция с PyTorch поддерживает обучение с подкреплением (RL), имитационное обучение (IL) и сквозное глубокое обучение.
4. Удобный API
- Лаконичный Python-интерфейс: одной командой загружается сцена, инициализируется агент и запускается цикл симуляции.
2. Установка окружения Habitat-Lab
Можно использовать conda-окружение, созданное для habitat-sim:
conda create -n habitat python=3.9 cmake=3.14.0
conda activate habitat
Версия habitat-lab должна совпадать с версией установленного habitat-sim. Например, в этом руководстве используется habitat-sim 0.2.5, значит, нужно скачать habitat-lab версии 0.2.5. При воспроизведении других статей тоже следите за совпадением версий habitat-sim и habitat-lab.
git clone --branch v0.2.5 https://github.com/facebookresearch/habitat-lab.git
cd habitat-lab
pip install -e habitat-lab
Одновременно установите habitat-baselines:
pip install -e habitat-baselines
Загрузите трёхмерные данные сцен и данные для навигации к точке:
python -m habitat_sim.utils.datasets_download --uids habitat_test_scenes --data-path data/
python -m habitat_sim.utils.datasets_download --uids habitat_test_pointnav_dataset --data-path data/