다음을 통해 공유


Experiment 클래스

Azure Machine Learning에서 실험을 만들고 작업하기 위한 기본 진입점을 나타냅니다.

실험은 여러 모델 실행을 나타내는 시도의 컨테이너입니다.

실험 생성자입니다.

상속
azureml._logging.chained_identity.ChainedIdentity
Experiment
azureml.core._portal.HasExperimentPortal
Experiment

생성자

Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)

매개 변수

Name Description
workspace
필수

실험이 포함된 작업 영역 개체입니다.

name
필수
str

실험 이름.

kwargs
필수

키워드 인수의 사전입니다.

workspace
필수

실험이 포함된 작업 영역 개체입니다.

name
필수
str

실험 이름.

kwargs
필수

키워드 인수의 사전입니다.

_skip_name_validation
Default value: False
_id
Default value: None
_archived_time
Default value: None
_create_in_cloud
Default value: True
_experiment_dto
Default value: None

설명

Azure Machine Learning 실험은 사용자의 가설의 유효성을 검사하는 데 사용되는 시도 컬렉션을 나타냅니다.

Azure Machine Learning에서 실험은 Experiment 클래스로 표시되고 시도는 Run 클래스로 표시됩니다.

작업 영역에서 실험을 가져오거나 만들려면 실험 이름을 사용하여 실험을 요청합니다. 실험 이름은 3~36자 사이여야 하고 문자 또는 숫자로 시작해야 하며 문자, 숫자, 밑줄, 대시만 포함할 수 있습니다.


   experiment = Experiment(workspace, "MyExperiment")

작업 영역에 실험이 없으면 새 실험이 만들어집니다.

실험 시도를 실행하는 방법에는 두 가지가 있습니다. Jupyter Notebook에서 대화식으로 실험하는 경우 start_logging을 사용합니다. 소스 코드에서 실험을 제출하거나 다른 형식의 구성된 시도를 제출하는 경우 submit을 사용합니다.

두 메커니즘 모두 Run 개체를 만듭니다. 대화형 시나리오에서 log와 같은 로깅 메서드를 사용하여 시도 기록에 측정 및 메트릭을 추가합니다. 구성된 시나리오에서 get_status와 같은 상태 메서드를 사용하여 실행에 대한 정보를 검색합니다.

두 경우 모두 get_metrics와 같은 쿼리 메서드를 사용하여 시도 측정 및 메트릭의 현재 값(있는 경우)을 쿼리할 수 있습니다.

메서드

archive

실험을 보관합니다.

delete

작업 영역에서 실험을 삭제합니다.

from_directory

(사용되지 않음) 지정된 경로에서 실험을 로드합니다.

get_docs_url

이 클래스에 대한 설명서의 URL입니다.

get_runs

이 실험에 대한 실행 생성기를 시간 역순으로 반환합니다.

list

작업 영역의 실험 목록을 반환합니다.

reactivate

보관된 실험을 다시 활성화합니다.

refresh

클라우드에서 최신 버전의 실험을 반환합니다.

remove_tags

실험에서 지정된 태그를 삭제합니다.

set_tags

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

start_logging

대화형 로깅 세션을 시작하고 지정된 실험에서 대화형 실행을 만듭니다.

submit

실험을 제출하고 만들어진 활성 실행을 반환합니다.

tag

문자열 키와 선택적 문자열 값으로 실험에 태그를 지정합니다.

archive

실험을 보관합니다.

archive()

설명

보관 후 실험은 기본적으로 나열되지 않습니다. 보관된 실험에 쓰려고 하면 동일한 이름의 새로운 활성 실험이 만들어집니다. 보관된 실험은 동일한 이름을 가진 다른 활성 실험이 없는 한 reactivate를 호출하여 복원할 수 있습니다.

delete

작업 영역에서 실험을 삭제합니다.

static delete(workspace, experiment_id)

매개 변수

Name Description
workspace
필수

실험이 속한 작업 영역입니다.

experiment_id
필수

삭제할 실험의 실험 ID입니다.

from_directory

(사용되지 않음) 지정된 경로에서 실험을 로드합니다.

static from_directory(path, auth=None)

매개 변수

Name Description
path
필수
str

실험 구성 파일이 포함된 디렉터리입니다.

auth

인증 개체입니다. None인 경우 기본 Azure CLI 자격 증명이 사용되거나 API에서 자격 증명을 묻는 메시지가 표시됩니다.

Default value: None

반환

형식 Description

실험 반환

get_docs_url

이 클래스에 대한 설명서의 URL입니다.

get_docs_url()

반환

형식 Description
str

url

get_runs

이 실험에 대한 실행 생성기를 시간 역순으로 반환합니다.

get_runs(type=None, tags=None, properties=None, include_children=False)

매개 변수

Name Description
type

제공된 형식별로 반환된 실행 생성기를 필터링합니다. 실행 형식을 만들려면 add_type_provider를 참조하세요.

Default value: None
tags
string 또는 dict

필터는 "tag" 또는 {"tag": "value"}로 실행됩니다.

Default value: None
properties
string 또는 dict

필터는 "property" 또는 {"property": "value"}로 실행됩니다.

Default value: None
include_children

