HyperOpt

김보현·2024년 5월 23일
0

MachineLearning

목록 보기
3/6

주요 구성 요소

search space (입력값 범위)

  1. 여러개의 입력 변수들과 이들 값의 범위를 지정한다.
  2. hp.quniform(label, low, high, q): label로 지정된 입력 값 변수 검색 공간을 최소값 low에서 최대값 high까지 q의 간격을 가지고 설정한다.
  3. hp.uniform(label, low, high): 최소값 low에서 최대값 high까지 정규 분포 형태의 검색 공간을 설정한다.
  4. hp.randint(label, upper): 0부터 최대값 upper까지 random한 정수 값으로 검색 공간을 설정한다.
  5. hp.loguniform(label, low, high): exp(uniform(low, high))값을 반환한다. 반환 값의 log변환된 값은 정규 분포의 형태를 가지는 검색 공간을 설정한다.

목적 함수

search space를 입력 받아 로직에 따라 loss값을 계산하고 이를 반환하는 함수이다.
반드시 dictionary형태의 값을 반환하고 여기에 'loss': loss값이 기재되어야 한다.

목적 함수의 최소값을 찾는 함수

  1. 목적 함수를 실행하여 최소 반환값(loss)을 최적으로 찾아내는 함수이다.
  2. Bayesian최적화 기법으로 입력 변수들의 search space상에서 정해진 횟수만큼 입력 변수들을 입력하여 목적 함수의 반환 값(loss)을 최적으로 찾아낸다.
  3. hypeeropt는 이를 위해 fmin()함수를 제공한다.
  4. fmin()함수의 인자로 목적함수, search space, 베이지안 최적화 기법 유형, 최적화 시도 횟수, 최적화 로그 기록 객체를 인자로 넣어준다. best = fmin(objective, space=hp.uniform('x', -10, 10), algo=tpe.suggest, maxevals=100, trials=trials)
    ![](https://velog.velcdn.com/images/boyamie
    /post/6fd88066-0d71-4472-9ca2-fc10f48ddc81/image.jpg)
profile
Fall in love with Computer Vision

0개의 댓글