tensorflow實現分段優化
05-17
tensorflow實現分段優化
來自專欄 Fly的學術小窩
代碼如下
print(tf.trainable_variables()) var1 = tf.trainable_variables()[0:32] var2 = tf.trainable_variables()[33:] train_op1 = tf.train.AdamOptimizer(0.001*lr).minimize(loss, var_list=var1) train_op2 = tf.train.AdamOptimizer(lr).minimize(loss, var_list=var2) train_op = tf.group(train_op1, train_op2)
通過print的所有變數,可以只有劃分各個變數的梯度
另外還有一種方式,是直接計算梯度,然後自己對梯度的權重賦值,不如這個方法簡潔
需要注意,有部分操作,會導致梯度不能回傳,可以用print(opt.compute_gradients(loss))的函數來看哪些梯度沒有計算
推薦閱讀:
※給妹紙的深度學習教學(6)——實用技巧
※驗證碼識別(1) -- 1 個字元,1 個 softmax 層,正確率 92%
※斯坦福TensorFlow課CS20第七講筆記:使用TensorFlow實現CNN
※Keras:基於Python的深度學習庫
※TensorFlow.js tutorial(1)簡介與安裝
TAG:TensorFlow |