Lar*_*ien 5 python azure pytorch azure-machine-learning-service
我正在尝试torch.utils.data.DataLoader在 AzureML 中对 a 进行一些自定义操作,但无法让它直接从我的实例化azureml.core.Datastore:
ws = Workspace( # ... etc ... )
ds = Datastore.get(ws, datastore_name='my_ds')
am = ds.as_mount()
# HOW DO I GET base_path, data_file from am?
dataloader = DataLoader(
ListDataset(base_path, data_file), #... etc...
)
Run Code Online (Sandbox Code Playgroud)
的值am.path()是“$AZUREML_DATAREFERENCE_my_ds”,但我无法弄清楚如何pathlib.Path按照构造函数的预期从该值转到 a ListDataset。我尝试过的事情包括Path(am.path())但Path(os.environ[am.path()])它们似乎不起作用。
很明显有一些答案,因为:
script_params = {
'--base_path': ds.as_mount(),
'--epochs': 30,
'--batch_size' : 16,
'--use_cuda': 'true'
}
torch = PyTorch(source_directory='./',
script_params=script_params,
compute_target=compute_target,
entry_script='train.py',
pip_packages=packages,
use_gpu=True)
Run Code Online (Sandbox Code Playgroud)
似乎创建了一个合法的对象。
您也许可以尝试使用DataPath 类。它公开了一些属性,例如path_on_datastore您正在寻找的路径。
从 DataReference 对象(即变量)构造此类am;你可以使用 create_from_data_reference()方法。
例子:
ds = Datastore.get(ws, datastore_name='my_ds')
am = ds.as_mount()
dp = DataPath().create_from_data_reference(am)
base_path = dp.path_on_datastore
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1460 次 |
| 最近记录: |