現在,所有Babyai環境都是Minigrid圖書館的一部分。該存儲庫無法積極維護。
可以使用此存儲庫來完成對Miligrid(和Babyai)環境的培訓RL代理。
該存儲庫仍然包含腳本,如果適合Minigrid庫,則可以使用:
Babyai是一個平台,用於研究MILA創建的基礎語言獲取的樣本效率。
此存儲庫的主分支經常更新。如果您想複製或與基線結果進行比較,我們建議您使用Babyai 1.1分支並引用兩者:
@misc{hui2020babyai,
title={BabyAI 1.1},
author={David Yu-Tung Hui and Maxime Chevalier-Boisvert and Dzmitry Bahdanau and Yoshua Bengio},
year={2020},
eprint={2007.12770},
archivePrefix={arXiv},
primaryClass={cs.AI}
}
ICLR19紙,詳細介紹了實驗設置和Babyai 1.0基線結果。它的源代碼在ICLR19分支中:
@inproceedings{
babyai_iclr19,
title={Baby{AI}: First Steps Towards Grounded Language Learning With a Human In the Loop},
author={Maxime Chevalier-Boisvert and Dzmitry Bahdanau and Salem Lahlou and Lucas Willems and Chitwan Saharia and Thien Huu Nguyen and Yoshua Bengio},
booktitle={International Conference on Learning Representations},
year={2019},
url={https://openreview.net/forum?id=rJeXCo0cYX},
}
此讀數涵蓋了安裝和故障排除的說明。其他說明是:
如果您使用的是Conda,則可以通過運行來創建所有依賴性的babyai環境:
git clone https://github.com/mila-iqia/babyai.git
cd babyai
conda env create -f environment.yaml
source activate babyai
之後,執行以下命令來設置環境。
cd ..
git clone https://github.com/maximecb/gym-minigrid.git
cd gym-minigrid
pip install --editable .
最後一個命令以可編輯模式安裝存儲庫。返回到babyai存儲庫,並以可編輯模式安裝。
cd ../babyai
pip install --editable .
最後,按照以下說明
要求:
首先在平台上安裝pytorch。
然後,克隆此存儲庫,並使用pip3安裝其他依賴項:
git clone https://github.com/mila-iqia/babyai.git
cd babyai
pip3 install --editable .
最後,按照以下說明
將此行添加到.bashrc (linux)或.bash_profile (Mac)。
export BABYAI_STORAGE='/<PATH>/<TO>/<BABYAI>/<REPOSITORY>/<PARENT>'
where /<PATH>/<TO>/<BABYAI>/<REPOSITORY>/<PARENT>是您輸入git clone https://github.com/mila-iqia/babyai.git文件夾。
模型,日誌和演示將在此目錄中分別在文件夾models , logs和demos中產生。
這些可以在這裡下載
確保下載1df202ef2bbf2de768633059ed8db64c文件具有以下MD5校驗和: md5sum
提取之前:
gunzip -c copydemos.tar.gz | tar xvf -
使用pixels體系結構不適用於模仿學習,因為沒有生成演示以使用像素。
如果您遇到與OpenAI體育館有關的錯誤消息,則可能是您安裝的那些庫的版本是不兼容的。您可以嘗試使用pip3升級特定庫,例如: pip3 install --upgrade gym 。如果問題持續存在,請在此存儲庫上打開一個問題並粘貼一條完整的錯誤消息,以及有關平台的一些信息(您是否正在運行Windows,Mac,Linux?您是否在MILA機器上運行此信息?)。
請注意,默認的觀察格式是使用緊湊的編碼對環境的部分可觀察的視圖,每個可見網格單元格的3個輸入值總計為7x7x3值。這些值不是像素。如果要獲得RGB像素作為觀測值的數組,請使用RGBImgPartialObsWrapper 。您可以按以下方式使用它:
import babyai
from gym_minigrid.wrappers import *
env = gym.make('BabyAI-GoToRedBall-v0')
env = RGBImgPartialObsWrapper(env)
可以在此處找到該包裝紙以及其他更改觀察格式的包裝器。