如何使用 Tensorflow 为鲍鱼数据集构建规范化层?

pythonserver side programmingprogrammingtensorflow

可以使用‘预处理’模块中的‘规范化’方法构建规范化层。此层是为了适应鲍鱼数据集的特征而创建的。除此之外,还添加了一个密集层来提高模型的训练能力。此层将有助于预先计算与每列相关的均值和方差。这些平均值和方差值将用于规范化数据。

阅读更多: 什么是 TensorFlow,以及 Keras 如何与 TensorFlow 配合使用来创建神经网络?

我们将使用鲍鱼数据集,其中包含一组鲍鱼测量值。鲍鱼是一种海蜗牛。目标是根据其他测量值预测年龄。

我们正在使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 有助于在浏览器上运行 Python 代码,并且不需要任何配置,并且可以免费访问 GPU(图形处理单元)。 Colaboratory 是在 Jupyter Notebook 基础上构建的。

print("A normalization layer is being built")
normalize = preprocessing.Normalization()
normalize.adapt(abalone_features)
print("A dense layer is being added")
norm_abalone_model = tf.keras.Sequential([
   normalize,
   layers.Dense(64),
   layers.Dense(1)
])

代码来源:https://www.tensorflow.org/tutorials/load_data/csv

输出

A normalization layer is being built
A dense layer is being added

解释

  • 模型的输入是标准化的。
  • 可以通过添加"experimental.preprocessing"层来实现此标准化。
  • 此层将有助于预先计算与每列相关的平均值和方差。
  • 此平均值和方差值用于标准化数据。
  • 首先,使用"Normalization.adapt"方法创建标准化层。
  • 对于预处理层,"adapt"方法仅应使用训练数据。
  • 此标准化层用于构建模型。

相关文章