我正在尝试按照以下Github示例部署MS Azure自动机器学习:
我更改了那里的代码以提供数据,但在执行autoML运行时遇到以下错误:
在automl.client.core.common.exceptions.DataprepException:无法执行指定的转换。在
来自: 文件“/azureml envs/azureml_e9e27206cd19de471f4e5c7a171037e/lib/python3.6/site-packages/azureml/automl/core/dataprep_实用程序.py,第50行,在try_retrieve_pandas_dataframe_adb中
现在,我认为我的数据有问题,但随后我对原始csv文件进行了以下实验:
第一次执行,如Github示例中所示,直接基于http链接构建数据流 第二次执行基于相同的csv构建数据流,但下载到我的共享。在
在第二种情况下,我得到了与我的数据相同的错误。这意味着,azureautoml运行/数据流/准备过程只接受特定的文件格式,在保存到我的驱动器时更改了该格式。 我不确定这是关于编码还是其他什么。 你能给我个建议吗?在
########################################
#Case 1, Error returned
data= "\\\dwdf219\\...\\bankmarketing_train.csv"
dflow = dprep.auto_read_file(data)
dflow.get_profile()
X_train = dflow.drop_columns(columns=['y'])
y_train = dflow.keep_columns(columns=['y'], validate_column_exists=True)
dflow.head()
# Train
automl_settings = {
"iteration_timeout_minutes": 10,
"iterations": 5,
"n_cross_validations": 2,
"primary_metric": 'AUC_weighted',
"preprocess": True,
"max_concurrent_iterations": 5,
"verbosity": logging.INFO,
}
automl_config = AutoMLConfig(task = 'classification',
debug_log = 'automl_errors.log',
path = project_folder,
run_configuration=conda_run_config,
X = X_train,
y = y_train,
**automl_settings
)
remote_run = experiment.submit(automl_config, show_output = True)
########################################
#Case 2, all works fine
data = "https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_train.csv"
dflow = dprep.auto_read_file(data)
dflow.get_profile()
X_train = dflow.drop_columns(columns=['y'])
y_train = dflow.keep_columns(columns=['y'], validate_column_exists=True)
dflow.head()
# Train ...
###################################
对于远程运行,传递给dprep的文件在远程上使用,因此必须在远程(Linux)上访问该文件。在
Linux远程可以理解https和数据存储,但无法处理Windows样式的文件共享。(\\dwdf219\…\bankmarketing_火车.csv在这种情况下)
一种解决方案是通过数据存储传递数据。在
您可以使用以下方法上载到数据存储:
然后在auto_read_文件中使用数据存储引用:
^{pr2}$示例笔记本auto-ml-remote-amlcompute.ipynb显示了这一点。在
相关问题 更多 >
编程相关推荐