TFX 交互式笔记本简介

Posted TensorFlow 社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TFX 交互式笔记本简介相关的知识,希望对你有一定的参考价值。

文 / 由 Charles Chen、Joe Lee 和 Kenny Song 代表 TFX 团队发布

TensorFlow Extended (TFX) 是一个用于创建端到端机器学习流水线的平台。TFX 由 Google 创建,起初是为我们自己的 ML 应用程序和服务提供支撑,我们现在正在稳步地将 TFX 开源,以支持其他公司和团队轻松搭建生产级 ML 系统(更多信息请阅读此文)。

在 TFX 0.15 中,我们很高兴地发布一种快速开始使用 TFX 的方法。现在您可以在交互式 Google Colab 或 Jupyter 笔记本上搭建、调试和运行自己的 TFX 流水线!在此类笔记本环境中,您可以按逐个组件的方式运行 TFX,这样迭代起来更加容易,也便于在您的 ML 流水线上开展试验。


首先,这一全新的基于 Colab 的 TFX 教程包含所有 TFX 组件,无需安装,全部都在浏览器中运行!免费开放使用,请在 Colab 中试用 TFX 并与我们分享您的使用反馈吧!

在 Google Colab 中运行 TFX

完成笔记本中流水线的开发后,您可以将笔记本代码转换为流水线文件,且此文件可通过 Apache Airflow 或 Apache Beam 进行编排(即将推出导出到 Kubeflow Pipelines)。我们建议利用此导出路径来生成 TFX 流水线:笔记本用于试验环境,而流水线用于生产环境。

试验和生产之间的一个主要差异是运行组件的方式。在生产环境中,诸如 Apache Airflow 这样的编排引擎将为您执行组件。在试验过程中,运行笔记本的人(也就是你!)是编排者。而其中的秘诀便是负责管理笔记本中组件执行和状态的InteractiveContext

context = InteractiveContext()

例如,下面就是我们在笔记本中运行StatisticsGen组件的方式。首先,我们将StatisticsGen组件实例化,并导入我们的训练数据(通常由另一 TFX 组件导入,如ExampleGen)。

statistics_gen = StatisticsGen(examples=example_gen.outputs['examples'])

接着,要运行组件,我们只需调用 context.run(),并运行该单元。

context.run(statistics_gen)

大功告成!顾名思义,StatisticsGen 将针对您的数据集生成特征级别的统计信息。单元运行完必后,您可以通过调用context.show()以内置的 TFX 可视化方式查看这些统计信息。

context.show(statistics_gen.outputs['statistics'])

此函数的输出是一个交互式可视化视图,通过研究此视图可分析数据的形状和特性。

您可以按此方式运行所有 TFX 组件,包括在 Trainer 组件中训练 TensorFlow 模型,以及在 Evaluator 组件中通过 TensorFlow 模型分析深入分析模型的性能。

这可以让试验更加快速、方便。对于生产环境,您在笔记本中编写的任何内容均可通过调用context.export_to_pipeline()转换为可编排的流水线文件:

context.export_to_pipeline(notebook_filepath=_notebook_filepath,
                           export_filepath=_pipeline_export_filepath,
                           runner_type=_runner_type)

TFX 还提供更多的组件供您在生产 ML 流水线中使用。若要了解详情并要在 Colab 笔记本中尝试所有 TFX 组件,请查看教程(https://tensorflow.google.cn/tfx/tutorials/tfx/components)。

另外欢迎您通过 TFX 邮件列表提供反馈,让我们了解您的想法。

想获得 TFX 更多资讯,请访问 TensorFlow 中国官网。或扫描下方二维码,关注 TensorFlow 官方微信公众号。

以上是关于TFX 交互式笔记本简介的主要内容,如果未能解决你的问题,请参考以下文章

创建自定义 TFX 组件

创建自定义 TFX 组件

课程笔记计算机体系结构复习笔记

7招,实现安全高效的流水线管理

如何使用 Bulkinferrer 从之前在 Tensorflow Extended (TFX) 中推送的模型进行预测

尝试使用 TFX 运行非常简单的 Kubeflow 管道时,为啥 GKE 集群上的 pod 会 OOMkilled?