본문 바로가기
Archive/TIL

[TIL] 0713 아침스터디 - hyperparameter tuning(2)

by 다람이도토리 2022. 7. 13.

Bayesian optimization 자세히보기.

목적 함수와, hyperparameter의 쌍을 활용하여, 목적함수를 최대로 만드는 최적해를 찾는 문제로 바꾼다.

* 사용되는 두가지 함수
- 목적 함수를 추정하는 함수(surrogate model)
- 다음 입력값 후보를 추천하는 함수(accquisition model)

그런데, 어떻게 진행하는 것일까?

* 목적함수가 최대화/최소화 되는 매개변수를 찾기 위해, 사전 분포를 활용한다.

Bayesian optimization 의 절차 개요

1. 임의로 데이터 포인트 생성 / 평가
2. surrogate model로 추정을 실시.
3. 현재의 결과로 목적 함수를 최대화 하는 x값 탐색
4. 해당 값에 대한 평가 실시 및 x를 데이터 포인트에 추가

탐색을 할 때, Exploitation과 Exploration을 활용한다.

Exploitation : 현재까지 조사된 값들의 근방으로 다시 조사를 실시
Exploration : 현재까지 조사된 값들의 근방으로 조사를 하지 않고, 불확실성이 가장 높은 곳을 확인한다.

조금 더 정확하게 절차를 살펴보면 다음과 같다.

가정 : f를 Gaussian 분포라고 가정한다.
f의 posterior 확률 분포를 추정/업데이트
f의 posterior 확률 확률 분포를 활용하여, 목적 함수가 최대화/최적화 되는 지점 탐색
f(x) 계산
위의 과정을 반복한다.

Bayesian optimization의  핵심 - Gaussian Process, Acquisition function.

해당 부분 참고 : https://daehani.tistory.com/entry/%EB%84%93%EA%B3%A0-%EC%96%95%EC%9D%80-%EB%B2%A0%EC%9D%B4%EC%A7%80%EC%95%88-%EC%B5%9C%EC%A0%81%ED%99%94Bayesian-Optimization

# Gaussian Process

요약하면, (x, f(x))가 주어질 때, 새로운 f(x)가 뽑힐 확률을 Gaussian으로 추정하는 행위.

Posterior 확률은 Prior * Likelihood 으로 구할 수 있기에, 추정이 가능.

# acquisition function

가장 사용하기 쉬운 함수는 Expected Improvement

f가 이전 iteration n에서의 최적값보다 얼마나 좋은지를 평가할 수 있는 함수,
구체적으로는, 지금 최적인 값과 최적으로 예상되는 값의 차이만큼 가중화를 준다.