1. 程式人生 > 程式設計 >tensorflow 檢視梯度方式

tensorflow 檢視梯度方式

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 檢視梯度方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。