intelのMovidius NCSはubuntuの環境が要るらしいので作っておきます。
ネイティブではなくVirtualBox上のubuntu 16.04 LTSでもいけるっていう話なので、その環境で。
Windows 7(64Bit) + VirtualBox 5.2.2 + ubuntu 16.04 LTSの構成は以下を参照
ubuntuをVirtualBoxにインストール(memo)
TensorFlowインストール
3.xのパッケージ管理のpip3を使ってインストールしてみます。
なければインストールしておきます。
$ sudo apt install python3-pip
インストール
CPU のみなら
$ sudo pip3 install tensorflow
GPU を使う場合
$ sudo pip3 install tensorflow-gpu
TensorFlowバージョン確認
$ pip3 list
TensorFlow動作確認
このバージョンのTensorFlowはPython3で動作します。
Python2を使うとtensorflow moduleのimportErrorになります。
python3でshellに入って、hello worldを表示してみます。
$ python3
>> import tensorflow as tf
>> hello = tf.constant(‘hello world’)
>> sess = tf.Session()
>> print(sess.run(hello))
b’hello world’
>>sess.close()
セッションの後にattentionが出ますが、気にせず続行。
これは、TensorFlow は CPU の拡張命令を使うことができる…….ということのようです。
CPU の拡張命令を有効にするためには TensorFlow をソースコードからコンパイルしてくださいといってるようだけど、今回はパス。
hello worldが表示されます。
Caffeインストール
事前に必要ないくつかのパッケージをインストールしておきます。
$ sudo apt install <package name>
<package name>は主に以下の11個
libprotobuf-dev
libleveldb-dev
libsnappy-dev
libopencv-dev
libhdf5-serial-dev
protobuf-compiler
libboost-all-dev
libatlas-base-dev
libgflags-dev
libgoogle-glog-dev
liblmdb-dev
caffeのインストール用に本体を取得
Makefile.configファイルを作っておきます。
Makefile.config.exampleをコピーしてリネーム –> Makefile.config
コンパイラにg++-4.6を使うって話がありますが、うちの環境ではもうサポートしてないらしい。
インストール候補なしと言われた。
普通に現バージョンのg++を使います。
Makefile.configを開いて、CPUのみ使う場合は….。
このコメントを外す
1 |
# CPU_ONLY := 1 |
デフォルトのPython のバージョンは2.7。
python 3.5で使う場合、2.7をコメントアウト
#PYTHON_INCLUDE := /usr/include/python2.7 \ /usr/lib/python2.7/dist-packages/numpy/core/include
Python 3の行をアンコメントして,boostの行は以下のように変更
1 2 3 |
PYTHON_LIBRARIES := boost_python-py35 python3.5m PYTHON_INCLUDE := /usr/include/python3.5m \ /usr/local/lib/python3.5/dist-packages/numpy/core/include |
numpyの場所が分からない場合は、python3のシェルに入って以下のコマンドで調べます。
1 2 3 4 5 |
$ python3 >>>import numpy >>>numpy.__file__ |
/usr/local/lib/python3.5/dist-packages/numpy/
Pythonで使うためのmakeを実行。
CPUのコア数を確認
1 |
$nproc |
例えばコア数が4の場合は
1 |
$ make pycaffe -j4 |
caffeのパスを通しておく。
$ export PYTHONPATH=~/caffe/python:$PYTHONPATH
$ cd ~
$ source .bashrc
確認
1 2 |
$ python3 >>>import caffe |
問題なければOK。
エラー修正
Caffeインストール時、HDF5ファイルフォーマットの部分でエラーになることが多い。
hdf5.hがない場合
Makefile.configに追加してみる
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
だめなら探してみる
$ locate hdf5.h
大概opencvをインストールしてたらどこかにあるが
ぜんぜん見つからない場合
$ sudo apt install libhdf5-10
再度、
$ locate hdf5.h
見つかった
/usr/include/hdf5/serial/hdf5.h
以下を実行
$ export CPATH=”/usr/include/hdf5/serial/”
lhdf5_hlがない場合
Makefile.configに追加
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
pip3でエラーが出た場合の対処
例1:
$ pip3 install –upgrade pip
を実行してもアップグレードできない
対策1:
バージョンアップされたpipを直接ダウンロード
$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python3 get-pip.py
原因1:
不明
例2:
$ pip3 list
を実行しようとして
Traceback (most recent call last):
File
"/usr/bin/pip"
, line 9,
in
<module>
from pip
import
main
ImportError: cannot
import
name main
1 2 |
$ <span class="pl-c1">hash</span> -d pip3 or |
1 |
$ <span class="pl-c1">hash</span> -r pip3 |
原因3:
コマンドパスのハッシュが更新後のパスを追随できていないためだそうです
Leave a Reply