Run 클래스

모든 Azure Machine Learning 실험 실행에 대한 기본 클래스를 정의합니다.

실행은 실험의 단일 시도를 나타냅니다. 실행은 시도의 비동기 실행을 모니터링하고, 메트릭을 로그하고, 시도의 출력을 저장하고, 결과를 분석하고, 시도에서 생성된 아티팩트에 액세스하는 데 사용됩니다.

실행 개체는 HyperDrive 실행, 파이프라인 실행 및 AutoML 실행을 포함한 Azure Machine Learning의 다양한 시나리오에서 모델 학습을 위한 스크립트를 제출할 때 만들어집니다. 실행 개체는 Experiment 클래스를 사용하여 submit 또는 start_logging할 때도 만들어집니다.

실험 및 실행을 시작하려면 다음을 참조하세요.

Run 개체를 초기화합니다.

상속
azureml._run_impl.run_base._RunBase
Run

생성자

Run(experiment, run_id, outputs=None, **kwargs)

매개 변수

experiment
Experiment
필수

포함하는 실험입니다.

run_id
str
필수

실행의 ID입니다.

outputs
str
기본값: None

추적할 출력입니다.

_run_dto
<xref:azureml._restclient.models.run_dto.RunDto>
필수

내부 전용입니다.

kwargs
dict
필수

추가 구성 매개 변수의 사전입니다.

experiment
Experiment
필수

포함하는 실험입니다.

run_id
str
필수

실행의 ID입니다.

outputs
str
필수

추적할 출력입니다.

kwargs
dict
필수

추가 구성 매개 변수의 사전입니다.

설명

실행은 실험의 단일 시도를 나타냅니다. 실행 개체는 평가판의 비동기 실행을 모니터링하고, 메트릭을 기록하고, 평가판의 출력을 저장하고, 결과를 분석하고, 평가판에서 생성된 아티팩트를 액세스하는 데 사용됩니다.

실험 코드 내에서 실행을 사용하여 메트릭과 아티팩트를 실행 기록 서비스에 기록합니다.

실행은 실험 외부에서 진행 상황을 모니터링하고 생성된 메트릭 및 결과를 쿼리하고 분석하는 데 사용됩니다.

Run의 기능에는 다음이 포함됩니다.

  • 메트릭과 데이터 저장 및 검색

  • 파일 업로드 및 다운로드

  • 태그 및 자식 계층 구조를 사용하여 이전 실행을 쉽게 조회

  • 운영화할 수 있는 모델로 저장된 모델 파일 등록

  • 실행의 속성 저장, 수정, 검색

  • get_context 메서드를 사용하여 원격 환경에서 현재 실행 로드

  • 재현성을 위해 파일 또는 디렉터리 효율적으로 스냅샷

이 클래스는 다음 시나리오에서 Experiment와 함께 작동합니다.

  • submit를 사용하여 코드를 실행하여 실행 만들기

  • start_logging을 사용하여 Notebook에서 대화형으로 실행 만들기

  • 메트릭 로깅 및 실험에서 아티팩트 업로드(예: log 사용 시)

  • 메트릭 읽기 및 실험 결과 분석 시 아티팩트 다운로드(예: get_metrics 사용 시)

실행을 제출하려면 실험 실행 방법을 설명하는 구성 개체를 만듭니다. 사용할 수 있는 다양한 구성 개체의 예는 다음과 같습니다.

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.train.hyperdrive.HyperDriveConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

실험을 학습하는 동안 실행에 추가할 수 있는 메트릭은 다음과 같습니다.

  • 스칼라

    • log를 사용하여 숫자 또는 문자열 값을 지정된 이름의 실행에 기록합니다. 메트릭을 실행에 기록하면 해당 메트릭이 실험의 실행 기록에 저장됩니다. 하나의 실행 내에서 동일한 메트릭을 여러 번 기록할 수 있으며 결과는 해당 메트릭의 벡터로 간주됩니다.

    • 예: run.log("accuracy", 0.95)

  • 목록

    • log_list를 사용하여 값 목록을 지정된 이름의 실행에 기록합니다.

    • 예: run.log_list("accuracies", [0.6, 0.7, 0.87])

    • log_row를 사용하여 kwargs에 설명된 대로 열이 여러 개 있는 메트릭을 만듭니다. 명명된 각 매개 변수는 지정된 값이 있는 열을 생성합니다. log_row는 임의의 튜플을 로깅하기 위해 한 번 호출되거나 루프에서 여러 번 호출되어 전체 테이블을 생성할 수 있습니다.

    • 예: run.log_row("Y over X", x=1, y=0.4)

  • 테이블

    • log_table을 사용하여 사전 개체를 지정된 이름의 실행에 기록합니다.

    • 예: run.log_table("Y over X", {"x":[1, 2, 3], "y":[0.6, 0.7, 0.89]})

  • 이미지

    • 이미지를 실행 기록에 로깅합니다. log_image를 사용하여 이미지 파일이나 matplotlib 플롯을 실행에 기록합니다. 이러한 이미지는 실행 기록에서 볼 수 있고 비교할 수 있습니다.

    • 예: run.log_image("ROC", path)

메서드

add_properties

실행에 변경할 수 없는 속성을 추가합니다.

태그 및 속성(dict[str, str] 모두)은 변경 가능성이 다릅니다. 속성은 변경할 수 없으므로 감사를 위해 영구 레코드를 만듭니다. 태그는 변경할 수 있습니다. 태그 및 속성 작업에 대한 자세한 내용은 태그 및 찾기 실행을 참조하세요.

add_type_provider

실행 기록에 저장된 사용자 지정 실행 형식에 대한 확장성 후크입니다.

cancel

실행을 취소된 것으로 표시합니다.

집합 cancel_uri 필드와 연결된 작업이 있는 경우 해당 작업도 종료합니다.

child_run

자식 실행을 만듭니다.

clean

실행 구성에 지정된 대상에서 현재 실행에 해당하는 파일을 제거합니다.

complete

작업 큐가 처리될 때까지 기다립니다.

그런 다음, 실행이 완료된 것으로 표시됩니다. 이는 일반적으로 대화형 노트북 시나리오에서 사용됩니다.

create_children

하나 이상의 자식 실행을 만듭니다.

download_file

스토리지에서 연결된 파일을 다운로드합니다.

download_files

접두사 지정이 취소된 경우 지정된 스토리지 접두사(폴더 이름) 또는 전체 컨테이너에서 파일을 다운로드합니다.

fail

실행을 실패한 것으로 표시합니다.

필요에 따라 error_details에 메시지 또는 예외가 전달되는 실행의 오류 속성을 설정합니다.

flush

작업 큐가 처리될 때까지 기다립니다.

get

실행 ID를 사용하여 이 작업 영역에 대한 실행을 가져옵니다.

get_all_logs

실행에 대한 모든 로그를 디렉터리에 다운로드합니다.

get_children

지정된 필터에서 선택한 현재 실행에 대한 모든 자식을 가져옵니다.

get_context

현재 서비스 컨텍스트를 반환합니다.

이 메서드를 사용하여 메트릭을 로깅하고 파일을 업로드하기 위한 현재 서비스 컨텍스트를 검색합니다. allow_offline이 True(기본값)이면 실행 개체에 대한 작업이 표준 출력으로 인쇄됩니다.

get_detailed_status

실행의 최신 상태를 가져옵니다. 실행 상태가 “Queued”이면 세부 정보가 표시됩니다.

get_details

실행의 정의, 상태 정보, 현재 로그 파일, 기타 세부 정보를 가져옵니다.

get_details_with_logs

