본문 바로가기
함수 설명/인공지능 (Pytorch)

[PyTorch] 텐서의 지수 계산: torch.exp() 설명

by First Adventure 2024. 8. 25.
반응형

소개

  torch.exp는 PyTorch에서 텐서의 각 요소에 대해 지수 함수(exponential function)를 적용하는 함수입니다. 이 함수는 자연상수 𝑒 (약 2.71828)의 거듭제곱을 계산하며, 입력된 텐서의 모든 요소에 대해 개별적으로 연산을 수행합니다. torch.exp는 딥러닝에서 소프트맥스(softmax) 함수 계산이나 로그-소프트맥스(log-softmax)와 같은 확률 분포 관련 작업에서 자주 사용됩니다.

 

기본 사용법

상세 설명

  • torch.exp(tensor)는 입력된 텐서의 모든 요소에 대해 자연상수 𝑒의 지수값을 계산합니다.
  • 2차원 텐서에 대해서도 동일하게 모든 요소에 대해 지수 계산을 수행할 수 있습니다.
  • 이 함수는 로그-소프트맥스(log-softmax) 및 확률 분포 계산에 필수적이며, 특히 소프트맥스 함수 계산에 자주 사용됩니다.
  • 딥러닝에서의 출력 확률 계산이나 비선형 변환을 수행할 때 유용합니다. 예를 들어, 신경망의 마지막 레이어에서 소프트맥스 함수로 변환하기 전에 각 요소에 대해 지수 계산을 할 때 torch.exp가 사용됩니다.

예시 설명

  • 첫 번째 예시에서 torch.exp(tensor)는 1D 텐서 [0.0, 1.0, 2.0]의 각 요소에 대해 지수 계산을 수행하여 [1.0, 2.7183, 7.3891]을 반환합니다.
  • 두 번째 예시에서는 2D 텐서의 각 요소에 대해 지수 계산을 수행하여 결과를 반환합니다.
import torch

# 1D 텐서 생성
tensor = torch.tensor([0.0, 1.0, 2.0])

# 텐서의 각 요소에 대해 지수 함수 적용
exp_result = torch.exp(tensor)
print(exp_result)
# 출력: tensor([ 1.0000,  2.7183,  7.3891])

# 2D 텐서 생성
tensor = torch.tensor([[0.0, 1.0, 2.0], [3.0, 4.0, 5.0]])

# 텐서의 각 요소에 대해 지수 함수 적용
exp_result = torch.exp(tensor)
print(exp_result)
# 출력: tensor([[  1.0000,   2.7183,   7.3891],
#              [ 20.0855,  54.5981, 148.4132]])

 

라이센스

  PyTorch의 표준 라이브러리와 내장 함수들은 BSD-style license 하에 배포됩니다. 이 라이센스는 자유 소프트웨어 라이센스로, 상업적 사용을 포함한 거의 모든 용도로 사용이 가능합니다. 라이센스와 저작권 정보는 PyTorch의 공식 GitHub 리포지토리에서 확인할 수 있습니다.

 

관련 내용

  

 

반응형