[python] 파이썬 PyTorch에서 텐서의 차원을 변경하는 방법은?

PyTorch는 딥러닝 프레임워크로서, 다차원 배열인 텐서를 다루는 데 매우 효과적입니다. 텐서의 차원을 변경하는 방법에 대해 알아보겠습니다. 파이썬에서는 PyTorch 라이브러리를 설치한 뒤, 다음과 같은 방법으로 텐서의 차원을 변경할 수 있습니다.

import torch

# 2차원 텐서 생성
x = torch.tensor([[1, 2, 3],
                  [4, 5, 6]])

# 텐서의 차원 변경
# (2, 3) -> (3, 2)
y = x.view(3, 2)

print(y)

위의 예제 코드에서는 torch.tensor 함수를 사용하여 2차원 텐서 x를 생성합니다. 그리고 view 함수를 사용하여 텐서의 차원을 변경하고, 결과를 y에 저장합니다. view 함수의 인자로는 변경하려는 차원을 기입합니다. 이 경우에는 (2, 3)에서 (3, 2)로 변경하였습니다.

텐서의 차원을 변경하여 새로운 텐서를 생성한 것이므로, 원래 텐서 x와 변경된 텐서 y는 서로 다른 객체입니다. 따라서, x를 변경하여 y를 얻었더라도, x의 값이나 차원은 변하지 않습니다.

PyTorch에서 텐서의 차원을 변경하는 방법을 알아보았습니다. 텐서는 다양한 딥러닝 모델에서 중요한 요소이므로, 효율적이고 유연하게 다룰 수 있어야 합니다. 차원 변경은 이러한 텐서 다루기의 기본적인 기능 중 하나입니다.

참고 자료: