TensorFlowでラズパイが公式サポートされるようなので試して見ました。
今回は、サンプルプログラム(tensorflow/contrib/pi_examples)を動かすところまでです。
TensorFlow Raspberry Pi Examples
【環境】
Raspberry Pi3 model B
Raspbian 4.4(ver May 2016)
TensorFlow 0.9.0
ライブラリのビルド
まずはライブラリのビルド方法です。
手順は下記に書かれている通りですが、躓いたところの補足を交えて書いておきます。
1.ソースコード取得
git clone https://github.com/tensorflow/tensorflow cd tensorflow
2.依存パッケージの取得
tensorflow/contrib/makefile/download_dependencies.sh
加えて下記も入れておきましょう。
sudo apt-get install autoconf build-essential libtool
3.google protobufのインストール
cd tensorflow/contrib/makefile/downloads/protobuf/ ./autogen.sh ./configure make
コンパイルにはRasPi3で1.5時間ほどかかります。
sudo make install cd ../../../../..
4.ライブラリのビルド
ビルドにはg++4.8が必要なのでない場合はインストールしておきましょう。
Raspberry Pi build error
sudo apt-get install g++-4.8
sudo ldconfig make -f tensorflow/contrib/makefile/Makefile HOST_OS=PI TARGET=PI OPTFLAGS="-Os -mfpu=neon-vfpv4 -funsafe-math-optimizations -ftree-vectorize `pkg-config --libs protobuf`" CXX=g++-4.8
benchmarkファイルのリンクでエラーが出る場合は、protobufへのパスが通ってないようなので、`pkg-config –libs protobuf`を追加してあげましょう。
こちらもビルドに1時間程かかった気がする…(メモるの忘れた)
これでインストールは終了です。
試す
写真認識のサンプルがあるのでそれを試してみました。
TensorFlow Raspberry Pi Examples
oxygen mask 0.157
nipple 0.134
lab coat 0.047
beaker 0.019
sunscreen 0.012
…nipple!?
あとがき
ビルド中にラズパイの動作が不安定(勝手にメニューが開いたり…)になるんだけど、熱暴走?電圧低下かな?
ヒートシンクなし、2A電源で動かしてるけどダメなのかな。
やっぱり2.4Aいるのかな…電流モニタしてもそんな食ってなさそうだけど。う〜む。