tf.linspace时出现tensorflow.python.framework.errors_impl.NotFoundError

环境:conda(Python3.7)、tensorflow_gpu2.1.0

import tensorflow as tf
x = tf.linspace(-8, 8, 100)
y = tf.linspace(-8, 8, 100)

运行此代码时出现错误

tensorflow.python.framework.errors_impl.NotFoundError: Could not find valid device for node.
Node:{{node LinSpace}}
All kernels registered for op LinSpace :
  device='XLA_GPU'; Tidx in [DT_INT32, DT_INT64]; T in [DT_FLOAT, DT_DOUBLE, DT_BFLOAT16, DT_HALF]
  device='XLA_CPU'; Tidx in [DT_INT32, DT_INT64]; T in [DT_FLOAT, DT_DOUBLE, DT_BFLOAT16, DT_HALF]
  device='XLA_GPU_JIT'; Tidx in [DT_INT32, DT_INT64]; T in [DT_FLOAT, DT_DOUBLE, DT_BFLOAT16, DT_HALF]
  device='XLA_CPU_JIT'; Tidx in [DT_INT32, DT_INT64]; T in [DT_FLOAT, DT_DOUBLE, DT_BFLOAT16, DT_HALF]
  device='CPU'; T in [DT_DOUBLE]; Tidx in [DT_INT64]
  device='CPU'; T in [DT_DOUBLE]; Tidx in [DT_INT32]
  device='CPU'; T in [DT_FLOAT]; Tidx in [DT_INT64]
  device='CPU'; T in [DT_FLOAT]; Tidx in [DT_INT32]
  device='GPU'; T in [DT_DOUBLE]; Tidx in [DT_INT64]
  device='GPU'; T in [DT_DOUBLE]; Tidx in [DT_INT32]
  device='GPU'; T in [DT_FLOAT]; Tidx in [DT_INT64]
  device='GPU'; T in [DT_FLOAT]; Tidx in [DT_INT32]
 [Op:LinSpace]

查阅tensorflow官方文档时看到

For example:
  tf.linspace(10.0, 12.0, 3, name="linspace") => [ 10.0  11.0  12.0]

可以看到此处用了小数,即float类型
因此,我们写的代码也要是类型为float
所以在-8或者8后加一个 .

import tensorflow as tf
x = tf.linspace(-8., 8, 100)
y = tf.linspace(-8., 8, 100)

问题解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值