- 하이퍼파라미터(Hyperparameter)
- 기계학습 모델훈련을 관리하는데 사용하는 외부 구성 변수
- 모델을 훈련하기 전에 사용자에 의해 수동으로 설정됨
- 최적값이나 기본값이 없음
- 파라미터(Parameter)
- 모델 내부에서 결정되는 변수로 데이터로부터 결정
- 사용자에 의해 조정되지 않음
- 모델링에 의해 자동으로 결정되는 값
- 하이퍼 파라미터 튜닝
- 기계학습 모델의 성능을 최적화하는 중요한 과정으로 최적의 하이퍼파라미터 세트를 선택하는 방법
- Manual Search: 설계자의 직관이나 경험에 기반하여 추정하고 결과를 관찰
- Grid Search: 모든 하이퍼파라미터 조합을 대상으로 모델을 학습하고 평가하여 가장 우수한 성능을 보이는 조합을 찾는 것
- Random Search: Grid Search와 동일한 방식으로 사용하나, 모든 조합을 다 시도하지 않고 임의의 값을 지정 횟수만큼 시행
- Bayseian Optimization: 베이즈 정리에 기반한 기법으로 입력값을 받는 미지의 목적함수를 상정하여, 해당 함숫값을 최대로 만드는 최적해를 찾는 것이 목적
- Boosting Tree의 하이퍼 파라미터
parameter | XGBoost | CatBoost | LightGBM |
Learning rate | learning_rate | learning_rate | learning_rate |
Tree depth | max_depth | depth | max_depth |
Number of leaves | max_leaves | max_leaves | max_leaves |
Number of tree | n_estimators | n_estimators | n_estimators |
Early stop | early_stopping_rounds | od_wait | early_stopping_rounds |
Row sampling ratio | subsample | subsample | bagging_freq |
Column sampling ratio | colsample_bytree | rsm | colsample_bytree |
L1/L2 norm penalty | alpha/lambda | l2_leaf_reg | lambda_l1/lambda_l2 |
- Optuna
- 오픈소스 하이퍼 파라미터 튜닝 프레임 워크
- Storage API를 사용해 하이퍼파라미터 검색결과 저장 가능
- RDB,Redis와 같은 저장소에 저장함으로써 한 번 탐색하고, 다음에 다시 이어서 탐색 가능
본 포스트의 학습 내용은 부스트클래스
<AI 엔지니어 기초 다지기 : 부스트캠프 AI Tech 준비과정>
강의 내용을 바탕으로 작성되었습니다.