環境:html
head -n 1 /etc/issue # Ubuntu 19.10 \n \l python -V # Python 2.7.17
其中,python環境是我本身創建的虛擬 venv 方便測試( 至關於你的python 實際路徑)python
1. 準備git
下載 pylearn2 源碼: https://github.com/lisa-lab/pylearn2github
下載theano源碼: https://github.com/Theano/Theanoubuntu
下載訓練數據集: http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz (來源官方:http://www.cs.toronto.edu/~kriz/cifar.html)vim
目錄結構:windows
如下出現的目錄都是相對於次工程的根目錄bash
your_program_path/data/cifar10
2. 安裝python2.7
2.1安裝 theano, 依賴的環境: g++,numpy,scipy:post
pip install Theano 或者 cd Theano python setup.py build python setup.py install
注意: ubuntu 自帶 g++ , 你能夠運行 test g++ 沒有輸出則正常. 若是你是 windows 系統,能夠下載MinGW安裝g++ , 而後用 test g++ 來檢驗
2.2安裝 pylearn2:
cd pylearn2 python setup.py build python setup.py install
這時會報錯: No module named ‘theano.compat.six’
能夠參考: Ubuntu19 安裝Theano出現「No module named ‘theano.compat.six’」
修改 pylearn2/setup.py 第8行:
# from theano.compat.six.moves import input # 註釋這一行
from six.moves import input # 新增
而後,從新運行以上命令後能夠正常安裝
2.3 設置 pylearn 的數據文件路徑
windows:
計算機=>>屬性=>>高級系統設置=>>環境變量=>>新建=>>PYLEARN2_DATA_PATH
值: your_program_path/data/
須要從新開一個cmd 窗口
ubuntu :
vim ~/.bashrc 新增一行: (參考官方文檔:http://deeplearning.net/software/pylearn2/)
export PYLEARN2_DATA_PATH=your_program_path/data/
以後 source ~/.bashrc
在 data 目錄下新建目錄 cifar10 (文件名必須是這個,以後測試的數據須要從這裏讀取), 而後將在的CIFAR-100 python version 拷貝到 cifar10 下解壓:
3.測試Pylearn2
cd your_program_path/pylearn2/scripts/tutorials/grbm_smd/ python make_dataset.py
注意:這時會在 your_program_path/venv/lib/python2.7/site-packages/pylearn2/scripts/tutorials/grbm_smd (若是你沒有使用venv 則在你的python2.7 安裝目錄下的對應位置) 下生成兩個文件:
將這兩個文件拷貝到 your_program_path/pylearn2/pylearn2/scripts/tutorials/grbm_smd 下:
訓練數據:
pip install pyyaml
cd your_program_path/pylearn2/pylearn2/scripts/tutorials/grbm_smd python ../../ train.py cifar_grbm_smd.yaml
訓練完成後在當前目錄生成 cifar_grbm_smd.pkl 文件
4. 展現訓練結果
cd your_program_path/pylearn2/pylearn2/scripts/tutorials/grbm_smd
python ../../show_weights.py --out ToShow.jpg cifar_grbm_smd.pkl
報錯:You are trying to use PIL-dependent functionality but don't have PIL installed.
參考:(http://www.pianshen.com/article/7207229837/)
pip install pillow
而後從新運行以上命令當前目錄生成 ToShow.jpg
測試完成.
用到的第三方包:
numpy==1.16.5 Pillow==6.2.1 pylearn2==0.1.dev0 PyYAML==5.2 scipy==1.2.2 six==1.13.0 Theano==0.8.0