로그 파일 콘텐츠를 포함한 실행 상태를 반환합니다.

get_environment

이 실행에서 사용된 환경 정의를 가져옵니다.

get_file_names

실행과 관련하여 저장된 파일을 나열합니다.

get_metrics

실행에 기록된 메트릭을 검색합니다.

recursive가 True(기본적으로 False)이면 지정된 실행의 하위 트리에서 실행에 대한 메트릭을 가져옵니다.

get_properties

서비스에서 실행의 최신 속성을 가져옵니다.

get_secret

실행 컨텍스트에서 비밀 값을 가져옵니다.

제공된 이름의 비밀 값을 가져옵니다. 비밀 이름은 작업 영역과 연결된 Azure Key Vault에 저장된 값을 참조합니다. 비밀로 작업하는 예제는 학습 실행에서 비밀 사용을 참조하세요.

get_secrets

지정된 비밀 이름 목록에 대한 비밀 값을 가져옵니다.

제공된 이름 목록에 대해 찾은 비밀과 찾을 수 없는 비밀의 사전을 가져옵니다. 각 비밀 이름은 작업 영역과 연결된 Azure Key Vault에 저장된 값을 참조합니다. 비밀로 작업하는 예제는 학습 실행에서 비밀 사용을 참조하세요.

get_snapshot_id

최신 스냅샷 ID를 가져옵니다.

get_status

실행의 최신 상태를 가져옵니다.

반환되는 일반적인 값에는 “Running”, “Completed”, “Failed”가 포함됩니다.

get_submitted_run

사용되지 않습니다. get_context을 사용합니다.

이 실험에 대해 제출된 실행을 가져옵니다.

get_tags

서비스에서 실행 시 변경 가능한 태그의 최신 집합을 가져옵니다.

list

선택적 필터로 지정된 실험에서 실행 목록을 가져옵니다.

list_by_compute

선택적 필터로 지정된 컴퓨팅에서 실행 목록을 가져옵니다.

log

메트릭 값을 지정된 이름의 실행에 기록합니다.

log_accuracy_table

아티팩트 저장소에 정확도 테이블을 기록합니다.

정확도 테이블 메트릭은 예측된 확률의 공간에 따라 지속적으로 변화하는 여러 유형의 꺾은선형 차트를 생성하는 데 사용할 수 있는 다중 사용 비 스칼라 메트릭입니다. 이러한 차트의 예로는 ROC, 정밀도 재현율, 리프트 곡선이 있습니다.

정확도 테이블의 계산은 ROC 곡선의 계산과 유사합니다. ROC 곡선은 다양한 확률 임계값에 진양성 비율과 가양성 비율을 저장합니다. 정확도 테이블은 많은 확률 임계값에 진양성, 가양성, 진음성, 가음성의 원시 수를 저장합니다.

임계값을 선택하는 데 사용되는 두 가지 메서드는 “확률” 및 “백분위수”입니다. 이들은 예측된 확률의 공간에서 샘플링하는 방법이 다릅니다.

확률 임계값은 0에서 1 사이의 균일하게 간격이 지정된 임계값입니다. NUM_POINTS가 5이면 확률 임계값은 [0.0, 0.25, 0.5, 0.75, 1.0]입니다.

백분위수 임계값은 예측된 확률의 분포에 따라 간격이 지정됩니다. 각 임계값은 확률 임계값에 있는 데이터의 백분위수에 해당합니다. 예를 들어 NUM_POINTS가 5이면 첫 번째 임계값은 0번째 백분위수, 두 번째 임계값은 25번째 백분위수, 세 번째 임계값은 50번째 백분위수입니다.

확률 테이블과 백분위수 테이블은 모두 3D 목록입니다. 여기서 첫 번째 차원은 클래스 레이블을 나타내고, 두 번째 차원은 한 임계값(NUM_POINTS 배율)에서 샘플을 나타내고, 세 번째 차원에는 항상 TP, FP, TN, FN의 4개 값이 항상 해당 순서로 있습니다.

혼동 값(TP, FP, TN, FN)은 1 대 나머지 전략으로 컴퓨팅됩니다. 자세한 내용은 https://en.wikipedia.org/wiki/Multiclass_classification 링크를 참조하세요.

N = 유효성 검사 데이터 세트의 샘플 수(예: 200개) M = 임계값의 수 = 확률 공간에서 가져온 샘플 수(예: 5개) C = 전체 데이터 세트의 클래스 수(예: 3개)

정확도 테이블의 일부 고정:

  • TP + FP + TN + FN = 모든 클래스의 모든 임계값에 대한 N
  • TP + FN은 모든 클래스의 모든 임계값에서 동일합니다.
  • TN + FP는 모든 클래스의 모든 임계값에서 동일합니다.
  • 확률 테이블 및 백분위수 테이블은 도형 [C, M, 4]를 갖습니다.

참고: M은 모든 값일 수 있으며 차트의 해상도를 제어합니다. 이는 데이터 세트와는 독립적이며 메트릭을 계산할 때 정의되며 스토리지 공간, 계산 시간, 해상도를 절판합니다.

클래스 레이블은 문자열이어야 하고, 혼동 값은 정수여야 하며, 임계값은 부동이어야 합니다.

log_confusion_matrix

혼동 행렬을 아티팩트 저장소에 기록합니다.

그러면 sklearn 혼동 행렬 주위에 래퍼가 기록됩니다. 메트릭 데이터에는 행렬 자체에 대한 클래스 레이블 및 2D 목록이 포함됩니다. 메트릭이 컴퓨팅되는 방법에 대한 자세한 내용은 https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html 링크를 참조하세요.

log_image

이미지 메트릭을 실행 기록에 기록합니다.

log_list

메트릭 값 목록을 지정된 이름의 실행에 기록합니다.

log_predictions

아티팩트 저장소에 예측을 기록합니다.

이렇게 하면 실제 대상 값의 분포를 회귀 작업의 예측 값 분포와 비교하는 데 사용할 수 있는 메트릭 점수를 기록합니다.

예측은 범주화되고 표준 편차는 꺾은선형 차트의 오차 막대에 대해 계산됩니다.

log_residuals

아티팩트 저장소에 잔차를 기록합니다.

이는 회귀 작업에 대한 잔차 히스토그램을 표시하는 데 필요한 데이터를 기록합니다. 잔차가 예측 - 실제입니다.

개수보다 가장자리가 하나 더 있어야 합니다. 히스토그램을 나타내기 위해 개수와 가장자리를 사용하는 예제는 numpy 히스토그램 설명서를 참조하세요. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_row

행 메트릭을 지정된 이름의 실행에 기록합니다.

log_table

테이블 메트릭을 지정된 이름의 실행에 기록합니다.

register_model

운영화를 위한 모델을 등록합니다.

remove_tags

이 실행에서 변경 가능한 태그 목록을 삭제합니다.

restore_snapshot

스냅샷을 ZIP 파일로 복원합니다. ZIP의 경로를 반환합니다.

set_tags

실행 시 태그 집합을 추가하거나 수정합니다. 사전에 전달되지 않은 태그는 그대로 유지됩니다.

간단한 문자열 태그를 추가할 수도 있습니다. 이러한 태그가 태그 사전에 키로 표시되는 경우, 값은 None입니다. 자세한 내용은 태그 및 찾기 실행을 참조하세요.

start

실행을 시작됨으로 표시합니다.

이는 일반적으로 다른 행위자가 실행을 만든 경우 고급 시나리오에서 사용됩니다.

submit_child

실험을 제출하고 활성 자식 실행을 반환합니다.

tag

문자열 키와 선택적 문자열 값을 사용하여 실행에 대한 태그를 지정합니다.

