ストップグラデーション

パブリック最終クラスStopGradient

勾配の計算を停止します。

グラフ内で実行されると、この演算は入力テンソルをそのまま出力します。

勾配を計算する演算を構築する場合、この演算により入力の寄与が考慮されなくなります。通常、勾配ジェネレーターはグラフに演算を追加し、その計算に寄与した入力を再帰的に見つけ出すことで、指定された「損失」の導関数を計算します。この演算をグラフに挿入すると、入力は勾配ジェネレーターからマスクされます。それらは勾配の計算には考慮されません。

これは、TensorFlow で値を計算したいが、その値が定数であるかのように振る舞う必要がある場合に便利です。例としては次のようなものがあります。

  • M ステップがE ステップの出力を介した逆伝播を必要としないEMアルゴリズム。
  • ボルツマン マシンの対比発散トレーニング。エネルギー関数を微分する場合、モデルからサンプルを生成したグラフを通じてトレーニングが逆伝播してはなりません。
  • 敵対的トレーニング。敵対的サンプルの生成プロセスを通じてバックプロップが発生しないようにします。

パブリックメソッド

出力<T>
asOutput ()
テンソルのシンボリック ハンドルを返します。
静的 <T> StopGradient <T>
create (スコープscope、オペランド<T>入力)
新しい StopGradient オペレーションをラップするクラスを作成するためのファクトリ メソッド。
出力<T>

継承されたメソッド

パブリックメソッド

public Output <T> asOutput ()

テンソルのシンボリック ハンドルを返します。

TensorFlow オペレーションへの入力は、別の TensorFlow オペレーションの出力です。このメソッドは、入力の計算を表すシンボリック ハンドルを取得するために使用されます。

public static StopGradient <T> create (スコープscope、オペランド<T>入力)

新しい StopGradient オペレーションをラップするクラスを作成するためのファクトリ メソッド。

パラメーター
範囲現在のスコープ
戻り値
  • StopGradient の新しいインスタンス

public出力<T>出力()