云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

香港服务器_企业网站后台_好用

小七 141 0

欢迎来到SAP Leonardo ML基金会关于培训机器学习模型的系列博客文章。在这个系列中,我将开始演示如何在ML Foundation上手动提交作业,以构建一个API,该API可以通过作业来训练机器学习模型,云报,并使用这些模型进行实时预测。

上一篇博文:在SAP Leonardo ML Foundation(TYOM)上训练和发布机器学习模型–第1部分

博文内容:构建一个API以自动化模型培训作业提交和使用培训模型进行运行时预测的过程。

GitHub存储库:ML Foundation TYOM POC

前提条件:

SAP Cloud Foundry帐户(试用帐户将与此配合使用)。SAP CP Cloud Foundry CLI。SAP Leonardo Ml Foundation CLI插件。使用Scikit learn(Python)实现机器学习算法的基本知识。Python服务知识。发送请求的邮递员

一旦满足了所有的先决条件并安装了所需的CLI和插件,大淘客,我们就可以开始构建API了。另外,在这篇博文中,我们将不讨论设置环境、初始化系统等内容。因此,建议您在开始这篇博文之前先阅读前面提到的博文。

设置应用程序

一旦您克隆了GitHub存储库,我们就可以开始设置应用程序了。如果您的机器学习基础实例名是"MLF",那么您可以直接使用命令"CF Press"部署应用程序。如果实例名称不同,则必须在应用程序的清单文件中更改它。

这足够让应用程序在CloudFoundry上正常运行。训练模型所需的数据集已经在存储库本身中可用。

部署后,我们可以运行命令"cf env tyompoc"检查应用程序的环境,在"VCAP\u SERVICES"下,我们可以看到"mlf"服务以及创建服务密钥时看到的所有信息。由于这在应用程序环境中可用,因此我们将能够从环境本身获取所有必需的信息。

了解Flask应用程序

我建议您克隆GitHub存储库以获取我们将在本教程中使用的应用程序。此应用程序遵循适当的堆栈进行机器学习模型训练,以进行模型推理。所以,让我们从访问不同的组件开始。

这个文件与上次我们执行手动作业提交时非常相似。这里唯一的变化是,我们还将保存"StandardScaler"的对象,它将用于在训练之前缩放列。因为在预测结果之前,我们还必须根据缩放参数转换运行时输入。

在文件夹"utils/"下,我们可以看到4个不同的助手文件,公众号返利系统,其中包含在控制器文件终结点函数中使用的函数。

此文件只包含一个函数,该函数采用身份验证url、客户端id和client secret作为参数并返回包含访问任何ML Foundation服务所需的承载令牌的头。

此文件还仅包含一个函数,该函数负责在本用例中返回所需环境变量的值。在这种情况下,函数获取"VCAP\u SERVICES"变量并获取ML Foundation的详细信息,如身份验证url、客户端id、客户端机密、作业提交url等

正如我们现在已经知道的,Minio是ML Foundation使用的本机文件系统。所以,我们也需要处理它。我已经定义了一些函数,比如将任何文件放在作业特定的文件夹中,从同一文件夹下载一个文件等。在培训模型将数据集、代码文件、需求文件等上载到Minio上的作业特定文件夹之前,将使用上载函数。类似地,下载函数用于从Minio获取模型并将其用于运行时预测。

这个helper类仍然只包含一个函数,该函数负责在ML基础中提交作业。此函数以身份验证详细信息、作业提交url和API版本作为参数,提交后返回作业状态详细信息

此文件包含培训模型的所有端点,并预测所需的类。到目前为止,上述两个任务只有两个端点,

这个端点触发一个函数,该函数负责读取应用程序的环境变量,获取Minio凭据,将所需文件上传到Minio,最后触发作业。模型培训结束时的此作业将模型文件存储在同一Minio文件夹中,手机免费建站,我们可以从中访问它。

本例中使用的资源计划Id为"基本",因为试用帐户上的ML Foundation仅支持基本计划。当我们在ML Foundation上运行一个作业时,在Minio中,什么是物联网应用技术,在名为"data"的bucket下第一次创建了一个名为"jobs"的文件夹,其中每次都会创建一个名为"-"的文件夹。与作业对应的所有文件仅存储在此文件夹中。因此,当模型培训完成后,模型将保存在此文件夹中以供以后使用。

此端点需要在正文中包含"age"和"salary"值的POST调用。然后,它从Minio获取模型并将其应用于新的运行时数据以预测类。就这样,流程就完成了。

应用程序工作流

现在我们已经了解了应用程序的组件,让我们检查一下应用程序的整个工作流,如下所示。