본문 바로가기
728x90

AI-Tech 부스트캠프/파이토치10

[PyTorch] torch.transpose()와 numpy().transpose() 차이 파이토치의 transpose는 N $\times$ M 만 transpose 할 수 있다는 단점이 있다. 그러면 N $\times$ M $\times$ K는 어떻게 나타낼 수 있을까? => numpy로 바꾼 후 transpose() 하면 된다. import torch import numpy as np x = torch.rand(3,4,2) print(x.numpy().transpose((1,2,0))) 2023. 1. 1.
[PyTorch] 모델 불러오기 Model.save() 는 중요하다. model training은 상당히 오랜시간이 걸린다. 따라서 모델의 학습결과를 저장하는 것은 필요하다. model.save() - 학습의 결과를 저장하기 위한 함수 - 모델 형태(architecture)와 파라미터를 저장 - 모델 학습 중간 과정의 저장을 통해 최선의 결과모델을 선택할 수 있다. - 만들어진 모델을 외부 연구자와 공유하여 학습 재연성 향상시킬 수 있다. Checkpoints - 학습의 중간 결과를 저장하여 최선의 결과를 선택 - earlystopping 기법 사용시 이전 학습의 결과물을 저장 - loss와 metric 값을 지속적으로 확인 저장 - 일반적으로 epoch, loss, metric을 함께 저장하여 확인 - colab에서 지속적인 학습을 .. 2022. 12. 24.
[PyTorch] Dataset & Dataloaders 모델에 데이터를 넣을려면 어떻게 해야할까? 자료를 모은다(collecting) → 자료를 정리한다(cleaning) → 전처리 작업 (pre processing) → 데이터(Data) 완성! 그럼 이것을 바로 모델에 넣으면 될까? NO! Dataset 클래스(class)를 통해 목적에 맞는 데이터 값을 받고 이것을 DataLoader라는 것을 통해 Model에 맞는 batch 등 Model input에 맞게 다듬은 다음에 Model에 넣는 것이다. 뭔 말이지...? 그래서 우선 하나씩 알아보자 Dataset 클래스 - 데이터 입력 형태를 정의하는 클래스 - 데이터를 입력하는 방식을 표준화 한다는 것에 의의가 있다. - Image, Text, Audio 등에 따른 다른 입력 정의를 내린다. - 클래스 안에.. 2022. 12. 24.
[PyTorch] torch.nn.Module에 대해서 torch.nn.Module - 딥러닝을 구성하는 Layer의 base class - Input, Output, Forward, Backward 정의 - 학습의 대상이 되는 parameter(tensor) 정의 파이토치 공식 document에서 명시한 코드로 예시를 써놓는다. https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module Module — PyTorch 1.13 documentation Shortcuts pytorch.org import torch.nn as nn # 신경망에서 일반적으로 사용되는 모든 연산은 torch.nn모듈에서 활용 가능 import torch.nn.functional as F class M.. 2022. 12. 24.
728x90