- Descrição :
RL Unplugged é um conjunto de benchmarks para aprendizado de reforço offline. O RL Unplugged foi projetado com base nas seguintes considerações: para facilitar o uso, fornecemos os conjuntos de dados com uma API unificada que torna mais fácil para o profissional trabalhar com todos os dados no conjunto, uma vez que um pipeline geral tenha sido estabelecido.
Os conjuntos de dados seguem o formato RLDS para representar etapas e episódios.
Essas tarefas são compostas pelas tarefas de locomoção do corredor envolvendo o CMU Humanoid, para as quais esforços anteriores usaram dados de captura de movimento Merel et al., 2019a , Merel et al., 2019b ou treinamento do zero Song et al., 2020 . Além disso, o repositório DM Locomotion contém um conjunto de tarefas adaptadas para serem adaptadas a um roedor virtual Merel et al., 2020 . Enfatizamos que as tarefas de locomoção do DM apresentam a combinação de um controle contínuo desafiador de alto DoF junto com a percepção de ricas observações egocêntricas. Para obter detalhes sobre como o conjunto de dados foi gerado, consulte o artigo.
Recomendamos que você experimente métodos RL offline no conjunto de dados DeepMind Locomotion, se estiver interessado em um conjunto de dados RL offline muito desafiador com espaço de ação contínuo.
Página inicial : https://github.com/deepmind/deepmind-research/tree/master/rl_unplugged
Código -fonte:
tfds.rl_unplugged.rlu_locomotion.RluLocomotion
Versões :
-
1.0.0
(padrão): versão inicial.
-
Tamanho do download :
Unknown size
Armazenado em cache automaticamente ( documentação ): Não
Chaves supervisionadas (Consulte
as_supervised
doc ):None
Figura ( tfds.show_examples ): Não compatível.
Citação :
@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 (configuração padrão)
Tamanho do conjunto de dados :
1.88 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 4.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (56,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/walker/body_height | tensor | (1,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/walker/end_effectors_pos | tensor | (12,) | float32 | |
passos/observação/andador/articulações_pos | tensor | (56,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (56,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):
rlu_locomotion/humanoid_gaps
Tamanho do conjunto de dados :
4.57 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 8.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (56,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/walker/body_height | tensor | (1,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/walker/end_effectors_pos | tensor | (12,) | float32 | |
passos/observação/andador/articulações_pos | tensor | (56,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (56,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):
rlu_locomotion/humanoid_walls
Tamanho do conjunto de dados :
2.36 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 4.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (56,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/walker/body_height | tensor | (1,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/walker/end_effectors_pos | tensor | (12,) | float32 | |
passos/observação/andador/articulações_pos | tensor | (56,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (56,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):
rlu_locomotion/rodent_bowl_escape
Tamanho do conjunto de dados :
16.46 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 2.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (38,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/caminhante/apêndices_pos | tensor | (15,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/andador/articulações_pos | tensor | (30,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (30,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_toque | tensor | (4,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/andador/tendão_pos | tensor | (8,) | float32 | |
passos/observação/walker/tendões_vel | tensor | (8,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):
rlu_locomotion/rodent_gaps
Tamanho do conjunto de dados :
8.90 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 2.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (38,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/caminhante/apêndices_pos | tensor | (15,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/andador/articulações_pos | tensor | (30,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (30,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_toque | tensor | (4,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/andador/tendão_pos | tensor | (8,) | float32 | |
passos/observação/walker/tendões_vel | tensor | (8,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):
rlu_locomotion/rodent_mazes
Tamanho do conjunto de dados :
20.71 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 2.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (38,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/caminhante/apêndices_pos | tensor | (15,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/andador/articulações_pos | tensor | (30,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (30,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_toque | tensor | (4,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/andador/tendão_pos | tensor | (8,) | float32 | |
passos/observação/walker/tendões_vel | tensor | (8,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):
rlu_locomotion/rodent_two_touch
Tamanho do conjunto de dados :
23.05 GiB
Divisões :
Dividir | Exemplos |
---|---|
'train' | 2.000 |
- Estrutura de recursos :
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,
})
- Documentação do recurso:
Característica | Classe | Forma | Tipo D | Descrição |
---|---|---|---|---|
RecursosDict | ||||
episódio_id | tensor | int64 | ||
degraus | conjunto de dados | |||
passos/ação | tensor | (38,) | float32 | |
passos/desconto | tensor | float32 | ||
passos/é_primeiro | tensor | bool | ||
passos/é_último | tensor | bool | ||
passos/is_terminal | tensor | bool | ||
passos/observação | RecursosDict | |||
passos/observação/caminhante | RecursosDict | |||
passos/observação/caminhante/apêndices_pos | tensor | (15,) | float32 | |
passos/observação/walker/egocentric_camera | Imagem | (64, 64, 3) | uint8 | |
passos/observação/andador/articulações_pos | tensor | (30,) | float32 | |
passos/observação/andador/articulações_vel | tensor | (30,) | float32 | |
passos/observação/andador/sensores_acelerômetro | tensor | (3,) | float32 | |
passos/observação/walker/sensors_gyro | tensor | (3,) | float32 | |
passos/observação/caminhante/sensores_toque | tensor | (4,) | float32 | |
passos/observação/caminhante/sensores_velocímetro | tensor | (3,) | float32 | |
passos/observação/andador/tendão_pos | tensor | (8,) | float32 | |
passos/observação/walker/tendões_vel | tensor | (8,) | float32 | |
passos/observação/walker/world_zaxis | tensor | (3,) | float32 | |
passos/recompensa | tensor | float32 | ||
carimbo de data/hora | tensor | int64 |
- Exemplos ( tfds.as_dataframe ):