在天蓝色的服务上部署训练有素的python数据科学项目

时间:2018-05-28 22:21:23

标签: python azure service deployment anaconda

我在Python anaconda Spyder中创建了一个数据科学神经网络。我的项目有多个.py文件,我已经训练了这个模型10天,并生成了权重。我想将此模型用作服务,并希望将其部署到Azure以供使用。我试过跟随但面临困难 -

1)我尝试将其部署为"执行Python脚本"在Azure ML工作室,但我没有找到上传权重的选项。我知道我可以压缩所有.py文件,但是训练有素的权重和虚拟环境(我使用旧版本的tensorflow)呢?

2)我看到了创建Jupyter笔记本的选项,但我的项目是在Spyder中创建的,并没有.ipynb文件。有没有办法将我的.py文件转换为.ipynb文件?另外,我创建了一个旧版本的tensorflow和python版本的虚拟环境?在部署到azure时如何处理这个问题?

3)我尝试将其部署到azure作为python web应用程序,但我又如何处理虚拟环境和现有权重?另外,如何创建webapp所需的配置或依赖文件?

请尽可能让我知道将此解决方案部署到天蓝色的最佳方法吗?

由于

2 个答案:

答案 0 :(得分:0)

我无法帮助你,因为你似乎不熟悉它,而且很难用语言来表达。

首先,你保存了训练有素的模特吗?如果已保存,则可以上载保存的模型并在部署后重新加载。

其次,您不需要使用jupyter笔记本,这在您的情况下毫无意义。

第三,你不需要自己创建virtualenv。您只需提供requirements.txt文件即可指定所需的所有软件包。 Azure网络应用程序将自动创建virtualenv并安装requirements.txt中的每个包。

最后,如果你想要解决这个问题,首先应该从一些simple example开始。

答案 1 :(得分:0)

根据您的描述,听起来您希望将训练有素的tensorflow模型部署为Azure ML Studio上的Execute Python Script模块,并将其作为Web服务发布以供使用。

因此,如果没有考虑到tensorflow CPU的兼容性 - 只是代码,正如你所说,你可以参考官方文档Execute Python machine learning scripts in Azure Machine Learning Studio和SO线程Updating pandas to version 0.19 in Azure ML Studio来压缩所有文件和依赖项包含.py个文件,并将您导出的训练模型作为只读文件来设置Azure document描述的Azure网络服务。

或者有类似的帖子How to deploy a tensorflow model to azure ml workbench将模型保存为protobuf以供消费。

但是,使用Azure GPU Machine或Docker进行部署的一些解决方法对于该方案来说很简单。请参阅这些Train a TensorFlow model in the cloudTensorFlow on Docker with Microsoft Azure Container Services

希望它有所帮助。