热线电话:13121318867

登录
首页精彩阅读谷歌教你学 AI-第四讲部署预测模型
谷歌教你学 AI-第四讲部署预测模型
2018-01-25
收藏

谷歌教你学 AI-第四讲部署预测模型

Google Cloud发布了名为"AI Adventures"的系列视频,用简单易懂的语言让初学者了解机器学习的方方面面。

观看更多国外公开课,点击"阅读原文"

之前我们更新了前三讲,关于机器学习的概念和具体步骤。后台收到的反馈十分热烈,今天让我们继续更新:第四讲部署预测模型。

回顾之前内容:

谷歌教你学 AI -第一讲机器学习是什么?

谷歌教你学 AI -第二讲机器学习的7个步骤

谷歌教你学 AI-第三讲简单易懂的估算器

主讲人还是来自Google Cloud的开发人员,华裔小哥Yufeng Guo。让我们在学习AI知识的同时来提高英语吧。

CDA字幕组目前在对该系列视频进行汉化,之后将继续连载,欢迎关注和支持~

附有中文字幕的视频如下:

AI Adventures--第四讲部署预测模型

针对不方便打开视频的小伙伴,CDA字幕组也贴心的整理了文字版本,如下:

一旦我们有了训练好的机器学习模型,那么该如何进行预测呢? 敬请收看本期AI Adventures !

谷歌的Cloud Machine Learning Engine能够让你为TensorFlow模型创建预测服务,且不需要任何操作。通过从训练的模型转换为部署的、自动扩展的预测服务,我们可以用更多时间来处理数据。

进行预测:最后一步

我们收集了数据,最终完成了一个合适的模型并验证了它的性能。我们现在终于准备好进入最后阶段:进行预测。

在接受提供预测服务的挑战时,我们希望部署一个专门为服务而构建的模型。特别是一个快速、轻量级的模型,而且是静态的,因为我们不希望在提供服务时出现更新。

此外,我们希望预测服务器能够按需扩展,这能够解决更复杂的问题。

输出TensorFlow模型

事实证明,TensorFlow有一个内置函数,能够在提供预测服务时生成优化的模型。并且能够进行需要的调整,这节省了大量的工作。

这个函数叫做 export_savedmodel(),当你对训练模型的性能满意时,我们可以直接在分类器对象上运行。

这将获取模型的快照,并导出可以在其他地方使用的文件。随着模型的改进,你可以继续得出更新的模型,从而不断提供模型的多个版本。

导出的文件由一个文件和一个文件夹组成。其中文件是 saved_model.pb,它定义了模型结构。变量文件夹包含两个文件,在我们的模型中提供训练权重。

生产中提供模型

一旦你导出模型就可以在提供到生产中了。这里有两个主要的选择: 使用TensorFlow Serving,或者Cloud Machine Learning Engine来提供预测服务。

TensorFlow Serving属于TensorFlow,发布在GitHub上。如果你喜欢对开发环境设施进行配置,并且按需求进行扩展的话,这是不错的选择。

然而,今天我们将主要关注Cloud Machine Learning Engine的预测服务,尽管这两者有相似的文件接口。

Cloud Machine Learning Engine能够让你用导出的TensorFlow模型,并将其转换为预测服务,当中内置API端点且自动扩展,并将达到零(即当没有人请求预测时没有计算机会改变)。

同时它还包含功能丰富的命令行工具、API和UI,因此我们可以根据喜好以不同的方式进行交互。

部署新的预测模型

下面让我们看看如何针对上期分辨鸢尾花的例子,使用Cloud Machine Learning Engine的预测服务。

输出和上传

首先在训练的分类器上运行 export_savedmodel()  。这将生成一个导出模型,我们可以用于预测服务。

接下来,我们要将文件上传到谷歌云存储。当创建新的模型版本时,Cloud machine learning engine将从云存储中读取。

在创建bucket时,一定要选择区域存储类,以确保计算和存储在同一区域。

创建新的模型

在云机器学习UI中,我们可以创建一个新的模型,这实际上是对所有发布版本的封装。版本保存了单个导出模型,而模型抽象帮助将进入的流量导入选择的适当版本。

以下是模型列表视图,在这里我们创建一个新的模型。

创建模型需要给其命名,我们将其命名为iris_model。

创建新版本

接下来,我们将创建一个版本,通过为这个特定的模型版本命名,并将其指向存有导出文件的云存储目录。

就这样,我们创建了模型! 整个过程只需要将服务指向导出模型,并给它命名。

为什么整个过程这么简单呢?

因为服务处理了设置和保护端点的所有操作。此外,我们不需要编写代码,根据需求进行扩展。因为在云端,这种灵活性意味着当需求很低时,不需要支付未使用的计算。

通过为鸢尾花模型建立不需要任何操作的预测服务,我们可以在几分钟内将训练的模型转化为部署的、可自动扩展的预测服务,这意味着我们有更多的时间来处理数据!

欢迎收看本期的AI Adventures。别忘了,当你需要在生产中扩展机器学习服务时,Cloud Machine Learning Engine是不错的选择。

数据分析咨询请扫描二维码

最新资讯
更多
客服在线
立即咨询