在之前的博客中我说过,
一维度的矩阵是队列
二维度的矩阵是方阵
三维度的矩阵是大楼
四维度的矩阵是小区
我以三维矩阵来说 tf.reverse的意义,可以把它想象成一座大楼
import tensorflow as tf
t=tf.constant( [ [[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]],
[[ 10, 11, 12, 13],
[ 14, 15, 16, 17],
[ 18, 19, 20, 21]]
])
tf.reverse(t, [0]) 就是楼层互换,顶楼到底楼
tf.reverse(t, [0])
Out[55]:
<tf.Tensor: shape=(2, 3, 4), dtype=int32, numpy=
array([[[10, 11, 12, 13],
[14, 15, 16, 17],
[18, 19, 20, 21]],
[[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]]], dtype=int32)>
tf.reverse(t, [1]) 每层的列倒序
tf.reverse(t, [1])
Out[56]:
<tf.Tensor: shape=(2, 3, 4), dtype=int32, numpy=
array([[[ 8, 9, 10, 11],
[ 4, 5, 6, 7],
[ 0, 1, 2, 3]],
[[18, 19, 20, 21],
[14, 15, 16, 17],
[10, 11, 12, 13]]], dtype=int32)>
tf.reverse(t, [1]) 每层的倒行序
tf.reverse(t, [2])
Out[57]:
<tf.Tensor: shape=(2, 3, 4), dtype=int32, numpy=
array([[[ 3, 2, 1, 0],
[ 7, 6, 5, 4],
[11, 10, 9, 8]],
[[13, 12, 11, 10],
[17, 16, 15, 14],
[21, 20, 19, 18]]], dtype=int32)>