- 설명 :
RL Unplugged는 오프라인 강화 학습을 위한 벤치마크 모음입니다. RL Unplugged는 다음 고려 사항을 중심으로 설계되었습니다. 사용 편의성을 높이기 위해 일반 파이프라인이 설정되면 실무자가 제품군의 모든 데이터로 쉽게 작업할 수 있도록 하는 통합 API와 함께 데이터 세트를 제공합니다.
데이터 세트는 RLDS 형식 을 따라 단계와 에피소드를 나타냅니다.
이러한 작업은 CMU 휴머노이드와 관련된 회랑 이동 작업으로 구성되며, 이전 작업에서는 모션 캡처 데이터 Merel et al., 2019a , Merel et al., 2019b 또는 처음부터 훈련을 사용했습니다( Song et al., 2020) . 또한 DM Locomotion 저장소에는 가상 설치류 Merel et al., 2020 에 적합하도록 조정된 일련의 작업이 포함되어 있습니다. 우리는 DM Locomotion 작업이 풍부한 자기 중심적 관찰의 인식과 함께 도전적인 높은 DoF 연속 제어의 조합을 특징으로 한다는 점을 강조합니다. 데이터 세트 생성 방법에 대한 자세한 내용은 논문을 참조하십시오.
연속 작업 공간이 있는 매우 어려운 오프라인 RL 데이터 세트에 관심이 있는 경우 DeepMind Locomotion 데이터 세트에서 오프라인 RL 방법을 시도하는 것이 좋습니다.
홈페이지 : https://github.com/deepmind/deepmind-research/tree/master/rl_unplugged
버전 :
-
1.0.0
(기본값): 최초 릴리스.
-
다운로드 크기 :
Unknown size
자동 캐시 ( 문서 ): 아니요
감독된 키 (
as_supervised
문서 참조):None
그림 ( tfds.show_examples ): 지원되지 않습니다.
인용 :
@inproceedings{gulcehre2020rl,
title = {RL Unplugged: A Suite of Benchmarks for Offline Reinforcement Learning},
author = {Gulcehre, Caglar and Wang, Ziyu and Novikov, Alexander and Paine, Thomas and G'{o}mez, Sergio and Zolna, Konrad and Agarwal, Rishabh and Merel, Josh S and Mankowitz, Daniel J and Paduraru, Cosmin and Dulac-Arnold, Gabriel and Li, Jerry and Norouzi, Mohammad and Hoffman, Matthew and Heess, Nicolas and de Freitas, Nando},
booktitle = {Advances in Neural Information Processing Systems},
pages = {7248--7259},
volume = {33},
year = {2020}
}
rlu_locomotion/humanoid_corridor(기본 구성)
데이터세트 크기 :
1.88 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 4,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(56,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'body_height': Tensor(shape=(1,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'end_effectors_pos': Tensor(shape=(12,), dtype=float32),
'joints_pos': Tensor(shape=(56,), dtype=float32),
'joints_vel': Tensor(shape=(56,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터세트 | |||
단계/액션 | 텐서 | (56,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
걸음 수/관찰/보행자/신체 높이 | 텐서 | (1,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관측/walker/end_effectors_pos | 텐서 | (12,) | float32 | |
단계/관찰/보행자/joints_pos | 텐서 | (56,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (56,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):
rlu_locomotion/humanoid_gaps
데이터세트 크기 :
4.57 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 8,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(56,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'body_height': Tensor(shape=(1,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'end_effectors_pos': Tensor(shape=(12,), dtype=float32),
'joints_pos': Tensor(shape=(56,), dtype=float32),
'joints_vel': Tensor(shape=(56,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터세트 | |||
단계/액션 | 텐서 | (56,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
걸음 수/관찰/보행자/신체 높이 | 텐서 | (1,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관측/walker/end_effectors_pos | 텐서 | (12,) | float32 | |
단계/관찰/보행자/joints_pos | 텐서 | (56,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (56,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):
rlu_locomotion/humanoid_walls
데이터세트 크기 :
2.36 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 4,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(56,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'body_height': Tensor(shape=(1,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'end_effectors_pos': Tensor(shape=(12,), dtype=float32),
'joints_pos': Tensor(shape=(56,), dtype=float32),
'joints_vel': Tensor(shape=(56,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터 세트 | |||
단계/액션 | 텐서 | (56,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
걸음 수/관찰/보행자/신체 높이 | 텐서 | (1,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관측/walker/end_effectors_pos | 텐서 | (12,) | float32 | |
단계/관찰/보행자/joints_pos | 텐서 | (56,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (56,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):
rlu_locomotion/rodent_bowl_escape
데이터세트 크기 :
16.46 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 2,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(38,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'appendages_pos': Tensor(shape=(15,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'joints_pos': Tensor(shape=(30,), dtype=float32),
'joints_vel': Tensor(shape=(30,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_touch': Tensor(shape=(4,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'tendons_pos': Tensor(shape=(8,), dtype=float32),
'tendons_vel': Tensor(shape=(8,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터 세트 | |||
단계/액션 | 텐서 | (38,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
단계/관찰/walker/appendages_pos | 텐서 | (15,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관찰/보행자/joints_pos | 텐서 | (30,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (30,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
걸음 수/관측/워커/sensors_touch | 텐서 | (4,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/보행자/tendons_pos | 텐서 | (8,) | float32 | |
단계/관찰/보행자/tendons_vel | 텐서 | (8,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):
rlu_locomotion/rodent_gaps
데이터세트 크기 :
8.90 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 2,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(38,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'appendages_pos': Tensor(shape=(15,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'joints_pos': Tensor(shape=(30,), dtype=float32),
'joints_vel': Tensor(shape=(30,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_touch': Tensor(shape=(4,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'tendons_pos': Tensor(shape=(8,), dtype=float32),
'tendons_vel': Tensor(shape=(8,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터세트 | |||
단계/액션 | 텐서 | (38,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
단계/관찰/walker/appendages_pos | 텐서 | (15,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관찰/보행자/joints_pos | 텐서 | (30,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (30,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
걸음 수/관측/워커/sensors_touch | 텐서 | (4,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/보행자/tendons_pos | 텐서 | (8,) | float32 | |
단계/관찰/보행자/tendons_vel | 텐서 | (8,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):
rlu_locomotion/rodent_mazes
데이터세트 크기 :
20.71 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 2,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(38,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'appendages_pos': Tensor(shape=(15,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'joints_pos': Tensor(shape=(30,), dtype=float32),
'joints_vel': Tensor(shape=(30,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_touch': Tensor(shape=(4,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'tendons_pos': Tensor(shape=(8,), dtype=float32),
'tendons_vel': Tensor(shape=(8,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터세트 | |||
단계/액션 | 텐서 | (38,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
단계/관찰/walker/appendages_pos | 텐서 | (15,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관찰/보행자/joints_pos | 텐서 | (30,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (30,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
걸음 수/관측/워커/sensors_touch | 텐서 | (4,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/보행자/tendons_pos | 텐서 | (8,) | float32 | |
단계/관찰/보행자/tendons_vel | 텐서 | (8,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):
rlu_locomotion/rodent_two_touch
데이터세트 크기 :
23.05 GiB
분할 :
나뉘다 | 예 |
---|---|
'train' | 2,000 |
- 기능 구조 :
FeaturesDict({
'episode_id': int64,
'steps': Dataset({
'action': Tensor(shape=(38,), dtype=float32),
'discount': float32,
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'observation': FeaturesDict({
'walker': FeaturesDict({
'appendages_pos': Tensor(shape=(15,), dtype=float32),
'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
'joints_pos': Tensor(shape=(30,), dtype=float32),
'joints_vel': Tensor(shape=(30,), dtype=float32),
'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
'sensors_gyro': Tensor(shape=(3,), dtype=float32),
'sensors_touch': Tensor(shape=(4,), dtype=float32),
'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
'tendons_pos': Tensor(shape=(8,), dtype=float32),
'tendons_vel': Tensor(shape=(8,), dtype=float32),
'world_zaxis': Tensor(shape=(3,), dtype=float32),
}),
}),
'reward': float32,
}),
'timestamp': int64,
})
- 기능 문서 :
특징 | 수업 | 모양 | D타입 | 설명 |
---|---|---|---|---|
풍모Dict | ||||
episode_id | 텐서 | int64 | ||
단계 | 데이터세트 | |||
단계/액션 | 텐서 | (38,) | float32 | |
단계/할인 | 텐서 | float32 | ||
단계/is_first | 텐서 | 부울 | ||
단계/is_last | 텐서 | 부울 | ||
단계/is_terminal | 텐서 | 부울 | ||
단계/관찰 | 풍모Dict | |||
계단/관찰/보행자 | 풍모Dict | |||
단계/관찰/walker/appendages_pos | 텐서 | (15,) | float32 | |
단계/관측/보행자/egocentric_camera | 영상 | (64, 64, 3) | uint8 | |
단계/관찰/보행자/joints_pos | 텐서 | (30,) | float32 | |
단계/관찰/보행자/joints_vel | 텐서 | (30,) | float32 | |
단계/관측/보행자/sensors_accelerometer | 텐서 | (삼,) | float32 | |
단계/관측/보행자/sensors_gyro | 텐서 | (삼,) | float32 | |
걸음 수/관측/워커/sensors_touch | 텐서 | (4,) | float32 | |
단계/관측/보행자/sensors_velocimeter | 텐서 | (삼,) | float32 | |
단계/관찰/보행자/tendons_pos | 텐서 | (8,) | float32 | |
단계/관찰/보행자/tendons_vel | 텐서 | (8,) | float32 | |
단계/관찰/walker/world_zaxis | 텐서 | (삼,) | float32 | |
단계/보상 | 텐서 | float32 | ||
타임스탬프 | 텐서 | int64 |
- 예 ( tfds.as_dataframe ):