hyperdrive 패키지

하이퍼 매개 변수 튜닝을 지원하는 모듈 및 클래스가 포함되어 있습니다.

하이퍼 매개 변수는 학습 프로세스를 안내하는 모델 학습을 위해 선택하는 조정 가능한 매개 변수입니다. HyperDrive 패키지는 이러한 매개 변수 선택을 자동화하는 데 도움이 됩니다. 예를 들어 매개 변수 검색 공간을 불연속 또는 연속으로 정의하고 검색 공간에 대한 샘플링 메서드를 임의, 그리드 또는 베이지언으로 정의할 수 있습니다. 또한 하이퍼 매개 변수 튜닝 실험에서 최적화할 기본 메트릭과 해당 메트릭의 최소화 또는 최대화 여부를 지정할 수 있습니다. 또한 성능이 저조한 실험 실행이 취소되고 새로운 실험 실행이 시작되는 조기 종료 정책을 정의할 수 있습니다. HyperDrive에 대해 재사용 가능한 기계 학습 워크플로를 정의하려면 hyper_drive_step을 사용하여 Pipeline을 만듭니다.

모듈

error_definition

HyperDrive SDK의 오류 코드 정의입니다.

error_strings

HyperDrive SDK 전체에서 사용되는 오류 문자열 컬렉션입니다.

exceptions

HyperDrive에서 throw된 예외입니다.

parameter_expressions

하이퍼 매개 변수 검색 공간을 설명하기 위해 HyperDrive에서 사용할 수 있는 함수를 정의합니다.

이러한 함수는 다양한 형식의 하이퍼 매개 변수 분포를 지정하는 데 사용됩니다. 분포는 하이퍼 매개 변수 스윕에 대한 샘플링을 구성할 때 정의됩니다. 예를 들어, RandomParameterSampling 클래스를 사용할 때 불연속 값 집합 또는 연속 값 분포에서 샘플링하도록 선택할 수 있습니다. 이 경우 choice 함수를 사용하여 이산 값 집합을 생성하고 uniform 함수를 사용하여 연속 값 분포를 생성할 수 있습니다.

이러한 함수를 사용하는 예는 자습서 https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters를 참조하세요.

클래스

BanditPolicy

slack 기준과 평가를 위한 빈도 및 지연 간격을 기반으로 조기 종료 정책을 정의합니다.

slack 요소, slack_amount 및 평가 간격을 사용하여 BanditPolicy를 초기화합니다.

BayesianParameterSampling

하이퍼 매개 변수 검색 공간에 대한 베이지언 샘플링을 정의합니다.

베이지언 샘플링은 이전 샘플의 성능을 기반으로 하이퍼 매개 변수의 다음 샘플을 지능적으로 선택하여 새 샘플이 보고된 기본 메트릭을 개선하도록 합니다.

BayesianParameterSampling을 초기화합니다.

EarlyTerminationPolicy

모든 조기 종료 정책에 대한 추상 기본 클래스입니다.

조기 종료 정책을 초기화합니다.

GridParameterSampling

하이퍼 매개 변수 검색 공간에 대한 그리드 샘플링을 정의합니다.

GridParameterSampling을 초기화합니다.

HyperDriveConfig

HyperDrive 실행을 정의하는 구성입니다.

HyperDrive 구성에는 하이퍼 매개 변수 공간 샘플링, 종료 정책, 기본 메트릭, 구성에서 다시 시작, 예측 도구 및 실험을 실행할 컴퓨팅 대상에 대한 정보가 포함되어 있습니다.

HyperDriveConfig를 초기화합니다.

HyperDriveRun

HyperDriveRun에는 제출된 HyperDrive 실험의 세부 정보가 포함되어 있습니다.

이 클래스는 HyperDrive 실행 및 생성된 각 자식 실행에 대한 실행 세부 정보를 관리, 확인 및 검색하는 데 사용할 수 있습니다.

HyperDrive 실행을 초기화합니다.

HyperDriveRunConfig

HyperDrive 실행을 정의하는 구성입니다.

구성에는 매개 변수 공간 샘플링, 종료 정책, 기본 메트릭, 예측 도구 및 실험 실행을 실행할 컴퓨팅 대상에 대한 정보가 포함되어 있습니다.

HyperDriveConfig를 초기화합니다.

HyperParameterSampling

모든 하이퍼 매개 변수 샘플링 알고리즘에 대한 추상 기본 클래스입니다.

이 클래스는 하이퍼 매개 변수 공간, 샘플링 메서드, 파생된 샘플링 클래스(BayesianParameterSampling, GridParameterSampling, RandomParameterSampling)에 대한 추가 속성을 캡슐화합니다.

HyperParameterSampling을 초기화합니다.

MedianStoppingPolicy

모든 실행의 기본 메트릭의 실행 평균을 기반으로 조기 종료 정책을 정의합니다.

MedianStoppingPolicy를 초기화합니다.

NoTerminationPolicy

조기 종료 정책이 적용되지 않도록 지정합니다.

각 실행은 완료될 때까지 진행됩니다.

NoTerminationPolicy를 초기화합니다.

RandomParameterSampling

하이퍼 매개 변수 검색 공간에 대한 임의 샘플링을 정의합니다.

RandomParameterSampling을 초기화합니다.

TruncationSelectionPolicy

각 평가 간격에서 지정된 비율의 실행을 취소하는 조기 종료 정책을 정의합니다.

TruncationSelectionPolicy를 초기화합니다.

