tensorflow - TensorFlow 自定义损失馈送
问题描述
我想输入计算的损失(即 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')))
然后错误也和上面一样
它期望什么价值?
解决方案
推荐阅读
- python - 将新值分配给 numpy 数组的问题
- swift - swift:mailcomposeviewcontroller 不会关闭
- html - 如何使内联 HTML 样式覆盖 CSS 样式?
- javascript - 如何为以下场景配置 elasticserach 7.3 自动补全
- php - 将 Auth 用户数据传递给队列作业类
- cypress - 在第一次赛普拉斯运行期间出现错误在 Windows 上生成 EPERM
- python - Python:我可以在登录文件之前修改日志内容吗?
- r - 使用特定字符串在数据集中保持观察 - R
- android - Android 发布版本 - MissingDefaultResource “错误”
- python - 如何在python中求解组合微分方程?