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技術を活用する前に知っておくべきこと

    こんにちは、荒井(@yutakarai)です。今日のビジネスニュー…

  2. 技術ドキュメント関連

    Java開発者のためのブロックチェーンライブラリ3選

    こんにちは、荒井(@yutakarai)です。Bitcoinをはじ…

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

    deeplearn.jsでピアノ演奏

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

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

    半自動のAIチャットボットサービス ChatlerAI

    こんにちは、荒井です。海外のスタートアップの事例を通して、新しいビ…

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

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

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

IT技術と経営をつなぐコンサルティング

最近の記事

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

    アカデミー賞の合間に放映されたTech企業のCMに見る各社の思惑
  2. RPA・業務自動化・業務改善

    業務のシステム化とは – システム化と属人化
  3. 注目ニュース

    ロシアが、2018年7月までに暗号通貨市場を合法化する準備を進めている
  4. 起業・独立・経営

    成功までの道のりはあなたが思っている以上に長い
  5. WEB集客・WEBマーケティング

    消費者心理を理解する手がかり、AIDAモデルとその先の話
PAGE TOP