0
私がしたいことは、1台のマシンから別のマシンのバックプロパゲーションプロセスをシミュレートすることです。layer3のグラデーションを取得します。d(layer3_output)/d(layer1_output)
グラントを受け取って渡す方法前のレイヤーに?テンソルフローで計算された勾配を適用できますか?
私がしたいことは、1台のマシンから別のマシンのバックプロパゲーションプロセスをシミュレートすることです。layer3のグラデーションを取得します。d(layer3_output)/d(layer1_output)
グラントを受け取って渡す方法前のレイヤーに?テンソルフローで計算された勾配を適用できますか?
ネットワークを作成して損失を掛けるときは、を最小化するをオプティマイザ(最小限の場合)が "apply_gradients"と呼んでいると呼びます。この関数はグラデーションコンピューティング操作をグラフに追加します。あなたがしなければならないのは、部分偏導関数を担当するopを要求し、precomputed偏導関数をfeed_dictオプションで渡すことだけです。テンソルボードを使用してグラフを視覚化し、関心のあるグラデーションの名前を調べます。デフォルトでは、グラデーションネームスコープになります。各オペレーションの名前は操作に似ていますので、gradient/output_op:0
など
私は、単一のマシンで実行しているときにオプティマイザを呼び出す方法を知っています。しかし、私の現在のケースでは、別のレイヤーを格納するために別のレイヤーを使用しています。合成されたレイヤーを非同期的に訓練したいので、レイヤーを更新するために計算された勾配(numpyの配列)を適用します。 – xxx222
DNIを実装していますか?次に、実際のグラデーションのように任意のopを適用する能力を与えるので、 "apply_gradients"関数を実行する必要があります。 – lejlot
ありがとう!最上階層にグラデーションがある場合、いくつかのレイヤーのグラデーションを伝播させることができますか? – xxx222