強化學習實戰——OpenAI Spinning Up項目

前面的文章介紹了太多強化學習的理論,今天我們就通過具體項目,理論結合實踐深入理解和學習強化學習。

1. Spinning Up 項目簡介

Spinning Up 是大名鼎鼎的Open AI推出的免費強化學習教學項目,旨在降低強化學習的門檻,讓初學者能在項目實踐的過程中一步一步循序漸進地學習。項目不僅提供了詳細的理論介紹,同時還有完整的練習代碼,真的不不愧是學習深度強化學習的良心之作。

廢話不多說,網站和文檔在這裏,拿走不謝。當然官方文檔是英文的,英文有困難的同學可以在這裏找到熱心網友翻譯的中文鏡像

2. 學習環境的安裝

環境安裝其實不困難,按照官網文檔一步一步來就可以了,我這裏提幾個關鍵注意的點。

  1. 官方目前只支持Ubuntu和Mac OS X系統,所以Windows用戶得注意了。
  2. 官方推薦使用Anaconda配置環境,如果不知道Anaconda是什麼,出門Google。
  3. 使用官方推薦的Python版本,Anaconda非常方便安裝和管理軟件版本,以免出現未知問題。
  4. Tensorflow 需要手動安裝,在Anaconda的環境下安裝也很方便,一條命令搞定
conda install tensorflow

3. MuJoCo安裝(選裝)

官方推薦安裝MuJoCo, MuJoCo是一個物理引擎,能夠更加形象地展示Agent(機器人)的學習過程,文章結尾會展示一個MuJoCo的3D動畫。

MuJoCo是一個商業軟件,但是可以提供30天的免費許可證書,同時對學生也可以提供一年的免費許可證書,如果有大學的郵箱的讀者朋友,強烈建議安裝。

安裝 MuJoCo 需要到Github頁面按照文檔一步一步進行安裝。由於MuJoCo文檔是寫給有一定開發經驗的開發者看的,所以寫得比較簡單,同時還有一些坑需要注意。

1. Windows和Python 2 都不再支持了,這裏需要注意。
2. 獲得學生一年免費證書需要三步:

第一步,在官網用學校郵箱註冊後,如果審覈通過會收到賬號。
第二步,賬號需要綁定電腦ID,電腦ID獲取方法(Mac 爲例),下載可執行文件getid_osx後,在終端getid_osx文件目錄下,執行下面命令

chmod -f 711 getid_osx
./getid_osx

第三步,綁定賬號和電腦ID,稍後會收到許可證書『mjkey.txt.』文檔。

3. 在安裝的時候比較坑的地方來了,文檔中需要將許可證書放在這個目錄,("~"代表用戶的home 目錄)
~/.mujoco/mjkey.txt

這樣的話後續安裝會出錯,正確的位置應該是這裏

~/.mujoco/mjpro150/bin/mjkey.txt`  
4. 最後不要忘了用這個命令安裝mujoco-py 對應的gym 環境
pip3 install -U 'mujoco-py<1.50.2,>=1.50.1'
pip3 install gym[mujoco,robotics]

4. 測試

注意測試的時候,如果用Anaconda不要忘了激活環境(如果環境名是spinningup)

source activate spinningup

如果沒有安裝 MuJoCo的話使用這條命令

python -m spinup.run ppo --hid "[32,32]" --env LunarLander-v2 --exp_name installtest --gamma 0.999

訓練完成後,通過這條命令可以查看訓練的動畫效果,是一個飛船定點落地的動畫。


如果安裝了MuJoCo的話可以使用這條命令來訓練機器人走路

python -m spinup.run ppo --hid "[32,32]" --env Walker2d-v2 --exp_name mujocotest

最後欣賞一下訓練成果吧:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章