1

如果我的方法正确,我想就如何使用 TFX 获得一些意见。我的最终目标是对需要一些预处理的原始系列数据流进行一些预测。

通常我们有运行基本分析的 flink 作业,例如窗口化、分组和计算统计。然而,当时的想法是将这些管道移到梁上,并让 TFX 使用这些梁组件进行进一步的计算。

这被证明是相当具有挑战性的,因为 TFX 组件具有严格的 API,并且期望所有中间数据都是 TFRecords。

所以我的问题是,TFX 的目标是处理所有预处理逻辑(分组、窗口化......等)还是更多用于数据工程?

4

1 回答 1

0

TFX 旨在处理所有预处理逻辑。TensorFlow Transform 的内置功能可以满足您的要求。其中一些如下所示:

tft.bucketize, tft.compute_and_apply_vocabulary, tft.pca, tft.scale_to_z_score, etc..

是的,TFX 组件(尤其是 TF 变换)期望所有中间数据都是TF.Example格式化的。并且有一些简单的方法可以将我们的数据集转换为该格式。

将 CSV 数据转换为的代码TF.Example如下所示:

from tfx.utils.dsl_utils import csv_input
from tfx.components.example_gen.csv_example_gen.component import CsvExampleGen

examples = csv_input(os.path.join(base_dir, 'data/simple'))
example_gen = CsvExampleGen(input_base=examples)

TF Transform 可以接受的其他转换数据的方法是:

converter = tft.coders.CsvCoder(ordered_columns, RAW_DATA_METADATA.schema)

有关更多信息,请参阅链接,

https://www.tensorflow.org/tfx/guide/examplegen

https://www.tensorflow.org/tfx/tutorials/transform/census#transform_the_data

于 2019-06-24T07:03:15.057 回答