take_snapshot

입력 파일 또는 폴더의 스냅샷을 저장합니다.

upload_file

파일을 실행 기록에 업로드합니다.

upload_files

파일을 실행 기록에 업로드합니다.

upload_folder

지정된 폴더를 지정된 접두사 이름으로 업로드합니다.

wait_for_completion

이 실행이 완료될 때까지 기다립니다. 대기 후 상태 개체를 반환합니다.

add_properties

실행에 변경할 수 없는 속성을 추가합니다.

태그 및 속성(dict[str, str] 모두)은 변경 가능성이 다릅니다. 속성은 변경할 수 없으므로 감사를 위해 영구 레코드를 만듭니다. 태그는 변경할 수 있습니다. 태그 및 속성 작업에 대한 자세한 내용은 태그 및 찾기 실행을 참조하세요.

add_properties(properties)

매개 변수

properties
dict
필수

실행 개체에 저장된 숨겨진 속성입니다.

add_type_provider

실행 기록에 저장된 사용자 지정 실행 형식에 대한 확장성 후크입니다.

static add_type_provider(runtype, run_factory)

매개 변수

runtype
str
필수

팩터리를 호출할 Run.type의 값입니다. 예를 들어 ‘hyperdrive’ 또는 ‘azureml.scriptrun’이 있지만 사용자 지정 형식으로 확장할 수 있습니다.

run_factory
<xref:function>
필수

서명이 있는 함수(Experiment, RunDto) -> 목록이 실행될 때 호출되도록 실행합니다.

cancel

실행을 취소된 것으로 표시합니다.

집합 cancel_uri 필드와 연결된 작업이 있는 경우 해당 작업도 종료합니다.

cancel()

child_run

자식 실행을 만듭니다.

child_run(name=None, run_id=None, outputs=None)

매개 변수

name
str
기본값: None

자식 실행에 대한 선택적 이름으로, 일반적으로 “part”에 대해 지정됩니다.

run_id
str
기본값: None

자식에 대한 선택적 실행 ID로, 그렇지 않으면 자동으로 생성됩니다. 일반적으로 이 매개 변수는 설정되지 않습니다.

outputs
str
기본값: None

자식에 대해 추적할 선택적 출력 디렉터리입니다.

반환

자식 실행입니다.

반환 형식

Run

설명

이는 실행의 일부를 하위 섹션으로 격리하는 데 사용됩니다. 이 작업은 구분하거나 하위 프로세스의 상호 작용에서 독립적인 메트릭을 캡처하는 데 흥미로운 실행의 식별 가능한 “부분”에 대해 수행할 수 있습니다.

자식 실행에 대해 출력 디렉터리가 설정된 경우 자식이 완료되면 해당 디렉터리의 내용이 자식 실행 기록에 업로드됩니다.

clean

실행 구성에 지정된 대상에서 현재 실행에 해당하는 파일을 제거합니다.

clean()

반환

삭제된 파일 목록입니다.

반환 형식

complete

작업 큐가 처리될 때까지 기다립니다.

그런 다음, 실행이 완료된 것으로 표시됩니다. 이는 일반적으로 대화형 노트북 시나리오에서 사용됩니다.

complete(_set_status=True)

매개 변수

_set_status
bool
기본값: True

추적을 위해 상태 이벤트를 보낼지 여부를 나타냅니다.

create_children

하나 이상의 자식 실행을 만듭니다.

create_children(count=None, tag_key=None, tag_values=None)

매개 변수

count
int
기본값: None

만들 자식의 선택적 수입니다.

tag_key
str
기본값: None

생성된 모든 자식에서 태그 항목을 채우는 선택적 키입니다.

tag_Values
필수

생성된 실행 목록에 대한 Tags[tag_key]에 매핑되는 값의 선택적 목록입니다.

tag_values
기본값: None

반환

자식 실행 목록입니다.

반환 형식

설명

매개 변수 count 또는 매개 변수 tag_keytag_values를 지정해야 합니다.

download_file

스토리지에서 연결된 파일을 다운로드합니다.

download_file(name, output_file_path=None, _validate_checksum=False)

매개 변수

name
str
필수

다운로드할 아티팩트의 이름입니다.

output_file_path
str
필수

아티팩트 저장 위치의 로컬 경로입니다.

download_files

접두사 지정이 취소된 경우 지정된 스토리지 접두사(폴더 이름) 또는 전체 컨테이너에서 파일을 다운로드합니다.

download_files(prefix=None, output_directory=None, output_paths=None, batch_size=100, append_prefix=True, timeout_seconds=None)

매개 변수

prefix
str
필수

모든 아티팩트를 다운로드할 컨테이너 내의 파일 경로 접두사입니다.

output_directory
str
필수

모든 아티팩트 경로가 접두사로 사용하는 선택적 디렉터리입니다.

output_paths
[str]
필수

다운로드한 아티팩트를 저장할 선택적 파일 경로입니다. 고유해야 하며 경로 길이와 일치해야 합니다.

batch_size
int
필수

일괄 처리당 다운로드할 파일 수입니다. 기본값은 100개 파일입니다.

append_prefix
bool
필수

최종 출력 파일 경로에서 지정된 접두사에 추가할지 여부를 나타내는 선택적 플래그입니다. False이면 출력 파일 경로에서 접두사가 제거됩니다.

timeout_seconds
int
필수

파일을 다운로드하기 위한 시간 제한입니다.

fail

실행을 실패한 것으로 표시합니다.

필요에 따라 error_details에 메시지 또는 예외가 전달되는 실행의 오류 속성을 설정합니다.

fail(error_details=None, error_code=None, _set_status=True)

매개 변수

error_details
str 또는 BaseException
기본값: None

오류에 대한 선택적 세부 정보입니다.

error_code
str
기본값: None

오류 분류에 대한 오류의 선택적 오류 코드입니다.

_set_status
bool
기본값: True

추적을 위해 상태 이벤트를 보낼지 여부를 나타냅니다.

flush

작업 큐가 처리될 때까지 기다립니다.

flush(timeout_seconds=300)

매개 변수

timeout_seconds
int
기본값: 300

작업 큐가 처리될 때까지 대기하는 시간(초)입니다.

get

실행 ID를 사용하여 이 작업 영역에 대한 실행을 가져옵니다.

static get(workspace, run_id)

매개 변수

workspace
Workspace
필수

포함하는 작업 영역입니다.

run_id
string
필수

실행 ID입니다.

반환

제출된 실행입니다.

반환 형식

Run

get_all_logs

실행에 대한 모든 로그를 디렉터리에 다운로드합니다.

get_all_logs(destination=None)

매개 변수

destination
str
기본값: None

로그를 저장할 대상 경로입니다. 지정하지 않으면 실행 ID로 명명된 디렉터리가 프로젝트 디렉터리에 만들어집니다.

반환

다운로드한 로그의 이름 목록입니다.

반환 형식

get_children

지정된 필터에서 선택한 현재 실행에 대한 모든 자식을 가져옵니다.

get_children(recursive=False, tags=None, properties=None, type=None, status=None, _rehydrate_runs=True)

매개 변수

recursive
bool
기본값: False

모든 하위 항목을 재귀할지 여부를 나타냅니다.

tags
str 또는 dict
기본값: None

지정한 경우 지정된 “tag” 또는 {“tag”: “value”}에 일치하는 실행을 반환합니다.

properties
str 또는 dict
기본값: None

지정한 경우 지정된 “property” 또는 {“property”: “value”}에 일치하는 실행을 반환합니다.

type
str
기본값: None

지정한 경우 이 형식과 일치하는 실행을 반환합니다.

