하이퍼파라미터 튜닝 작동 방식 - 아마존 SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

하이퍼파라미터 튜닝 작동 방식

딥 러닝 신경망과 같은 복잡한 기계 학습 시스템을 빌드하는 경우 가능한 모든 조합을 살펴보는 것은 사실 불가능합니다. 하이퍼파라미터 튜닝은 다양한 모델 변형을 시도하여 생산성을 높일 수 있습니다. 지정한 범위 내에서 가장 유망한 하이퍼파라미터 값 조합에 초점을 맞추어 최적의 모델을 자동으로 찾습니다. 좋은 결과를 얻으려면 탐색 범위를 잘 선택해야 합니다.

API 참조 안내서를 사용하여 하이퍼파라미터 튜닝과 상호 작용하는 방법을 숙지합니다. 이 페이지의 예는 및 API에서 찾을 수 있습니다. HyperParameterTuningJobConfigHyperbandStrategyConfig

참고

알고리즘 자체는 확률적이기 때문에 하이퍼파라미터 튜닝 모델이 가장 적절한 답으로 수렴되지 않을 수 있습니다. 이 문제는 가능한 최상의 값 조합이 선택한 범위 내에 있는 경우에도 발생할 수 있습니다.

그리드 검색 사용 시 하이퍼파라미터 튜닝은 작업을 생성할 때 지정한 범주 값 범위에서 값 조합을 선택합니다. 그리드 검색 전략을 사용할 때는 범주형 파라미터만 지원됩니다. MaxNumberOfTrainingJobs 파라미터를 지정할 필요가 없습니다. 튜닝 작업을 통해 생성되는 훈련 작업 수는 가능한 고유 범주별 조합의 총 수로 자동 계산됩니다. 지정된 경우 MaxNumberOfTrainingJobs 값은 가능한 고유 범주형 조합의 총 수와 같아야 합니다.

임의 검색 사용 시 하이퍼파라미터 튜닝은 시작하는 각 훈련 작업에 대한 하이퍼파라미터에 지정한 범위 내에서 값의 임의 결합을 선택합니다. 하이퍼파라미터 값의 선택은 이전 훈련 작업의 결과에 따라 달라지지 않으므로 튜닝 성능에 영향을 미치지 않고 최대 동시 훈련 작업 수를 실행할 수 있습니다.

랜덤 검색을 사용하는 예제 노트북은 SageMaker XGBoost와 자동 모델 튜닝을 사용한 랜덤 검색 및 하이퍼파라미터 스케일링 노트북을 참조하십시오.

베이지안 최적화

베이지안 최적화는 하이퍼파라미터 튜닝을 회귀 문제처럼 처리합니다. 하이퍼파라미터 튜닝은 입력 특징(하이퍼파라미터) 세트를 고려해 지정된 지표에 대해 모델을 최적화합니다. 회귀 문제를 해결하기 위해 하이퍼파라미터 튜닝은 어떤 하이퍼파라미터 조합이 최적의 결과를 가져올지 추측하고 훈련 작업을 실행해 이러한 값을 테스트합니다. 하이퍼파라미터 값 세트를 테스트한 후 하이퍼파라미터 튜닝은 회귀를 사용하여 다음으로 테스트할 하이퍼파라미터 값 세트를 선택합니다.

하이퍼파라미터 조정은 Amazon의 베이지안 SageMaker 최적화 구현을 사용합니다.

다음 훈련 작업에 최적의 하이퍼파라미터를 선택할 때 하이퍼파라미터 튜닝은 지금까지 이 문제에 대해 알게 된 모든 정보를 고려합니다. 경우에 따라 조합에 가까운 하이퍼파라미터 값의 조합을 선택하여 이전의 최고 훈련 작업에서 성능을 점진적으로 향상시키는 결과를 가져옵니다. 따라서 하이퍼파라미터 튜닝은 알려진 최적의 결과를 이용할 수 있습니다. 다른 경우에는 지금까지 시도해 본 하이퍼파라미터 값과 동떨어진 하이퍼파라미터 값의 세트를 선택합니다. 그러면 아직 잘 모르는 새로운 영역을 찾아보기 위해 하이퍼파라미터 값의 범위를 살펴볼 수 있습니다. 탐색/활용 전략은 수 많은 기계 학습 문제에서 널리 사용됩니다.

베이지안 최적화에 대한 자세한 정보는 다음 항목을 참조하십시오.

하이퍼밴드

하이퍼밴드는 리소스를 동적으로 재할당하는 다중 충실도 기반 튜닝 전략입니다. 하이퍼밴드는 훈련 작업의 중간 및 최종 결과를 모두 사용하여 활용도 높은 하이퍼파라미터 구성에 에포크를 재할당하고 성능이 떨어지는 구성을 자동으로 중지합니다. 또한 여러 병렬 훈련 작업을 사용할 수 있도록 원활하게 확장합니다. 이러한 기능을 사용하면 임의 검색 및 베이지안 최적화 전략에 비해 하이퍼파라미터 튜닝 속도를 크게 높일 수 있습니다.

하이퍼밴드는 다양한 리소스 수준에서 결과를 게시하는 반복적 알고리즘을 튜닝할 때만 사용해야 합니다. 예를 들어, 하이퍼밴드는 매 에포크마다 정확도 지표를 게시하는 이미지 분류용 신경망을 튜닝할 때 사용할 수 있습니다.

하이퍼밴드 모범 사례에 대한 자세한 내용은 다음 링크를 참조하십시오.

초기 중지 기능이 있는 하이퍼밴드

하이퍼파라미터 튜닝 작업의 목표 지표를 개선할 가능성이 없을 때는 훈련 작업을 초기에 중지할 수 있습니다. 그러면 컴퓨팅 시간을 줄이고 모델의 과적합을 방지하는 데 도움이 될 수 있습니다. 하이퍼밴드는 고급 내부 메커니즘을 사용하여 초기 중지를 적용합니다. 따라서 하이퍼밴드 내부 초기 중지 기능을 사용할 때는 TrainingJobEarlyStoppingType 파라미터(HyperParameterTuningJobConfig API 내)를 OFF(으)로 설정해야 합니다.

참고

하이퍼파라미터 튜닝으로 모델이 개선되지 않을 수 있습니다. 기계 솔루션 구축을 위한 고급 도구입니다. 따라서 과학 개발 프로세스의 일부로 간주되어야 합니다.