合肥百度网站排名优化,网站建设公司如何挖掘客户,建立一个网站用英语怎么说,芜湖的互联网公司robomimic开源了大量数据集及仿真环境#xff0c;数据集标准格式为HDF5
目录
一、基础要求
二、使用步骤
1. 下载数据集
2. 后处理
3. 训练
4. 查看训练结果
三、HDF5数据集结构与可视化
1. 数据集结构
#xff08;1#xff09;根级别#xff08;data 组 group数据集标准格式为HDF5
目录
一、基础要求
二、使用步骤
1. 下载数据集
2. 后处理
3. 训练
4. 查看训练结果
三、HDF5数据集结构与可视化
1. 数据集结构
1根级别data 组 group
2轨迹组 group
2.1属性
2.2数据集
2.3观测组 group
3掩码组 group
2. 可视化
1查看HDF5数据结构
2查看数据集轨迹 一、基础要求
编译器使用pycharm或者Colab notebook均可
pycharm安装在UMI复现基础环境安装配置全流程二——实用软件安装及卸载写过
二、使用步骤
robomimic数据集通过记录的环境数据并用作给定离线RL或IL算法的输入。之后可以通过以下方式使用robomimic数据集
1. 下载所需的数据集
2. 对数据集进行后处理保证与robomimic兼容
3. 用数据集训练机器人
1. 下载数据集
robomimic目前支持以下开箱即用的数据集。点击相应的(1)下载链接下载数据集点击相应的(2)后处理链接对数据集进行后处理。
Dataset Task Types DownloadingPostprocessingrobomimic v0.1Sim Real Robot ManipulationLinkLinkD4RLSim LocomotionLinkLinkMOMARTSim Mobile ManipulationLinkLinkRoboTurk PilotSim Robot ManipulationLinkLink
也可以在robomimic原程序文件夹中使用download_datasets.py函数下载例如
python robomimic/scripts/download_datasets.py --tasks lift --dataset_types ph
数据集存储为datasets/lift/ph/low_dim_v141.hdf5
2. 后处理
如果下载了low_dim或image数据集那么数据集可以开箱即用!不需要后处理
如果下载了原始数据集则必须对数据集进行后处理因为没有存储观测值。必须运行dataset_states_to_obs.py
3. 训练
在下载和后处理之后使用train.py对数据集进行训练
python train.py --dataset PATH_TO_POSTPROCESSED_DATASET --config PATH_TO_CONFIG
比如针对1中下载的low_dim_v141.hdf5可以选择运行behavior cloning (BC)算法训练
python robomimic/scripts/train.py --config robomimic/exps/templates/bc.json --dataset datasets/lift/ph/low_dim_v141.hdf5 --debug 4. 查看训练结果
在tests文件夹中的tmp_model_dir文件夹中包括这几个文件夹 更多详细内容查看robomimic应用教程一——模型训练
三、HDF5数据集结构与可视化
1. 数据集结构
所有后处理的 robomic 兼容数据集被存储为具有高度组织和层次结构的 HDF5 文件
单个数据集是具有以下结构的单个HDF5文件链接
HDF5 结构详细说明 1根级别data 组 group total属性 attribute表示数据集中状态-动作样本的总数提供整体大小信息 env_args属性 attribute一个包含环境元数据的 JSON 字符串记录了数据收集时的环境信息该元数据包括 env_name环境或任务的名称。env_type环境的类型例如 robosuiteenv_kwargs传递给环境的其他关键字参数用于配置 2轨迹组 group
每个轨迹都被存储为一个组如 demo_0、demo_1 等在每个轨迹组内包含以下内容
2.1属性 num_samples属性 attribute该轨迹中的状态-动作样本数量 model_file属性 attributeMJCF MuJoCo 模型的 XML 字符串对于 robosuite 数据集是特定的对于非 robosuite 数据集则省略
2.2数据集 states数据集 dataset包含按时间顺序排列的 MuJoCo 状态形状为 N, D其中 N轨迹中的样本数量。D状态向量的维度。对于非 robosuite 数据集可能为空或填充虚拟值 actions数据集 dataset包含环境中执行的动作按时间顺序排列。其形状为N, A其中 N轨迹中的样本数量A动作空间的维度 rewards数据集 dataset存储轨迹中从环境获得的奖励形状为 N, 表示每个时间步的奖励 dones数据集 dataset指示在每个动作后情节是否结束1表示结束0表示未结束形状为 N, 2.3观测组 group obs组 group包含观测键的多个数据集 obs_key_1数据集 dataset第一个观测键数据集的名称和形状可能不同例如agentview_image形状为N84843obs_key_2数据集 dataset第二个观测键依此类推 next_obs组 group包含下一时间步的观测键结构与 obs 组类似 obs_key_1数据集对应的下一步观测obs_key_2数据集依此类推 3掩码组 group
mask组 group如果数据集包含过滤键filter keys则存在此组用于选择数据集的子集例如验证轨迹 filter_key_1数据集包含轨迹标识符的列表例如 [“demo_0”, “demo_19”, “demo_35”]表示用于验证的过滤轨迹filter_key_2数据集其他过滤键依此类推
该结构在不同的轨迹如 demo_0、demo_1 等中是一致的每个轨迹都包含类似的属性和数据集格式
这种设置方式可以访问特定轨迹的数据、元数据、观测和环境中的动作使其适合使用 robomimic 框架进行策略的训练和测试
2. 可视化
1查看HDF5数据结构
存储库提供了一个简单的实用程序脚本get_dataset_info.py来查看 hdf5 数据集结构和 hdf5 数据集的一些统计信息脚本显示如下信息
关于轨迹的统计信息数量、平均长度等数据集中的筛选键filter keys数据集中的环境元数据environment metadata用于构建收集数据的相同模拟器环境第一个演示的数据集结构
可以通过 --verbose 参数打印每个过滤键下的演示键列表以及所有用于演示的数据集结构
例如使用 tests/assets/test_v141.hdf5 中的存储库打包得到的小型 hdf5 数据集
python get_dataset_info.py --dataset ../../tests/assets/test_v141.hdf5
对于如何编写自定义代码以处理 robomimic 数据集可查看 jupyter 代码
相关分析在 robomimic应用教程三——深入理解robomimic数据集
2查看数据集轨迹
对于上面打包的小型 hdf5 数据集基于 robosuite v1.4.1使用 playback_dataset.py 脚本查看数据集轨迹
# For the first 5 trajectories, load environment simulator states one-by-one, and render agentview and robot0_eye_in_hand cameras to video at /tmp/playback_dataset.mp4
$ python playback_dataset.py --dataset ../../tests/assets/test_v141.hdf5 --render_image_names agentview robot0_eye_in_hand --video_path /tmp/playback_dataset.mp4 --n 5# Directly visualize the image observations in the dataset. This is especially useful for real robot datasets where there is no simulator to use for rendering.
$ python playback_dataset.py --dataset ../../tests/assets/test_v141.hdf5 --use-obs --render_image_names agentview_image --video_path /tmp/obs_trajectory.mp4# Visualize depth observations as well.
$ python playback_dataset.py --dataset /path/to/dataset.hdf5 --use-obs --render_image_names agentview_image --render_depth_names agentview_depth --video_path /tmp/obs_trajectory.mp4# Play the dataset actions in the environment to verify that the recorded actions are reasonable.
$ python playback_dataset.py --dataset ../../tests/assets/test_v141.hdf5 --use-actions --render_image_names agentview --video_path /tmp/playback_dataset_with_actions.mp4# Visualize only the initial demonstration frames.
$ python playback_dataset.py --dataset ../../tests/assets/test_v141.hdf5 --first --render_image_names agentview --video_path /tmp/dataset_task_inits.mp4