最近在根据pytorch的代码改写为tensorflow2的。其中,pytorch中求tensor的矩阵大小,直接用size就可以了。例如:
#简洁明了
>>> torch.empty(3, 4, 5).size()
torch.Size([3, 4, 5])
但是到TensorFlow2中,是不能这样了。TensorFlow2中应该使用shape
Returns the shape of a tensor.
tf.shape(
input, out_type=tf.dtypes.int32, name=None
)
t = tf.constant([[[1, 1, 1], [2, 2, 2]], [[3, 3, 3], [4, 4, 4]]])
tf.shape(t)
<tf.Tensor: shape=(3,), dtype=int32, numpy=array([2, 2, 3], dtype=int32)>
tf.shape(t).numpy()
array([2, 2, 3], dtype=int32)
tf.size(t) # 这个和torch.numel(t)是一个意思了
<tf.Tensor: shape=(), dtype=int32, numpy=12>