卷积神经网络中的“激活”、“激活梯度”、“权重”和“权重梯度”是什么?

use*_*888 3 neural-network deep-learning conv-neural-network

我刚刚在 CNN 上阅读斯坦福 CS231n的笔记,这里有一个现场演示的链接;但是,我不确定演示中的“激活”、“激活梯度”、“权重”和“权重梯度”指的是什么。以下屏幕截图已从演示中复制。

混淆点1

我首先对输入层的“激活”指的是什么感到困惑。根据笔记,我认为激活层是指 CNN 中的 RELU 层,它本质上告诉 CNN 应该点亮哪些神经元(使用 RELU 函数)。我不确定这与输入层有什么关系,如下所示。此外,为什么显示两个图像?第一张图像似乎显示了提供给 CNN 的图像,但我无法区分第二张图像所显示的内容。

在此处输入图片说明

混淆点2

出于与上述相同的原因,我不确定此处显示的是什么“激活”和“激活梯度”。我认为“权重”显示了卷积层中 16 个过滤器的样子,但我不确定“权重梯度”应该显示什么。

在此处输入图片说明

混淆点3

我想我理解 RELU 层中的“激活”指的是什么。在输出图像的每个值(像素)都应用了 RELU 函数之后,它会显示所有 16 个过滤器的输出图像,因此为什么 16 个图像中的每一个都包含黑色(未激活)或某种白色阴影的像素(活性)。但是,我不明白“激活梯度”指的是什么。

在此处输入图片说明

混淆点4

也不明白这里的“激活梯度”指的是什么。

在此处输入图片说明

我希望通过理解这个演示,我会更了解 CNN

Eri*_*ung 5

这个问题类似于这个问题,但不完全相同。此外,这里是带有注释的 ConvNetJS 示例代码的链接这里是完整文档的链接)。您可以查看代码本身的演示页面顶部的代码。

一种激活函数是一个函数,它在某些输入和输出基于如果达到一些“阈值”(这是特定于每个不同的激活功能)的一些值。这来自于神经元的工作方式,它们接受一些电输入,并且只有在达到某个阈值时才会激活。

混淆点1:第一组图像显示原始输入图像(左边的彩色图像),两幅图像的右边是经过激活函数后的输出。您不应该真正能够解释第二张图像,因为它正在通过网络进行非线性和感知的随机非线性变换。

混淆点2:与前一点类似,“激活”是图像像素信息传入的函数。甲梯度基本上是激活函数的斜率。它看起来更稀疏(即,颜色仅在某些地方显示),因为它显示了图像中每个节点关注的可能区域。例如,第一行的第 6 个图像在左下角有一些颜色;这可能表明激活函数发生了很大变化,以表明该领域有一些有趣的事情。这篇文章可能会澄清一些关于权重和激活函数的混淆。而这篇文章有什么的每一步都在做一些真正伟大的视觉效果。

困惑点 3:一开始这让我很困惑,因为如果你考虑一个ReLu 函数,你会发现它的斜率为 1 为正x,其他地方为0。因此,采用激活函数(在这种情况下为 ReLu)的梯度(或斜率)是没有意义的。“最大激活”和“最小激活”值对 ReLu 有意义:最小值为零,最大值是最大值。这直接来自 ReLu 的定义。为了解释梯度值,我怀疑在这些值中添加了一些高斯噪声和0.1偏置项 编辑:梯度是指如下所示的成本权重曲线的斜率。y 轴是损失值或使用x 轴上的权重值w计算出的误差。

图片来源https://i.ytimg.com/vi/b4Vyma9wPHo/maxresdefault.jpg

混淆点 4:见上文。