TIL 2021/08/18
                                            
                                                
                                                
                                                
                                                
                                                
                                                 4179 단어  부스트캠프 AI TechTILTIL
                    
#AutoGrad & Optimizer
- nn.Parameter- Tensor 객체의 상속 객체
- nn.Module 내에 attribute가 될 때는 required_grad = True 로 지정되어 학습대상이 되는 tensor임
- 우리가 직접 지정할 일은 잘 없음
 
- backward- Layer에 있는 Parameter들의 미분을 수행
- Forward의 결과값 (model의 output = 예측치)와 실제 값간의 차이(loss)에 대해 미분을 수행
- 해당 값으로 Parameter 업데이트
 
- backward from the scratch- 실제 backward는 Module 단계에서 직접 지정가능
- Module에서 backward와 optimizer 오버라이딩
- 사용자가 직접 미분 수식을 써야하는 부담 쓸일은 없으나 순서를 이해할 필요는 있음
 
#Pytorch Dataset
- 데이터 입력 형태를 정의하는 클래스
- 데이터를 입력하는 방식의 표준화
- Image, Text, Audio 등에 따른 다른 입력 정의
example)
import torch
from torch.utils.data import Dataset
class CustomDataset(Dataset):
  def __init__(self, text, labels):
    self.labels = labels
    self.data = text
  
  def __len__(self):
    return len(self.labels)
  
  def __getitem__(self, idx):
    label = self.labels[idx]
    text = self.data[idx]
    sample = {"Text"; text, "Class":label}
    return sample
- 
Dataset 클래스 생성시 유의점 - 데이터 형태에 따라 각 함수를 다르게 정의함
- 모든 것을 데이터 생성 시점에 처리할 필요는 없음
- 데이터 셋에 대한 표준화된 처리방법 제공 필요
- 최근에는 HuggingFace등 표준화된 라이브러리 사용
 
- 
DataLoader - Data의 Batch를 생성해주는 클래스
- 학습직전(GPU feed전) 데이터의 변환을 책임
- Tensor로 변환 + Batch 처리가 메인 업무
- 병렬적인 데이터 전처리 코드의 고민 필요
 
 
회고
- 생각보다 이번주차에 할일이 많아졌음
- 아무래도 Pytorch 기초라고 하길래 생각보다 공부할 부분이 없을거라고 생각했는데 hook이나 이런 부분은 생소해서 시간을 많이 썼음
- 스터디에서도 어려운 부분이 많아서 최대한 열심히 해서 일정을 맞춰봐야할거 같음
Author And Source
                            
                            이 문제에 관하여(TIL 2021/08/18), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://velog.io/@gunwoohan/TIL-20210818-idc89t5o
                            
                            
                            
                                저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
Author And Source
이 문제에 관하여(TIL 2021/08/18), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gunwoohan/TIL-20210818-idc89t5o저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)