728x90 반응형 Torch10 [PyTorch] Custom Model 과 torch.nn.Module의 메서드들. Custom Model 만들기0. nn.Module torch.nn.Module은 PyTorch에서 모든 신경망 모델과 계층의 기반이 되는 클래스임.Custom Model (사용자 정의 모델)부터 Built-in Layer(nn.Linear, nn.Conv2d, etc.)까지 전부 nn.Module을 상속받아 만들어짐.Model (or Submodule)을 구조화하고 학습 가능한 parameters를 관리하는 데 핵심적인 역할을 함. PyTorch에선 Model과 Layer 모두 nn.Module 의 sub-class가 됨. 때문에 모든 Custom Model은 nn.Module (또는 그 sub-class)을 상속하여 만들어진다. nn.Module은 다음의 특징을 가짐.생성자(__init__)에서 모델.. 2024. 4. 12. [PyTorch] CustomANN Example: From Celsius to Fahrenheit Optional Librariestorchviz: 0.0.2torchsummary: 1.5.1pip install --quiet torchvizpip install torchsummaryRequired Librariestorch : 2.2.1+cu121np : 1.25.2import numpy as npimport torchimport matplotlib.pyplot as plt# import torchviz, torchsummaryfrom torch.nn import Module, init, Linear, Parameter, ReLUfrom torch import optimSimple Data Generationdef gen_xy(cnt, std=4.): x = np.linspace(-10,10,.. 2024. 4. 12. [PyTorch] torch.nn.init torch.nn.init 모듈 ANN을 구현할 때, 각 layer의 weight 와 bias를 초기화하는 방법을 제공함. 초기화는 ANN의 수렴 속도 및 학습 안정화에 매우 큰 영향을 줌. torch.nn.init는 일반적으로 사용되는 다양한 초기화 방법들이 구현되어 있음. .uniform_(tensor, a=0., b=1.) 지정된 parameters를 uniform distance로 초기화 a와 b는 값의 범위를 지정하는데 사용됨: [a,b) .normal_(tensor, mean=0., std=1.) normal distribution으로 초기화. .constant_(tensor, val=0.) val 에 지정된 상수값으로 초기화. .ones_() and .zeros_() 0과 1로 초기화. .xa.. 2024. 4. 11. [PyTorch] Dataset and DataLoader Dataset 이란PyTorch 의 tensor 와학습에 사용될 일반 raw data (흔히, storage에 저장된 파일들) 사이에 위치하며,raw-data로부터 PyTorch의 기본데이터형 인 tensor를 얻게 해주는 역할을 수행하는 class임.일반적으로 task에 따라 다양한 형태의 raw-data가 있기 때문에,각 task별로 Custom Dataset을 만드는 경우가 잦음.Custom Dataset 만들기torch.util.data 모듈의 Dataset을 상속하고,다음의 methods를 overriding해야만 함.__init__(self) :Dataset 인스턴스에 대한 생성자로 데이터셋에 대한 초기화를 담당.raw-data에 따라 parameters를 자유롭게 추가할 수 있음.__len_.. 2024. 4. 9. [DL] Tensor: Random Tensor 만들기 (NumPy, PyTorch) Tensor: Random Tensor 만들기 (NumPy, PyTorch)Random value를 얻는데 이용되는 Probability Distribution에 따라 크게 2가지로 나눌 수 있음.Uniform DistributionNormal Distribution 0. Uniform DistributionRandom Variable이 가질 수 있는 값들이 모두 같은 확률을 가짐.int형 element를 가지는 tensor를 반환하는 것들과float형 element를 가지는 tensor를 반환하는 것으로 크게 나눌 수 있음.가장 대표적인 함수 이름으로는 randint와 rand 가 있음.0.0 randint가장 대표적인 int형 element를 가지는 random tensor를 생성하는데 사용됨.다음과.. 2024. 3. 29. [DL] Tensor에서 maximum, minimum 찾기 NumPy 의 ndarray에서 np.max 와 np.min 함수를 이용하여 최대, 최소인 값을 구함. 특정 축을 axis parameter로 지정하여 구할 수 있음 (결과는 해당 axis가 1이 됨.) np.argmax 와 na.argmin 함수를 이용하여 최대, 최소인 값의 index를 반환함. PyTorch 의 tensor 에서 torch.max와 torch.min 함수를 사용하여 최대값과 최소값을 구함. 특정 축을 dim parameter로 지정하여 구할 수 있음 (결과는 해당 축이 1이 됨.). 특정 축을 지정할 경우, torch.max와 torch.min은 indices를 같이 반환함. torch.argmax 와 torch.argmin 함수를 이용하여 최대, 최소값의 indices를 반환함. .. 2024. 3. 28. 이전 1 2 다음 728x90 반응형