TensorFlow中compute_gradients函数返回列表部分为None
tensorflow在使用opt.compute_gradients函数传入loss计算梯度时,不知道为什么返回的列表中,部分的变量对中的梯度为None。
// 原本的compute_gradients代码
grads = opt.compute_gradients(loss)
后经查阅资料后发现,compute_gradients函数会计算所有的variables的梯度,并不只只是我所关心的variables,然后其他的variables返回的梯度可能为None,所以最后产生的列表中部分变量梯度为None,修改方式:
grads = opt.compute_gradients(loss, [var_list])
或者如果实在无法找出我们关心的var_list