Shmuma/ptan
PyTorch Agent Net: reinforcement learning toolkit for pytorch
PTAN – PyTorch AgentNet
它是什麼 – PTAN 是一個輕量級的 Python 函式庫,使用 PyTorch 為強化學習 (RL) 代理程式重新實作了 AgentNet 框架。它提供了在 Deep Reinforcement Learning Hands-On 一書中所使用的輔助類別(例如:經驗緩衝區、訓練迴圈)。
關鍵組件
ExperienceSource和ExperienceSourceFirstLast– 用於從 OpenAI-Gym 環境收集軌跡的工具。- 與 PyTorch Ignite 整合,以簡化訓練迴圈。
- 可選的 TensorBoardX 日誌記錄和 OpenCV 視覺化支援。
支援的環境 – 任何與 OpenAI Gym 相容的環境,包括 Atari 遊戲 (gym[atari])。
安裝
# 從 PyPI 安裝 (推薦)
pip install ptan
# 或直接從儲存庫安裝
pip install git+https://github.com/Shmuma/ptan.git
# 從原始碼安裝
python setup.py install
依賴項 (如 README 中所列)
- PyTorch ≥ 1.1.0 (在
master分支上測試至 1.7) - PyTorch-Ignite
- OpenAI Gym (加上可選的
atari額外套件) - opencv-python
- tensorboardX (或 Anaconda 使用者的
tensorboard-pytorch)
版本控制 – 儲存庫針對不同的 PyTorch 主要版本維護獨立的分支:
master– 最新測試的 PyTorch (目前為 1.7)torch-1.3-book-ed2– 與第二版書籍相符的程式碼,針對 PyTorch 1.3 建構torch-1.7– 已合併至master
文件 – docs/intro.ipynb 中提供了 Jupyter notebook 介紹。若要深入了解 experience-source 工具,請參閱 README 中連結的問題評論。
典型工作流程 (高階概述,從 README 推斷)
- 安裝函式庫及其依賴項。
- 建立 Gym 環境。
- 使用
ExperienceSource產生 (state, action, reward, next_state) 元組批次。 - 將這些批次輸入到 Ignite 訓練器內的 PyTorch 模型中。
- 使用 TensorBoardX 記錄指標。
適用對象 – 希望在 PyTorch 中建構和訓練 RL 代理程式,且不想編寫樣板程式碼的開發人員與研究人員。
相關
- 專案
- 專案
- 專案
- 專案