机器学习“降临日历”第 17 天:Excel 中的神经网络回归器

神经网络通常感觉就像黑匣子。在本文中,我们仅使用 Excel 公式从头开始构建神经网络回归器。通过明确从前向传播到反向传播的每一步,我们展示了神经网络如何学习仅用少量参数来逼近非线性函数。机器学习“降临日历”第 17 天:Excel 中的神经网络回归器一文首先出现在《走向数据科学》上。

来源:走向数据科学

通常呈现为黑框。

层、激活、梯度、反向传播……它可能会让人感到不知所措,尤其是当所有内容都隐藏在 model.fit() 后面时。

我们将使用 Excel 从头开始构建一个神经网络回归器。每个计算都将是明确的。每个中间值都是可见的。没有什么会被隐藏。

在本文结束时,您将了解神经网络如何执行回归、前向传播如何工作,以及模型如何仅使用几个参数来近似非线性函数。

在开始之前,如果你还没有读过我之前的文章,你应该先看看线性回归和逻辑回归的实现。

你会发现神经网络并不是一个新对象。它是这些模型的自然延伸。

像往常一样,我们将按照以下步骤操作:

  • 首先,我们将了解神经网络回归器模型的工作原理。对于神经网络,此步骤称为前向传播。
  • 然后我们将使用梯度下降来训练这个函数。这个过程称为反向传播。
  • 1. 前向传播

    在这一部分中,我们将定义模型,然后在 Excel 中实现它以查看预测的工作原理。

    1.1 一个简单的数据集

    我们将使用我生成的一个非常简单的数据集。它仅包含 12 个观察值和一个特征。

    正如你所看到的,目标变量与x具有非线性关系。

    对于这个数据集,我们将在隐藏层中使用两个神经元。

    1.2 神经网络结构

    我们的示例神经网络有:

  • 以特征 x 作为输入的一个输入层
  • 一个隐藏层,隐藏层中有两个神经元,这两个神经元将允许我们创建非线性关系
  • 输出层只是一个线性回归
  • 这是表示该神经网络的图表,以及必须估计的所有参数。共有7个参数。

    隐藏层:

  • a11​:从 x 到隐藏神经元 1 的权重
  • b11​:隐藏神经元 1 的偏差
  • a12​:从 x 到隐藏神经元 2 的权重