我不知道讲师在谈论哪些变量。它们是权重和偏差,还是大损失函数中的 soft-max 函数和标签?
在神经网络的情况下,损失函数取决于权重和偏差(通常不会额外提及;它们也是权重)。
损失函数本身被大量参数化。它的参数是数据(输入和标签)。它的变量(通过它计算导数)是权重。
零均值和等方差如何帮助优化?
看看 sigmoid 函数的导数。它在 0 处最大。这意味着那里的梯度可能很大。这有助于学习,因为基本的学习规则是
w←wi+Δwi with Δwi=−η∂E∂wi
因此,如果将其标准化为均值 0,则可以进行更大的调整。
关于方差的部分......嗯。这更难解释。我对此并不完全确定。一种想法是您希望数据位于非常受限的类似域(独立于应用程序)中,以便您可以独立于应用程序处理结果。此外,它可能有助于小批量变化不大。
在视频中,讲师谈到了使用高斯分布随机初始化权重,我不明白如何使用具有零均值和标准差 sigma 的高斯分布初始化权重?
我不确定这个问题到底是什么。
- 实际上:只需使用一个函数。例如,
numpy.random.normal如果您使用的是 Python。
- 数学上:这称为采样。你有一个随机分布的过程,你可以从中举出例子。
- 从技术上讲:如果你真的想自己实现这个,你很可能最终会使用一个随机数生成器,它从 [0, 1] 中的均匀分布生成样本。
获得这些样本编号后,您只需将这些编号分配给权重。
优化器将在哪里移动点(初始化权重),向上或向下移动以找到局部最小值?
优化器计算误差函数的梯度。我建议看一下 Udacity 课程的早期章节。我很确定这也被覆盖了。另一个资源是neuralnetworksanddeeplearning.com
那么你能推荐一本书让我在学习这门课程之前学习一下,这样就不会出现这样的问题吗?
Tom Mitchells 的《机器学习》一书涵盖了与课程类似的主题。