开始使用免费开始使用

对熟悉的模型进行批归一化

还记得本章第一个练习中训练过的 digits 数据集 吗?

这是一个多类分类问题,您通过在输出层使用 softmax 和 10 个神经元来解决它。

现在,您将构建一个更深的模型,由 3 个隐藏层组成,每层 50 个神经元,并在各层之间加入批归一化。kernel_initializer 参数用于以类似的方式初始化权重。

本练习是课程的一部分

Keras 深度学习入门

查看课程

练习说明

  • tensorflow.keras 的 layers 中导入 BatchNormalization
  • 构建深层网络模型,给每个隐藏层使用 50 个神经元,并在各层之间加入批归一化。
  • 使用随机梯度下降优化器 sgd 编译模型。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import batch normalization from keras layers
from tensorflow.____.____ import ____

# Build your deep network
batchnorm_model = ____
batchnorm_model.add(Dense(____, input_shape=(64,), activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(10, activation='softmax', kernel_initializer='normal'))

# Compile your model with sgd
batchnorm_model.compile(optimizer=____, loss='categorical_crossentropy', metrics=['accuracy'])
编辑并运行代码