Experiment 类
表示用于在 Azure 机器学习中创建和使用试验的主要入口点。
试验是表示多个模型运行的试用容器。
试验构造函数。
- 继承
-
azureml._logging.chained_identity.ChainedIdentityExperimentazureml.core._portal.HasExperimentPortalExperiment
构造函数
Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)
参数
- _skip_name_validation
- _id
- _archived_time
- _create_in_cloud
- _experiment_dto
注解
Azure 机器学习试验表示用于验证用户假设的试用集合。
在 Azure 机器学习中,试验由 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)
参数
- experiment_id
要删除的试验的试验 ID。
from_directory
(已弃用)从指定路径加载试验。
static from_directory(path, auth=None)
参数
身份验证对象。 如果为 None,则将使用默认的 Azure CLI 凭据,或者 API 将提示输入凭据。
返回
返回试验
返回类型
get_docs_url
get_runs
按时间顺序倒序返回此实验的运行生成器。
get_runs(type=None, tags=None, properties=None, include_children=False)
参数
返回
与提供的筛选器匹配的运行列表。
返回类型
list
返回工作区中的试验列表。
static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)
参数
- tags
可选的标签键或标签键值对字典,用于筛选实验。
返回
试验对象的列表。
返回类型
reactivate
refresh
从云中返回最新版本的试验。
refresh()
remove_tags
set_tags
start_logging
启动交互式日志记录会话,并在指定的试验中创建交互式运行。
start_logging(*args, **kwargs)
参数
- args
- list
- kwargs
- dict
返回
返回已启动的运行。
返回类型
注解
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)
参数
返回
运行。
返回类型
注解
提交是对 Azure 机器学习平台的异步调用,用于在本地或远程硬件上执行试运行。 根据配置,提交将自动准备执行环境、执行代码,以及将源代码和结果捕获到试验的运行历史记录中。
若要提交试验,首先需要创建描述试验运行方法的配置对象。 该配置取决于所需的试用类型。
有关如何从本地计算机提交试验的示例如下所示:
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()
若要详细了解如何配置运行,请参阅配置类型详细信息。
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)
参数
注解
试验中的标记存储在包含字符串键和字符串值的字典中。 可以设置、更新和删除标记。 标记面向用户,通常包含试验使用者的含义信息。
experiment.tag('')
experiment.tag('DeploymentCandidate')
experiment.tag('modifiedBy', 'Master CI')
experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable
属性
archived_time
id
name
tags
workspace
workspace_object
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