使用 TensorFlow Extended (TFX) 在生产环境中部署机器学习 丨 Google 开发者大会 2018
2018 年 9 月 21 日 丘天豪(Google Brain 软件工程师)带来一场《使用 TensorFlow Extended (TFX) 在生产环境中部署机器学习》的演讲,本文将对演讲做一个回顾。
TensorFlow Extended


TensorFlow Extended 平台的组成结构如上图所示,下面将根据 Google 开源的 四个部分进行介绍。
数据转换 (TensorFlow Trainsform)

在使用数据集之前,往往需要对数据进行转换,TFT 允许将数据转换成 TF 计算图,同时也可以定义一些特殊的转换来表达特殊的特征。生成的 TF 计算图是完成密封的,包含所有的特征值信息,这也就意味着可以应用于训练和部署中。这个是十分重要的一点,在生产环境中,有可能我们训练和部署所使用的语言和路径是不相同的,而 TF 计算图是完成密封的,很好的解决了这个问题。
示例:
出租车给小费实例


GitHub:github.com/tensorflow/…
模型训练 (Estimators or Keras)
使用 TensorFlow Estimators 进行模型训练

训练好的模型会以 SavedModel
形式输出。

使用 tf.Keras 进行模型训练

模型评估和验证(TensorFlow Model Analysis)
在完成模型训练之后,往往需要重新编写代码对模型进行评估和验证。TFMA 就是为了解决这个问题出现。

在运行上图所示代码后,会出现如下图这样的图形界面,更加直观的对模型就行评估。

GitHub:github.com/tensorflow/…
模型部署 (TensorFlow Serving)

在使用 TensorFlow Serving 部署模型之后,使用 Serving 接口即可进行访问。

GitHub:github.com/tensorflow/…
数据分析和验证 (TensorFlow Data Validation)

Data Validation 模块组成如下:

计算统计数据与统计数据可视化

推导初始 Schema

数据验证



训练/线上数据偏差检测

GitHub:github.com/tensorflow/…
总结
实际生产环境中使用 TFX 流程如下:

论文:TFX: A TensorFlow-Based Production-Scale Machine Learning Platform,KDD(2017)
转载自:https://juejin.cn/post/6844903684665524238