status
str
기본값: None

지정한 경우 상태가 “status”로 지정된 실행을 반환합니다.

_rehydrate_runs
bool
기본값: True

원래 형식의 실행을 인스턴스화할지 또는 기본 실행을 인스턴스화할지 여부를 나타냅니다.

반환

Run 개체의 목록입니다.

반환 형식

get_context

현재 서비스 컨텍스트를 반환합니다.

이 메서드를 사용하여 메트릭을 로깅하고 파일을 업로드하기 위한 현재 서비스 컨텍스트를 검색합니다. allow_offline이 True(기본값)이면 실행 개체에 대한 작업이 표준 출력으로 인쇄됩니다.

get_context(allow_offline=True, used_for_context_manager=False, **kwargs)

매개 변수

cls
필수

클래스 메서드를 나타냅니다.

allow_offline
bool
기본값: True

SDK를 사용하여 작업을 제출하지 않고도 학습 스크립트를 로컬로 테스트할 수 있도록 서비스 컨텍스트가 오프라인 모드로 대체되도록 허용합니다. 기본적으로 true입니다.

kwargs
dict
필수

추가 매개 변수의 사전입니다.

used_for_context_manager
기본값: False

반환

제출된 실행입니다.

반환 형식

Run

설명

이 함수는 일반적으로 experiment.submit()를 통한 실행을 위해 제출할 스크립트 내에서 인증된 실행 개체를 검색하는 데 사용됩니다. 이 실행 개체는 Azure Machine Learning 서비스와 통신하는 인증된 컨텍스트 및 메트릭, 파일(아티팩트), 모델이 포함된 개념 컨테이너입니다.


   run = Run.get_context() # allow_offline=True by default, so can be run locally as well
   ...
   run.log("Accuracy", 0.98)
   run.log_row("Performance", epoch=e, error=err)

get_detailed_status

실행의 최신 상태를 가져옵니다. 실행 상태가 “Queued”이면 세부 정보가 표시됩니다.

get_detailed_status()

반환

최신 상태 및 세부 정보

반환 형식

설명

  • status: 실행의 현재 상태입니다. get_status()에서 반환된 값과 동일합니다.

  • details: 현재 상태에 대한 자세한 정보입니다.


   run = experiment.submit(config)
   details = run.get_detailed_status()
   # details = {
   #     'status': 'Queued',
   #     'details': 'Run requested 1 node(s). Run is in pending status.',
   # }

get_details

실행의 정의, 상태 정보, 현재 로그 파일, 기타 세부 정보를 가져옵니다.

get_details()

반환

실행에 대한 세부 정보 반환

반환 형식

설명

반환된 사전에는 다음과 같은 키-값 쌍이 포함됩니다.

  • runId: 이 실행의 ID입니다.

  • 대상

  • status: 실행의 현재 상태입니다. get_status()에서 반환된 값과 동일합니다.

  • startTimeUtc: ISO8601에서 이 실행이 시작된 UTC 시간입니다.

  • endTimeUtc: ISO8601에서 이 실행이 완료된(완료 또는 실패) 시점의 UTC 시간입니다.

    실행이 아직 진행 중인 경우 이 키가 존재하지 않습니다.

  • properties: 실행과 연결된 변경할 수 없는 키-값 쌍입니다. 기본 속성에는 실행의 스냅샷 ID와 실행이 만들어진 git 리포지토리에 대한 정보가 포함됩니다(있는 경우). add_properties를 사용하여 실행에 추가 속성을 추가할 수 있습니다.

  • inputDatasets: 실행과 연결된 입력 데이터 세트입니다.

  • outputDatasets: 실행과 연결된 출력 데이터 세트입니다.

  • logFiles

  • submittedBy


   run = experiment.start_logging()

   details = run.get_details()
   # details = {
   #     'runId': '5c24aa28-6e4a-4572-96a0-fb522d26fe2d',
   #     'target': 'sdk',
   #     'status': 'Running',
   #     'startTimeUtc': '2019-01-01T13:08:01.713777Z',
   #     'endTimeUtc': '2019-01-01T17:15:65.986253Z',
   #     'properties': {
   #         'azureml.git.repository_uri': 'https://example.com/my/git/repo',
   #         'azureml.git.branch': 'master',
   #         'azureml.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'azureml.git.dirty': 'True',
   #         'mlflow.source.git.repoURL': 'https://example.com/my/git/repo',
   #         'mlflow.source.git.branch': 'master',
   #         'mlflow.source.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'ContentSnapshotId': 'b4689489-ce2f-4db5-b6d7-6ad11e77079c'
   #     },
   #     'inputDatasets': [{
   #         'dataset': {'id': 'cdebf245-701d-4a68-8055-41f9cf44f298'},
   #         'consumptionDetails': {
   #             'type': 'RunInput',
   #             'inputName': 'training-data',
   #             'mechanism': 'Mount',
   #             'pathOnCompute': '/mnt/datasets/train'
   #         }
   #     }],
   #     'outputDatasets': [{
   #         'dataset': {'id': 'd04e8a19-1caa-4b1f-b318-4cbff9af9615'},
   #         'outputType': 'RunOutput',
   #         'outputDetails': {
   #             'outputName': 'training-result'
   #         }
   #     }],
   #     'runDefinition': {},
   #     'logFiles': {},
   #     'submittedBy': 'Alan Turing'
   # }

get_details_with_logs

로그 파일 콘텐츠를 포함한 실행 상태를 반환합니다.

get_details_with_logs()

반환

로그 파일 콘텐츠를 포함한 실행 상태를 반환합니다.

반환 형식

get_environment

이 실행에서 사용된 환경 정의를 가져옵니다.

get_environment()

반환

환경 개체를 반환합니다.

반환 형식

get_file_names

실행과 관련하여 저장된 파일을 나열합니다.

get_file_names()

반환

기존 아티팩트 경로 목록

반환 형식

get_metrics

실행에 기록된 메트릭을 검색합니다.

recursive가 True(기본적으로 False)이면 지정된 실행의 하위 트리에서 실행에 대한 메트릭을 가져옵니다.

get_metrics(name=None, recursive=False, run_type=None, populate=False)

매개 변수

name
str
기본값: None

메트릭의 이름입니다.

recursive
bool
기본값: False

모든 하위 항목을 재귀할지 여부를 나타냅니다.

run_type
str
기본값: None
populate
bool
기본값: False

메트릭에 연결된 외부 데이터의 콘텐츠를 가져올지 여부를 나타냅니다.

반환

사용자 메트릭을 포함하는 사전입니다.

반환 형식

설명


   run = experiment.start_logging() # run id: 123
   run.log("A", 1)
   with run.child_run() as child: # run id: 456
       child.log("A", 2)

   metrics = run.get_metrics()
   # metrics = { 'A': 1 }

   metrics = run.get_metrics(recursive=True)
   # metrics = { '123': { 'A': 1 }, '456': { 'A': 2 } } note key is runId

get_properties

서비스에서 실행의 최신 속성을 가져옵니다.

get_properties()

반환

실행의 속성입니다.

반환 형식

설명

속성은 add_properties 메서드와 함께 추가된 기간, 실행 날짜, 사용자, 사용자 지정 속성과 같은 변경할 수 없는 시스템 생성 정보입니다. 자세한 내용은 태그 및 찾기 실행을 참조하세요.

Azure Machine Learning에 작업을 제출할 때 원본 파일이 로컬 git 리포지토리에 저장된 경우 리포지토리에 대한 정보는 속성으로 저장됩니다. 이러한 git 속성은 실행을 만들거나 Experiment.submit을 호출할 때 추가됩니다. git 속성에 대한 자세한 내용은 Azure Machine Learning에 대한 Git 통합을 참조하세요.

