我正在学习 Andrew NG 关于卷积神经网络的讲座,他提供了两个原因,说明 CNN 与非卷积网络相比具有更少的参数。他们是 :
- 参数共享
- 连接稀疏。
虽然我可以理解导致 CNN 参数较少的第一个原因。我不明白为什么连接的稀疏性,即“层中的每个输出都来自少量输入”会导致网络的参数较少。
第二个原因是不是有点多余?
有人可以解释一下吗?
我正在学习 Andrew NG 关于卷积神经网络的讲座,他提供了两个原因,说明 CNN 与非卷积网络相比具有更少的参数。他们是 :
虽然我可以理解导致 CNN 参数较少的第一个原因。我不明白为什么连接的稀疏性,即“层中的每个输出都来自少量输入”会导致网络的参数较少。
第二个原因是不是有点多余?
有人可以解释一下吗?
实际上,这些涉及 CNN 中参数的不同方面。
Andrew Ng 将这一点与简单的神经网络进行比较。
假设你有一个 10x10 的图像,
在一个密集的神经网络中,
我们将每 100 个神经元连接到下一层的 100 个神经元。(密集)
-除此之外,每个人都有不同的权重(不共享)
所以,总parm = 10K
现在,
权
重共享- 内核将为下一层中的每个像素具有相同的权重,即每张幻灯片不会有不同的 9 个权重。
稀疏性——下一层的像素没有连接到第一层的所有 100个像素,即只有一个局部组连接到下一层的一个像素。它不是每次都尝试从完整图像中获取信息。我们正在利用图像的属性,即一组附近的像素比对远处的像素进行分组具有更好的信息
所以,总参数(绝对大小、数量和内核的步幅将控制它)
使用 3x3 内核,
(3 * 3) + 每个内核 1 = 每个内核 10
即使使用 200 个内核,与 10K 相比,它也只有 2K
在卷积神经网络(CNN)的卷积层中,每个输出值依赖于少量的输入值,称为连接的稀疏性。
在神经网络使用中,“密集”连接连接所有输入。
相比之下,CNN 是“稀疏的”,因为仅连接了像素的局部“补丁”,而不是使用所有像素作为输入。