【发布时间】:2017-06-24 03:37:38
【问题描述】:
我一直致力于使用 springframework 设计 REST api,并将它们部署在 Tomcat 等 Web 服务器上。我还致力于构建机器学习模型,并使用该模型在 Python 中使用 sklearn 进行预测。 现在我有一个用例,我想公开一个构建机器学习模型的 REST api,以及另一个进行预测的 REST api。什么架构应该帮助我实现同样的目标。 (同样的例子可能是亚马逊机器学习。他们已经公开了用于生成模型和进行预测的 REST api)
我在网上搜索了一下,找到了以下方法:
- 用 Java 编写整个东西 - ML 模型 + REST api
- 用 Python 编写全部内容 - ML 模型 + REST api
但是玩机器学习,它的模型和预测在 python 中使用 sklearn 等库而不是 Java 真的更容易和更受支持。我真的很想将 python 用于机器学习部分。
我正在考虑并尝试使用 JAVA 编写 REST api,但使用子流程进行 python ML 调用。这行得通吗?
有人可以帮助我了解我可以采用的可能的架构方法。也请提出最可行的解决方案。
提前致谢。
【问题讨论】:
-
Skymind 智能层包括一个带有 REST API 的机器学习模型服务器。 docs.skymind.ai/v1.0.3/reference
-
如果您不介意使用 Amazon Web Services,我会推荐 Chalice。它是一个用于创建 Lambda 函数的框架。它很容易学习,您不必担心基础设施。如果您已将 ML 模型存储在文件中,则可以将其传输到 Bucket,因此在调用 Lambda 函数时,您可以拉取模型文件并处理请求。 github.com/aws/chalice
-
如果您正在寻找一种简单的方法来构建自定义机器学习 API 而无需担心后端,您可以查看nyckel.com
标签: java python rest machine-learning scikit-learn