内容简介:如何将机器学习的模型部署到NET环境中?
对于以数据为中心的工程师来说,Python和R是数据中心最流行的编程语言之一。但是,它们并不总是构建应用程序的其余部分的语言。这就是为什么你有时需要找到一种方法,将用 Python 或R编写的机器学习模型部署到基于.NET等语言的环境中。
在本文中,将为大家展示如何使用Web API将机器学习模型集成到.NET编写的应用程序中。
输入:Flask
我们可以使用Flask作为共享和主持机器学习预测的一种方式。让我们使用来自著名的Kaggle比赛的Titanic 数据集。首先,创建一个新文件,并将其称为titanic_app.py(或任何你想要的名字)。导入并初始化Flask应用程序,然后在底部启动服务器。在中间留出空间,以便稍后在中间添加模型和路线。
请注意,我们指定了我们运行的希望应用程序的主机和端口。
创建并训练一个模型
加载Titanic 数据集并在其上创建一个模型:
制作一个简单的API
这是比较有趣的部分。现在有一个预测,需要一些值来预测,一种方法是从URL参数中获取信息,在这之后出现的值对是关键?在一个URL中。例如,如果您导航到http:// localhost:4000 / predict?pclass = 1&sex = 1&age = 18&fare = 500&sibsp = 0,则Flask可以为你检索该数据。
保存文件并启动你的应用程序。现在就有一个简单的API模型了!
部署到NET环境
在NET环境中部署Flask有很多选择,它们将大大依赖于你的基础架构的选择。为了了解这个过程,我们来看看使用Microsoft Azure部署到IIS环境。
假设:
·你已经创建了一个Azure Cosmos数据库(这篇文章的范围之外)。
·已经创建了一个Flask Web应用程序(正如我们上面所述的)。
·熟悉Azure和Visual Studio。
如果你已正确设置环境,则可以将你的Web应用程序部署到Azure。这可以通过创建一个web.config文件来更新Web服务器上的文件来匹配你的实例中的文件。为此,请执行以下步骤:
·在Visual Studio解决方案资源管理器中,右键单击该项目并选择添加新建项目。在出现的对话框中,选择Azure web.config(Fast CGI)模板,然后选择确定。这会在项目根目录下创建一个web.config文件。
·修改web.config,使路径与Python安装相匹配。例如,对于Python 2.7 x64,条目应该如下所示:
·将web.config中的WSGI_HANDLER条目设置为tutorial.app,以匹配项目名称,如下所示:
·在Visual Studio Solution Explorer中,展开tutorial文件夹,右键单击静态文件夹,选择Add> New Item,选择Azure静态文件web.config模板,然后选择OK。此操作将在禁用该文件夹的Python处理的静态文件夹中创建另一个web.config。该配置将静态文件的请求发送到默认Web服务器,而不是使用Python应用程序。
·保存文件,然后右键单击解决方案资源管理器中的项目(确保你还没有在本地运行),然后选择发布。
·在“发布”对话框中,选择“Microsoft Azure应用程序服务”,选择“新建”,然后单击“发布”。
·在“创建应用程序服务”对话框中,输入Web应用程序的名称以及订阅、资源组和应用程序服务计划。然后,点击创建。
·几秒钟后,Visual Studio完成将文件复制到服务器,并在http://.azurewebsites.net/页面上显示以下错误消息:“由于发生内部服务器错误,无法显示页面”。
·在Azure门户中,打开你的新的应用程序服务帐户。在导航菜单中,向下滚动到开发 工具 部分,选择扩展,然后单击添加。
·在Choose Extension页面中,向下滚动到最新的Python 2.7安装并选择x86或x64位选项,然后单击OK接受合法的条款。
·使用Kudu控制台,你可以通过https://scm.azurewebsites.net/DebugConsole找到它,以安装应用程序的requirements.txt文件中列出的软件包。为此,在Kudu诊断控制台中,导航到D: home Python27中的Python文件夹,然后按照Kudu控制台部分中所述运行以下命令:
D: home Python27> python -m pip install --upgrade -r /home/site/wwwroot/requirements.txt
·通过按下重新启动按钮来安装新软件包之后,在Azure门户中重新启动App Service。
一旦完整配置服务器环境后,刷新浏览器中的页面,即可显示Web应用程序。
以上所述就是小编给大家介绍的《如何将机器学习的模型部署到NET环境中?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- R语言实战之模型部署
- 如何使用 Kubernetes 轻松部署深度学习模型
- Oracle开源机器学习模型云端部署工具Graphpipe
- 机器学习模型部署--打通前后端任督二脉
- TensorFlow模型部署到Android,需要注意几点
- 当深度学习遇到了微服务:微服务部署预测模型
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Learning Vue.js 2
Olga Filipova / Packt Publishing / 2017-1-5 / USD 41.99
About This Book Learn how to propagate DOM changes across the website without writing extensive jQuery callbacks code.Learn how to achieve reactivity and easily compose views with Vue.js and unders......一起来看看 《Learning Vue.js 2》 这本书的介绍吧!