get_secret

실행 컨텍스트에서 비밀 값을 가져옵니다.

제공된 이름의 비밀 값을 가져옵니다. 비밀 이름은 작업 영역과 연결된 Azure Key Vault에 저장된 값을 참조합니다. 비밀로 작업하는 예제는 학습 실행에서 비밀 사용을 참조하세요.

get_secret(name)

매개 변수

name
str
필수

비밀을 반환할 비밀 이름입니다.

반환

비밀 값입니다.

반환 형식

str

get_secrets

지정된 비밀 이름 목록에 대한 비밀 값을 가져옵니다.

제공된 이름 목록에 대해 찾은 비밀과 찾을 수 없는 비밀의 사전을 가져옵니다. 각 비밀 이름은 작업 영역과 연결된 Azure Key Vault에 저장된 값을 참조합니다. 비밀로 작업하는 예제는 학습 실행에서 비밀 사용을 참조하세요.

get_secrets(secrets)

매개 변수

secrets
list[str]
필수

비밀 값을 반환할 비밀 이름 목록입니다.

반환

찾은 비밀과 찾을 수 없는 비밀의 사전을 반환합니다.

반환 형식

dict[<xref:str: str>]

get_snapshot_id

최신 스냅샷 ID를 가져옵니다.

get_snapshot_id()

반환

가장 최근의 스냅샷 ID입니다.

반환 형식

str

get_status

실행의 최신 상태를 가져옵니다.

반환되는 일반적인 값에는 “Running”, “Completed”, “Failed”가 포함됩니다.

get_status()

반환

최신 상태입니다.

반환 형식

str

설명

  • NotStarted - 클라우드 제출 전에 임시 상태 클라이언트 쪽 실행 개체입니다.

  • Starting - 실행이 클라우드에서 처리되기 시작했습니다. 호출자에게는 이 시점에서 실행 ID가 있습니다.

  • Provisioning - 지정된 작업 제출에 대해 주문형 컴퓨팅을 만들 때 반환됩니다.

  • Preparing - 실행 환경이 준비 중입니다.

    • docker 이미지 빌드

    • conda 환경 설정

  • Queued - 작업이 컴퓨팅 대상에 큐에 대기됩니다. 예를 들어 BatchAI에서 작업은

    요청된 모든 노드가 준비될 때까지 기다리는 동안 대기 상태입니다.

  • Running - 컴퓨팅 대상에서 작업이 실행되기 시작했습니다.

  • Finalizing - 사용자 코드가 완료되고 실행이 사후 처리 단계에 있습니다.

  • CancelRequested - 작업에 대한 취소가 요청되었습니다.

  • Completed - 실행이 성공적으로 완료되었습니다. 여기에는 사용자 코드와 실행이 모두 포함됩니다.

    사후 처리 단계입니다.

  • Failed - 실행이 실패했습니다. 일반적으로 실행의 오류 속성은 이유에 대한 세부 정보를 제공합니다.

  • Canceled - 취소 요청을 따르고 실행이 성공적으로 취소되었음을 나타냅니다.

  • NotResponding - 하트비트를 사용하도록 설정한 실행의 경우 최근에 하트비트를 보내지 않았습니다.


   run = experiment.submit(config)
   while run.get_status() not in ['Completed', 'Failed']: # For example purposes only, not exhaustive
       print('Run {} not in terminal state'.format(run.id))
       time.sleep(10)

get_submitted_run

사용되지 않습니다. get_context을 사용합니다.

이 실험에 대해 제출된 실행을 가져옵니다.

get_submitted_run(**kwargs)

반환

제출된 실행입니다.

반환 형식

Run

get_tags

서비스에서 실행 시 변경 가능한 태그의 최신 집합을 가져옵니다.

get_tags()

반환

실행 개체에 저장된 태그입니다.

반환 형식

list

선택적 필터로 지정된 실험에서 실행 목록을 가져옵니다.

static list(experiment, type=None, tags=None, properties=None, status=None, include_children=False, _rehydrate_runs=True)

매개 변수

experiment
Experiment
필수

포함하는 실험입니다.

type
str
기본값: None

지정한 경우 지정된 형식과 일치하는 실행을 반환합니다.

tags
str 또는 dict
기본값: None

지정한 경우 지정된 “tag” 또는 {“tag”: “value”}에 일치하는 실행을 반환합니다.

properties
str 또는 dict
기본값: None

지정한 경우 지정된 “property” 또는 {“property”: “value”}에 일치하는 실행을 반환합니다.

status
str
기본값: None

지정한 경우 상태가 “status”로 지정된 실행을 반환합니다.

include_children
bool
기본값: False

true로 설정하면 최상위 실행뿐만 아니라 모든 실행을 가져옵니다.

_rehydrate_runs
bool
기본값: True

True(기본값)로 설정된 경우 등록된 공급자를 사용하여 기본 실행 대신 해당 형식에 대한 개체를 다시 인스턴스화합니다.

반환

실행 목록입니다.

반환 형식

설명

다음 코드 예제는 list 메서드의 몇 가지 사용을 보여 줍니다.


   favorite_completed_runs = Run.list(experiment, status='Completed', tags='favorite')

   all_distinct_runs = Run.list(experiment)
   and_their_children = Run.list(experiment, include_children=True)

   only_script_runs = Run.list(experiment, type=ScriptRun.RUN_TYPE)

list_by_compute

선택적 필터로 지정된 컴퓨팅에서 실행 목록을 가져옵니다.

static list_by_compute(compute, type=None, tags=None, properties=None, status=None)

매개 변수

compute
ComputeTarget
필수

포함하는 컴퓨팅입니다.

type
str
기본값: None

지정한 경우 지정된 형식과 일치하는 실행을 반환합니다.

tags
str 또는 dict
기본값: None

지정한 경우 지정된 “tag” 또는 {“tag”: “value”}에 일치하는 실행을 반환합니다.

properties
str 또는 dict
기본값: None

지정한 경우 지정된 “property” 또는 {“property”: “value”}에 일치하는 실행을 반환합니다.

status
str
기본값: None

지정한 경우 상태가 “status”로 지정된 실행을 반환합니다. 허용되는 값만 “Running” 및 “Queued”입니다.

반환

~_restclient.models.RunDto의 생성기

반환 형식

<xref:builtin.generator>

log

메트릭 값을 지정된 이름의 실행에 기록합니다.

log(name, value, description='', step=None)

매개 변수

name
str
필수

메트릭의 이름입니다.

value
필수

서비스에 게시할 값입니다.

description
str
필수

선택적 메트릭 설명입니다.

step
int
기본값: None

메트릭 내에서 값 순서를 지정하는 선택적 축입니다.

설명

메트릭을 실행에 기록하면 해당 메트릭이 실험의 실행 기록에 저장됩니다. 하나의 실행 내에서 동일한 메트릭을 여러 번 기록할 수 있으며 결과는 해당 메트릭의 벡터로 간주됩니다. 메트릭에 대해 단계를 지정하는 경우 모든 값에 대해 지정해야 합니다.

log_accuracy_table

아티팩트 저장소에 정확도 테이블을 기록합니다.

정확도 테이블 메트릭은 예측된 확률의 공간에 따라 지속적으로 변화하는 여러 유형의 꺾은선형 차트를 생성하는 데 사용할 수 있는 다중 사용 비 스칼라 메트릭입니다. 이러한 차트의 예로는 ROC, 정밀도 재현율, 리프트 곡선이 있습니다.

