In-Context Robot Transformer (ICRT) - модель, которая позволяет роботу выполнять новые задачи, интерпретируя контекстную информацию, предоставленную во время демонстрационной фазы, без обновления параметров базовой политики.
ICRT представляет собой причинно-следственный трансформер, который выполняет автоматический прогноз сенсомоторных траекторий без использования лингвистических данных или функции вознаграждения. Он позволяет гибко и без обучения выполнять новые задачи на основе наблюдений изображений, действий и состояний, собранных с помощью телеопераций человека.
Модель состоит из трех частей: предварительно обученного кодировщика изображений, серии проекторов для каждой из входных модальностей и каузального трансформера:
Для предварительного обучения модели использовался датасет DROID и созданный вручную мультизадачный датасет ICRT-Multi-Task (ICRT-MT - 1098 траекторий, 26 задач с 6 примитивами), который использовался в этапе дообучения.
Результаты экспериментов показывают, что ICRT способен обобщать незнакомые задачи и объекты, даже в средах, которые отличаются от демонстрационных.
# Create & activate venv
conda create -n icrt python=3.10 -y
conda activate icrt
# Install torch
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia
conda install -c conda-forge ffmpeg
# Clone the Repository
git clone https://github.com/Max-Fu/icrt.git
cd icrt
# Install required packages
pip install -e .
# Install git-lfs
sudo apt install git-lfs
git lfs install
# Download checkpoints
git clone git@hf.co:mlfu7/ICRT checkpoints
Пример инференса приведен в ноутбуке inference.ipynb. Перед его запуском обязательно ознакомьтесь с рекомендациями по загрузке и созданию собственного датасета.
@ai_machinelearning_big_data
#AI #ML #Robotics #ICRT
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30❤5🔥4
OpenVLA - набор моделей с 7млрд. параметров, которые предназначены для универсального управления роботами.
OpenVLA состоит из комбинации визуальных энкодеров SigLIP, DinoV2 и языковой модели Llama 2, выступающей в качестве основы. Обучение производилось на наборе данных Open-X, который состоит из 970 тыс. траекторий манипуляций в различных средах.
Модели принимают на вход языковую инструкцию и изображение рабочей области с камеры робота. Затем, OpenVLA предсказывает нормализированные действия робота, состоящие из 7-DoF дельт конечных эффекторов в виде координатных положений (x, y, z, roll, pitch, yaw, gripper).
Для выполнения на реальной роботизированной платформе действия должны быть де-нормализованы с учетом статистики, вычисляемой для каждого робота и каждого набора данных.
OpenVLA готовы к использованию для управления роботами в комбинациях действий и обстановках, если они схожи с действиями и задачами, которые присутствуют в Open-X (например, для сред BridgeV2 с роботом Widow-X).
Модели не умеют самообучаться на условиях, не представленных в предварительном обучении; для решения таких случаев разработчики подготовили подробные инструкции по самостоятельному дообучению на вашем наборе демонстраций.
Семейство OpenVLA состоит из 5 модификаций базовой OpenVLA-7B:
# Create venv
conda create -n openvla python=3.10 -y
conda activate openvla
# Install PyTorch
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia -y
# Clone and install the openvla repo
git clone https://github.com/openvla/openvla.git
cd openvla
pip install -e .
# for training only
# Install Flash Attention 2
pip install packaging ninja
ninja --version; echo $? # --> should return code "0"
pip install "flash-attn==2.5.5" --no-build-isolation
@ai_machinelearning_big_data
#AI #ML #OpetVLA #Robotics
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥22👍17❤8💘2