Experiment クラス

Azure Machine Learning で実験を作成して操作するための主要なエントリ ポイントを表します。

実験は、複数のモデルの実行を表す 試用版 のコンテナーです。

実験コンストラクター。

コンストラクター

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

パラメーター

名前 説明
workspace
必須

実験を含むワークスペース オブジェクト。

name
必須
str

実験名。

kwargs
必須

キーワード引数のディクショナリ。

workspace
必須

実験を含むワークスペース オブジェクト。

name
必須
str

実験名。

kwargs
必須

キーワード引数のディクショナリ。

_skip_name_validation
規定値: False
_id
規定値: None
_archived_time
規定値: None
_create_in_cloud
規定値: True
_experiment_dto
規定値: None

注釈

Azure Machine Learning の実験は、ユーザーの仮説を検証するために使用される試用版のコレクションを表します。

Azure Machine Learning では、実験は Experiment クラスによって表され、試用版は Run クラスによって表されます。

ワークスペースから実験を取得または作成するには、実験名を使用して実験を要求します。 実験名は 3 ~ 36 文字で、文字または数字で始まり、文字、数字、アンダースコア、ダッシュのみを含めることができます。


   experiment = Experiment(workspace, "MyExperiment")

ワークスペースに実験が見つからない場合は、新しい実験が作成されます。

実験試用版を実行するには、2 つの方法があります。 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)

パラメーター

名前 説明
workspace
必須

実験が属するワークスペース。

experiment_id
必須

削除する実験の実験 ID。

from_directory

(非推奨)指定したパスから実験を読み込みます。

static from_directory(path, auth=None)

パラメーター

名前 説明
path
必須
str

実験構成ファイルを含むディレクトリ。

auth

認証オブジェクト。 [なし] の場合、既定の Azure CLI 資格情報が使用されるか、API によって資格情報の入力が求められます。

規定値: None

戻り値

型 説明

実験を返します

get_docs_url

このクラスのドキュメントの URL。

get_docs_url()

戻り値

型 説明
str

URL

get_runs

この実験の実行のジェネレーターを、時系列の逆順で返します。

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

パラメーター

名前 説明
type

指定された型で実行の返されたジェネレーターをフィルター処理します。 実行の種類の作成については、 add_type_provider を参照してください。

規定値: None
tags
string または dict

"tag" または {"tag": "value"} で実行をフィルター処理します。

規定値: None
properties
string または dict

"property" または {"property": "value"} で実行をフィルター処理する

規定値: None
include_children

既定では、最上位レベルの実行のみをフェッチします。 すべての実行を一覧表示するには、true に設定します。

規定値: False

戻り値

型 説明

指定されたフィルターに一致する実行の一覧。

list

ワークスペース内の実験の一覧を返します。

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

パラメーター

名前 説明
workspace
必須

実験の一覧を表示するワークスペース。

experiment_name
str

実験をフィルター処理する省略可能な名前。

規定値: None
view_type

アーカイブされた実験をフィルター処理または含めるオプションの列挙値。

規定値: ActiveOnly
tags

実験をフィルター処理するタグ キーまたはタグ キーと値のペアのディクショナリ (省略可能)。

規定値: None

戻り値

型 説明

実験オブジェクトの一覧。

reactivate

アーカイブされた実験を再アクティブ化します。

reactivate(new_name=None)

パラメーター

名前 説明
new_name
必須
str

サポートされなくなりました

注釈

アーカイブされた実験は、同じ名前の別のアクティブな実験がない場合にのみ再アクティブ化できます。

refresh

クラウドから実験の最新バージョンを返します。

refresh()

remove_tags

実験から指定したタグを削除します。

remove_tags(tags)

パラメーター

名前 説明
tags
必須
[str]

削除されるタグ キー

set_tags

実験にタグのセットを追加または変更します。 辞書に渡されないタグは変更されずに残ります。

set_tags(tags)

パラメーター

名前 説明
tags
必須

実験オブジェクトに格納されているタグ

start_logging

対話型ログ セッションを開始し、指定した実験で対話型の実行を作成します。

start_logging(*args, **kwargs)

パラメーター

名前 説明
experiment
必須

実験。

outputs
必須
str

追跡するディレクトリを出力するオプション。出力がない場合は、False を渡します。

snapshot_directory
必須
str

スナップショットを取得するオプションのディレクトリ。 [なし] に設定すると、スナップショットは作成されません。

args
必須
kwargs
必須

戻り値

型 説明
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)

パラメーター

名前 説明
config
必須

送信する構成。

tags

送信された実行に追加するタグ {"tag": "value"}。

規定値: None
kwargs
必須

構成の送信関数で使用される追加のパラメーター。

戻り値

型 説明
Run

セクション

注釈

Submit は、ローカルまたはリモートのハードウェアで試用版を実行するための Azure Machine Learning プラットフォームへの非同期呼び出しです。 構成に応じて、submit によって実行環境が自動的に準備され、コードが実行され、ソース コードと結果が実験の実行履歴にキャプチャされます。

実験を送信するには、まず、実験の実行方法を説明する構成オブジェクトを作成する必要があります。 構成は、必要な試用版の種類によって異なります。

ローカル コンピューターから実験を送信する方法の例を次に示します。


   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)

パラメーター

名前 説明
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 にする必要があります。

戻り値

型 説明
str

実験のアーカイブされた時間。

id

実験の ID を返します。

戻り値

型 説明
str

実験の ID。

name

実験の名前を返します。

戻り値

型 説明
str

実験の名前。

tags

実験の変更可能なタグのセットを返します。

戻り値

型 説明

実験のタグ。

workspace

実験を含むワークスペースを返します。

戻り値

型 説明

ワークスペース オブジェクトを返します。

workspace_object

(非推奨)実験を含むワークスペースを返します。

workspace属性を使用します。

戻り値

型 説明

ワークスペース オブジェクト。