정확도 테이블의 계산은 ROC 곡선의 계산과 유사합니다. ROC 곡선은 다양한 확률 임계값에 진양성 비율과 가양성 비율을 저장합니다. 정확도 테이블은 많은 확률 임계값에 진양성, 가양성, 진음성, 가음성의 원시 수를 저장합니다.

임계값을 선택하는 데 사용되는 두 가지 메서드는 “확률” 및 “백분위수”입니다. 이들은 예측된 확률의 공간에서 샘플링하는 방법이 다릅니다.

확률 임계값은 0에서 1 사이의 균일하게 간격이 지정된 임계값입니다. NUM_POINTS가 5이면 확률 임계값은 [0.0, 0.25, 0.5, 0.75, 1.0]입니다.

백분위수 임계값은 예측된 확률의 분포에 따라 간격이 지정됩니다. 각 임계값은 확률 임계값에 있는 데이터의 백분위수에 해당합니다. 예를 들어 NUM_POINTS가 5이면 첫 번째 임계값은 0번째 백분위수, 두 번째 임계값은 25번째 백분위수, 세 번째 임계값은 50번째 백분위수입니다.

확률 테이블과 백분위수 테이블은 모두 3D 목록입니다. 여기서 첫 번째 차원은 클래스 레이블을 나타내고, 두 번째 차원은 한 임계값(NUM_POINTS 배율)에서 샘플을 나타내고, 세 번째 차원에는 항상 TP, FP, TN, FN의 4개 값이 항상 해당 순서로 있습니다.

혼동 값(TP, FP, TN, FN)은 1 대 나머지 전략으로 컴퓨팅됩니다. 자세한 내용은 https://en.wikipedia.org/wiki/Multiclass_classification 링크를 참조하세요.

N = 유효성 검사 데이터 세트의 샘플 수(예: 200개) M = 임계값의 수 = 확률 공간에서 가져온 샘플 수(예: 5개) C = 전체 데이터 세트의 클래스 수(예: 3개)

정확도 테이블의 일부 고정:

  • TP + FP + TN + FN = 모든 클래스의 모든 임계값에 대한 N
  • TP + FN은 모든 클래스의 모든 임계값에서 동일합니다.
  • TN + FP는 모든 클래스의 모든 임계값에서 동일합니다.
  • 확률 테이블 및 백분위수 테이블은 도형 [C, M, 4]를 갖습니다.

참고: M은 모든 값일 수 있으며 차트의 해상도를 제어합니다. 이는 데이터 세트와는 독립적이며 메트릭을 계산할 때 정의되며 스토리지 공간, 계산 시간, 해상도를 절판합니다.

클래스 레이블은 문자열이어야 하고, 혼동 값은 정수여야 하며, 임계값은 부동이어야 합니다.

log_accuracy_table(name, value, description='')

매개 변수

name
str
필수

정확도 테이블의 이름입니다.

value
str 또는 dict
필수

이름, 버전, 데이터 속성을 포함하는 JSON입니다.

description
str
필수

선택적 메트릭 설명입니다.

설명

유효한 JSON 값의 예입니다.


   {
       "schema_type": "accuracy_table",
       "schema_version": "1.0.1",
       "data": {
           "probability_tables": [
               [
                   [82, 118, 0, 0],
                   [75, 31, 87, 7],
                   [66, 9, 109, 16],
                   [46, 2, 116, 36],
                   [0, 0, 118, 82]
               ],
               [
                   [60, 140, 0, 0],
                   [56, 20, 120, 4],
                   [47, 4, 136, 13],
                   [28, 0, 140, 32],
                   [0, 0, 140, 60]
               ],
               [
                   [58, 142, 0, 0],
                   [53, 29, 113, 5],
                   [40, 10, 132, 18],
                   [24, 1, 141, 34],
                   [0, 0, 142, 58]
               ]
           ],
           "percentile_tables": [
               [
                   [82, 118, 0, 0],
                   [82, 67, 51, 0],
                   [75, 26, 92, 7],
                   [48, 3, 115, 34],
                   [3, 0, 118, 79]
               ],
               [
                   [60, 140, 0, 0],
                   [60, 89, 51, 0],
                   [60, 41, 99, 0],
                   [46, 5, 135, 14],
                   [3, 0, 140, 57]
               ],
               [
                   [58, 142, 0, 0],
                   [56, 93, 49, 2],
                   [54, 47, 95, 4],
                   [41, 10, 132, 17],
                   [3, 0, 142, 55]
               ]
           ],
           "probability_thresholds": [0.0, 0.25, 0.5, 0.75, 1.0],
           "percentile_thresholds": [0.0, 0.01, 0.24, 0.98, 1.0],
           "class_labels": ["0", "1", "2"]
       }
   }

log_confusion_matrix

혼동 행렬을 아티팩트 저장소에 기록합니다.

그러면 sklearn 혼동 행렬 주위에 래퍼가 기록됩니다. 메트릭 데이터에는 행렬 자체에 대한 클래스 레이블 및 2D 목록이 포함됩니다. 메트릭이 컴퓨팅되는 방법에 대한 자세한 내용은 https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html 링크를 참조하세요.

log_confusion_matrix(name, value, description='')

매개 변수

name
str
필수

혼동 행렬의 이름입니다.

value
str 또는 dict
필수

이름, 버전, 데이터 속성을 포함하는 JSON입니다.

description
str
필수

선택적 메트릭 설명입니다.

설명

유효한 JSON 값의 예입니다.


   {
       "schema_type": "confusion_matrix",
       "schema_version": "1.0.0",
       "data": {
           "class_labels": ["0", "1", "2", "3"],
           "matrix": [
               [3, 0, 1, 0],
               [0, 1, 0, 1],
               [0, 0, 1, 0],
               [0, 0, 0, 1]
           ]
       }
   }

log_image

이미지 메트릭을 실행 기록에 기록합니다.

log_image(name, path=None, plot=None, description='')

매개 변수

name
str
필수

메트릭의 이름입니다.

path
str
필수

이미지의 경로 또는 스트림입니다.

plot
<xref:matplotlib.pyplot>
필수

이미지로 기록할 플롯입니다.

description
str
필수

선택적 메트릭 설명입니다.

설명

이 메서드는 이미지 파일이나 matplotlib 플롯을 실행에 로그하는 데 사용합니다. 이러한 이미지는 실행 기록에서 볼 수 있고 비교할 수 있습니다.

log_list

메트릭 값 목록을 지정된 이름의 실행에 기록합니다.

log_list(name, value, description='')

매개 변수

name
str
필수

메트릭의 이름입니다.

value
list
필수

메트릭의 값입니다.

description
str
필수

선택적 메트릭 설명입니다.

log_predictions

아티팩트 저장소에 예측을 기록합니다.

이렇게 하면 실제 대상 값의 분포를 회귀 작업의 예측 값 분포와 비교하는 데 사용할 수 있는 메트릭 점수를 기록합니다.

예측은 범주화되고 표준 편차는 꺾은선형 차트의 오차 막대에 대해 계산됩니다.

log_predictions(name, value, description='')

매개 변수

name
str
필수

예측의 이름입니다.

value
str 또는 dict
필수

이름, 버전, 데이터 속성을 포함하는 JSON입니다.

description
str
필수

선택적 메트릭 설명입니다.

설명

유효한 JSON 값의 예입니다.


   {
       "schema_type": "predictions",
       "schema_version": "1.0.0",
       "data": {
           "bin_averages": [0.25, 0.75],
           "bin_errors": [0.013, 0.042],
           "bin_counts": [56, 34],
           "bin_edges": [0.0, 0.5, 1.0]
       }
   }

