首页 > 解决方案 > TensorFlow 获取优化器计算的更新

问题描述

tf中,优化器类只有两个功能:

where返回一个通过函数apply_gradients执行更新的操作。w <- w + Δwtf.assign_add

但是我需要直接访问它Δw本身。(或w' = w+Δw)。我知道优化器将节点添加到计算图中,Δw为每个变量计算它。我怎样才能访问它们?还是我必须自己重新实现优化器?

原因是我需要计算梯度dw'/dw,因为我正在研究与基于梯度的超参数优化相关的事情(参见https://arxiv.org/abs/1703.01785

标签: tensorflow

解决方案


要获得更新,您只需在执行后直接w'打印即可。目前是.woptimizer.apply_gradients()ww'

现在,如果要获取 的梯度w,只需进行 的操作即可w'-w


推荐阅读