Tensorflowによるデータのマージ方法   – merge・merge_all –

TensorFlowの実行状態を可視化するツールとして、TensorBoardがあります。
このTensorBoardは非常に高機能であり、スカラー・テンソル・画像・計算グラフ等を簡単に可視化できます。

TensorBoardでデータを可視化するためには、プログラミング中でデータのマージを行う必要があります。
そこで今回はこのデータのマージ方法を調べました。

 

 

 

TensorBoard

TensorBoardはTensorFlowに付属しているデータの可視化ツールです。
TensorBoardを利用するためには、プログラムにデータ取得のための設定を行う必要があります。

使い方は下記の記事を参照してください。

 

 

プログラム中でデータ取得の設定を行った後、取得するデータのマージを行うことで、Tensorboardでデータを見ることができるようになります。

今回はこのマージ命令について詳しく見てみました。

 

データのマージ

データのマージ方法はよく使うものとして次の三つがあります。

 

  1. merge_allによる一括マージ
  2. mergeによる個別マージ
  3. collections引数指定によるマージ設定

 

tf.summary.merge_allによる一括指定

最もよく使用するマージの方法として、tf.summary.merge_allがあります。

この関数はプログラム中に設定したデータの取得を一括して行うことができます。

上記の例のようにtf.summary.merge_all()を行えば、すべてのデータのマージを行うことができます。

 

tf.summary.mergeによる個別指定

tf.summary.merge_allを使用すれば設定したデータをすべてマージすることができます。しかし場合によってはすべてではなく一部のみマージしいことがあると思います。

そのような場合にしようするのがtf.summary.mergeです。

tf.summary.scalarなどのデータ取得設定関数は返り値として Summary のプロトコルバッファを出力します。

このプロトコルバッファまたはプロトコルバッファの行列ををtf.summary.mergeの引数として渡せば、個別でマージを実行することができます。

 

collections引数による指定

tf.summary.scalarなどのデータ取得設定関数は返り値としてプロトコルバッファを出力しますが、
出力のほかに内部でリストの形式で記録されています。

tf.summary.merge_allはこの内部で保存されたリストをもとにマージを実行します。

 

この保存するリストはデフォルトでは、 tf.GraphKeys.SUMMARIES ですが、データ取得設定関数のcollections引数から変更することができます。

 

まとめ

  • TensorFlowでデータをマージするには次の方法がある。
  • tf.summary.merge_allによる一括マージ
  • tf.summary.mergeによる個別マージ
  • collections引数によるマージコレクションの指定

 

関連記事

ニューラルネットワーク・ディープラーニングのまとめ

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA