Boostcamp AI Tech/[week 1-5] LEVEL 119 [Week 4 - Day 5] Pstage 이미지 분류 - Ensemble Ensemble 서로 다른 여러 학습 모델 사용 성능과 효율의 tradeoff - Model Averaging (Voting) - Hard Voting - Soft Voting - Cross Validation - Stratified K-fold Cross Validation : balace 하지 않은 경우 - TTA(Test Time Augmentation) : 테스트 이미지를 augmentation 후 모델 추론, 출력된 여러가지 결과를 앙상블 Hyperparameter Optimization Hyperparameter : 시스템의 매커니즘에 영향을 주는 주요한 파라미터 - learning rate, hidden layer 개수, batch size, k-fold,... Optuna : 파라미터 범위.. 2021. 8. 28. [Week 4 - Day 4] Pstage 이미지 분류 - Training & Infernece Loss loss.backward() : 오차 역전파 모델의 파라미터의 grad값 업데이트 - Focal Loss : Class Imbalance 문제 있는 경우 맞춘 확률이 높은 Class는 작은 loss, 확률이 낮은 Class는 높은 loss 부여 - Label Smoothing Loss : class target label 을 onehot 표현으로 사용하기 보다 여러 클래의 확률로 soft하게 표현하여 일반화 성능 높이기 위함 Optimizer 실제로 loss값 update LR scheduler : learning rate 조절 - StepLR : 특정 step마다 LR 감소 schduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=2,g.. 2021. 8. 27. [Week 4 - Day 3] Pstage 이미지 분류 - Model nn.Module 클래스 import torch.nn as nn torch.nn.functional as F class MyModel(nn.Module): def __init__(self): super(MyModel,self).__init__() self.conv1 = nn.Conv2d(1,20,5) self.conv2 = nn.Conv2d(20,20,5) def forward(self,x): x = F.relu(self.conv1(x)) return F.relu(self.conv2(x)) forward : 이 모델이 호출 되었을 때 실행 되는 함수 모든 nn.Module 은 forward() 함수를 가진다 state_dict() : 모듈이 가지고 있는 계산에 쓰일 Parameter 각 모델 파라미터들은.. 2021. 8. 25. [Week 4 - Day 2] Pstage 이미지 분류 - Data Generation 1. 강의 Pre-processing - Resize( 계산의 효율) - Filter, crop,... Generalization Bias : 얼마나 target에서 떨어져 있는지 - High Bias : underfitting Variance : 얼마나 분산되어 있는지 - High Variance : overfitting Data Augmentation - torchvision.transforms 함수 사용 - albumentations torch.utils.data Datasets from torch.utils.data import Dataset class MyDataset(Dataset): def __init__(self): pass def __getitem__(self,index): return .. 2021. 8. 24. [Week 4 - Day 1] Pstage 이미지 분류 - EDA Machine learning flow (Competition) Domain understanding - Data Mining - Data Analysis - Data Processing - Modeling - Training - Deploy EDA(Exploratory Data Analysis) 탐색적 데이터 분석 Image Classification 이미지 - (width, height, channel) Image Classification & EDA 1. Data Statistics - 전체 이미지에 대해서 이미지 개수, 크기, RGB값의 평균과 표준편차 계산 - 객체 위치 확인 - y 값 분석 - 메타 데이터 분석 - 성별, 연령 분포 확인 - X,y 관계 확인 - 데이터 노이즈 확인 ( 라벨링 .. 2021. 8. 24. [Week 3 - Day 4 ] Pytorch 1. 강의 내용 Multi GPU 엄청난 데이터 GPU vs. Node : 한대의 컴퓨터 Single Node Single GPU Single Node Multi GPU Multi Node Multi GPU Model Parallel 다중 GPU에 학습을 분산하는 두 가지 방법 모델을 나누기/ 데이터를 나누기 모델의 병목, 파이프라인의 어려움 Data Parallel 데이터를 나눠 GPU에 할당 후 결과의 평균을 취하는 방법 minibatch와 유사 한번에 여러 GPU에서 수행 GPU사용 불균형 문제 발생 -batch 사이즈 감소 DistributedDataParallel : 각 CPU 마다 process 생성하여 개별 GPU에 할당 개별적으로 연산의 평균 Sampler 사용 pin_memory = True 2021. 8. 20. 이전 1 2 3 4 다음 반응형