AI・機械学習・ディープラーニング

 

TensorFlow for C をインストールしよう

こんにちは、荒井(@yutakarai)です。

本記事は、Tensorflowの本家サイトの「 Installing TensorFlow for C」を翻訳(適宜意訳)したものです。誤り等あればご指摘いただけたら幸いです。

TensorFlow for C をインストールしよう

TensorFlowはc api.hで定義されているC APIを提供しています。これは他の言語に結合するのに適しています。

サポートされるプラットフォーム

次のオペレーティングシステムでTensorFlow for Cをインストールすることができます。

  • Linux
  • Mac OS X

インストール

TensorFlow for Cライブラリをインストールし、TensorFlow for Cを有効にするには、次の手順を実行します。

1. CPUでTensorFlowを実行するか、GPUを使用してTensorFlowを実行するかを決定します。 決定を手助けするために、次のいずれかのガイドの「インストールするTensorFlowの決定」セクションを読んでください。

2.次のシェルコマンドを実行して、TensorFlow Cライブラリを /usr/local/lib にダウンロードして解凍します。

 TF_TYPE="cpu" # Change to "gpu" for GPU support
 OS="linux" # Change to "darwin" for Mac OS
 TARGET_DIRECTORY="/usr/local"
 curl -L \
   "https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-${TF_TYPE}-${OS}-x86_64-1.3.0.tar.gz" |
   sudo tar -C $TARGET_DIRECTORY -xz

tarコマンドは、TensorFlow CライブラリをTARGET_DIRECTORYlibサブディレクトリに解凍&展開します。たとえば、TARGET_DIRECTORYとして /usr/local を指定すると、tarはTensorFlow Cライブラリを /usr/local/lib に解凍&展開します。

ライブラリを別のディレクトリに展開する場合は、それに応じてTARGET_DIRECTORYを調整しましょう。

3.ステップ2で、TARGET_DIRECTORYとしてシステムディレクトリ(たとえば、/usr/local)を指定した場合は、ldconfigを実行してリンカーを設定します。(ldconfitコマンドについて参考ページ

sudo ldconfig

システムディレクトリ以外のTARGET_DIRECTORY(たとえば、~/mydir)を割り当てた場合は、抽出ディレクトリ(たとえば、~/mydir/lib)を2つの環境変数に追加する必要があります。

 export LIBRARY_PATH=$LIBRARY_PATH:~/mydir/lib # For both Linux and Mac OS X
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/mydir/lib # For Linux only
 export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:~/mydir/lib # For Mac OS X only

インストールを検証する

TensorFlow for Cをインストールした後、hello_tf.cという名前のファイルに次のコードを入力します。

#include <stdio.h>
#include <tensorflow/c/c_api.h>

int main() {
  printf("Hello from TensorFlow C library version %s\n", TF_Version());
  return 0;
}

ビルドと実行

hello_tf.cをビルドするには、次のコマンドを実行します。

gcc hello_tf.c

結果の実行可能ファイルを実行すると、次のメッセージが出力されます。

a.out
Hello from TensorFlow C library version number

トラブルシューティング

プログラムの構築に失敗した場合は、gccがTensorFlow Cライブラリを見つけることができない可能性が最も高いです。この問題を解決する方法のひとつは、gccコマンドに-I-Lオプションを指定することです。たとえば、TARGET_LIBRARYが /usr/local の場合、次のようにgccを呼び出します。

gcc -I/usr/local/include -L/usr/local/lib hello_tf.c -ltensorflow

a.outの実行に失敗した場合は、以下について確認してみましょう。

  • プログラムにバグはありませんか?間違いなく記述されていますか?
  • インストールの手順3で説明した環境変数に正しいディレクトリを割り当てましたか?
  • これらの環境変数をエクスポートしましたか?

ビルドまたは実行のエラーメッセージが表示されている場合は、可能なソリューションについてStackOverflowを検索(または投稿)してください。

この記事が気に入ったら
いいね ! しよう

Twitter で

関連記事

  1. AI・機械学習・ディープラーニング

    AIボットと会話するだけでウェブサイトをデザインできる – FireDrop

    AIボットと会話するだけで、ウェブサイトをデザインできる「FireDr…

  2. AI・機械学習・ディープラーニング

    TensorFlowモデルをdeeplearn.jsに移植する(翻訳)

    こんにちは、荒井(@yutakarai)です。NOTE本記事は…

  3. AI・機械学習・ディープラーニング

    ネットショップのためのAIチャットボット iBot

    こんにちは、荒井(@yutakarai)です。海外のスタートアップ…

  4. AI・機械学習・ディープラーニング

    AIを活用したプロダクトコミュニケーションサービス WhatsNewAI

    こんにちは、荒井(@yutakarai)です。海外のスタートアップ…

最近の記事

  1. ITビジネス戦略・ビジネスモデル研究

    スマホもパソコンと同じ道を辿っているのか
  2. RPA・業務自動化・業務改善

    なぜあなたのセールスファネルでは商品が売れないのか。結果を出すセールスファネルを…
  3. AI・機械学習・ディープラーニング

    TensorFlow for C をインストールしよう
  4. AI・機械学習・ディープラーニング

    AI脅威論に踊らされるな。映画「ターミネーター」の世界はまだやってこない
  5. AI・機械学習・ディープラーニング

    Appleの機械学習フレームワーク「Core ML」「Vision」
PAGE TOP