adeptRL
1.0.0
adept เป็นกรอบการเรียนรู้แบบเสริมกำลังที่ออกแบบมาเพื่อเร่งการวิจัยโดยการสรุปความท้าทายทางวิศวกรรมที่เกี่ยวข้องกับการเรียนรู้แบบเสริมกำลังเชิงลึก เก่งให้:
รหัสนี้เปิดให้เข้าถึงก่อนใคร คาดว่าจะมีขอบคร่าวๆ อินเทอร์เฟซอาจมีการเปลี่ยนแปลง เรายินดีที่จะยอมรับข้อเสนอแนะและการมีส่วนร่วม
git clone https://github.com/heronsystems/adeptRL
cd adeptRL
pip install -e .[all]
จากนักเทียบท่า:
Train an Agent Logs ไปที่ /tmp/adept_logs/
ตามค่าเริ่มต้น ไดเรกทอรีบันทึกประกอบด้วยไฟล์เทนเซอร์บอร์ด โมเดลที่บันทึกไว้ และข้อมูลเมตาอื่นๆ
# 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 (โหนดเดี่ยว, Multi-GPU)
python -m adept.app local --logdir ~/local64_benchmark --eval -y --nb-step 50e6 --env <env-id>
เรายืมชิ้นส่วนยิมและโค้ดพื้นฐานของ OpenAI เราระบุว่าสิ่งนี้เสร็จสิ้นที่ไหน