がべーじこれくしょん

技術系とかいろいろ

Caffe for Windowsのインストール時に"loading 'rules.ninja': 指定されたファイルが見つかりません。"というエラーがでる時の対処法

Caffe for Windowsをインストールしようとして、build_win.cmdを実行した時に以下のようなエラーが出た時の対処法。

ninja: error: build.ninja:30: loading 'rules.ninja': 指定されたファイルが見つかりません。

対処法

  1. 自前でインストールしたCMakeとNinjaをアンインストールする
  2. PATHから上記2つを取り除く
  3. conda経由(Anaconda Navigator)で上記2つをインストールする

これで解決しました。

参考

https://github.com/BVLC/caffe/issues/5791

Caffe for Windowsのインストール時に"mspdb110.dllがありません"というエラーが出た時の対処法

コマンドプロンプト上でビルドしようとしているときに発生するらしいです。

環境

対処法

VC++コンパイラを使ってビルドする際に必要な環境変数の設定が必要となります。

方法としては以下の2つがあります。

  1. VS開発者コマンドプロンプトを使う
  2. vcvars32.batを実行する

1. VS開発者コマンドプロンプトを使う

必要な環境変数の設定が済んだ状態で起動するので、これが一番簡単です。

スタートメニュー →すべてのプログラム →Microsoft Visual Studio 2012 →Visual Studio Tools →VS2012の開発者コマンド プロンプト

2. vcvars32.batを実行する

C:\Users\Program Files(x86)\Microsoft Visual Studio 11.0\VC\bin\vcvars32.batを実行すると、必要な環境変数の設定が自動的に行われます。

参考文献

"Could not find url for MSVC version = 1700 and Python version = 2.7."の対処法

Caffe for Windowsのビルド時に以下のエラーが発生してハマったのでメモ。

エラー内容

The specified configuration type is missing. The tools for the configuration might not be installed.
CMake Error at cmake/WindowsDownloadPrebuiltDependencies.cmake:40 (message):
  Could not find url for MSVC version = 1700 and Python version = 2.7.
Call Stack (most recent call first):
  CMakeLists.txt:77 (include)

-- Configuring incomplete, errors occurred!
ERROR: Configure failed

対処法

Caffe(あるいはCMake)はVS2012でのビルドには対応してないそうです。

なので、VS2013かVS2015(あるいはそれ以降のバージョン)をインストールしましょう…

CaffeのモデルをTensorFlowで使う

Chainerには、caffe.CaffeFunction('bvlc_googlenet.caffemodel')のようにcaffemodelを読み込む関数が備わっています。

参考: http://qiita.com/tabe2314/items/6c0c1b769e12ab1e2614

普段TensorFlowしか使ってないので、そういう便利系のやつがTensorFlowにもないかと調べていたらありました。

ethereon/caffe-tensorflow: Caffe models in TensorFlow - GitHub

この中のconvert.pyを使えば、.prototxt.caffemodelを、TensorFlowで使われる.py.npyに変換できます。

.prototxt.pyはモデルの構造、.caffemodel.npyは重みデータです。

使い方

examples/mnistが変換に関する説明になっています。

NN構造データの変換(.prototxt.py

$ ./convert.py examples/mnist/lenet.prototxt --code-output-path=mynet.py

重みデータの変換(.caffemodel.npy

$ ./convert.py examples/mnist/lenet.prototxt --caffemodel examples/mnist/lenet_iter_10000.caffemodel --data-output-path=mynet.npy

8/8日報

台風5号がやばいですね。

秋田は今日は晴れてましたが、昼頃から雨が降ったりやんだりと安定しない天気でした。

明日から台風です。怖いです。頑張ります。

それにしても英語の課題が寄生虫のように残っていて本当に不愉快です。

某大学の英語科はクソです。

1日1AC

今日も元気にABC001

A 積雪深差

言われたとおりに出す

B 視程の通報

if-then-elseで殴る

C

if-then-elseで殴る(やめろ)

小数第2位を四捨五入って↓のコードでできるんですね。

double dis = 114.514;
dis*=10; dis+=0.5; dis=int(dis); dis/=10;

眠いのでここで終了です

読んだ本