본문 바로가기
반응형

딥러닝-공부하기10

[파이토치] 06 - extra step 만들기 / predict 하기 extra step 생성¶여태까지 Lightning moudle 을 상속받아 다음을 재구성하여 모델을 생성해보았다__init__() : 신경망을 구성하는데 사용 (layer 정의)forward() : 실제로 신경망에 x 가 들어갔을 때 나오는 y 를 정의 -> 실제로 call 은 forward를 부르는게 아니라 오브젝트를 call 해야함 (나중에 hook등이 동작하게 하기 위해서)traning_step : 데이터를 넣었을 때, loss 를 계산하는 방법을 정의 (따라서 traning step 내부에는 당연히 forward 가 포함된 model() call이 있어야 한다) 하고 loss 를 리턴한다.validation_step : validation 방법을 정의한다. 별도의 return 은 없어도 된다. .. 2024. 4. 30.
Anaconda package upgrade Anaconda 가 python 을 포함한 패키지를 한 번에 설치해줘서 참 좋긴한데 (그리고 많이쓰이기는 하는데) 문제는 예네가 버전 업데이트가 너무 빠르다.. 이런걸 잘 관리하라고 Anaconda Naviagtor를 제공하고 있기도 하지만, 아무래도 커스터마이즈를 하기 위해서는 Command 창에서 실행하는게 좀 더 직관적이라서 정리해둠. 1. Conda 로 아나콘다 자체 업데이트 해주기 conda update --all 2. pip 업데이트 해주기 python -m pip install --upgrade pip 3. 새로운 작업환경 만들기 conda create -n py3_11_8 python=3.11.8 anaconda 만약 어떤 버전의 파이썬을 설치해야 할 지 모르겠다면 "conda search.. 2024. 4. 12.
[파이토치] 05 - Training step 내부 동작 알아보기 Lightning 모듈 내부 해부¶ 일반적인 pytorch 에서 학습 sequence 는 다음과 같다. (traning loop) In [10]: def train_loop( dataloader, model, lossfn, optimizer): size = len(dataloader.dataset) for batch, (x, y) in enumerate(dataloader): pred = model(x) # model class 가 callable 한 경우! # forward를 직접 불러도 결과는 같겠지만, 권장하지 않음 -> 모델을 직접 call해서 부르지 않으면 hook 이 동장하지 않음! loss = lossfn( pred, y) if batch%100 == 0 : loss, current = lo.. 2023. 10. 21.
[파이토치] 04 - 모델의 시각화 모델 시각화¶ In [2]: import torch from torch import nn from torch.nn import functional as F import torch.optim as optim import pytorch_lightning as pl from pytorch_lightning.accelerators import accelerator from torchmetrics import functional as FM from torchinfo import summary from torchvision.datasets import MNIST import torchvision.transforms as transforms import torch.utils.data as data from torch.. 2023. 10. 21.
반응형