Tensorflow:如何用张量提供占位符变量?

标签 tensorflow

我有一个占位符变量,需要一批输入图像:

input_placeholder = tf.placeholder(tf.float32, [None] + image_shape, name='input_images')

现在我有两个输入数据源:
1)一个张量和
2)一些numpy数据。

对于 numpy 输入数据,我知道如何将数据提供给占位符变量:

sess = tf.Session()
mLoss, = sess.run([loss], feed_dict = {input_placeholder: myNumpyData})

如何将张量提供给该占位符变量?

mLoss, = sess.run([loss], feed_dict = {input_placeholder: myInputTensor})

给我一​​个错误:

TypeError: The value of a feed cannot be a tf.Tensor object. Acceptable feed values include Python scalars, strings, lists, or numpy ndarrays.

我不想使用 .eval() 将张量转换为 numpy 数组,因为这会减慢我的程序速度,还有其他方法吗?

最佳答案

这个问题2016年就在GitHub上讨论过,请查看here 。这是concretevitamin的要点:

One key thing to note is that Tensor is simply a symbolic object. The values of your feed_dict are the actual values, e.g. a Numpy ndarry.

张量作为符号对象在图内流动,而实际值在图外,那么我们只能将实际值传入图内,而符号对象不能存在于图外。

关于Tensorflow:如何用张量提供占位符变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42560209/

相关文章:

python - 在tensorflow中Conv1d的情况下如何实现平均池化?

python - 如何在 tensorflow 中保存和加载 DNN 分类器?

gpu - 将 GPU 用作视频卡和 GPGPU

python - 如何将图像转换为 .tflite 输入

python - 随机变量的运算在 Tensorflow 中无法正常工作

python - 使用 tf.data 和 mode.fit 时 1DConv 输入的维度出错

tensorflow - 使用 BERT (TF 1.x) 保存的模型执行推理

python - 什么是如何阅读 TensorBoard 的直方图特征的一个很好的解释?

python - 喀拉斯 ZeroDivisionError : integer division or modulo by zero

python - 检查目标 : expected dense_49 to have 4 dimensions, 时出错,但得到形状为 (2250, 3) 的数组