【发布时间】:2019-04-07 00:06:39
【问题描述】:
例如,我正在尝试交叉堆叠两个张量
[0,1,2],[2,3]->[[0,2],[0,3],[1,2],[1,3],[2,2],[2,3]]
有人知道哪个函数可以做到这一点吗?
【问题讨论】:
-
如果有这样的功能,很有可能在其描述中提到“笛卡尔积”(或者可能是直积)。
标签: python tensorflow
例如,我正在尝试交叉堆叠两个张量
[0,1,2],[2,3]->[[0,2],[0,3],[1,2],[1,3],[2,2],[2,3]]
有人知道哪个函数可以做到这一点吗?
【问题讨论】:
标签: python tensorflow
我认为这可以满足您的需要:
import tensorflow as tf
a = tf.constant([0, 1, 2])
b = tf.constant([2, 3])
c = tf.stack(tf.meshgrid(a, b, indexing='ij'), axis=-1)
c = tf.reshape(c, (-1, 2))
with tf.Session() as sess:
print(sess.run(c))
输出:
[[0 2]
[0 3]
[1 2]
[1 3]
[2 2]
[2 3]]
【讨论】: