私のネットワークには、他の操作の中でも、かなり複雑な量子化レイヤーがあります。tf.tile
とtf.expand_dims
opsです。私のネットワークはうまく訓練していないことに気づいた。いくつかのデバッグ出力を見てみると、この量子化レイヤーの前に完全に接続されたレイヤーは重み付けのグラデーションがゼロになっていることがわかりました(私はこれを決定するのにoptimizer.compute_gradients
を使用しました)。これは、量子化レイヤーがトレーニングで更新されない前に何があったのかを意味しますか?自動勾配をサポートする操作はどれですか?
一般的にどのような操作がグラデーションを通過させるのか、どの操作が通過しないのか把握するにはどうすればよいですか?
がLookupError: No gradient defined for operation [...]
だからあなたの問題はどこか別の場所のようだ:たとえば、tf.tile
mentioniedとtf.expand_dims
は、あなたがエラーを取得します、あなたのモデルに勾配のない操作がある場合は勾配がthrough`
入力していただきありがとうございます。知っておいてよかった。私は疑問が解決されたと思う。 – fabian789