TensorFlow产品级端到端机器学习平台TFX,图形界面可视化流水线

【导读】本文介绍TensorFlow官方的产品级机器学习平台TFX。与TensorBoard不同,TFX可以创建和可视化机器学习流水线。TFX可以在本地运行,并与TensorBoard和Jupyter notebooks集成。


《TFX: A TensorFlow-Based Production-Scale Machine Learning Platform》是谷歌一帮人在KDD 2017上发表的 Applied Data Science Paper,介绍了产品级机器学习平台TensorFlow Extended,缩写为TFX。TensorBoard可以可视化神经网络的组件、日志等,而TFX可用于可视化整个机器学习流水线,例如CSV数据读取、交叉验证等以及他们之间的依赖、流程等:


TFX官网链接:

https://www.tensorflow.org/tfx

TFX Github链接:

https://github.com/tensorflow/tfx


注意,在TFX中,流水线是有向无环图(DAG),所以在本文中经常用DAG来表示流水线。


目前TensorFlow官网给出的安装教程在Ubuntu平台,另外,虽然其默认只支持Python 2.x,但是其源码已经兼容Python 3.x:

https://github.com/tensorflow/tfx/issues/35


TFX的安装


在Python 2.7环境下执行下面命令:

pip install tensorflow==1.13.1
pip install tfx==0.12.0
git clone https://github.com/tensorflow/tfx.git

cd ~/tfx/tfx/tfx/examples/workshop/setup
./setup_demo.sh


TFX示例


启动TFX

# 打开一个终端
airflow webserver -p 8080
# 另开一个终端
airflow scheduler

# 另开一个终端
jupyter notebook


在浏览器中访问:http://127.0.0.1:8080,结果如下:


其中包含了2个示例DAG:taxi和taxi_solution,是针对芝加哥出租车数据集的两个机器学习流水线:


点击taxi_solution流水线,可以看到一个完整的工作流:


可以点击上方的Tree View切换到树视图:


点击工具栏中的Trigger DAG功能即可运行当前流水线


可以在python代码中用tfx api来定义这些流程,例如,定义一个CSV读取的流程:

from tfx.utils.dsl_utils import csv_input
from tfx.components import ExamplesGen

examples = csv_input(os.path.join(base_dir, 'no_split/span_1'))
examples_gen = ExamplesGen(input_data=examples)


定义一个验证的流程:

from tfx import components

...

validate_stats = components.ExampleValidator(
stats=compute_eval_stats.outputs.output,
schema=infer_schema.outputs.output

)


关于TFX的具体使用教程可以参考TF官网链接:

https://www.tensorflow.org/tfx/tutorials/tfx/workshop


参考链接:

  • https://www.tensorflow.org/tfx/tutorials/tfx/workshop


-END-

专 · 知

专知,专业可信的人工智能知识分发,让认知协作更快更好!欢迎登录www.zhuanzhi.ai,注册登录专知,获取更多AI知识资料!

欢迎微信扫一扫加入专知人工智能知识星球群,获取最新AI专业干货知识教程视频资料和与专家交流咨询!

请加专知小助手微信(扫一扫如下二维码添加),加入专知人工智能主题群,咨询技术商务合作~

专知《深度学习:算法到实战》课程全部完成!530+位同学在学习,现在报名,限时优惠!网易云课堂人工智能畅销榜首位!

点击“阅读原文”,了解报名专知《深度学习:算法到实战》课程

展开全文
Top
微信扫码咨询专知VIP会员