深度学习:原理、算法与泛化策略
1 残差网络与信息传播
在带有 ReLU 激活函数的残差网络中,权重为零的层会直接让输入值无变化地通过,就好像该层不存在一样。传统网络需要学习如何传播信息,参数选择不当可能导致信息传播的灾难性失败,而残差网络默认就能进行信息传播。
残差网络常用于视觉应用中的卷积层,是一种通用工具,能让深度网络更稳健,使研究人员能更自由地尝试复杂和异构的网络设计。目前,数百层的残差网络并不罕见。
2 学习算法
2.1 随机梯度下降(SGD)
训练神经网络的目标是修改网络参数,以最小化训练集上的损失函数。原则上可以使用任何优化算法,但实际上现代神经网络几乎都使用随机梯度下降(SGD)的某种变体。
梯度下降的更新步骤为:
[w \leftarrow w - \alpha \nabla_w L(w)]
其中,(\alpha) 是学习率,(w) 代表网络的所有参数。标准梯度下降中,损失 (L) 是针对整个训练集定义的;而 SGD 中,(L) 是针对每个步骤随机选择的 (m) 个样本的小批量定义的。
在训练神经网络时,使用 SGD 有以下重要考虑:
- 小批量大小 :对于解决实际问题的大多数网络,(w) 的维度和训练集大小都很大,因此使用相对较小的小批量大小 (m) 的 SGD 更有利。随机性有助于算法逃离高维权重空间中的局部极小值,小批量大小确保每个权重更新步骤的计算成本是一个小常数,与训练集大小无关。
- 硬件并行性 :由于 SGD 小批量中每个训练样本的梯度贡献可以独立
超级会员免费看
订阅专栏 解锁全文
2861

被折叠的 条评论
为什么被折叠?



