diff options
author | Anjali Sridhar <anjalisridhar@google.com> | 2018-09-12 14:21:52 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-09-12 14:24:58 -0700 |
commit | 1d95b20a4ebad65c82ea34084f5277241a484f4f (patch) | |
tree | b57ba8f885bff2c1fe094814c8ffdac710726731 /tensorflow/contrib/optimizer_v2 | |
parent | c2b3222ac552e9698968c9a212095dbc8b9ca40b (diff) |
Fix the colocate_with issue for Adagrad optimizerV2.
PiperOrigin-RevId: 212702577
Diffstat (limited to 'tensorflow/contrib/optimizer_v2')
-rw-r--r-- | tensorflow/contrib/optimizer_v2/adagrad.py | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/tensorflow/contrib/optimizer_v2/adagrad.py b/tensorflow/contrib/optimizer_v2/adagrad.py index c333d1e089..25ec475499 100644 --- a/tensorflow/contrib/optimizer_v2/adagrad.py +++ b/tensorflow/contrib/optimizer_v2/adagrad.py @@ -64,18 +64,17 @@ class AdagradOptimizer(optimizer_v2.OptimizerV2): def _create_vars(self, var_list, state): for v in var_list: - # TODO(isaprykin): Delete colocate_with(v) from other optimizers and - # confirm that colocation will happen anyway. dtype = v.dtype.base_dtype if v.get_shape().is_fully_defined(): init = init_ops.constant_initializer(self._initial_accumulator_value, dtype=dtype) else: - # Use a Tensor instead of initializer if variable does not have static - # shape. - init_constant = gen_array_ops.fill( - array_ops.shape(v), self._initial_accumulator_value) - init = math_ops.cast(init_constant, dtype) + def init(v=v, dtype=dtype): + # Use a Tensor instead of initializer if variable does not have + # static shape. + init_constant = gen_array_ops.fill(array_ops.shape(v), + self._initial_accumulator_value) + return math_ops.cast(init_constant, dtype) state.create_slot_with_initializer(v, init, v.get_shape(), dtype, "accumulator") |