Набор данных HDF5
HDF5 (Hierarchical Data Format version 5) — это эффективный и гибкий формат хранения данных, широко используемый в области воплощенного интеллекта. Его иерархическая структура (группы и наборы данных) удобна для организации и управления сложными многомодальными данными, поддерживает эффективное чтение и запись данных, а также кроссплатформенное совместное использование.
Импорт данных HDF5
В области воплощенного интеллекта структура и способ именования файлов HDF5 различаются в зависимости от производителя оборудования. Платформа уже адаптирована к основным внешним системам сбора данных (таким как Piper от Ling), может напрямую импортировать соответствующие файлы HDF5 и визуализировать их.
Если ваши данные HDF5 пока не поддерживаются, свяжитесь с нами и сообщите структуру данных, мы быстро завершим адаптацию, чтобы ваши многомодальные данные идеально визуализировались, аннотировались и экспортировались на платформе.
Экспорт данных HDF5
Платформа поддерживает экспорт аннотированных данных в форматах mcap, bag, hdf5 и других в файлы HDF5 для последующего обучения моделей машинного обучения. Процесс аннотации связывает действия с инструкциями на естественном языке, обеспечивая понимание и выполнение языковых команд моделями VLA.
Подробности аннотации см.: Аннотация данных
После завершения аннотации можно выбрать нужное подмножество данных для экспорта в интерфейсе экспорта.
- Количество групп: Установите количество исходных файлов, содержащихся в каждом файле HDF5. Если нужна взаимно однозначная связь, можно установить 1.
- Частота обновления данных: Контролирует количество сборов данных в секунду, влияет на размер файла.
После экспорта вы можете просмотреть результаты в интерфейсе:
Скачанные данные:
Описание структуры экспортируемых данных
Экспортируемые файлы HDF5 именуются по группам исходных файлов (например, chunk_001.hdf5
), используя древовидную структуру для организации данных:
- Корневая группа (/): Верхний уровень каталога.
- Подгруппы: Такие как
/data
,/meta
./data
разделяется на подгруппы по последовательности задач аннотации (например,episode_001
,episode_002
).
- Наборы данных: Такие как
/data/episode_001
- Атрибуты включают
task
аннотированный естественный язык (английский)task_zh
аннотированный естественный язык (китайский)score
оценка качества действия
- Сохраняемые данные включают
action
выданные команды суставов (многомерный массив)observation.images.*
сжат ые изображения с различных ракурсов (JPEG)observation.state
наблюдаемые значения датчиков (многомерный массив)observation.gripper
наблюдаемые значения состояния закрытия захвата (многомерный массив)
- Атрибуты включают
Пример структуры:
HDF5 "./chunk_001.hdf5" {
FILE_CONTENTS {
group /
group /data
group /data/episode_001
dataset /data/episode_001/action
dataset /data/episode_001/observation.gripper
dataset /data/episode_001/observation.images.camera_01
dataset /data/episode_001/observation.images.camera_02
dataset /data/episode_001/observation.images.camera_03
dataset /data/episode_001/observation.images.camera_04
dataset /data/episode_001/observation.state
group /data/episode_002
dataset /data/episode_002/action
dataset /data/episode_002/observation.gripper
dataset /data/episode_002/observation.images.camera_01
dataset /data/episode_002/observation.images.camera_02
dataset /data/episode_002/observation.images.camera_03
dataset /data/episode_002/observation.images.camera_04
dataset /data/episode_002/observation.state
......
group /meta
}
}
Пример чтения файлов HDF5
Рекомендуется использовать библиотеку Python h5py для чтения и работы с файлами HDF5. Основное использование:
import h5py
# Открыть файл HDF5 в режиме только чтения
with h5py.File('chunk_001.hdf5', 'r') as f:
# Просмотреть группы верхнего уровня
print("Группы верхнего уровня:", list(f.keys()))
# Доступ к наборам данных в группе /data/episode_001
episode_001 = f['/data/episode_001']
print("Наборы данных в episode_001:", list(episode_001.keys()))
# Чтение набора данных action
action_data = episode_001['action'][:]
print("Данные action:", action_data)
Применение и преимущества
Формат HDF5 в области воплощенного интеллекта имеет следующие преимущества:
- Поддерживает хранение крупномасштабных многомодальных данных (таких как изображения высокого разрешения, данные датчиков и т.д.)
- Встроенное сжатие данных, экономия места хранения
- Кроссплатформенная совместимость, удобно для совместного использования и миграции данных
- Гибкая иерархическая структура данных, подходит для сложных задач и разнообразного управления данными
Правильное проектирование структуры HDF5 в сочетании с инструментами платформы позволяет эффективно управлять и обрабатывать сложные данные, связанные с воплощенным интеллектом, способствуя научным исследованиям и обучению моделей.