TensorFlow 的全新功能组件 tf.Transform是一款由谷歌开发者博客正式发布的,它允许用户在大规模数据处理框架中定义预处理流水线(preprocessing pipelines)功能相当的强大,七达网小编这里主推各位有需要的赶快下载吧!
功能特点
谷歌于 22 日通过开发者博客正式发布了一个基于 TensorFlow 的全新功能组件 —— tf.Transform。它允许用户在大规模数据处理框架中定义预处理流水线(preprocessing pipelines),同时用户还可以将这些流水线导出,并将其作为 TensorFlow 计算图(TensorFlow graph)的一部分。
用户可以通过组合 Python 函数来定义该流水线,然后在 Apache Beam 框架下通过 tf.Transform 执行。
注:Apache Beam 是一个用于大规模的、高效的、分布式的数据处理的开源框架)目前,基于 Apache Beam 框架的流水线可以在 Google Cloud Dataflow 平台上运行,并计划在未来支持更多的平台(可能包括 Apache Apex,Apache Flink 和 Apache Spark 等)。值得一提的是,通过 tf.Transform 导出的 TensorFlow 计算图还可以在模型预测阶段将这种数据预处理步骤复用(例如,通过 Tensorflow Serving 提供模型时)。
另一方面,开发者最终在产品形态运行机器学习模型时通常还会遇到“训练服务偏差”(training-serving skew),即由于服务中处理的数据与模型训练中使用的数据存在一定的差异,从而造成的预测质量下降。
面对这一问题,此次新发布的 tf.Transform 组件还能保证预处理过程的零偏差,即保证服务中的数据预处理和训练中的数据预处理执行完全相同的操作,特别是当模型训练和服务运行在不同的框架时,例如训练在 TensorFlow,服务在 Apache Beam 的情况。
除了便于数据的预处理之外,tf.Transform 还允许用户计算其数据集的统计概要(summary statistics)。对于每个机器学习项目的开发者而言,深刻理解其数据都非常重要,因为任何对底层数据做出的错误假设都可能会产生一些微妙的错误。通过更简单和高效地计算数据的统计概要,tf.Transform 可以帮助开发者更好地检查他们关于原始数据和预处理数据的假设。
最后,谷歌在博客中表示,对于 tf.Transform 的发布他们感到非常激动,他们真诚地希望 tf.Transform 可以帮助 TensorFlow 开发者们更方便地预处理数据,以及更好地理解这些数据。
∨ 展开