기본적으로 최상위 실행만 가져옵니다. 모든 실행을 나열하려면 true로 설정합니다.

Default value: False

반환

형식 Description

제공된 필터와 일치하는 실행 목록입니다.

list

작업 영역의 실험 목록을 반환합니다.

static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)

매개 변수

Name Description
workspace
필수

실험을 나열할 작업 영역입니다.

experiment_name
str

실험을 필터링하기 위한 선택적 이름입니다.

Default value: None
view_type

보관된 실험을 필터링하거나 포함하기 위한 선택적 열거형 값입니다.

Default value: ActiveOnly
tags

실험을 필터링할 선택적 태그 키 또는 태그 키-값 쌍의 사전입니다.

Default value: None

반환

형식 Description

실험 개체 목록입니다.

reactivate

보관된 실험을 다시 활성화합니다.

reactivate(new_name=None)

매개 변수

Name Description
new_name
필수
str

더 이상 지원되지 않음

설명

보관된 실험은 동일한 이름의 다른 활성 실험이 없는 경우에만 다시 활성화할 수 있습니다.

refresh

클라우드에서 최신 버전의 실험을 반환합니다.

refresh()

remove_tags

실험에서 지정된 태그를 삭제합니다.

remove_tags(tags)

매개 변수

Name Description
tags
필수
[str]

제거될 태그 키

set_tags

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

set_tags(tags)

매개 변수

Name Description
tags
필수

실험 개체에 저장된 태그

start_logging

대화형 로깅 세션을 시작하고 지정된 실험에서 대화형 실행을 만듭니다.

start_logging(*args, **kwargs)

매개 변수

Name Description
experiment
필수

실험입니다.

outputs
필수
str

추적할 선택적 출력 디렉터리입니다. 출력이 없으므로 False를 전달합니다.

snapshot_directory
필수
str

스냅샷을 만들 선택적 디렉터리입니다. None으로 설정하면 스냅샷이 만들어지지 않습니다.

args
필수
kwargs
필수

반환

형식 Description
Run

시작된 실행을 반환합니다.

설명

start_logging은 Jupyter Notebooks와 같은 시나리오에서 사용할 대화형 실행을 만듭니다. 세션 중에 기록된 모든 메트릭이 실험의 실행 기록에 추가됩니다. 출력 디렉터리가 지정되면 해당 디렉터리의 내용은 실행 완료 시 실행 아티팩트로 업로드됩니다.


   experiment = Experiment(workspace, "My Experiment")
   run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
   ...
   run.log_metric("Accuracy", accuracy)
   run.complete()

참고

run_id는 각 실행에 대해 자동으로 생성되며 실험 내에서 고유합니다.

submit

실험을 제출하고 만들어진 활성 실행을 반환합니다.

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

매개 변수

Name Description
config
필수

제출할 구성입니다.

tags

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

Default value: None
kwargs
필수

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

반환

형식 Description
Run

실행입니다.

설명

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

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

로컬 컴퓨터에서 실험을 제출하는 방법의 예는 다음과 같습니다.


   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 = experiment.submit(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()

실행을 구성하는 방법에 대한 자세한 내용은 구성 형식 세부 정보를 참조하세요.

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

참고

학습 실행을 제출하면 학습 스크립트가 포함된 디렉터리의 스냅샷이 생성되어 컴퓨팅 대상으로 전송됩니다. 또한 작업 영역에 실험의 일부로 저장됩니다. 파일을 변경하고 실행을 다시 제출하면 변경된 파일만 업로드됩니다.

파일이 스냅샷에 포함되지 않도록 하려면 디렉터리에 .gitignore 또는 .amlignore 파일을 만들고 파일을 추가합니다. .amlignore 파일은 .gitignore 파일과 동일한 구문 및 패턴을 사용합니다. 두 파일이 모두 존재하는 경우 .amlignore 파일이 우선합니다.

자세한 내용은 스냅샷을 참조하세요.

tag

문자열 키와 선택적 문자열 값으로 실험에 태그를 지정합니다.

tag(key, value=None)

매개 변수

Name Description
key
필수
str

태그 키입니다.

value
필수
str

태그의 선택적 값

설명

실험의 태그는 문자열 키와 문자열 값이 있는 사전에 저장됩니다. 태그를 설정, 업데이트 및 삭제할 수 있습니다. 태그는 사용자에게 표시되며 일반적으로 실험 소비자를 위한 의미 정보를 포함합니다.


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

특성

archived_time

실험에 대해 보관된 시간을 반환합니다. 활성 실험의 경우 값은 None이어야 합니다.

반환

형식 Description
str

실험의 보관된 시간입니다.

id

실험의 ID를 반환합니다.

반환

형식 Description
str

실험의 ID입니다.

name

실험의 이름을 반환합니다.

반환

형식 Description
str

실험의 이름입니다.

tags

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

반환

형식 Description

실험의 태그입니다.

workspace

실험이 포함된 작업 영역을 반환합니다.

반환

형식 Description

작업 영역 개체를 반환합니다.

workspace_object

(사용되지 않음) 실험이 포함된 작업 영역을 반환합니다.

workspace 특성을 사용합니다.

반환

형식 Description

작업 영역 개체입니다.