
D3Rlpy adalah perpustakaan pembelajaran penguatan mendalam offline untuk para praktisi dan peneliti.
import d3rlpy
dataset , env = d3rlpy . datasets . get_dataset ( "hopper-medium-v0" )
# prepare algorithm
sac = d3rlpy . algos . SACConfig ( compile_graph = True ). create ( device = "cuda:0" )
# train offline
sac . fit ( dataset , n_steps = 1000000 )
# train online
sac . fit_online ( env , n_steps = 1000000 )
# ready to control
actions = sac . predict ( x )Penting
V2.xx memperkenalkan perubahan yang melanggar. Jika Anda masih tetap berpegang pada v1.xx, silakan instal secara eksplisit versi sebelumnya (misalnya pip install d3rlpy==1.1.1 ).
d3rlpy .D3Rlpy mendukung Linux, MacOS, dan Windows.
Menginstal Paket D3Rlpy akan menginstal atau meningkatkan paket berikut untuk memenuhi persyaratan:
$ pip install d3rlpy
$ conda install conda-forge/noarch::d3rlpy
$ docker run -it --gpus all --name d3rlpy takuseno/d3rlpy:latest bash
| algoritma | kontrol diskrit | Kontrol Berkelanjutan |
|---|---|---|
| Kloning perilaku (pembelajaran yang diawasi) | ✅ | ✅ |
| Iterasi Q Neural Fitted (NFQ) | ✅ | ⛔ |
| Deep Q-Network (DQN) | ✅ | ⛔ |
| DQN ganda | ✅ | ⛔ |
| Gradien Kebijakan Deterministik Deep (DDPG) | ⛔ | ✅ |
| Twin menunda gradien kebijakan deterministik mendalam (TD3) | ⛔ | ✅ |
| Soft Actor-Critic (SAC) | ✅ | ✅ |
| Batch dibatasi Q-learning (BCQ) | ✅ | ✅ |
| Pengurangan akumulasi kesalahan bootstrap (beruang) | ⛔ | ✅ |
| Konservatif Q-Learning (CQL) | ✅ | ✅ |
| Keuntungan aktor-kritik tertimbang (AWAC) | ⛔ | ✅ |
| Critic Reguralized Regression (CRR) | ⛔ | ✅ |
| Kebijakan dalam Laten Action Space (PLAS) | ⛔ | ✅ |
| TD3+BC | ⛔ | ✅ |
| Policy Regregurisasi dengan Dataset Constraint (PRDC) | ⛔ | ✅ |
| Qu-learning implisit (IQL) | ⛔ | ✅ |
| Qualibrasi Q-Learning (Cal-QL) | ⛔ | ✅ |
| Rebrac | ⛔ | ✅ |
| Transformator Keputusan | ✅ | ✅ |
| Gato | ? | ? |
D3Rlpy dibandingkan untuk memastikan kualitas implementasi. Skrip benchmark tersedia direktori reproduksi. Hasil benchmark tersedia repositori D3Rlpy-Benchmarks.

import d3rlpy
# prepare dataset
dataset , env = d3rlpy . datasets . get_d4rl ( 'hopper-medium-v0' )
# prepare algorithm
cql = d3rlpy . algos . CQLConfig ( compile_graph = True ). create ( device = 'cuda:0' )
# train
cql . fit (
dataset ,
n_steps = 100000 ,
evaluators = { "environment" : d3rlpy . metrics . EnvironmentEvaluator ( env )},
)Lihat lebih banyak kumpulan data di D4RL.

import d3rlpy
# prepare dataset (1% dataset)
dataset , env = d3rlpy . datasets . get_atari_transitions (
'breakout' ,
fraction = 0.01 ,
num_stack = 4 ,
)
# prepare algorithm
cql = d3rlpy . algos . DiscreteCQLConfig (
observation_scaler = d3rlpy . preprocessing . PixelObservationScaler (),
reward_scaler = d3rlpy . preprocessing . ClipRewardScaler ( - 1.0 , 1.0 ),
compile_graph = True ,
). create ( device = 'cuda:0' )
# start training
cql . fit (
dataset ,
n_steps = 1000000 ,
evaluators = { "environment" : d3rlpy . metrics . EnvironmentEvaluator ( env , epsilon = 0.001 )},
)Lihat lebih banyak dataset Atari di D4RL-ATARI.
import d3rlpy
import gym
# prepare environment
env = gym . make ( 'Hopper-v3' )
eval_env = gym . make ( 'Hopper-v3' )
# prepare algorithm
sac = d3rlpy . algos . SACConfig ( compile_graph = True ). create ( device = 'cuda:0' )
# prepare replay buffer
buffer = d3rlpy . dataset . create_fifo_replay_buffer ( limit = 1000000 , env = env )
# start training
sac . fit_online ( env , buffer , n_steps = 1000000 , eval_env = eval_env )Coba Cartpole Contoh di Google Colaboratory!
Dokumentasi tutorial lebih banyak tersedia di sini.
Segala jenis kontribusi untuk D3Rlpy akan sangat dihargai! Silakan periksa panduan kontribusi.
| Saluran | Link |
|---|---|
| Masalah | Masalah GitHub |
Penting
Harap jangan mengirim email ke kontributor termasuk pemilik proyek ini untuk meminta dukungan teknis. Email seperti itu akan diabaikan tanpa membalas pesan Anda. Gunakan masalah GitHub untuk melaporkan masalah Anda.
| Proyek | Keterangan |
|---|---|
| Minerva | Alat GUI out-of-the-box untuk Offline RL |
| SCOPE-RL | Perpustakaan evaluasi dan seleksi off-kebijakan |
Roadmap to the Future Rilis tersedia di Roadmap.md.
Makalah ini tersedia di sini.
@article{d3rlpy,
author = {Takuma Seno and Michita Imai},
title = {d3rlpy: An Offline Deep Reinforcement Learning Library},
journal = {Journal of Machine Learning Research},
year = {2022},
volume = {23},
number = {315},
pages = {1--20},
url = {http://jmlr.org/papers/v23/22-0017.html}
}
Pekerjaan ini dimulai sebagai bagian dari proyek Ph.D Takuma Seno di Keio University pada tahun 2020.
Pekerjaan ini didukung oleh Badan Promosi Informasi-Teknologi, Jepang (IPA), Proyek Sumber Daya Manusia IT Eksplorasi (Program MITOU) pada tahun fiskal 2020.