[英]Can't register a custom model (based on OpenCV) on Azure Machine Learning service
[英]How can I register in Azure ML Service a machine learning model trained locally?
我正在尝试用于 ML 部署的Azure 机器学习服务。
我已经在计算 VM 上训练了一个模型并将其保存为泡菜,现在想部署它(我目前在 Azure 笔记本上使用 Python 用于此目的)。
从指南看来,我需要在会话中存在一个run
对象才能执行“模型注册”步骤:
# register model
model = run.register_model(model_name='my_model', model_path='outputs/my_model.pkl')
print(model.name, model.id, model.version, sep = '\t')
但是,我没有创建任何run
对象,因为我没有执行任何训练实验,我只是从我的腌制模型开始。
我还尝试通过 Azure 门户上传模型来注册模型(请参见下面的屏幕截图),但是(因为模型文件非常大,我假设)它失败并显示ajax error 413.
如无法注册 ONNX 模型azure 机器学习服务工作区。
有没有办法注册然后部署预训练的pickle模式(如果有意义的话,不需要提交run
)?
由于您尚未在 mlflow 上训练任何模型或运行任何实验,因此您应直接通过 pickle 文件注册保存的模型。 保存模型的 sklearn 库和 pickle 版本应与当前支持 MLflow 的内置 sklearn 兼容模型味道。
import mlflow
loaded_model = pickle_load(open(filename,'rb'))
reg_model_name = "Regression"
mlflow.sklearn.log_model(loaded_model, "sk_learn", serialisation_format="cloudpickle", registered_model_name=reg_model_name)
模型注册可以通过Model.register完成,不需要使用run
对象
model = Model.register(model_name='my_model', model_path='my_model.pkl', workspace = ws)
对于部署,可以按照Azure ML 服务文档中概述的步骤进行操作。
您还可以在 Web 门户中手动注册您的模型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.