본문 바로가기

Study/신입 자라기

[Study] 신입 자라기 - 102

신입 자라기 102일 차, 월요일

Daily Routine

시간 Routine
8 : 30  기상
9 : 00 ~ 10 : 00 출근 시간
10 : 00 ~ 11 : 30 1. ray사용중에 메모리 제한 해제 및 테스트 -> 도커 수준에서 제한을 한 번 더 풀어줘야함(보류)
11 : 30 ~ 12 : 30 점심 시간
12 : 30 ~ 18 : 00 1. 하이퍼 파라미터 최적화 조기 종류 기능 추가(early stopping)
18 : 00 ~ 19 : 30 저녁 시간
19 : 30 ~ 20 : 20 1. 개인 공부
20 : 20 ~ 22 : 30  퇴근 및 휴식
22 : 30 ~ 25 : 00 1. 블로그 포스팅
2. 프로그래머스
3. 기초수학(40분)

HyperOpt.fmin에서 early_stopping 사용하기

2가지 방법 존재

첫 번째 방법 : early_stop에 대한 사용자 조건 함수
  • 사용자 조건 함수는 주로 trials 객체의 trails.result값에서 'loss'값을 가져와서 사용함
두 번째 방법 : hyperopt 메서드의 no_progress_loss(num) 사용
  • no_progress_loss 메서드는 num많큼 loss값이 증가하지 않으면 종기 종료 시킴
# 방식 1
def early_stop(trials, sum_=0)
    return sum_+1 >= 100, [count+1]
params = fmin(fn = object_fun,
			  space = space,
              algo=tpe.suggest,
              max_evals=10,
              trials = Trials,
              early_stop_fn=early_stop)
              
              
              
 # 방식2
 from hyperopt.early_stop import no_progress_loss
 params = fmin(fn = object_fun,
			  space = space,
              algo=tpe.suggest,
              max_evals=10,
              trials = Trials,
              early_stop_fn=no_progress_loss(10))

출근길에 보는 CS

톰슨 샘플링

  • 기댓값(보상)의 분포를 추정한 후 샘플링한 값을 기준으로 보상을 계산하는 확률적 알고리즘

'Study > 신입 자라기' 카테고리의 다른 글

[Study] 신입 자라기 - 104  (0) 2022.07.14
[Study] 신입 자라기 - 103  (0) 2022.07.13
[Study] 신입 자라기 - 101  (0) 2022.07.06
[Study] 신입 자라기 - 100  (0) 2022.07.06
[Study] 신입 자라기 - 99  (0) 2022.07.05