logo

テンソルボード

TensorFlow は TensorBoard と呼ばれる視覚化ツールです。データ フロー グラフの分析に使用され、機械学習モデルを理解するために使用されます。 TensorBoard は、グラフを視覚化するために使用されるインターフェイスであり、モデルを理解、デバッグ、最適化するための多くのツールです。

TensorBoard の重要な機能は、パラメーターに関するさまざまな種類の統計のビューとグラフの詳細が垂直方向に配置されていることです。

世界で一番の笑顔

ディープ ニューラル ネットワークには、以下が含まれます。 36,000 ノード。 TensorFlow は、これらのノードを高レベルのブロックで折りたたんで、同一の構造を強調表示するのに役立ちます。これにより、計算グラフの主要なセクションに焦点を当てて、グラフをより適切に分析できるようになります。

テンソルボード

TensorBoard の視覚化は非常にインタラクティブであると言われており、ユーザーはノードをパン、ズーム、展開して詳細を表示できます。

以下は、TensorBoard 視覚化の完全な動作を示す図表現です。

テンソルボード

このアルゴリズムは、ノードを高レベルのブロックに折りたたんで、高次のノードを分離する同一の構造を持つ特定のグループを強調表示します。作成された TensorBoard は便利であり、機械学習モデルの調整にも同様に重要に扱われます。この視覚化ツールは、構成ログ ファイル用に設計されています。

下の写真を見てください。

テンソルボード

ニューラル ネットワークは、異なる ' を接続する方法を決定します。 ニューロン ' と、モデルが結果を予測できる前のレイヤーの数。アーキテクチャを定義したら、モデルをトレーニングするだけでなく、予測の精度を計算するためのメトリクスもトレーニングする必要があります。この指標は損失関数と呼ばれます。目的は、損失関数として使用することです。

TensorBoard は、メトリクスを視覚化し、潜在的な問題を浮き彫りにする優れたツールです。ニューラル ネットワークが解決策を見つけるまでに、数時間から数週間かかる場合があります。 TensorBoard はパラメータを非常に頻繁に更新します。

TensorBoard は次の URL にあります。 http://ローカルホスト:6006

TensorBoard のダッシュボードの種類

テンソルボード

1. スカラーダッシュボード

時間依存の統計を視覚化するために使用されます。たとえば、学習率や損失関数の変動を調べたい場合があります。

2. ヒストグラム

TensorBoard のヒストグラム ダッシュボードには、Tensor の統計的分布が時間の経過とともにどのように変化したかが表示されます。記録されたデータを視覚化します。 tf.summary.ヒストグラム

Javaの静的キーワード

3. 配布ダッシュボード

これは、いくつかの高レベルの使用法を示しています。 tf.summary.ヒストグラム 。ディストリビューションでのいくつかの高レベルのスタートを示しています。グラフ上の各線は、データ全体の分布のパーセンタイルに関するヒントを示します。

4. 画像ダッシュボード

これは、 tf.summary.image 。行はラベルに対応し、列は実行に対応します。 TensorBoard のこの画像ダッシュボードを使用すると、カスタム ビジュアライゼーションを埋め込むことができます。

5.オーディオダッシュボード

これは、保存されたオーディオに再生可能なオーディオ ウィジェットを埋め込むための優れたツールです。 tf.summary.audio 。ダッシュボードには常にタグごとに最新のオーディオが埋め込まれています。

6. グラフエクスプローラー

これは主に TensorFlow モデルの検査を可能にするために使用されます。

7. プロジェクター

多次元データに使用される TensorFlow の埋め込みプロジェクター。埋め込みプロジェクターはチェックポイント ファイルからデータを読み取り、語彙ファイルなどの対応するデータを使用してセットアップされる場合があります。

8. テキストダッシュボード

テキスト ダッシュボードには、次の方法で保存されたテキスト エキスパートが表示されます。 tf.summary.text。 、ハイパーリンク、リスト、テーブルなどの機能がすべてサポートされています。

テンソルボード

