部署机器学习模块

数据挖掘 Python scikit-学习 数据
2021-09-28 12:25:39

我正在寻找一些关于我不想做的事情的资源:我不想为我的机器学习模型制作一些 GUI 并最终将它们部署为 Web 应用程序。我发现 R Shiny 在某种程度上还可以,但它限制了我只使用 R,而且我也有 Python 的东西。看看 azure ml 工作室,它带来了某种工作流程,比如 Disco 和 ProM 中的流程挖掘,但我不确定要满足像合奏/网格这样的所有东西会有多大的痛苦搜索这些流量组件等,而且完全付费版本非常昂贵。尝试从头开始做一个 Web 应用程序也不行,因为当我修改我的模型时会很痛苦。有什么建议?

3个回答

如果我在这里错了,请纠正我:

您已经编写了测试/训练模型的代码,并且正在寻找一种方法将该模型放在网络上的某个地方,以便用户可以与之交互?

有几种方法可以解决这个问题,但这取决于您对最终产品的需求。这是客户将使用的东西吗?朋友们?只有你?Flask允许您制作快速 Web 应用程序的原型,并且仍然可以很好地控制最终产品的外观。Spyre是一种以接近光速制作 Web 应用程序的惊人方法,尽管它可能不太适合您的用例,具体取决于您在做什么。用 Spyre 制作外观独特的东西有点困难,但我总是向人们推荐它。

无论如何,这里要做的标准事情是在训练完模型后将其腌制,然后将其加载到 Web 应用程序的内存中。之后,您可以调用由用户发送到您的程序的model.predict(X)on 。X

如果您正在寻找一个开箱即用的解决方案来部署您的模型并获得为您即时构建的 REST 端点/Web 应用程序,您可以查看clouderizer它为您提供了一个干净的 GUI 来拖放您的打包模型文件并将其部署在 AWS/GCP/本地机器上。这是一个使用 clouderizer为心力衰竭预测而构建的网络应用程序。

我能想到的最简单的方法是使用streamlit作为框架来开发应用程序(它基于 Python 脚本,非常简单),它非常专注于显示数据、图形和显示使用多个参数值的灵活性 + Heroku作为部署服务提供商,也可以通过简单的命令。