하이퍼파라미터 튜닝을 위한 모범 사례 - Amazon SageMaker

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

하이퍼파라미터 튜닝을 위한 모범 사례

하이퍼파라미터 최적화(HPO)는 완전 자동화된 프로세스가 아닙니다. 최적화를 개선하려면 다음과 같은 하이퍼파라미터 튜닝 모범 사례를 따르세요.

튜닝 전략 선택

대규모 작업의 경우 하이퍼밴드 튜닝 전략을 사용하면 컴퓨팅 시간을 줄일 수 있습니다. 하이퍼밴드에는 성능이 떨어지는 작업을 중지하기 위한 초기 중지 메커니즘이 있습니다. 또한 하이퍼밴드는 리소스를 활용도가 높은 하이퍼파라미터 구성에 재할당하고 병렬 작업을 실행할 수 있습니다. 런타임을 적게 사용하는 소규모 훈련 작업에는 임의 검색 또는 베이지안 최적화를 적용합니다.

베이지안 최적화를 사용하면 다음 실행 시 하이퍼파라미터 구성을 개선에 대해 정보에 입각한 결정을 내릴 수 있습니다. 베이지안 최적화는 이전 실행에서 수집한 정보를 사용하여 후속 실행을 개선합니다. 베이지안 최적화는 순차적인 특성 때문에 대규모로 확장할 수 없습니다.

많은 수의 병렬 작업에는 임의 검색을 적용합니다. 임의 검색에서 후속 작업은 이전 작업의 결과에 의존하지 않으므로 독립적으로 실행할 수 있습니다. 다른 전략에 비해 임의 검색은 가장 많은 수의 병렬 작업을 실행할 수 있습니다.

튜닝 작업 결과를 재현하거나 최적화 알고리즘의 단순성과 투명성이 중요한 경우 그리드 검색을 사용합니다. 또한 그리드 검색을 사용하여 전체 하이퍼파라미터 검색 공간을 균등하게 탐색할 수 있습니다. 그리드 검색은 모든 하이퍼파라미터 조합을 체계적으로 검색하여 최적의 하이퍼파라미터 값을 찾습니다. 그리드 검색과 달리 베이지안 최적화, 임의 검색 및 하이퍼밴드는 모두 검색 공간에서 하이퍼파라미터를 임의로 가져옵니다. 그리드 검색은 모든 하이퍼파라미터 조합을 분석하므로 동일한 하이퍼파라미터를 사용하는 튜닝 작업 간에 최적의 하이퍼파라미터 값이 동일합니다.

하이퍼파라미터의 개수 선택

최적화 중 하이퍼파라미터 튜닝 작업의 계산 복잡성은 다음에 따라 달라집니다.

  • 하이퍼파라미터의 개수

  • Amazon이 검색 SageMaker 해야 하는 값의 범위

하이퍼파라미터를 최대 30개까지 동시에 지정할 수 있지만 검색을 더 적은 수로 제한하면 컴퓨팅 시간을 줄일 수 있습니다. 계산 시간을 줄이면 SageMaker 가 최적의 하이퍼파라미터 구성으로 더 빠르게 수렴할 수 있습니다.

하이퍼파라미터 범위 선택

선택한 검색 값 범위는 하이퍼파라미터 최적화에 부정적인 영향을 미칠 수 있습니다. 예를 들어, 가능한 모든 하이퍼파라미터 값을 범위에 포함하면 컴퓨팅 시간이 길어지고 모델이 보이지 않는 데이터로 일반화되지 않을 수 있습니다. 가능한 가장 큰 범위의 서브셋을 사용하는 것이 사용 사례에 적합하다는 것을 알고 있다면 범위를 해당 서브셋으로 제한하는 것을 고려하세요.

하이퍼파라미터에 대한 올바른 눈금 사용

하이퍼파라미터 튜닝 중에 는 하이퍼파라미터가 로그 스케일링되거나 선형 스케일링된 경우 추론을 SageMaker 시도합니다. 처음에는 하이퍼파라미터에 대한 선형 조정을 SageMaker 가정합니다. 하이퍼파라미터에 로그 눈금이 사용되는 경우 올바른 눈금을 선택하면 검색 효율성이 향상됩니다. 스케일Auto을 감지 SageMaker 하려는 CreateHyperParameterTuningJob API 경우 ScalingType에서 에 대해 를 선택할 수도 있습니다.

최적의 병렬 훈련 작업 개수 선택

이전 평가판 결과를 사용하여 후속 평가판 성능을 향상시킬 수 있습니다. 리전 및 계정 컴퓨팅 제약 범위 내에서 의미 있는 증분 결과를 제공할 수 있는 가장 많은 수의 병렬 작업을 선택합니다. MaxParallelTrainingJobs 필드를 사용하여 하이퍼파라미터 튜닝 작업이 병렬로 실행할 수 있는 훈련 작업 수를 제한합니다. 자세한 내용은 Amazon 에서 여러 HPO 작업을 병렬로 실행을 SageMaker 참조하세요.

여러 인스턴스에서 훈련 작업 실행

분산 모드에서 훈련 작업이 다중 머신에서 실행될 때, 개별 머신은 목표 지표를 내보냅니다. HPO 는 이러한 내보낸 목표 지표 중 하나만 사용하여 모델 성능을 평가할 수 있습니다. 분산 모드에서 는 모든 인스턴스에서 마지막으로 실행된 작업에서 보고된 목표 지표를 HPO 사용합니다.

임의 시드를 사용한 하이퍼파라미터 구성 재현

정수를 하이퍼파라미터 튜닝을 위한 임의 시드로 지정하고 하이퍼파라미터 생성 중에 해당 시드를 사용할 수 있습니다. 나중에 동일한 시드를 사용하여 이전 결과와 일치하는 하이퍼파라미터 구성을 재현할 수 있습니다. 임의 검색 및 하이퍼밴드 전략의 경우 동일한 임의 시드를 사용하면 동일한 튜닝 작업에 대해 이전 하이퍼파라미터 구성을 최대 100% 재현할 수 있습니다. 베이지안 전략의 경우 동일한 임의 시드를 사용하면 동일한 튜닝 작업의 재현성이 향상됩니다.