[PyTorch] Tensor의 기초 함수 및 메서드

beaver.zip·2024년 8월 9일
0

최대, 최소 - max(), min()

max()

  • 텐서에서 가장 큰 값을 반환
  • 예시: torch.tensor([1, 2, 3]).max() → 3

min()

  • 텐서에서 가장 작은 값을 반환
  • 예시: torch.tensor([1, 2, 3]).min() → 1

차원, 크기, 개수 - dim(), size(), shape, numel()

dim()

  • 텐서의 차원 수를 반환
  • 예시: torch.tensor([[1, 2], [3, 4]]).dim() → 2

size() or shape

  • 텐서의 각 차원의 크기를 나타내는 튜플을 반환
  • 예시: torch.tensor([[1, 2], [3, 4]]).size() → torch.Size([2, 2])
  • 이때 shape는 메서드가 아닌 속성임에 유의!

numel()

  • 텐서의 모든 요소의 개수를 반환
  • 예시: torch.tensor([[1, 2], [3, 4]]).numel() → 4

통계 - sum(), prod(), mean(), var(), std()

sum()

  • 텐서의 모든 요소의 합을 계산
  • 예시: torch.tensor([1, 2, 3]).sum() → 6

prod()

  • 텐서의 모든 요소의 곱을 계산
  • 예시: torch.tensor([1, 2, 3]).prod() → 6

mean()

  • 텐서의 모든 요소의 평균을 계산
  • 예시: torch.tensor([1, 2, 3]).mean() → 2.0

var()

  • 텐서의 분산을 계산
    예시: torch.tensor([1, 2, 3]).var() → 0.6667

std()

  • 텐서의 표준편차를 계산
  • 예시: torch.tensor([1, 2, 3]).std() → 0.8165

예제

import torch
x = torch.randn(3, 4) # 3행 4열의 정규 분포 난수 tensor 생성

print("max:", x.max())
print("min:", x.min())
print("mean:", x.mean())
print("std:", x.std())
print("dim:", x.dim())
print("size:", x.size())
print("numel:", x.numel())

<출력 결과>
max: tensor(2.8438)
min: tensor(-1.6195)
mean: tensor(-0.1226)
std: tensor(1.1859)
dim: 2
size: torch.Size([3, 4])
numel: 12
profile
NLP 일짱이 되겠다.

0개의 댓글