如何从 azureml.core.model.Model Class 中提取数据集?

How to extract a dataset from azureml.core.model.Model Class?

Azure 机器学习服务的模型工件能够存储对与模型关联的数据集的引用。我们可以使用 azureml.core.model.Model.add_dataset_references([('relation-as-a-string', Dataset)]) 添加这些数据集引用。 我们如何通过使用对模型 Class 的引用从存储在此模型 class 中的引用中检索数据集?

get_by_name(workspace, name, version='latest')

参数

workspace

注册数据集的现有 AzureML 工作区。

name

注册名。

version

注册版。默认为 'latest'.

Returns

注册的数据集对象。

考虑添加一个数据集作为对名称为 'training_dataset'

的模型的引用

为了获得对此数据集的引用,我们使用:

model = Model(workspace, name)
dataset_id = next(dictionary['id'] for dictionary in model.serialize()['datasets'] if dictionary["name"] == 'training_dataset')
dataset_reference = Dataset.get_by_id(workspace, dataset_id )

在这一步之后,我们可以像使用任何其他 AzureML 数据集 Class 对象一样使用 dataset_reference