본문 바로가기

Python148

[PyTorch] CustomANN Example: From Celsius to Fahrenheit Optional Libraries torchviz: 0.0.2 torchsummary: 1.5.1 pip install --quiet torchviz pip install torchsummary Required Libraries torch : 2.2.1+cu121 np : 1.25.2 import numpy as np import torch import matplotlib.pyplot as plt # import torchviz, torchsummary from torch.nn import Module, init, Linear, Parameter, ReLU from torch import optim Simple Data Generation def gen_xy(cnt, std=4.): x = np.lins.. 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를 자유롭게 추가할 .. 2024. 4. 9.
[Python] pathlib.Path 사용하기. Path 모듈은 file 및 directory의 path 를 객체지향적으로 취급하기 쉬운 인터페이스를 제공하는 Python 표준 라이브러리임. Python 3.4 이상에서 사용가능함. Path 인스턴스 생성. from pathlib import Path # current working directory에 대한 Path인스턴스 생성. cwd = Path() # Path('.') or Path.cwd() # 문자열로 path를 지정하여 Path 인스턴스 생성. path = Path('/home/dsaint31/test.txt') # 홈디렉토리에 대한 Path 인스턴스 생성. home_path = Path.home() 다음과 같이 상대경로 와 절대경로 를 생성할 수 있음. from pathlib import .. 2024. 3. 31.
[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.1 randint가장 대표적인 int형 element를 가지는 random tensor를 생성하는데 사용됨.다음과.. 2024. 3. 29.
[DL] Define and Run vs. Define by Run Deep Learning (DL) Framework의 동작방식을 비교하는 용어. DL Model의 구축과 실행이 어떻게 이루어지는지로 구분됨. Define and Run DL Model을 구축 (= Computational Graph)이 먼저 이루어지고, 이후 input tesnsor를 정의된 모델에 입력하여 실행(or 연산)이 이루어짐. 대표적으로 TensorFlow 1.x 에서 채택한 방식임. DL Model의 구조 (~ Computational Graph의 구조)가 먼저 완전하게 정의되고 나서 실행이 이루어짐. DL Model의 최적화 등을 보다 쉽게 할 수 있음 (compiler language에서와 유사한 최적화 가능) DL Model의 변경이 쉽지않음. 개발 과정에서 디버깅에서 불편함. Def.. 2024. 3. 28.
반응형