TensorBoard のさまざまな見方

異なるビューは異なる形式の入力を受け取り、それらを異なる方法で表示します。オレンジ色の上部バーで変更できます。

    スカラー -分類精度などのスカラー値を視覚化します。グラフ-ニューラル ネットワーク モデルと同様に、モデルの計算グラフを視覚化します。配布物 -ニューラル ネットワークの重みなど、データが時間の経過とともにどのように変化するかを視覚化します。ヒストグラム -分布を 3 次元の視点で表示する、分布のさらに詳細なビュー。プロジェクター-単語の埋め込みを視覚化するために使用できます (つまり、単語の埋め込みは、単語の意味的関係を捉えた単語の数値表現です)。画像-画像データの可視化オーディオ-音声データの可視化文章-テキストデータの可視化

TensorBoard の使い方

MacOS およびコマンドライン Windows のターミナルから TensorBoard を開く方法を学びます。

コードについては、今後のチュートリアルで説明します。ここでの焦点は TensorBoard です。

まず、トレーニング中に使用するライブラリをインポートする必要があります。

春のjpa
 ## Import the library import tensorflow as tf import numpy as np 

データを作成いたします。これは 10000 行と列の配列です/p>

 X_train = (np.random.sample((10000,5))) y_train = (np.random.sample((10000,1))) X_train.shape 

以下のコードはデータを変換し、モデルを作成します。

学習率は 0.1 に等しいことに注意してください。この率をより高い値に変更すると、モデルは解を見つけられなくなります。上の写真の左側で起こったのがこれです。