log_residuals

아티팩트 저장소에 잔차를 기록합니다.

이는 회귀 작업에 대한 잔차 히스토그램을 표시하는 데 필요한 데이터를 기록합니다. 잔차가 예측 - 실제입니다.

개수보다 가장자리가 하나 더 있어야 합니다. 히스토그램을 나타내기 위해 개수와 가장자리를 사용하는 예제는 numpy 히스토그램 설명서를 참조하세요. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_residuals(name, value, description='')

매개 변수

name
str
필수

잔차의 이름입니다.

value
str 또는 dict
필수

이름, 버전, 데이터 속성을 포함하는 JSON입니다.

description
str
필수

선택적 메트릭 설명입니다.

설명

유효한 JSON 값의 예입니다.


   {
       "schema_type": "residuals",
       "schema_version": "1.0.0",
       "data": {
           "bin_edges": [50, 100, 200, 300, 350],
           "bin_counts": [0.88, 20, 30, 50.99]
       }
   }

log_row

행 메트릭을 지정된 이름의 실행에 기록합니다.

log_row(name, description=None, **kwargs)

매개 변수

name
str
필수

메트릭의 이름입니다.

description
str
기본값: None

선택적 메트릭 설명입니다.

kwargs
dict
필수

추가 매개 변수의 사전입니다. 이 경우 메트릭의 열입니다.

설명

log_row를 사용하면 kwargs에서 설명한 대로 열이 있는 테이블 메트릭을 만듭니다. 명명된 각 매개 변수는 지정된 값이 있는 열을 생성합니다. log_row는 임의의 튜플을 로깅하기 위해 한 번 호출되거나 루프에서 여러 번 호출되어 전체 테이블을 생성할 수 있습니다.


   citrus = ['orange', 'lemon', 'lime']
   sizes = [ 10, 7, 3]
   for index in range(len(citrus)):
       run.log_row("citrus", fruit = citrus[index], size=sizes[index])

log_table

테이블 메트릭을 지정된 이름의 실행에 기록합니다.

log_table(name, value, description='')

매개 변수

name
str
필수

메트릭의 이름입니다.

value
dict
필수

메트릭의 테이블 값으로, 키는 서비스에 게시할 열인 사전입니다.

description
str
필수

선택적 메트릭 설명입니다.

register_model

운영화를 위한 모델을 등록합니다.

register_model(model_name, model_path=None, tags=None, properties=None, model_framework=None, model_framework_version=None, description=None, datasets=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None, **kwargs)

매개 변수

model_name
str
필수

모델의 이름입니다.

model_path
str
기본값: None

모델에 대한 상대 클라우드 경로(예: “outputs/modelname”)입니다. 지정하지 않으면(None) model_name이 경로로 사용됩니다.

tags
dict[str, str]
기본값: None

모델에 할당할 키 값 태그의 사전입니다.

properties
dict[str, str]
기본값: None

모델에 할당할 키 값 속성의 사전입니다. 모델을 만든 후에는 이러한 속성을 변경할 수 없지만 새 키 값 쌍을 추가할 수 있습니다.

model_framework
str
기본값: None

등록할 모델의 프레임워크입니다. 현재 지원되는 프레임워크: TensorFlow, ScikitLearn, Onnx, Custom, Multi

model_framework_version
str
기본값: None

등록된 모델의 프레임워크 버전입니다.

description
str
기본값: None

모델에 대한 선택적 설명입니다.

datasets
list[(str, AbstractDataset)]
기본값: None

첫 번째 요소가 데이터 세트 모델 관계를 설명하고 두 번째 요소가 데이터 세트인 튜플 목록입니다.

sample_input_dataset
AbstractDataset
기본값: None

선택 사항입니다. 등록된 모델에 대한 샘플 입력 데이터 세트

sample_output_dataset
AbstractDataset
기본값: None

선택 사항입니다. 등록된 모델에 대한 샘플 출력 데이터 세트

resource_configuration
ResourceConfiguration
기본값: None

선택 사항입니다. 등록된 모델을 실행하는 리소스 구성

kwargs
dict
필수

선택적 매개 변수입니다.

반환

등록된 모델입니다.

반환 형식

설명


   model = best_run.register_model(model_name = 'best_model', model_path = 'outputs/model.pkl')

remove_tags

이 실행에서 변경 가능한 태그 목록을 삭제합니다.

remove_tags(tags)

매개 변수

tags
list
필수

제거할 태그 목록입니다.

반환

실행 개체에 저장된 태그

restore_snapshot

스냅샷을 ZIP 파일로 복원합니다. ZIP의 경로를 반환합니다.

restore_snapshot(snapshot_id=None, path=None)

매개 변수

snapshot_id
str
기본값: None

복원할 스냅샷 ID입니다. 지정하지 않으면 최신 버전이 사용됩니다.

path
str
기본값: None

다운로드한 ZIP이 저장되는 경로입니다.

반환

경로입니다.

반환 형식

str

set_tags

실행 시 태그 집합을 추가하거나 수정합니다. 사전에 전달되지 않은 태그는 그대로 유지됩니다.

간단한 문자열 태그를 추가할 수도 있습니다. 이러한 태그가 태그 사전에 키로 표시되는 경우, 값은 None입니다. 자세한 내용은 태그 및 찾기 실행을 참조하세요.

set_tags(tags)

매개 변수

tags
dict[str] 또는 str
필수

실행 개체에 저장된 태그입니다.

start

실행을 시작됨으로 표시합니다.

이는 일반적으로 다른 행위자가 실행을 만든 경우 고급 시나리오에서 사용됩니다.

start()

submit_child

실험을 제출하고 활성 자식 실행을 반환합니다.

submit_child(config, tags=None, **kwargs)

매개 변수

config
object
필수

제출할 구성입니다.

tags
dict
기본값: None

제출된 실행에 추가할 태그(예: {“tag”: “value”})입니다.

kwargs
dict
필수

구성에 대한 제출 함수에 사용되는 추가 매개 변수입니다.

반환

실행 개체입니다.

반환 형식

Run

설명

제출은 로컬 또는 원격 하드웨어에서 시도를 실행하기 위해 Azure Machine Learning 플랫폼에 대한 비동기 호출입니다. 구성에 따라 제출은 실행 환경을 자동으로 준비하고, 코드를 실행하고, 소스 코드와 결과를 실험의 실행 기록에 캡처합니다.

실험을 제출하려면 먼저 실험을 실행하는 방법을 설명하는 구성 개체를 만들어야 합니다. 구성은 필요한 시도 형식에 따라 달라집니다.

ScriptRunConfig를 사용하여 로컬 컴퓨터에서 자식 실험을 제출하는 방법의 예는 다음과 같습니다.


   from azureml.core import ScriptRunConfig

   # run a trial from the train.py code in your current directory
   config = ScriptRunConfig(source_directory='.', script='train.py',
       run_config=RunConfiguration())
   run = parent_run.submit_child(config)

   # get the url to view the progress of the experiment and then wait
   # until the trial is complete
   print(run.get_portal_url())
   run.wait_for_completion()

실행을 구성하는 방법에 대한 자세한 내용은 submit를 참조하세요.

tag

문자열 키와 선택적 문자열 값을 사용하여 실행에 대한 태그를 지정합니다.

tag(key, value=None)

매개 변수

key
str
필수

태그 키입니다.

value
str
기본값: None

태그의 선택적 값

설명

