archive
[2주차 (3)] 하이퍼 파라미터 튜닝 본문
1. 하이퍼 파라미터 튜닝이란?
-하이퍼 파라미터 정의 : 학습 과정에서 컨트롤하는 파라미터 value, 모델이 학습하는 과정에서 표현하는 파라미터와는 구분되는 개념임을 잊지 말기, 하이퍼파라미터는 사람이 직접 설정하는 것
-하이퍼 파라미터 튜닝 정의 : 학습 알고리즘에 있어 가장 이상적인 하이퍼 파라미터 세트를 찾는 것
-하이퍼 파라미터 튜닝 방법
(1) Manual Search: 자동화 툴을 사용하지 않고 매뉴얼하게 실험할 하이퍼 파라미터 셋을 정하고 하나씩 바꿔가면서 테스트해 보는 방식
(2) Grid Search: 테스트 가능한 모든 하이퍼 파라미터 셋을 테스트해보면서 어떠 하이퍼파라미터 셋이 좋은지 기록, 가장 BruteForce한 방식
:위의 이미지를 보면 모든 셋을 검사하기 때문에 녹색의 눈금이 일정한 것을 볼 수 있음
(3) Random Search: 탐색이 가능한 하이퍼 파라미터 영역에서 랜덤하게 하이퍼 파라미터 값을 가져와서 테스트해보는 방식
: 랜덤하게 값을 가지고 오기 때문에 위의 이미지를 보면 눈금이 불규칙한 것을 확인할 수 있음
(4) Bayesian optimization : 가장 최근에 자주 이용되는 방식이자 가장 옵티멀하게 효율적으로 탐색이 가능한 방법
:처음에는 랜덤하게 하이퍼 파라미터 선택을 해서 그 성능을 측정하고, 이전 성능을 히스토리를 검색해 이전 성능에서 좋은 결과를 얻었던 하이퍼파라미터를 집중 탐색하여 성능이 잘 나오는 구간의 하이퍼 파라미터의 구간을 탐색하는 방법
: 처음에는 랜덤 선택 -> 점점 정규분포값으로 수렴 -> 최고치에 가까운 값들을 집중적으로 탐구
2. Boosting Tree 하이퍼 파라미터
3. Optuna 소개
-Optuna : 오픈소스 하이퍼 파라미터 튜닝 프레임워크, 사용이 쉽
-주요 기능
: Eager search spaces -> 파이썬의 조건문, 반복문, 문법 등을 이용해 최적화된 하이처 파라미터를 찾는 것을 자동화
: State-of-the-art algorithm -> 탐색에 가장 효과적인 방식 제공, 최신 모델과 알고리즘 제공해서 효율성 제고
: Easy parallelization -> 쉽게 병렬화가 가능, 대규모 하이퍼 파라미터 튜닝도 분산 머신을 통해 사용 가능
본 포스트의 학습 내용은 부스트클래스 <AI 엔지니어 기초 다지기 : 부스트캠프 AI Tech 준비과정> 강의 내용을 바탕으로 작성되었습니다.
'ML_AI > 네이버 부클 AI 엔지니어 기초 다지기 : AI Tech 준비과정' 카테고리의 다른 글
[4주차 (1)] 벡터 (0) | 2024.05.13 |
---|---|
[2주차 (4)] 앙상블 (0) | 2024.05.06 |
[2주차 (2)] 피쳐 엔지니어링 - 2 (0) | 2024.05.06 |
[2주차 (1)] 피쳐 엔지니어링 - 1 (0) | 2024.05.06 |
[1주차 (5)] 트리 모델 (0) | 2024.05.02 |