首个神经网络

在本练习中,我们将训练第一个小型神经网络。 神经网络为我们学习非线性模型提供了途径, 明确特征组合的使用。

任务 1:给定模型将两个输入特征组合为 单个神经元。此模型是否会学习任何非线性规律?运行该代码以确认 猜测。

任务 2:尝试增加隐藏层中的神经元数量,即从 尝试将激活函数从线性激活更改为非线性激活 例如 ReLU。您能否创建一个可以学习非线性的模型?它能不能根据模型估算 如何有效地对数据进行操作?

任务 3:尝试增加隐藏层中的神经元数量,即从 2 到 3,使用 ReLU 等非线性激活函数。是否可以为数据建模 ?模型质量如何随运行的不同而有所不同?

任务 4:通过添加或移除隐藏层继续进行实验 和神经元数量。还可以随意更改学习速率, 以及正则化和其他学习设置。最小 你可以使用的神经元和层的数量, 0.177 或更低?

增加模型大小是否可改善拟合或收敛速度? 这会改变它收敛到良好模型的频率吗?例如,尝试 以下架构:

  • 第一个隐藏层包含 3 个神经元。
  • 包含 3 个神经元的第二个隐藏层。
  • 第三个隐藏层,有 2 个神经元。

(答案位于练习正下方。)