[5.0, 3.0, 7.1]
是一个向量,它是一个一维张量。不能使用矩阵语法对向量进行切片或索引,例如使用
[:, 0]
但是,要访问向量的第一个元素,您需要(简单地)使用
[0]
.所以,你的代码可以如下工作
import tensorflow as tf
def compute_area(sides):
a, b, c = sides[0], sides[1], sides[2]
# Heron formula
s = (a + b + c) * 0.5
area_sq = s * (s - a) * (s - b) * (s - c)
return tf.sqrt(area_sq)
with tf.Session() as sess:
area = compute_area(tf.constant([5.0, 3.0, 7.1]))
result = sess.run(area)
print(result)
在章节中”
Referring to tf.Tensor slices
“(关于张量的官方张贴文章),您有更多关于TensorFlow中的张量和切片张量的信息。