MXBoard - Deep Learning AMI

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

MXBoard

MXBoard では、 TensorBoard ソフトウェアを使用して MXNet の実行とグラフを視覚的に検査および解釈できます。MXBoard は、MXBoard の可視化を表示して操作するウェブページを提供するウェブサーバーを実行します。

MXNet 、 TensorBoard、および MXBoard には、Deep Learning AMI with Conda (DLAMI with Conda) がプリインストールされています。このチュートリアルでは、MXBoard 関数を使用して、 と互換性のあるログを生成します TensorBoard。

MXBoard で MXNet を使用する

と互換性のある MXBoard ログデータを生成する TensorBoard
  1. DLAMI with Conda の Amazon Elastic Compute Cloud (Amazon EC2) インスタンスに接続します。

  2. Python 3 MXNet 環境を有効化します。

    $ source activate mxnet_p36
  3. 通常の演算子で生成されたデータをイベントファイルに書き込むための Python スクリプトを準備します。データは、標準偏差が緩和されるにつれ 10 回生成され、イベントファイルに書き込まれます。データ分布は平均値を中心とし、徐々に集中していきます。なお、ログフォルダにイベントファイルを指定することに注意してください。このフォルダパスを TensorBoard バイナリに渡します。

    $ vi mxboard_normal.py
  4. 以下をファイルに貼り付け、保存します。

    import mxnet as mx from mxboard import SummaryWriter with SummaryWriter(logdir='./logs') as sw: for i in range(10): # create a normal distribution with fixed mean and decreasing std data = mx.nd.normal(loc=0, scale=10.0/(i+1), shape=(10, 3, 8, 8)) sw.add_histogram(tag='norml_dist', values=data, bins=200, global_step=i)
  5. スクリプトを実行します。これにより、logs フォルダにログを生成し、可視化に使用できます。

    $ python mxboard_normal.py
  6. 次に、 TensorFlow 環境に切り替えて を使用し TensorBoard 、MXBoard を使用してログを視覚化する必要があります。これは MXBoard と に必須の依存関係です TensorBoard。

    $ source activate tensorflow_p36
  7. ログの場所を tensorboard に渡します。

    $ tensorboard --logdir=./logs --host=127.0.0.1 --port=8888

    TensorBoard は、ポート 8888 でビジュアライゼーションウェブサーバーを起動します。

  8. ローカルブラウザから簡単にアクセスするには、ウェブサーバーポートをポート 80 あるいは他のポートに変更できます。いずれのポートを使用する場合でも、DLAMI 用の EC2 セキュリティグループでポートを開く必要があります。また、ポートフォワーディングを使用できます。セキュリティグループの設定を変更する手順およびポートフォワーディングの手順に関しては、「Jupyter ノートブックサーバーの設定」を参照してください。デフォルトの設定は、次のステップで説明します。

    注記

    Jupyter サーバーと MXBoard サーバーの両方を実行する場合は、それぞれに異なるポートを選択してください。

  9. EC2 インスタンスでポート 8888 (または、ウェブサーバーを可視化するために指定したポート) を開きます。

    1. Amazon EC2 コンソールで EC2 インスタンスを開きます (https://console.aws.amazon.com/ec2/)。

    2. Amazon EC2 コンソールで、[Network & Security] (ネットワーク & セキュリティ)、[Security Groups] (セキュリティグループ) の順に選択します。

    3. [セキュリティグループ] で最後に作成したセキュリティグループを選択します (詳細のタイムスタンプを参照してください)。

    4. [インバウンド] タブを選択し、[編集] を選択します。

    5. ルールの追加] を選択します。

    6. 新しい行で次のように入力します。

      タイプ : カスタム TCP Rule

      プロトコル: TCP

      ポート範囲: 8888 (または、可視化サーバーに割り当てたポート)

      ソース: Custom IP (specify address/range)

  10. ローカルブラウザからのデータを可視化するには、次のコマンドを入力して、EC2 インスタンス上でレンダリングするデータをローカルマシンに転送します。

    $ ssh -Y -L localhost:8888:localhost:8888 user_id@ec2_instance_ip
  11. DLAMI with Conda を実行する EC2 インスタンスのパブリック IP あるいは DNS アドレス、および MXBoard 用に開いたポートを使用して、MXBoard の可視化のためにウェブページを開きます。

    http://127.0.0.1:8888

詳細情報

MXBoard についての詳細は、「MXBoard ウェブサイト」を参照してください。