适用于:
Azure Machine Learning SDK v1 for Python
重要
本文提供有关使用 Azure Machine Learning SDK v1 的信息。 SDK v1 自 2025 年 3 月 31 日起弃用。 对它的支持将于 2026 年 6 月 30 日结束。 可以在该日期之前安装和使用 SDK v1。 使用 SDK v1 的现有工作流将在支持结束日期后继续运行。 但是,在产品发生体系结构更改时,可能会面临安全风险或中断性变更。
建议在 2026 年 6 月 30 日之前过渡到 SDK v2。 有关 SDK v2 的详细信息,请参阅 什么是 Azure Machine Learning CLI 和 Python SDK v2? 和 SDK v2 参考。
本文介绍如何使用 Azure Machine Learning Python SDK 和 Azure Machine Learning 自动化 ML 来设置 AutoML(自动化机器学习)训练。 自动化 ML 为你选择一个算法和超参数,并生成一个可供部署的模型。 本文详细介绍了可用于配置自动化 ML 试验的各种选项。
有关端到端示例,请参阅 教程:AutoML 训练回归模型。
如果更喜欢无代码体验,还可以在 Azure Machine Learning studio 中设置无代码 AutoML 训练。
先决条件
在阅读本文时,您需要:
Azure Machine Learning工作区。 若要创建工作区,请参阅创建工作区资源。
已安装Azure Machine Learning Python SDK。 若要安装 SDK,请使用以下选项之一:
创建计算实例。 计算实例会自动安装 SDK,并预配置 ML 工作流。 有关详细信息,请参阅 创建和管理Azure Machine Learning计算实例。
自行安装
automl包。 该包包括 SDK 的 default 安装。
重要
本文中的 Python 命令需要最新的
azureml-train-automl包版本。-
将最新的
azureml-train-automl包安装到本地环境。 - 有关最新的
azureml-train-automl包的详细信息,请参阅 release notes。
警告
从 SDK v1.61.0 开始,Python 3.10 是所有 automl 包支持的最低版本。 有关最新的 Python 版本支持,请参阅 SDK 发行说明。
选择试验类型
在开始试验之前,请确定要解决的machine learning问题类型。 自动化机器学习支持的任务类型包括 classification、regression 和 forecasting。 有关详细信息,请参阅任务类型。
注意事项
公共预览版提供对自然语言处理(NLP)任务的支持:图像分类(多类和多标签)和命名实体识别。 详细了解自动化 ML 中的 NLP 任务。
这些预览功能不提供服务级别协议。 某些功能可能不受支持或者受限。 有关详细信息,请参阅 Azure 预览版的使用条款。
下面的代码使用 task 构造函数中的 AutoMLConfig 参数将试验类型指定为 classification。
from azureml.train.automl import AutoMLConfig
# task can be one of classification, regression, forecasting
automl_config = AutoMLConfig(task = "classification")
数据源和格式
自动化机器学习支持驻留在本地桌面或云中的数据,例如 Azure Blob Storage。 可以将数据读入 Pandas DataFrame 或 Azure Machine Learning TabularDataset。 了解有关数据集的详细信息。
machine learning的训练数据要求:
- 数据必须为表格格式。
- 要预测的值或目标列必须位于数据中。
重要
自动化机器学习实验不支持使用基于身份验证的数据访问的数据集进行训练。
对于远程试验,远程计算资源必须访问训练数据。 处理远程计算时,自动化 ML 仅接受 Azure Machine Learning TabularDatasets。
Azure Machine Learning数据集提供以下功能:
- 轻松地将数据从静态文件或 URL 源传输到工作区。
- 在云计算资源上运行时,让数据可用于训练脚本。 请参阅如何使用数据集进行训练,以了解如何使用
Dataset类将数据装载到远程计算目标的示例。
以下代码从 Web URL 创建 TabularDataset。 有关如何从其他源(例如本地文件和数据存储)创建数据集的代码示例,请参阅创建 TabularDataset。
from azureml.core.dataset import Dataset
data = "https://automlsamplenotebookdata.blob.core.chinacloudapi.cn/automl-sample-notebook-data/creditcard.csv"
dataset = Dataset.Tabular.from_delimited_files(data)
对于本地计算实验,请使用 pandas 数据帧来加快处理时间。
import pandas as pd
from sklearn.model_selection import train_test_split
df = pd.read_csv("your-local-file.csv")
train_data, test_data = train_test_split(df, test_size=0.1, random_state=42)
label = "label-col-name"
训练、验证和测试数据
可以直接在 构造函数中指定单独的训练数据和验证数据集。 有关详细信息,请参阅如何为 AutoML 试验 配置训练、验证、交叉验证和测试数据 。
如果未显式指定 validation_data 或 n_cross_validation 参数,自动化 ML 会应用默认技术来确定验证的执行方式。 此决定依赖于分配给 training_data 参数的数据集中的行数。
| 训练数据大小 | 验证技术 |
|---|---|
| 大于 20,000 行 | 将应用训练/验证数据拆分。 默认行为是将初始训练数据集的 10% 用作验证集。 然后,该验证集将用于指标计算。 |
| 小于 20,000 行 | 将应用交叉验证方法。 默认折数取决于行数。 当数据集小于 1,000 行时,则使用 10 折。 如果行数在 1,000 到 20,000 之间,则使用三次折叠。 |
提示
你可以上传测试数据(预览)来评估自动化 ML 为你生成的模型。 这些功能是实验性的预览功能,随时可能更改。 了解如何去做以下事情:
如果你更喜欢无代码体验,请参阅 使用工作室 UI 设置 AutoML 中的步骤 12。
大型数据
自动化 ML 支持有限数量的算法,这些算法可以在小型虚拟机上成功地为大数据训练生成模型。 自动化机器学习启发算法依赖于诸如数据大小、虚拟机内存大小、实验超时和特征化设置等属性,以决定是否应用这些大型数据算法。 详细了解自动化 ML 支持哪些模型。
对于分类,平均感知器分类器和线性 SVM 分类器;其中,线性 SVM 分类器同时具有大型数据和小型数据版本。
为了覆盖这些启发式方法,请设置以下值:
| 任务 | 设置 | 说明 |
|---|---|---|
| 阻止数据流式处理算法 | 在你的blocked_models对象中AutoMLConfig,列出你不想使用的模型。 |
导致运行失败或运行时间过长 |
| 使用数据流式处理算法 |
allowed_models
AutoMLConfig在对象中列出要使用的模型。 |
|
| 使用数据流式处理算法 (工作室 UI 试验) |
阻止除要使用的大数据算法之外的所有模型。 |
计算以运行试验
接下来,确定模型训练的位置。 自动化机器学习训练试验可在以下计算选项中运行。
选择本地计算环境:如果您的场景涉及使用小数据集和短时训练进行初步探索或展示(即每个子运行仅需几秒钟或几分钟),那么选择在本地计算机上进行训练可能是更好的选择。 没有设置时间,基础结构资源(电脑或 VM)直接可用。 有关本地计算示例,请参阅 此笔记本。
选择远程 ML 计算群集:如果要使用较大的数据集进行训练,例如在生产训练中创建需要较长训练的模型,远程计算可提供更好的端到端时间性能,因为
AutoML并行化群集节点的训练。 在远程计算中,每个子运行的内部基础结构启动时间大约增加 1.5 分钟;如果虚拟机尚未启动,群集基础结构的启动时间还会额外增加若干分钟。Azure Machine Learning 托管计算是一项托管服务,可以在 Azure 虚拟机群集上训练机器学习模型。 计算实例也可以用作计算目标。Azure订阅中的Azure Databricks 集群。 可以在为自动化 ML 设置 Azure Databricks 群集中找到更多详细信息。 有关具有 Azure Databricks 的笔记本示例,请参阅此 GitHub 站点。
选择计算目标时请考虑以下因素:
| 优点(优势) | 缺点(劣势) | |
|---|---|---|
| 本地计算目标 | ||
| 远程 ML 计算群集 |
配置试验设置
可以使用多个选项来配置自动化 ML 试验。 通过实例化对象 AutoMLConfig 来设置这些参数。 有关参数的完整列表,请参阅 AutoMLConfig 类。
以下示例是针对分类任务的。 实验使用 AUC 加权作为 主要指标,并设置实验超时时间为 30 分钟,交叉验证的折叠次数为 2 次。
automl_classifier=AutoMLConfig(task='classification',
primary_metric='AUC_weighted',
experiment_timeout_minutes=30,
blocked_models=['XGBoostClassifier'],
training_data=train_data,
label_column_name=label,
n_cross_validations=2)
你还可以配置需要额外设置的预测任务。 有关详细信息,请参阅 设置 AutoML 进行时序预测。
time_series_settings = {
'time_column_name': time_column_name,
'time_series_id_column_names': time_series_id_column_names,
'forecast_horizon': n_test_periods
}
automl_config = AutoMLConfig(
task = 'forecasting',
debug_log='automl_oj_sales_errors.log',
primary_metric='normalized_root_mean_squared_error',
experiment_timeout_minutes=20,
training_data=train_data,
label_column_name=label,
n_cross_validations=5,
path=project_folder,
verbosity=logging.INFO,
**time_series_settings
)
支持的模型
自动化机器学习在自动化和优化过程中尝试不同的模型和算法。 作为用户,你不需要指定算法。
这三个不同的 task 参数值确定要应用的算法或模型的列表。 使用allowed_models或blocked_models参数,通过包含或排除可用模型来进一步修改迭代。
下表按任务类型汇总了支持的模型。
注意事项
如果计划将自动化 ML 创建的模型导出到 ONNX 模型,则只能将带有 * (星号)指示的算法转换为 ONNX 格式。 详细了解如何将模型转换为 ONNX。
另请注意,ONNX 目前只支持分类和回归任务。
| 分类 | 回归 | 时序预测 |
|---|---|---|
| 逻辑回归* | 弹性网络* | AutoARIMA |
| 浅色 GBM* | 浅色 GBM* | 先知 |
| 梯度提升* | 梯度提升* | 弹性网络 |
| 决策树* | 决策树* | 浅色 GBM |
| K 最近的邻域* | K 最近的邻域* | 渐进提升 |
| 线性 SVC* | LARS 套索* | 决策树 |
| 支持矢量分类 (SVC)* | 随机梯度下降 (SGD)* | Arimax |
| 随机林* | 随机林 | LARS 套索 |
| 极端随机树* | 极端随机树* | 随机梯度下降 (SGD) |
| Xgboost* | Xgboost* | 随机林 |
| 平均感知器分类器 | 在线梯度下降回归器 | Xgboost |
| Naive Bayes* | 快速线性回归量 | ForecastTCN |
| 随机梯度下降 (SGD)* | 朴素 | |
| 线性 SVM 分类器* | SeasonalNaive | |
| 平均值 | ||
| 季节平均值 | ||
| ExponentialSmoothing |
主要指标
该 primary_metric 参数设置模型训练期间用于优化的指标。 选择的任务类型决定了可用的指标。
许多因素会影响自动 ML 优化的主要指标的选择。 选择最能代表业务需求的指标。 然后,请考虑指标是否符合您的数据集特征,包括数据大小、范围和类别分布。 以下部分根据任务类型和业务方案总结了推荐的主要指标。
有关这些指标的特定定义,请参阅 自动化机器学习结果。
分类方案的指标
对于类别偏斜严重(类别不均衡)的小型数据集或预期的指标值非常接近 0.0 或 1.0 时,依赖阈值的指标(如 accuracy、recall_score_weighted、norm_macro_recall 和 precision_score_weighted)可能也不是最优的。 在这些情况下,对于主要指标,AUC_weighted 可能是更好的选择。 自动化 ML 完成后,可以根据符合业务需求的指标选择最佳模型。
| 指标 | 示例用例 |
|---|---|
accuracy |
图像分类、情绪分析、用户流失预测 |
AUC_weighted |
欺诈检测、图像分类、异常检测/垃圾邮件检测 |
average_precision_score_weighted |
情绪分析 |
norm_macro_recall |
流失预测 |
precision_score_weighted |
回归方案的指标
r2_score、 normalized_mean_absolute_error和 normalized_root_mean_squared_error 所有尝试将预测错误降到最低。
r2_score 同时 normalized_root_mean_squared_error 将平均平方误差降到最低,同时 normalized_mean_absolute_error 将误差的平均绝对值降到最低。 绝对值处理所有数量级的错误,平方误差对具有较大绝对值的错误给予更大的惩罚。 根据是否应对较大的错误进行更严厉的处罚,选择优化平方误差还是绝对误差。
它们之间的r2_scorenormalized_root_mean_squared_error主要区别在于规范化的方式及其含义。
normalized_root_mean_squared_error 是以范围为标准的根均方误差,可解释为预测的平均误差大小。
r2_score 是以数据方差估计值为标准的均方误差。 模型捕获的变体比例。
注意事项
r2_score 和 normalized_root_mean_squared_error 的作用类似于主要指标。 如果应用了固定验证集,这两个指标将优化相同的目标,平均平方错误,并且同一模型优化了它们。 当你应用交叉验证并且只有一个训练集可用时,它们会稍有不同,因为规范化器 normalized_root_mean_squared_error 固定为定型集的范围,但规范化器 r2_score 因每个折叠而异,因为它是每个折叠的方差。
如果关注点是排序而非精确值,则 spearman_correlation 可能是更好的选择,因为它会衡量实际值与预测值之间的排序相关性。
但是,目前没有回归解决相对差异的主要指标。
r2_score、normalized_mean_absolute_error和normalized_root_mean_squared_error都会在同一数据集中的这两个数据点,在工资为30,000美元的工人和年收入2000万美元的工人之间,处理20,000美元的预测误差,如果这些数据点属于同一回归数据集或由时序标识符指定的同一时间序列。 虽然在现实中,从2000万美元的工资中只相差2万美元非常接近(0.1%的相对差异),而3万美元之差为2万美元则并不接近(67%的相对差异)。 若要解决相对差异问题,请训练具有可用主要指标的模型,然后选择最佳 mean_absolute_percentage_error 模型或 root_mean_squared_log_error。
| 指标 | 示例用例 |
|---|---|
spearman_correlation |
|
normalized_root_mean_squared_error |
价格预测(房屋/产品/小费),评价分数预测 |
r2_score |
航空延迟、薪金估算、Bug 解决时间 |
normalized_mean_absolute_error |
时序预测方案的指标
这些建议与针对回归方案提供的建议类似。
| 指标 | 示例用例 |
|---|---|
normalized_root_mean_squared_error |
价格预测(预测)、库存优化、需求预测 |
r2_score |
价格预测(预测)、库存优化、需求预测 |
normalized_mean_absolute_error |
数据特征化
在每个自动化 ML 实验中,系统会自动调整和标准化数据,以帮助某些对处于不同尺度的特征敏感的算法。 此缩放和规范化过程被称为特征化处理。 有关更多详细信息和代码示例,请参阅 AutoML 中的特征化。
注意事项
自动化机器学习特征化步骤(例如特征归一化、处理缺失数据以及将文本转换为数字)成为基础模型的一部分。 使用模型进行预测时,训练期间应用的相同特征化步骤会自动应用于输入数据。
当在 AutoMLConfig 对象中进行试验配置时,可以启用或禁用此设置 featurization。 下表列出了 AutoMLConfig 对象中的特征化的已接受设置。
| 特征化配置 | 说明 |
|---|---|
"featurization": 'auto' |
指示作为预处理的一部分,自动执行数据护栏和特征化步骤。 默认设置。 |
"featurization": 'off' |
指示特征化步骤不应被自动执行。 |
"featurization": 'FeaturizationConfig' |
指示应使用自定义特征化步骤。 了解如何自定义特征化。 |
集成配置
默认情况下启用集成模型,并在 AutoML 运行中显示为最终运行迭代。 目前支持 VotingEnsemble 和 StackEnsemble 。
投票实现软投票机制,该机制使用加权平均值。 堆叠实现使用两层实现,其中第一层的模型与投票合奏相同,第二层模型用于从第一层查找模型的最佳组合。
如果使用 ONNX 模型或启用模型可解释性,则会禁用堆叠,并且仅使用投票。
通过将布尔参数设置为 enable_voting_ensembleenable_stack_ensemblefalse 来禁用合奏训练。
automl_classifier = AutoMLConfig(
task='classification',
primary_metric='AUC_weighted',
experiment_timeout_minutes=30,
training_data=data_train,
label_column_name=label,
n_cross_validations=5,
enable_voting_ensemble=False,
enable_stack_ensemble=False
)
若要更改默认集成行为,请在kwargs对象中提供多个默认参数AutoMLConfig。
重要
以下参数不是 AutoMLConfig 类的显式参数。
ensemble_download_models_timeout_sec:在 VotingEnsemble 和 StackEnsemble 模型生成期间,该过程将从以前的子运行下载多个拟合模型。 如果遇到此错误AutoMLEnsembleException: Could not find any models for running ensembling,则可能需要为要下载的模型提供更多时间。 默认值为 300 秒,用于并行下载这些模型,并且没有最大超时限制。 如果需要更多时间,请使用大于 300 秒的值配置此参数。注意事项
如果达到超时且进程已下载模型,集成将使用现有的模型继续进行。 不需要所有模型在该超时内完成下载。 以下参数只应用于 StackEnsemble 模型:
stack_meta_learner_type:元学习器是针对单个异类模型的输出而训练出来的模型。 默认元学习器LogisticRegression用于分类任务(或者LogisticRegressionCV如果启用了交叉验证),以及ElasticNet用于回归、预测任务(或者ElasticNetCV是否启用了交叉验证)。 此参数可以是下列字符串之一:LogisticRegression、LogisticRegressionCV、LightGBMClassifier、ElasticNet、ElasticNetCV、LightGBMRegressor或LinearRegression。stack_meta_learner_train_percentage:指定训练集在选择训练和验证类型时,保留用于训练元学习器的比例。 默认值为0.2。stack_meta_learner_kwargs:要传递给元学习器初始化函数的可选参数。 这些参数和参数类型对来自相应模型构造函数的参数和参数类型进行镜像,然后再转发到模型构造函数。
下面的代码示例展示了如何在 AutoMLConfig 对象中指定自定义融合行为。
ensemble_settings = {
"ensemble_download_models_timeout_sec": 600
"stack_meta_learner_type": "LogisticRegressionCV",
"stack_meta_learner_train_percentage": 0.3,
"stack_meta_learner_kwargs": {
"refit": True,
"fit_intercept": False,
"class_weight": "balanced",
"multi_class": "auto",
"n_jobs": -1
}
}
automl_classifier = AutoMLConfig(
task='classification',
primary_metric='AUC_weighted',
experiment_timeout_minutes=30,
training_data=train_data,
label_column_name=label,
n_cross_validations=5,
**ensemble_settings
)
退出条件
可以在 AutoMLConfig 中定义多个选项以结束试验。
| 条件 | 说明 |
|---|---|
| 无条件 | 如果未定义任何退出参数,则试验将继续,直到主要指标不再需要执行其他步骤。 |
| 在一段时间后 | 在设置中使用 experiment_timeout_minutes 来定义试验应继续运行多长时间(以分钟为单位)。 为了避免实验超时失败,至少需要 15 分钟;如果行乘以列的大小超过 1000 万,则需要 60 分钟。 |
| 已达到分数 | 在达到指定的主要指标分数后,使用 experiment_exit_score 完成试验。 |
运行试验
警告
如果多次运行具有相同配置设置和主要指标的试验,则可能会看到每个试验的最终指标分数和生成的模型的变化。 自动化 ML 使用的算法本身具有随机性,这可能会导致试验输出的模型与建议的模型的最终指标分数(如准确度)之间出现细微差异。 你可能还会看到具有相同模型名称的结果,但使用了不同的超参数。
对于自动化 ML,可以创建 Experiment 对象,这是 Workspace 中用于运行实验的命名对象。
from azureml.core.experiment import Experiment
ws = Workspace.from_config()
# Choose a name for the experiment and specify the project folder.
experiment_name = 'Tutorial-automl'
project_folder = './sample_projects/automl-classification'
experiment = Experiment(ws, experiment_name)
提交试验以运行和生成模型。 将 AutoMLConfig 传递给 submit 方法以生成模型。
run = experiment.submit(automl_config, show_output=True)
注意事项
首先在新的计算机上安装依赖项。 可能需要长达 10 分钟才能显示输出。
将 show_output 设置为 True 可在控制台上显示输出。
群集上的多个子运行
自动化 ML 试验子运行可以在已经运行另一个试验的群集上执行。 但是,计时取决于群集具有的节点数,以及这些节点是否可用于运行不同的试验。
群集中的每个节点充当单个可以完成一次训练运行的虚拟机 (VM);对于自动化 ML,这意味着一个子运行。 如果所有节点都处于忙碌状态,则新的试验将排队等待。 但是,如果有免费节点,新试验将在可用节点/VM 中并行运行自动化 ML 子运行。
为了管理子运行及其执行时间,建议你为每个试验创建一个专用群集,使试验的 max_concurrent_iterations 数与群集中的节点数匹配。 这样就可以同时使用群集的所有节点以及所需数量的并发子运行/迭代。
在 max_concurrent_iterations 对象中配置 AutoMLConfig。 如果未进行配置,则默认情况下每个试验仅允许一个并发子运行/迭代。
对于计算实例,可以将 max_concurrent_iterations 设置为与计算实例 VM 上的核心数相同。
探索模型和指标
自动化 ML 提供用于监视和评估训练结果的选项。
如果正在笔记本中操作,可以通过小组件或内嵌方式查看训练结果。 有关详细信息,请参阅 监控自动化机器学习运行。
有关为每个运行提供的性能图表和指标的定义和示例,请参阅 Evaluate 自动化机器学习实验结果。
若要获取特征化摘要并了解哪些功能已添加到特定模型,请参阅特征化透明度。
你可以使用自定义代码解决方案 print_model() 查看应用于特定自动化 ML 运行的超参数、缩放和规范化技术以及算法。
提示
借助自动化 ML,还可以 查看 AutoML 训练模型生成的模型训练代码。 此功能以公共预览版提供,可以随时更改。
监视自动机器学习的运行
对于自动化 ML 运行,若要access上一次运行的图表,请将 <<experiment_name>> 替换为相应的试验名称:
from azureml.widgets import RunDetails
from azureml.core.run import Run
experiment = Experiment (workspace, <<experiment_name>>)
run_id = 'autoML_my_runID' #replace with run_ID
run = Run(experiment, run_id)
RunDetails(run).show()
测试模型(预览版)
重要
使用测试数据集对自动生成的机器学习模型进行评估是一项预览功能。 此功能是经验预览功能,随时可能会更改。
警告
此功能不适用于以下自动化 ML 方案:
如果将test_data或者test_size参数传递到AutoMLConfig中,会自动触发一个远程测试运行,该运行使用提供的测试数据来评估实验完成后自动化机器学习推荐的最佳模型。 在确定最佳模型后,远程测试在试验结束时运行。 有关详细信息,请参阅如何将 测试数据传递到你的 AutoMLConfig。
获取测试作业结果
可以从 Azure Machine Learning studio 或使用以下代码从远程测试作业获取预测和指标。
best_run, fitted_model = remote_run.get_output()
test_run = next(best_run.get_children(type='automl.model_test'))
test_run.wait_for_completion(show_output=False, wait_post_processing=True)
# Get test metrics
test_run_metrics = test_run.get_metrics()
for name, value in test_run_metrics.items():
print(f"{name}: {value}")
# Get test predictions as a Dataset
test_run_details = test_run.get_details()
dataset_id = test_run_details['outputDatasets'][0]['identifier']['savedId']
test_run_predictions = Dataset.get_by_id(workspace, dataset_id)
predictions_df = test_run_predictions.to_pandas_dataframe()
# Alternatively, the test predictions can be retrieved via the run outputs.
test_run.download_file("predictions/predictions.csv")
predictions_df = pd.read_csv("predictions.csv")
模型测试作业将生成 predictions.csv 文件,该文件存储在与工作区一起创建的默认数据存储中。 具有相同订阅的所有用户都可以看到此数据存储。 对于测试作业使用或创建的任何信息都需要保持私密的情况,不建议使用测试作业。
测试现有的自动化 ML 模型
若要测试其他现有的自动化 ML 模型,例如最佳作业或子作业,请使用 ModelProxy()。 此方法在主 AutoML 运行完成后测试模型。
ModelProxy() 已返回预测和指标,因此无需任何额外的处理即可获取输出。
注意事项
ModelProxy 是一个 experimental 预览类,随时可能会更改。
以下代码演示如何使用 ModelProxy.test() 方法从任何运行中测试模型。 在 test() 方法中,可以通过使用 include_predictions_only 参数来指定是否只查看测试运行的预测结果。
from azureml.train.automl.model_proxy import ModelProxy
model_proxy = ModelProxy(child_run=my_run, compute_target=cpu_cluster)
predictions, metrics = model_proxy.test(test_data, include_predictions_only= True
)
注册和部署模型
测试模型并确认要在生产环境中使用它后,请注册它供以后使用。
若要从自动化 ML 运行注册模型,请使用 register_model() 方法。
best_run = run.get_best_child()
print(fitted_model.steps)
model_name = best_run.properties['model_name']
description = 'AutoML forecast example'
tags = None
model = run.register_model(model_name = model_name,
description = description,
tags = tags)
有关如何创建部署配置以及将注册模型部署到 Web 服务的详细信息,请参阅如何部署模型以及在何处部署模型。
提示
对于已注册的模型,可通过 Azure Machine Learning studio 进行一键式部署。 请参阅如何从工作室部署已注册的模型。
模型可解释性
模型可解释性可帮助你了解模型做出预测的原因,并揭示基础特征重要性值。 SDK 包括各种包,可在训练和推理期间为本地模型和已部署的模型启用模型可解释性功能。
了解如何专门在自动化机器学习试验中启用可解释性特征。
有关如何在自动化机器学习以外的 SDK 其他领域启用模型解释和特征重要性的一般信息,详见可解释性概念文章。
注意事项
解释客户端当前不支持 ForecastTCN 模型。 如果此模型作为最佳模型返回,则不会返回说明仪表板,并且该模型不支持按需解释运行。
后续步骤
详细了解如何以及在何处部署模型。
详细了解如何使用自动化机器学习训练回归模型。