본문 바로가기
Boostcamp AI Tech/[week 1-5] LEVEL 1

[Week 4 - Day 5] Pstage 이미지 분류 - Ensemble

by newnu 2021. 8. 28.
반응형

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 :  파라미터 범위를 주고 그 범위 안에서 trials 만큼 시행

import optuna

def objective(trial):
	x = trial.suggest_uniform('x',-10,10)
    return (x-2)**2
    
study = optuna.create_study()
study.optimize(objective, n_trials = 100)

study.best_params

 

Training Visualization

Tensorboard 

from torch.utils.tensorboard import Summarywriter
logger = Summarywriter(log_dir = f"results/{name}")

logger.add_scalar("Train/loss",train_loss,epoch * len(train_loader) + idx)
logger.add_scalar("Train/accuracy",train_acc,epoch * len(train_loader) + idx)

 

Weight and Bias(wandb)

import wandb

wandb.init(config = {"batch_size":batch_size,"lr":lr,"epochs" : num_epochs, "backbone": name})

wandb.log({"Train_loss":train_loss,"Train_acc":train_acc})
반응형