我正在使用一个如下所示的张量:
X = tf.constant([['a', 'y', 'b'],
['b', 'y', 'a'],
['a', 'y', 'c'],
['c', 'y', 'a'],
['a', 'y', 'd'],
['c', 'y', 'd'],
['b', 'y', 'c'],
['f', 'y', 'e']])
我希望以能够检索每个嵌套张量的第一个元素(即“a”、“b”、“a”、“c”……)的方式迭代此操作,并执行一些操作该迭代中的操作。
我尝试过使用 tf.slice() 操作,但我是 tensorflow 新手,无法弄清楚如何进行操作。任何帮助将不胜感激。谢谢!
最佳答案
您可能还没有评估张量。使用 tensor.eval()
或 session.run(tensor)
评估结果:
import tensorflow as tf
X = tf.constant([['a', 'y', 'b'],
['b', 'y', 'a'],
['a', 'y', 'c'],
['c', 'y', 'a'],
['a', 'y', 'd'],
['c', 'y', 'd'],
['b', 'y', 'c'],
['f', 'y', 'e']])
with tf.Session() as sess:
for i in X[:,0].eval():
element= i.decode("utf-8")
print(element)
# Or using sess.run()
#for j in sess.run(X[:,0]):
# element= j.decode("utf-8")
# print(element)
输出:
a
b
a
c
a
c
b
f
关于python - 如何迭代tensorflow,python中每个嵌套张量的第一个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57202717/