실행의 태그 및 속성은 모두 문자열 -> 문자열의 사전입니다. 둘 사이의 차이점은 변경 가능성입니다. 태그는 설정, 업데이트, 삭제할 수 있지만 속성은 추가만 가능합니다. 이렇게 하면 속성이 시스템/워크플로 관련 동작 트리거에 더 적합하지만 태그는 일반적으로 사용자 지향적이고 실험 소비자에게 의미가 있습니다.


   run = experiment.start_logging()
   run.tag('DeploymentCandidate')
   run.tag('modifiedBy', 'Master CI')
   run.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable

   run.add_properties({'BuildId': os.environ.get('VSTS_BUILD_ID')}) # Properties are not

   tags = run.get_tags()
   # tags = { 'DeploymentCandidate': None, 'modifiedBy': 'release pipeline' }

take_snapshot

입력 파일 또는 폴더의 스냅샷을 저장합니다.

take_snapshot(file_or_folder_path)

매개 변수

file_or_folder_path
str
필수

실행 소스 코드를 포함하는 파일 또는 폴더입니다.

반환

스냅샷 ID를 반환합니다.

반환 형식

str

설명

스냅샷은 실험 실행을 실행하는 데 사용되는 소스 코드입니다. 이는 실행 평가판이 나중에 복제될 수 있도록 실행과 함께 저장됩니다.

참고

스냅샷은 submit가 호출되면 자동으로 수행됩니다. 일반적으로 이 take_snapshot 메서드는 대화형(Notebook) 실행에만 필요합니다.

upload_file

파일을 실행 기록에 업로드합니다.

upload_file(name, path_or_stream, datastore_name=None)

매개 변수

name
str
필수

업로드할 파일의 이름입니다.

path_or_stream
str
필수

업로드할 파일에 대한 상대 로컬 경로 또는 스트림입니다.

datastore_name
str
필수

선택적 데이터 저장소 이름

반환 형식

설명


   run = experiment.start_logging()
   run.upload_file(name='important_file', path_or_stream="path/on/disk/file.txt")

참고

실행은 지정된 출력 디렉터리에서 파일을 자동으로 캡처합니다. 이 디렉터리는 대부분의 실행 형식에 대해 기본적으로 "./outputs"로 지정됩니다. pload_file은 추가 파일을 업로드해야 하거나 출력 디렉터리를 지정하지 않은 경우에만 사용합니다.

upload_files

파일을 실행 기록에 업로드합니다.

upload_files(names, paths, return_artifacts=False, timeout_seconds=None, datastore_name=None)

매개 변수

names
list
필수

업로드할 파일의 이름입니다. 설정된 경우 경로도 설정해야 합니다.

paths
list
필수

업로드할 파일에 대한 상대 로컬 경로입니다. 설정된 경우 이름이 필요합니다.

return_artifacts
bool
필수

업로드된 각 파일에 대해 아티팩트 개체를 반환해야 함을 나타냅니다.

timeout_seconds
int
필수

파일 업로드 시간 제한입니다.

datastore_name
str
필수

선택적 데이터 저장소 이름

설명

upload_files는 별도의 파일에 대해 upload_file과 동일한 효과를 주지만 upload_files 사용 시 성능 및 리소스 사용률이 향상됩니다.


   import os

   run = experiment.start_logging()
   file_name_1 = 'important_file_1'
   file_name_2 = 'important_file_2'
   run.upload_files(names=[file_name_1, file_name_2],
                       paths=['path/on/disk/file_1.txt', 'other/path/on/disk/file_2.txt'])

   run.download_file(file_name_1, 'file_1.txt')

   os.mkdir("path")  # The path must exist
   run.download_file(file_name_2, 'path/file_2.txt')

참고

실행은 지정된 출력 디렉터리에서 파일을 자동으로 캡처합니다. 이 디렉터리는 대부분의 실행 형식에 대해 기본적으로 "./outputs"로 지정됩니다. upload_files는 추가 파일을 업로드해야 하거나 출력 디렉터리를 지정하지 않은 경우에만 사용합니다.

upload_folder

지정된 폴더를 지정된 접두사 이름으로 업로드합니다.

upload_folder(name, path, datastore_name=None)

매개 변수

name
str
필수

업로드할 파일 폴더의 이름입니다.

folder
str
필수

업로드할 폴더의 상대 로컬 경로입니다.

datastore_name
str
필수

선택적 데이터 저장소 이름

설명


   run = experiment.start_logging()
   run.upload_folder(name='important_files', path='path/on/disk')

   run.download_file('important_files/existing_file.txt', 'local_file.txt')

참고

실행은 지정된 출력 디렉터리에서 파일을 자동으로 캡처합니다. 이 디렉터리는 대부분의 실행 형식에 대해 기본적으로 "./outputs"로 지정됩니다. upload_folder는 추가 파일을 업로드해야 하거나 출력 디렉터리를 지정하지 않은 경우에만 사용합니다.

wait_for_completion

이 실행이 완료될 때까지 기다립니다. 대기 후 상태 개체를 반환합니다.

wait_for_completion(show_output=False, wait_post_processing=False, raise_on_error=True)

매개 변수

show_output
bool
기본값: False

sys.stdout에 실행 출력을 표시할지 여부를 나타냅니다.

wait_post_processing
bool
기본값: False

실행이 완료된 후 사후 처리가 완료되기를 기다릴지 여부를 나타냅니다.

raise_on_error
bool
기본값: True

실행이 실패 상태일 때 오류가 발생하는지 여부를 나타냅니다.

반환

상태 개체입니다.

반환 형식

특성

description

실행 설명을 반환합니다.

실행에 대한 선택적 설명은 실행을 설명하는 데 유용한 사용자 지정 문자열입니다.

반환

실행 설명입니다.

반환 형식

str

display_name

실행 표시 이름을 반환합니다.

실행의 선택적 표시 이름은 나중에 실행을 식별하는 데 유용한 사용자 지정 문자열입니다.

반환

실행 표시 이름입니다.

반환 형식

str

experiment

실행을 포함하는 실험을 가져옵니다.

반환

실행에 해당하는 실험을 검색합니다.

반환 형식

id

실행 ID를 가져옵니다.

실행의 ID는 포함하는 실험에서 고유한 식별자입니다.

반환

실행 ID입니다.

반환 형식

str

name

사용되지 않습니다. 표시 이름을 사용합니다.

실행의 선택적 이름은 나중에 실행을 식별하는 데 유용한 사용자 지정 문자열입니다.

반환

실행 ID입니다.

반환 형식

str

number

실행 번호를 가져옵니다.

실험 내 실행 순서를 나타내는 단조로 증가하는 숫자입니다.

반환

실행 번호입니다.

반환 형식

int

parent

서비스에서 이 실행에 대한 부모 실행을 가져옵니다.

실행에는 선택적 부모가 있을 수 있으며, 이로 인해 잠재적인 트리 계층 구조가 실행될 수 있습니다. 부모 실행에 메트릭을 기록하려면 부모 개체의 log 메서드(예: run.parent.log())를 사용합니다.

반환

부모 실행이거나, 설정되지 않은 경우 None입니다.

반환 형식

Run

properties

이 실행의 변경할 수 없는 속성을 반환합니다.

반환

실행의 로컬로 캐시된 속성입니다.

반환 형식

dict[str],
str

설명

속성에는 기간, 실행 날짜, 사용자 등과 같은 변경할 수 없는 시스템 생성 정보가 포함됩니다.

status

실행 개체의 상태를 반환합니다.

tags

이 실행에서 변경 가능한 태그 집합을 반환합니다.

반환

실행 개체에 저장된 태그입니다.

반환 형식

type

실행 형식을 가져옵니다.

실행을 만들거나 구성하는 방법을 나타냅니다.

반환

실행 형식입니다.

반환 형식

str