[인공지능] pytorch

뽕칠이·2024년 7월 8일

pytorch란

파이썬 기반의 인공지능 프레임워크다.

데이터의 형태

1차원 형태의 데이터는 벡터(vector), 2차원 형태의 데이터는 행렬(Matrix), 3차원 이상 형태의 데이터는 텐서(Tensor)라고 부른다.

2D Tensor

data = (batch size, dimension)

크기가 64인 데이터가 100개를, 2D텐서로 표현하면 100 x 64이다.

3D Tensor

data = (batch size, width, height)

대표적인 예시로 이미지 데이터가 여러 개 쌓여있는 형태를 의미한다.

언어 처리 관점에서의 3D Tensor
data = (batch size, length, dimension)
(batch size, 문자의 길이, 벡터의 차원)

데이터 형태 변경

View

텐서의 크기를 변경해주는 역할

t = np.array([[[0, 1, 2],
               [3, 4, 5]],
              [[6, 7, 8],
               [9, 10, 11]]])
ft = torch.FloatTensor(t)

print(tf.shape)		// torch.Size([2, 2, 3])

차원 변경

print(ft.view([-1, 3])				 // (?, 3) 크기인 텐서로 변경
print(ft.view([-1, 3].shape)		// torch.Size([4,3])

0개의 댓글