Я хочу скорректировать рассчитанный убыток (, который является self.calc_loss / d_reward_sum и его значение равно 1,0288568 ), на self.sess.run(tf.compat.v1.train.AdamOptimizer().minimize(d_reward_sum))
, затем он показывает ошибку
AttributeError: 'numpy .dtype 'объект не имеет атрибута' base_dtype '
Если я использую заполнитель
self.calc_loss = tf.placeholder(tf.float32)
self.train_opt = tf.compat.v1.train.AdamOptimizer().minimize(self.calc_loss)
...
train_modal = self.sess.run([self.train_opt],feed_dict = {
self.calc_loss :d_reward_sum ,
})
, тогда он выдаст ошибку
> ([str(v) for _, v in grads_and_vars], loss))
> ValueError: No gradients provided for any variable, check your graph for ops that do not
> support gradients, between variables ["<tf.Variable 'Variable:0'
> shape=(4, 24) dtype=float32_ref>", "<tf.Variable 'Variable_1:0'
> shape=(24,) dtype=float32_ref>", "<tf.Variable 'Variable_2:0'
> shape=(24, 12) dtype=float32_ref>", "<tf.Variable 'Variable_3:0'
> shape=(12,) dtype=float32_ref>", "<tf.Variable 'Variable_4:0'
> shape=(12, 4) dtype=float32_ref>", "<tf.Variable 'Variable_5:0'
> shape=(4,) dtype=float32_ref>", "<tf.Variable 'Variable_6:0' shape=(4,
> 2) dtype=float32_ref>"] and loss Tensor("Placeholder:0",
> dtype=float32).
Если я сделаю это
self.sess.run(tf.compat.v1.train.AdamOptimizer().minimize(tf.constant(4.1, tf.float32, name='A')))
Тогда также ошибка такая же, как указано выше
Какую ценность он ожидает?