以下の例では、作業ディレクトリ内、つまりノートブックまたは Python ファイルを保存する場所にモデルを保存します。 TensorFlow はパス内に、子フォルダー名 linreg を持つ train というフォルダーを作成します。

 feature_columns = [ tf.feature_column.numeric_column('x', shape=X_train.shape[1:])] DNN_reg = tf.estimator.DNNRegressor(feature_columns=feature_columns, # Indicate where to store the log file model_dir='train', hidden_units=[500, 300], optimizer=tf.train.ProximalAdagradOptimizer( learning_rate=0.1, l1_regularization_strength=0.001 ) ) 

出力:

 INFO:tensorflow:Using the default configuration. INFO:tensorflow:Using config:{'_model_dir': 'train/linreg', '_tf_random_seed': None, '_save_summary_steps': 100, '_save_checkpoints_steps': None, '_save_checkpoints_secs': 600, '_session_config': None, '_keep_checkpoint_max': 5, '_keep_checkpoint_every_n_hours': 10000, '_log_step_count_steps': 100, '_train_distribute': None, '_service': None, '_cluster_spec': , '_task_type': 'worker', '_task_id': 0, '_global_id_in_cluster': 0, '_master': '', '_evaluation_master': '', '_is_chief': True, '_num_ps_replicas': 0, '_num_worker_replicas': 1} 

最後のステップでは、モデルをトレーニングします。トレーニング期間中、TensorFlow はモデル ディレクトリに情報を書き込みます。

 # Train the estimator train_input = tf.estimator.inputs.numpy_input_fn( x={'x': X_train}, y=y_train, shuffle=False,num_epochs=None) DNN_reg.train(train_input,steps=3000) 

出力:

 INFO:tensorflow:Calling model_fn. INFO:tensorflow:Done calling model_fn. INFO:tensorflow:Create CheckpointSaverHook. INFO:tensorflow: Graph was finalized. INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op. INFO:tensorflow:Saving checkpoints for 1 into train/linreg/model.ckpt. INFO:tensorflow:loss = 40.060104, step = 1 INFO:tensorflow:global_step/sec: 197.061 INFO:tensorflow:loss = 10.62989, step = 101 (0.508 sec) INFO:tensorflow:global_step/sec: 172.487 INFO:tensorflow:loss = 11.255318, step = 201 (0.584 sec) INFO:tensorflow:global_step/sec: 193.295 INFO:tensorflow:loss = 10.604872, step = 301 (0.513 sec) INFO:tensorflow:global_step/sec: 175.378 INFO:tensorflow:loss = 10.090343, step = 401 (0.572 sec) INFO:tensorflow:global_step/sec: 209.737 INFO:tensorflow:loss = 10.057928, step = 501 (0.476 sec) INFO:tensorflow:global_step/sec: 171.646 INFO:tensorflow:loss = 10.460144, step = 601 (0.583 sec) INFO:tensorflow:global_step/sec: 192.269 INFO:tensorflow:loss = 10.529617, step = 701 (0.519 sec) INFO:tensorflow:global_step/sec: 198.264 INFO:tensorflow:loss = 9.100082, step = 801 (0.504 sec) INFO:tensorflow:global_step/sec: 226.842 INFO:tensorflow:loss = 10.485607, step = 901 (0.441 sec) INFO:tensorflow:global_step/sec: 152.929 INFO:tensorflow:loss = 10.052481, step = 1001 (0.655 sec) INFO:tensorflow:global_step/sec: 166.745 INFO:tensorflow:loss = 11.320213, step = 1101 (0.600 sec) INFO:tensorflow:global_step/sec: 161.854 INFO:tensorflow:loss = 9.603306, step = 1201 (0.619 sec) INFO:tensorflow:global_step/sec: 179.074 INFO:tensorflow:loss = 11.110269, step = 1301 (0.556 sec) INFO:tensorflow:global_step/sec: 202.776 INFO:tensorflow:loss = 11.929443, step = 1401 (0.494 sec) INFO:tensorflow:global_step/sec: 144.161 INFO:tensorflow:loss = 11.951693, step = 1501 (0.694 sec) INFO:tensorflow:global_step/sec: 154.144 INFO:tensorflow:loss = 8.620987, step = 1601 (0.649 sec) INFO:tensorflow:global_step/sec: 151.094 INFO:tensorflow:loss = 10.666125, step = 1701 (0.663 sec) INFO:tensorflow:global_step/sec: 193.644 INFO:tensorflow:loss = 11.0349865, step = 1801 (0.516 sec) INFO:tensorflow:global_step/sec: 189.707 INFO:tensorflow:loss = 9.860596, step = 1901 (0.526 sec) INFO:tensorflow:global_step/sec: 176.423 INFO:tensorflow:loss = 10.695, step = 2001 (0.567 sec) INFO:tensorflow:global_step/sec: 213.066 INFO:tensorflow:loss = 10.426752, step = 2101 (0.471 sec) INFO:tensorflow:global_step/sec: 220.975 INFO:tensorflow:loss = 10.594796, step = 2201 (0.452 sec) INFO:tensorflow:global_step/sec: 219.289 INFO:tensorflow:loss = 10.4212265, step = 2301 (0.456 sec) INFO:tensorflow:global_step/sec: 215.123 INFO:tensorflow:loss = 9.668612, step = 2401 (0.465 sec) INFO:tensorflow:global_step/sec: 175.65 INFO:tensorflow:loss = 10.009649, step = 2501 (0.569 sec) INFO:tensorflow:global_step/sec: 206.962 INFO:tensorflow:loss = 10.477722, step = 2601 (0.483 sec) INFO:tensorflow:global_step/sec: 229.627 INFO:tensorflow:loss = 9.877638, step = 2701 (0.435 sec) INFO:tensorflow:global_step/sec: 195.792 INFO:tensorflow:loss = 10.274586, step = 2801 (0.512 sec) INFO:tensorflow:global_step/sec: 176.803 INFO:tensorflow:loss = 10.061047, step = 2901 (0.566 sec) INFO:tensorflow:Saving checkpoints for 3000 into train/linreg/model.ckpt. INFO:tensorflow: Loss for the final step: 10.73032. 

Windowsユーザー向け

 cd C:UsersAdminAnaconda3 activate hello-tf 

TensorBoard を起動するには、このコードを使用できます

 tensorboard --logdir=.	rainlinreg