Head vs breakz
[인공지능] - 하이퍼 파라미터 최적화 본문
하이퍼 파라미터 최적화
1.Grid search
지정된 하이퍼 파라미터 값 전체를 모두 조사하여, 모든 조합에 대해 모델 성능을 평가하고 최적의 조합을 찾는다. 이떄 하이퍼 파라미터 값은 일정한 간격을 두고 선정하고, 구간 설정과, 간격의 길이는 설정해야 한다.
from sklearn.model_selection import GridSearchCV
2.Random search
범위를 지정하여 무작위로 추출하여 최적의 조합을 찾는 방법이다. gird search 보다 더 유리한 부분을 가지고 있다. 불필요한 반복 수행을 없애고, 간격 사이 확률적 탐색이 가능하다.
Random Search for hyper-parameter Optimization
3.Bayesian Optimization
grid search,random search의 경우 최적의 값을 찾는 과정에서 얻어진 하이퍼 파라미터 값은 다음 하이퍼 파라미터 값을 찾는데 사용되지 않는다. 즉 각각 주어진 조건에 따라 값을 찾을 뿐, 찾은 값을 바탕으로 그 다음 값을 찾지 않기에 불편한 부분을 가진다. 이것을 보완한 방법이 Bayesian Optimization 방법이다.
from bayes_opt import Bayesian Optimization
#객체 생성
bayes_optimizer = BayesianOptimization(함수,{입력:(범위)},random_state=0)
#실행
bayes_optimizer.maximize(init_point= ,n_iter= , acq= , xi= ,)
SUALAB Research blog - 모델 생성 및 실행 과정
참고&도움
'Head > 인공지능' 카테고리의 다른 글
[인공지능] - 정규화 (0) | 2020.02.19 |
---|---|
[인공지능] - Hyperas (0) | 2020.02.14 |
[인공지능] - 알고리즘 선택 (0) | 2020.02.11 |
[인공지능] - NLP (0) | 2020.02.10 |
[인공지능] - 차원축소 (0) | 2020.02.10 |
Comments