前段時間,openAI 發布了 Spinning Up ,本篇博客將介紹如何在 Windows 系統中使用 Spinning Up。
什么是 Spinning Up
先來說說 Spinning Up,Spinning Up 是由 OpenAI 發布的,包含以下核心內容
-
強化學習技術的簡介,包含各種算法和基本理論的直觀理解;
-
一些介紹如何才能做好強化學習研究的經驗;
-
重要論文的實現,按照主題進行分類;
-
各種強化學習算法的單獨實現,它們都有非常完善的介紹文檔;
-
最后還會有一些熱身練習題。
安裝
下面就來講講最頭疼的安裝問題,官方文檔說是目前僅在 Linux 和 OSX 上支持Spinning Up,但 Windows 系統可能也可以使用。本篇博客將介紹如何在 Windows 上安裝 Spinning Up。
1.WSL
1.以管理員身份打開 Power Shell,輸入
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
安裝完成后重啟。
2.安裝 Linux Distribution of Choice
打開 Microsoft Store 並選擇您喜歡的 Linux 發行版

點擊獲取,然后安裝。安裝完成后,運行下好的 Linux

新安裝的發行版第一次運行時,將打開一個控制台窗口,您將被要求等待一兩分鍾才能完成安裝。
然后設置用戶名和密碼

設置完后就ok了。
這里順便給出微軟的文檔 https://docs.microsoft.com/en-us/windows/wsl/install-win10
記得定期更新軟件包目錄
sudo apt update && sudo apt upgrade
2.安裝 Xming



后面一路默認就好了。
3.在 WSL 中使用 Xming
打開cmd,輸入 bash

鍵入
sudo apt-get install x11-apps

安裝時間有那么點點久。。。。。。。。。。。。。。。。。。。
然后要做的操作(別一股腦的復制進去了,一行一行來,順便看看括號里的內容)
export DISPLAY=localhost:0.0 nano ~/.bashrc #(add export DISPLAY=localhost:0.0 at the end. Ctrl+X to exit/save) 這一步懂vim的應該都知道 sudo apt-get install gnome-calculator #will get you GTK
安裝的好慢。。。。。。。。。。。。。。不知道是不是我網速的原因,耐心等待吧
4.安裝 miniconda
選擇 for Linux 的

下載好后,打開cmd,cd 到你下載的目錄,然后輸入
bash 文件名.sh

后面一直按回車即可,直到出現該界面

輸入yes后就等待安裝完成
5.安裝spinningup
bash進入linux 的terminal,然后輸入
conda create -n spinningup python=3.6
創建虛擬環境
創建完畢后輸入
source activate spinningup
然后輸入
sudo apt-get update && sudo apt-get install libopenmpi-dev
安裝OpenMPI,又是漫長的等待。。。。。。。。。。。。。。。。。。。。
安裝完成后,輸入
git clone https://github.com/openai/spinningup.git cd spinningup pip install -e .
(驚了,Ubuntu里沒裝git居然命令有效!!改天一定要去好好了解一下WSL的原理orz)

接着等上一段時間。。。。。。

到這里就安裝完成了!
6.檢驗
安裝完成后,輸入
python -m spinup.run ppo --hid "[32,32]" --env LunarLander-v2 --exp_name installtest --gamma 0.999
來檢查是否成功安裝,大概要跑10分鍾。。。。又是漫長的等待。。。。

看到這里就算成功安裝了

接下來,就開始愉快的RL之旅了,后面的學習就靠看官方文檔了。
總結
一段愉快的踩坑之旅,還算好,沒碰上什么大問題,除了WSL不太會用之外都還行,發現Windows還有很多未發現的高端黑科技,有空得去好好研究研究微軟的官方文檔orz。。。希望這篇博客能幫助到大部分入坑RL的研究者們。
參考文檔:
https://stackoverflow.com/questions/42605769/openai-gym-atari-on-windows/44345972#44345972
