【发布时间】:2019-02-27 05:34:31
【问题描述】:
我想使用以下代码在 Tensorflow 中将张量的子数组等同起来:
import tensorflow as tf
a = tf.zeros(shape=[2,2])
b = tf.placeholder(shape = [1])
a[0,0] = b
但是有一个错误信息“'Tensor'对象不支持项目分配”。我想知道为什么。
【问题讨论】:
标签: python tensorflow
我想使用以下代码在 Tensorflow 中将张量的子数组等同起来:
import tensorflow as tf
a = tf.zeros(shape=[2,2])
b = tf.placeholder(shape = [1])
a[0,0] = b
但是有一个错误信息“'Tensor'对象不支持项目分配”。我想知道为什么。
【问题讨论】:
标签: python tensorflow
Tensorflow 中的张量是构建计算图的组件。在 Tensorflow 中,张量在会话中进行评估。对于您的问题-我的猜测是赋值运算符可能是模棱两可的,因为它可能意味着按值或按引用相等(意味着a[0,0] 连接到b),这并不理想。如果你想用高维张量/矩阵进行计算,你可以使用 numpy. TensorFlow 不是为此目的而构建的。
另外,对 Tensorflow 的抱怨之一是它不是很 Python。您可以查看 pytorch 以获得更 Python 的深度学习体验。
【讨论】: