[英]How to iterate over a tensor in Tensorflow?
假設我們得到像這樣的張量x = [[[1,2],[3,4]],[[5,6],[7,8]]]
。 我想要一個tensorflow操作,使得它返回第一個嵌套張量的每個元素的加1。 即結果操作將返回[[[2,3],[3,4]],[[6,7],[7,8]]]
。 我知道tf.map_fn
操作,但我找不到使用此操作實現的方法。 如何解決這個問題呢?
您可以在第一個軸上分割張量,在第一個軸上添加一個張量,然后使用tf.stack
堆疊新舊張量:
>>> x = tf.constant([[[1, 2], [3, 4]],[[5, 6], [7, 8]]])
>>> with tf.Session() as sess:
... sess.run(tf.stack((x[:,0] + 1, x[:, 1]), axis=1))
...
array([[[2, 3],
[3, 4]],
[[6, 7],
[7, 8]]], dtype=int32)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.