tensorflow 檢視梯度方式
阿新 • • 發佈:2020-02-05
1. 為什麼要檢視梯度
對於初學者來說網路經常不收斂,loss很奇怪(就是不收斂),所以懷疑是反向傳播中梯度的問題
(1)求導之後的數(的絕對值)越來越小(趨近於0),這就是梯度消失
(2)求導之後的數(的絕對值)越來越大(特別大,發散),這就是梯度爆炸
所以說呢,當loss不正常時,可以看看梯度是否處於爆炸,或者是消失了,梯度爆炸的話,網路中的W也會很大,人工控制一下(初始化的時候弄小點等等肯定還有其它方法,只是我不知道,知道的大神也可以稍微告訴我一下~~),要是梯度消失,可以試著用用resnet,densenet之類的
2. tensorflow中如何檢視梯度
tf.gradients(y,x)這裡的就是y對於x的導數(dy/dx),x和y一定要有關聯哦~
直接tf.gradients(y_,weight1)就可以了~
以上這篇tensorflow 檢視梯度方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。