在TensorFlow中交换张量轴而不使用tf.transpose

4

我有一个未知形状的张量,但它至少是三维的,即shape=[a, b, c, ...]。 我想交换维度ab,但不知道张量的长度(所以我不能使用tf.transpose,如这个问题中建议的那样)


你找到了更好的解决方案吗? - codekitty
1个回答

2

这个方法可以实现功能,但不够美观:

tf.transpose(x, [1, 0] + [i+2 for i in range(tf.shape(x).shape[0]-2)])

2
你可以使用 tf.rank() 代替 tf.shape()tf.transpose(x, tf.concat([[1,0], tf.range(2, tf.rank(x))], 0) - Manolo Santos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接