기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon에서 사용할 수 있는 하이퍼파라미터 튜닝 전략 이해 SageMaker
딥 러닝 신경망과 같은 복잡한 기계 학습 시스템을 빌드하는 경우 가능한 모든 조합을 살펴보는 것은 사실 불가능합니다. 하이퍼파라미터 튜닝은 다양한 모델 변형을 시도하여 생산성을 높일 수 있습니다. 지정한 범위 내에서 가장 유망한 하이퍼파라미터 값 조합에 초점을 맞추어 최적의 모델을 자동으로 찾습니다. 좋은 결과를 얻으려면 탐색 범위를 잘 선택해야 합니다. 이 페이지에서는 Amazon 에서 사용할 수 있는 다양한 하이퍼파라미터 튜닝 전략에 대해 간략하게 설명합니다 SageMaker.
API 참조 가이드를 사용하여 하이퍼파라미터 튜닝과 상호 작용하는 방법을 이해합니다. 이 페이지에 설명된 튜닝 전략을 HyperParameterTuningJobConfig 및 HyperbandStrategyConfig 와 함께 사용할 수 있습니다APIs.
참고
알고리즘 자체가 확률적이기 때문에 하이퍼파라미터 튜닝 모델이 최상의 답변으로 수렴하지 못할 수 있습니다. 이 문제는 가능한 최상의 값 조합이 선택한 범위 내에 있는 경우에도 발생할 수 있습니다.
그리드 검색
그리드 검색 사용 시 하이퍼파라미터 튜닝은 작업을 생성할 때 지정한 범주 값 범위에서 값 조합을 선택합니다. 그리드 검색 전략을 사용할 때는 범주형 파라미터만 지원됩니다. MaxNumberOfTrainingJobs
파라미터를 지정할 필요가 없습니다. 튜닝 작업에서 생성된 훈련 작업 수는 가능한 고유한 범주형 조합의 총 수로 자동 계산됩니다. 지정된 경우 MaxNumberOfTrainingJobs
값은 가능한 고유 범주형 조합의 총 수와 같아야 합니다.
무작위 검색
무작위 검색을 사용할 때 하이퍼파라미터 튜닝은 시작하는 각 훈련 작업에 대해 지정한 범위에서 하이퍼파라미터 값의 무작위 조합을 선택합니다. 하이퍼파라미터 값 선택은 이전 훈련 작업의 결과에 따라 달라지지 않습니다. 따라서 튜닝 성능을 변경하지 않고도 최대 수의 동시 훈련 작업을 실행할 수 있습니다.
무작위 검색을 사용하는 예제 노트북은 및 자동 모델 조정 노트북을 사용한 SageMaker XGBoost 무작위 검색 및 하이퍼파라미터 크기 조정
베이지안 최적화
베이지안 최적화는 하이퍼파라미터 튜닝을 회귀 문제처럼 처리합니다. 하이퍼파라미터 튜닝은 입력 특징(하이퍼파라미터) 세트를 고려해 지정된 지표에 대해 모델을 최적화합니다. 회귀 문제를 해결하기 위해 하이퍼파라미터 튜닝은 최상의 결과를 얻을 가능성이 높은 하이퍼파라미터 조합을 추측합니다. 그런 다음 훈련 작업을 실행하여 이러한 값을 테스트합니다. 하이퍼파라미터 값 세트를 테스트한 후 하이퍼파라미터 튜닝은 회귀를 사용하여 다음으로 테스트할 하이퍼파라미터 값 세트를 선택합니다.
하이퍼파라미터 튜닝은 베이지안 최적화의 Amazon SageMaker 구현을 사용합니다.
다음 훈련 작업에 최적의 하이퍼파라미터를 선택할 때 하이퍼파라미터 튜닝은 지금까지 이 문제에 대해 알게 된 모든 정보를 고려합니다. 경우에 따라 조합에 가까운 하이퍼파라미터 값의 조합을 선택하여 이전의 최고 훈련 작업에서 성능을 점진적으로 향상시키는 결과를 가져옵니다. 이렇게 하면 하이퍼파라미터 튜닝이 가장 잘 알려진 결과를 사용할 수 있습니다. 다른 경우에는 지금까지 시도해 본 하이퍼파라미터 값과 동떨어진 하이퍼파라미터 값의 세트를 선택합니다. 그러면 아직 잘 모르는 새로운 영역을 찾아보기 위해 하이퍼파라미터 값의 범위를 살펴볼 수 있습니다. 탐색/활용 전략은 수 많은 기계 학습 문제에서 널리 사용됩니다.
베이지안 최적화에 대한 자세한 정보는 다음 항목을 참조하세요.
베이지안 최적화에 대한 기본 주제
베이지안 최적화의 속도 높이기
고급 모델링 및 전이 학습
하이퍼밴드
하이퍼밴드는 리소스를 동적으로 재할당하는 다중 충실도 기반 튜닝 전략입니다. 하이퍼밴드는 훈련 작업의 중간 및 최종 결과를 모두 사용하여 활용도 높은 하이퍼파라미터 구성에 에포크를 재할당하고 성능이 떨어지는 구성을 자동으로 중지합니다. 또한 여러 병렬 훈련 작업을 사용할 수 있도록 원활하게 확장합니다. 이러한 기능을 사용하면 임의 검색 및 베이지안 최적화 전략에 비해 하이퍼파라미터 튜닝 속도를 크게 높일 수 있습니다.
하이퍼밴드는 다양한 리소스 수준에서 결과를 게시하는 반복적 알고리즘을 튜닝할 때만 사용해야 합니다. 예를 들어, 하이퍼밴드는 매 에포크마다 정확도 지표를 게시하는 이미지 분류용 신경망을 튜닝할 때 사용할 수 있습니다.
하이퍼밴드 모범 사례에 대한 자세한 내용은 다음 링크를 참조하세요.
초기 중지 기능이 있는 하이퍼밴드
하이퍼파라미터 튜닝 작업의 목표 지표를 개선할 가능성이 없을 때는 훈련 작업을 초기에 중지할 수 있습니다. 그러면 컴퓨팅 시간을 줄이고 모델의 과적합을 방지하는 데 도움이 될 수 있습니다. 하이퍼밴드는 고급 내부 메커니즘을 사용하여 초기 중지를 적용합니다. Hyperband 내부 조기 중지 기능을 사용할 OFF
때는 의 파라미터를 로 설정해야 TrainingJobEarlyStoppingType
HyperParameterTuningJobConfig
API 합니다.
참고
하이퍼파라미터 튜닝으로 모델이 개선되지 않을 수 있습니다. 기계 솔루션 구축을 위한 고급 도구입니다. 따라서 과학 개발 프로세스의 일부로 간주되어야 합니다.