tf2: Gradients do not exist for variables when minimizing the loss.
生活随笔
收集整理的這篇文章主要介紹了
tf2: Gradients do not exist for variables when minimizing the loss.
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
WARNING:tensorflow:Gradients do not exist for variables when minimizing the loss.
-
情況一
該變量沒有參與最后loss的計算(1)如果直接沒有參與計算,其實很好就能找出來,刪掉無用變量即可;
(2)有時直接參與計算了,但是由于程序中的 if 等條件語句,在某個batch的數(shù)據(jù)恰巧不適用某個變量,而其他batch可能就是使用了該變量,這種情況下,忽略該警告即可。 -
情況二
該變量在 model 的 call 之前就進(jìn)行了運算,或者在 tf.GradientTape() 之外進(jìn)行了運算,比如:concat,dense之類的都不行。 -
情況三
錯誤寫法:
創(chuàng)建一個變量或者常量,將計算出的結(jié)果一行一行 assign 進(jìn)去
修改后的寫法:
創(chuàng)建一個空 list,每次將計算出的結(jié)果 append 加入,最后使用 tf.stack() 操作
最后:這類型問題百度沒什么解答,github上討論的人很多。
總結(jié)
以上是生活随笔為你收集整理的tf2: Gradients do not exist for variables when minimizing the loss.的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TI-RTOS实时操作系统开发之功耗测试
- 下一篇: Android官方开发文档Trainin