如何使用 Estimators 在 TensorFlow 中执行数据转换?


可以使用“DenseFeatures”方法对泰坦尼克号数据集执行数据转换。需要转换的列将转换为 NumPy 数组。

阅读更多: 什么是 TensorFlow 以及 Keras 如何与 TensorFlow 协作创建神经网络?

我们将使用 Keras Sequential API,它有助于构建一个顺序模型,用于处理简单的层堆栈,其中每一层都只有一个输入张量和一个输出张量。

包含至少一层卷积层的神经网络称为卷积神经网络。我们可以 使用卷积神经网络构建学习模型。

Estimator 是 TensorFlow 中对完整模型的高级表示。它旨在简化扩展和异步训练。Estimator 使用特征列来描述模型如何解释原始输入特征。Estimator 期望一个数值输入向量,特征列将帮助描述模型应该如何转换数据集中每个特征。

选择和使用正确的特征列集对于学习有效的模型至关重要。特征列可以是原始特征字典中的原始输入之一,也可以是使用针对一个或多个基础列定义的转换创建的新列。

线性估计器使用数值和分类特征。特征列适用于所有 TensorFlow 估计器。它们的目的是定义用于建模的特征。它们还具有特征工程功能,例如独热编码、归一化和分箱。

示例

print("A categorial column is transformed to an indicator column")
gender_column = feature_columns[0]
tf.keras.layers.DenseFeatures([tf.feature_column.indicator_column(gender_column)])(feature_batch).numpy()

代码来源 -https://tensorflowcn.cn/tutorials/estimator/linear

输出

A categorial column is transformed to an indicator column
array([[1., 0.],
   [0., 1.],
   [0., 1.],
   [1., 0.],
   [1., 0.],
   [1., 0.],
   [0., 1.],
   [0., 1.],
   [1., 0.],
   [1., 0.]], dtype=float32)

解释

  • DenseFeatures 接受密集张量。

  • 这样做是为了检查需要转换的分类列。

  • 在任何其他计算之前,它首先被转换为指示符列。

更新于: 2021年2月25日

88 次浏览

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告