열거형

PrimaryMetricGoal

하이퍼 매개 변수 튜닝을 위해 지원되는 메트릭 목표를 정의합니다.

메트릭 목표는 메트릭에 대한 더 높은 값이 더 좋은지 나쁜지 여부를 결정하는 데 사용됩니다. 메트릭 목표는 기본 메트릭을 기반으로 실행을 비교할 때 사용됩니다. 예를 들어 정확도를 최대화하거나 오류를 최소화할 수 있습니다.

기본 메트릭 이름과 목표는 HyperDrive 실행을 구성할 때 HyperDriveConfig 클래스에 지정됩니다.

함수

choice

샘플링할 개별 옵션 집합을 지정합니다.

choice(*options)

매개 변수

Name Description
options
필수

선택할 수 있는 옵션 목록입니다.

반환

형식 Description

확률적 표현입니다.

lognormal

exp(normal(mu, sigma))에 따라 그려지는 값을 지정합니다.

반환 값의 로그는 정규 분포를 따릅니다. 최적화할 때 이 변수는 양수로 제한됩니다.

lognormal(mu, sigma)

매개 변수

Name Description
mu
필수

정규 분포의 평균입니다.

sigma
필수

정규 분포의 표준 편차입니다.

반환

형식 Description

확률적 표현입니다.

loguniform

로그 균일 분포를 지정합니다.

반환 값의 로그가 균일하게 분포되도록 exp(uniform(min_value, max_value))에 따라 값을 그립니다. 최적화할 때 이 변수는 [exp(min_value), exp(max_value)] 간격으로 제한됩니다.

loguniform(min_value, max_value)

매개 변수

Name Description
min_value
필수

범위의 최솟값은 exp(min_value)(포함)입니다.

max_value
필수

범위의 최댓값은 exp(max_value)(포함)입니다.

반환

형식 Description

확률적 표현입니다.

normal

평균 mu 및 표준 편차 시그마로 정규 분포되는 실수 값을 지정합니다.

최적화할 때 이는 제약이 없는 변수입니다.

normal(mu, sigma)

매개 변수

Name Description
mu
필수

정규 분포의 평균입니다.

sigma
필수

정규 분포의 표준 편차입니다.

반환

형식 Description

확률적 표현입니다.

qlognormal

round(exp(normal(mu, sigma))/q) * q와 같은 값을 지정합니다.

목표가 원활하고 한 쪽에서 경계가 지정된 변수의 크기로 더 매끄럽게 되는 불연속 변수에 적합합니다.

qlognormal(mu, sigma, q)

매개 변수

Name Description
mu
필수

정규 분포의 평균입니다.

sigma
필수

정규 분포의 표준 편차입니다.

q
필수
int

다듬기 요소입니다.

반환

형식 Description

확률적 표현입니다.

qloguniform

round(exp(uniform(min_value, max_value)/q) * q 형식의 균일 분포를 지정합니다.

이는 목표가 "부드러운"인 불연속 변수에 적합하며 값의 크기로 더 부드러워지지만 위와 아래에 모두 바인딩되어야 합니다.

qloguniform(min_value, max_value, q)

매개 변수

Name Description
min_value
필수

범위의 최솟값(포함)입니다.

max_value
필수

범위의 최댓값(포함)입니다.

q
필수
int

다듬기 요소입니다.

반환

형식 Description

확률적 표현입니다.

qnormal

round(normal(mu, sigma)/q) * q와 같은 값을 지정합니다.

mu 주위에 값을 사용하지만 근본적으로 바인딩되지 않은 불연속 변수에 적합합니다.

qnormal(mu, sigma, q)

매개 변수

Name Description
mu
필수

정규 분포의 평균입니다.

sigma
필수

정규 분포의 표준 편차입니다.

q
필수
int

다듬기 요소입니다.

반환

형식 Description

확률적 표현입니다.

quniform

round(uniform(min_value, max_value)/q) * q 형식의 균일 분포를 지정합니다.

이는 목적이 여전히 다소 "매끄럽지만" 위와 아래 모두에 경계가 지정되어야 하는 이산 값에 적합합니다.

quniform(min_value, max_value, q)

매개 변수

Name Description
min_value
필수

범위의 최솟값(포함)입니다.

max_value
필수

범위의 최댓값(포함)입니다.

q
필수
int

다듬기 요소입니다.

반환

형식 Description

확률적 표현입니다.

randint

[0, upper) 범위에서 임의의 정수 집합을 지정합니다.

이 분포의 의미는 더 먼 정수 값과 비교할 때 가까운 정수 값 사이의 손실 함수에 더 이상 상관 관계가 없다는 것입니다. 이는 예를 들어 임의의 시드를 설명하는 데 적합한 분포입니다. 손실 함수가 가까운 정수 값에 대해 더 많은 상관 관계가 있는 경우 quniform, qloguniform, qnormal 또는 qlognormal과 같은 "양자화된" 연속 분포 중 하나를 사용해야 합니다.

randint(upper)

매개 변수

Name Description
upper
필수
int

정수 범위에 대한 상한(제외)입니다.

반환

형식 Description

확률적 표현입니다.

uniform

표본을 추출하는 균일 분포를 지정합니다.

uniform(min_value, max_value)

매개 변수

Name Description
min_value
필수

범위의 최솟값(포함)입니다.

max_value
필수

범위의 최댓값(포함)입니다.

반환

형식 Description

확률적 표현입니다.