ホーム » Hadoop

Hadoop」カテゴリーアーカイブ

TensorFlow : Deploy : Hadoop 上で TensorFlow をどのように実行するか

TensorFlow : Deploy : Hadoop 上で TensorFlow をどのように実行するか (翻訳/解説)
翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 03/30/2017

* 本ページは、TensorFlow の本家サイトの Deploy – How to run TensorFlow on Hadoop を翻訳した上で
適宜、補足説明したものです:
    https://www.tensorflow.org/deploy/hadoop
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

このドキュメントは Hadoop 上でどのように TensorFlow を実行するかを説明しています。様々なクラスタ・マネージャで実行することに記述は拡張されますが、当面は HDFS 上での実行についてのみ記述されます。

 

HDFS

貴方が データを読む について慣れ親しんでいることを前提にしています。

TensorFlow で HDFS を使用するためには、データを読み書きするために使用するファイルパスを HDFS パスに変更します。例えば :

filename_queue = tf.train.string_input_producer([
    "hdfs://namenode:8020/path/to/file1.csv",
    "hdfs://namenode:8020/path/to/file2.csv",
])

HDFS 構成ファイルで指定されたネーム・ノードを使用することを望むのであれば、ファイル・プレフィックスを hdfs://default/ に変更します。

TensorFlow プログラムを launch する時には、次の環境変数が設定されなければなりません :

  • JAVA_HOME: java インストールの位置。
  • HADOOP_HDFS_HOME: HDFS インストールの位置。以下を実行することでも環境変数を設定可能です :
    shell source ${HADOOP_HOME}/libexec/hadoop-config.sh
    
  • LD_LIBRARY_PATH: libjvm.so へのパス、そしてもし(貴方の)Hadoop ディストリビューションが libhdfs.so を $HADOOP_HDFS_HOME/lib/native にインストールしていない場合にオプションで libhdfs.so へのパスを含めるためです。Linux では :
    shell export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${JAVA_HOME}/jre/lib/amd64/server
    
  • CLASSPATH: TensorFlow プログラムを実行するに先立って Hadoop jars が追加されなければなりません。
    “${HADOOP_HOME}/libexec/hadoop-config.sh” で CLASSPATH を設定するだけでは不十分です。libhdfs ドキュメントに記載されているように Globs は拡張されなければなりません :

    shell CLASSPATH=$($HADOOP_HDFS_HOME}/bin/hadoop classpath --glob) python your_script.py 
    

    古いバージョンの Hadoop/libhdfs (older than 2.6.0) のためには、classpath ワイルドカードを手動で拡張する必要があります。より詳細は、HADOOP-10903 を参照してください。

Hadoop クラスタがセキュア・モードにあれば、次の環境変数が設定されなければなりません :

  • KERB_TICKET_CACHE_PATH: Kerberos チケット・キャッシュファイルのパス。例えば :
    shell export KERB_TICKET_CACHE_PATH=/tmp/krb5cc_10002
    

分散 TensorFlow を実行する場合には、全てのワーカーは環境変数が設定され Hadoop がインストールされていなければなりません。

 

以上


AI導入支援 #2 ウェビナー

スモールスタートを可能としたAI導入支援   Vol.2
[無料 WEB セミナー] [詳細]
「画像認識 AI PoC スターターパック」の紹介
既に AI 技術を実ビジネスで活用し、成果を上げている日本企業も多く存在しており、競争優位なビジネスを展開しております。
しかしながら AI を導入したくとも PoC (概念実証) だけでも高額な費用がかかり取組めていない企業も少なくないようです。A I導入時には欠かせない PoC を手軽にしかも短期間で認知度を確認可能とするサービの紹介と共に、AI 技術の特性と具体的な導入プロセスに加え運用時のポイントについても解説いたします。
日時:2021年10月13日(水)
会場:WEBセミナー
共催:クラスキャット、日本FLOW(株)
後援:働き方改革推進コンソーシアム
参加費: 無料 (事前登録制)
人工知能開発支援
◆ クラスキャットは 人工知能研究開発支援 サービスを提供しています :
  • テクニカルコンサルティングサービス
  • 実証実験 (プロトタイプ構築)
  • アプリケーションへの実装
  • 人工知能研修サービス
◆ お問合せ先 ◆
(株)クラスキャット
セールス・インフォメーション
E-Mail:sales-info@classcat.com