Python에서
Tensor 를 추상화하는 대표적인 class는 다음과 같음.
- numpy의 ndarray
- pytorch의
tensor
- tensorflow의
constant
이들의 대표적인 attributes는 다음과 같음.
dtype
: the datatype of elementndim
: the number of dimension (차원의 수로, rank라고도 불림)shape
:ndim
의 객수로 구성된 sequencty type의 인스턴스로 각 축의 크기를 나타냄.
다음은 Tensorflow에서는 지원하지 않으나, torch와 numpy에선 지원하는 것들임.
itemsize
: element 하나가 차지하는 bytes 크기.size
orsize()
: numpy는 그냥 attribute로, pytorch에선 method로 전체 element의 수를 반환.
예제
t = (1,2,3,4,5,6)
a = np.array(t)
print(a.ndim)
print(a.shape)
print(a.itemsize) #bytes
print(a.size)
print(a.dtype)
tensor = tf.constant(t)
print(tf.rank(tensor))
print(tensor.ndim)
print(tensor.shape)
# print(tensor.itemsize) #error. not supported
# print(tensor.size) #error. not supported
print(tensor.dtype)
p = torch.tensor(t)
print(p.ndim)
print(p.shape)
print(p.itemsize)
print(p.size()) # not attribute but method
print(p.dtype)
'Python' 카테고리의 다른 글
[DL] Tensor: Indexing <Simple, Slicing, Fancy, Boolean Mask> (0) | 2024.03.18 |
---|---|
[DL] Tensor: Transpose and Permute (2) | 2024.03.16 |
[DL] Tensor: dtype 변경(casting) 및 shape 변경. (0) | 2024.03.15 |
[DL] Tensor 간의 변환: NumPy, PyTorch, TensorFlow (0) | 2024.03.15 |
[Python] importlib.util.find_spec() (0) | 2024.03.08 |