boostcampaitech2 / image-classification-level1-08

image-classification-level1-08 3rd Place!
7 stars 3 forks source link

Hyperparameter tuning (nnl, Ray Tune) #8

Open lsh3163 opened 3 years ago

lsh3163 commented 3 years ago

Hyperparameter tuning Strategy

하이퍼파라미터를 튜닝할 때 적용해 볼 방법을 정리
같은 모델에서 학습환경을 조절하는 방법으로 학습속도 향상과 성능 향상 효과를 볼 수 있음

!ref
-Bag of Tricks for Image Classification with Convolutional Neural Networks

1 Learning rate

2 Normalization

3 Model Tweaks

4 Label Smoothing

jiiyeon commented 3 years ago

Ray Content

버클리 대학의 RISE 연구실에서 출발하여 Anyscale에서 만듦. Apache Arrow를 사용해 데이터를 효율적으로 처리함. 프로세스 기반 분산처리, 병렬처리 로컬 환경, 클라우드의 쿠버네티스(AWS, GCP, Azure) 환경, 온프레미스 쿠버네티스 등 다양한 환경에서 사용할 수 있음

Task

cf) stateless vs stateful

Actor

Object

Ray Manual

#설치
pip install ray

#__1. ray 초기화
import ray
ray.init()

#__2. 병렬처리할 func 또는 class에 decorator 추가
import torch

@ray.remote
def create_matrix(size):
    return torch.randn(size, size)

@ray.remote
def dot_product(x, y):
    return torch.dot(x, y)

#__3. remote func(or class)를 remote() method로 호출
x_id = create_matrix.remote(10)
y_id = create_matrix.remote(10)
z_id = multiply_matrices.remote(x_id, y_id)

#__4. task 실행 (값 반환)
z = ray.get(z_id)

#__5. 프로세스 종료
ray.shutdown()

!ref1 !ref2 !ref3