google 云中哪个是最好的选择调用训练机器学习模型?

which is the best option call trained machine learning model in google cloud?

我在 python 中有一个经过训练的机器学习模型来获得回归输出,这个模型是用 scikit-learn 训练的

我想将此预测插入到 firestore 中,我将使用每天使用云调度程序对其进行调度的云函数来执行此操作。

我的问题是我必须在哪里存储这个经过训练的机器学习模型?

我一直在读到这是可能的,但我不知道为什么更好以及如何做到

您的问题有多个答案。

您要构建单体还是 2 个微服务:

  • Monolith,我的意思是相同的服务(函数或容器)由调度程序触发,加载模型,执行预测并将其保存到 firestore
  • 微服务:
    • 1 项服务由调度程序触发,请求预测并将结果存储到 Firestore
    • 1 服务加载模型并回答预测查询。

在单体情况下,不推荐使用AI-Platform。在微服务中,您可以将预测服务托管在 AI Platform 上,另一个托管在 Cloud Functions

对于 tensorflow,我还提出了另一种托管模型的解决方案:在云端 运行。 I wrote an article on this。我对 SciKit 的了解还不够多,无法告诉您同样的事情是可能的,但这是一个不错的选择。

关于在哪里存储你训练好的模型?绝对在云存储上。即使您像我的文章中描述的那样使用容器构建 Cloud 运行 服务,我也会在其中下载模型并将其加载到容器中(因此模型不会在运行时从存储中下载,仅在构建时下载) ), Cloud Storage 是存放不可变对象的最佳场所。

最后,关于 AI Platform 的最后一个问题。一个名字,几个服务。您可以托管您的模型并执行在线预测,并且您可以训练您的模型。不一样的内部服务,不一样的用法,不一样的API。训练新模型时没有difference/advantage,无论您是否在 AI Platform 上托管在线预测