Numpy

1차원

import numpy as np
import torch

 

1차원 넘파이 리스트 ([0,1,2,3,4,5]) 선언 -> np_1d

np_1d = np.array([0., 1., 2., 3., 4., 5.])

1차원 넘파이 리스트 확인

print(np_1d)
print(np_1d.ndim)    # Rank
print(np_1d.shape)   # Shape
[0. 1. 2. 3. 4. 5.]
1
(6,)

 

1차원 넘파이 리스트 슬라이싱 (slicing)

print(np_1d[0])
print(np_1d[-1])
print(np_1d[1:3])
0.0
5.0
[1. 2.]

2차원

2차원 넘파이 리스트 ([0, 1, 2], [3, 4, 5], [6, 7, 8]) 선언 -> np_2d

np_2d = np.array([[0., 1., 2.], [3., 4., 5.], [6., 7., 8.]])

2차원 넘파이 리스트 확인

print(np_2d)
print(np_2d.ndim)    # Rank
print(np_2d.shape)   # Shape
[[0. 1. 2.]
 [3. 4. 5.]
 [6. 7. 8.]]
2
(3, 3)

2차원 넘파이 리스트 슬라이싱(slicing)

print(np_2d[0])
print(np_2d[-1])
print(np_2d[1:3])
print(np_2d[0,1])
print(np_2d[1, :])
print(np_2d[:, 1])
[0. 1. 2.]
[6. 7. 8.]
[[3. 4. 5.]
 [6. 7. 8.]]
1.0
[3. 4. 5.]
[1. 4. 7.]

 

PyTorch

1차원

Pytorch 사용 시 numpy 리스트 활용 가능

np_1d = np.array([0., 1., 2., 3., 4., 5.])
tc_1d = torch.FloatTensor(np_1d)
print(tc_1d)
tensor([0., 1., 2., 3., 4., 5.])

(또는, 바로 사용 가능)

1차원 토치 텐서 ([0,1,2,3,4,5]) 선언 -> tc_1d

tc_1d = torch.FloatTensor([0., 1., 2., 3., 4., 5.])

1차원 토치 텐서 ([0,1,2,3,4,5]) 확인

print(tc_1d)
print(tc_1d.dim())    # Rank
print(tc_1d.shape)    # Shape
print(tc_1d.size())   # Shape = Size
tensor([0., 1., 2., 3., 4., 5.])
1
torch.Size([6])
torch.Size([6])

텐서 확인시, shape 함수나 size 함수로 텐서 확인 : 1차원이며, 6개 배열을 가지고 있음.

 

1차원 텐서 슬라이싱(slicing)

print(tc_1d[0])
print(tc_1d[-1])
print(tc_1d[1:3])
tensor(0.)
tensor(5.)
tensor([1., 2.])

2차원

 

2차원 토치 텐서 ([0, 1, 2], [3, 4, 5], [6, 7, 8]) 선언 -> tc_2d

tc_2d = torch.FloatTensor([[0., 1., 2.], [3., 4., 5.], [6., 7., 8.]])

2차원 토치 텐서 확인

print(tc_2d)
print(tc_2d.dim())    # Rank
print(tc_2d.shape)    # Shape
print(tc_2d.size())   # Shape = Size
tensor([[0., 1., 2.],
        [3., 4., 5.],
        [6., 7., 8.]])
2
torch.Size([3, 3])
torch.Size([3, 3])

텐서 확인시, shape 함수나 size 함수로 텐서 확인 : 2차원이며, 3개 배열, 3개 원소를 가지고 있음.

 

2차원 토치 텐서 슬라이싱(slicing)

print(tc_2d[0])
print(tc_2d[-1])
print(tc_2d[1:3])
print(tc_2d[0,1])
print(tc_2d[1, :])
print(tc_2d[:, 1])
tensor([0., 1., 2.])
tensor([6., 7., 8.])
tensor([[3., 4., 5.],
        [6., 7., 8.]])
tensor(1.)
tensor([3., 4., 5.])
tensor([1., 4., 7.])
반응형

+ Recent posts