adeptRL
1.0.0
adept は、深層強化学習に関連するエンジニアリング上の課題を抽象化することで研究を加速するように設計された強化学習フレームワークです。 adept は以下を提供します。
このコードは早期アクセス版であり、荒削りな部分があることが予想されます。インターフェースは変更される場合があります。フィードバックや貢献を喜んで受け付けます。
git clone https://github.com/heronsystems/adeptRL
cd adeptRL
pip install -e .[all]
ドッカーから:
エージェントのトレーニングログはデフォルトで/tmp/adept_logs/
に移動します。ログ ディレクトリには、tensorboard ファイル、保存されたモデル、およびその他のメタデータが含まれています。
# Local Mode (A2C)
# We recommend 4GB+ GPU memory, 8GB+ RAM, 4+ Cores
python -m adept.app local --env BeamRiderNoFrameskip-v4
# Distributed Mode (A2C, requires NCCL)
# We recommend 2+ GPUs, 8GB+ GPU memory, 32GB+ RAM, 4+ Cores
python -m adept.app distrib --env BeamRiderNoFrameskip-v4
# IMPALA (requires ray, resource intensive)
# We recommend 2+ GPUs, 8GB+ GPU memory, 32GB+ RAM, 4+ Cores
python -m adept.app actorlearner --env BeamRiderNoFrameskip-v4
# To see a full list of options:
python -m adept.app -h
python -m adept.app help < command >
独自のエージェント、環境、ネットワーク、またはサブモジュールを使用する
"""
my_script.py
Train an agent on a single GPU.
"""
from adept . scripts . local import parse_args , main
from adept . network import NetworkModule , SubModule1D
from adept . agent import AgentModule
from adept . env import EnvModule
class MyAgent ( AgentModule ):
pass # Implement
class MyEnv ( EnvModule ):
pass # Implement
class MyNet ( NetworkModule ):
pass # Implement
class MySubModule1D ( SubModule1D ):
pass # Implement
if __name__ == '__main__' :
import adept
adept . register_agent ( MyAgent )
adept . register_env ( MyEnv )
adept . register_network ( MyNet )
adept . register_submodule ( MySubModule1D )
main ( parse_args ())
python my_script.py --agent MyAgent --env env-id-1 --custom-network MyNet
ローカル (単一ノード、単一 GPU)
分散型 (マルチノード、マルチ GPU)
重要度加重アクター学習器アーキテクチャ、IMPALA (単一ノード、マルチ GPU)
python -m adept.app local --logdir ~/local64_benchmark --eval -y --nb-step 50e6 --env <env-id>
で再現します。 OpenAI のジムとベースライン コードの一部を借用しています。これが行われる場所を示します。