由於要用pip裝支持gpu的tensorflow時,需要cuda-8.0,而我只是在服務器的一個虛擬機里工作,對於驅動之類的東西都不太敢碰,所以只能分開安裝
在官網下回了cuda_8.0.44_linux.run之后,運行sh cuda_8.0.44_linux.run -- noexec -- target cuda8.0,這樣就會不運行,只把.run文件解壓了
進入到cuda8.0文件夾里的run_files,可以看到有3個run文件,運行cuda-linux64-rel-8.0.44-21122537.run就能裝cuda-8.0而不更改驅動了
裝好之后就裝了tensorflow,然后又從github下找來了caffe-tensorflow來把caffe訓練出的caffemodel轉換成tensorflow可以用的
怎么轉換在github的readme有說:
$ ./convert.py examples/mnist/lenet.prototxt --code-output-path=mynet.py
$ ./convert.py examples/mnist/lenet.prototxt --caffemodel examples/mnist/lenet_iter_10000.caffemodel --data-output-path=mynet.npy
之后想起cuda更新了,要把caffe重新編譯一次,編譯完之后,我的pycaffe就出問題了。。。
問題不知道什么時候做了什么導致的。。。。問題提示是
Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so
確認過LD_LIBRARY_PATH下絕對有包含這兩個東西。。。
在安裝tensorflow的時候我好像更新了anaconda的幾個庫,mkl可能在那時候導致的?
先解決問題再說。。上網搜了下,相關的東西不多。。還好發現有人說preload就可以了,試了一下,真可以:
$ export LD_PRELOAD=libmkl_rt.so
之后繼續折騰tensorflow去用轉化出來的代碼和網絡,結果抱錯
ImportError: No module named kaffe.tensorflow
沒有那就去import,給PYTHONPATH加上
/your_path/caffe-tensorflow
就可以了