对于深度神经网络,为了使得训练过程更少遇到极小点,应该采用何种权重初始化策略?

在深度神经网络中,权重初始化策略的核心目标是打破对称性、维持信号(前向传播)和梯度(反向传播)的稳定方差,从而避免训练陷入不良的局部极小点(更常见的是鞍点)并加速收敛。以下是为减少陷入不良极小点/鞍点风险而推荐的关键策略:

核心策略:使用基于方差的初始化

  1. Xavier/Glorot 初始化 (适用于 Sigmoid/Tanh 等饱和激活函数)

原理:保持各层激活值(前向传播)和梯度(反向传播)的方差大致相同。

公式:

均匀分布:W ~ Uniform(-√(6/(fan_in + fan_out)), √(6/(fan_in + fan_out)))

正态分布:W ~ Normal(0, √(2/(fan_in + fan_out)))

适用场景:线性激活、Sigmoid、Tanh 等。

  1. He/Kaiming 初始化 (适用于 ReLU 及其变体等非饱和激活函数)

原理:修正 ReLU 的"一半神经元输出为0"的特性,专门保持前向传播中激活值的方差稳定(尤其针对 ReLU 家族)。

公式:

正态分布:W ~ Normal(0, √(2 / fan_in))

均匀分布:W ~ Uniform(-√(6 / fan_in), √(6 / fan_in))

变种:

fan_in 模式(默认):保证前向传播方差稳定(推荐)。

fan_out模式:保证反向传播梯度方差稳定。

适用场景:ReLU、Leaky ReLU、PReLU、ELU 等。

为什么这些策略能减少陷入不良极小点/鞍点的风险?

  1. 打破对称性:

所有初始化方法都使用随机分布(而非全零初始化),确保不同神经元学习不同特征,这是训练成功的先决条件。

  1. 控制梯度方差:

不良初始化(如值过大)→ 梯度爆炸 → 优化不稳定,难以收敛到良好区域。

不良初始化(如值过小)→ 梯度消失 → 梯度趋近于0 → 优化停滞在平坦区域(鞍点或劣质极小点)。

Xavier/He 初始化通过数学推导确保各层梯度的方差可控,显著降低梯度消失/爆炸的概率。

  1. 保持激活值分布合理:

避免激活值过早进入饱和区(如 Sigmoid 两端),导致梯度接近于0("死神经元"),使优化陷入停滞。

其他增强策略

  1. 针对特定激活函数的初始化:

Leaky ReLU/PReLU:使用 He 初始化,并在公式中考虑负斜率(如 √(2 / (1 + a²)) / √fan_in,`a` 为负斜率)。

SELU:需要配合 LeCun 初始化(W ~ Normal(0, √(1 / fan_in)))和 α-dropout 才能保证自归一化。

  1. 正交初始化 (Orthogonal Initialization):

生成正交矩阵 (W^T W = I)。

优势:理论上能保持梯度范数,缓解梯度消失/爆炸。

适用场景:RNN、LSTM 等序列模型效果显著。

  1. 稀疏初始化 (Sparse Initialization):

将大部分权重初始化为0,小部分随机初始化(打破对称性)。

目的:模拟生物神经网络的稀疏性,可能带来正则化效果。

实践:通常不如 Xavier/He 高效。

应避免的初始化方法

  1. 全零初始化:

导致所有神经元学习相同的特征 → 网络退化,完全失去表达能力。

  1. 过大/过小的常数初始化:

过大 → 梯度爆炸、激活值饱和。

过小 → 梯度消失、激活信号过弱。

  1. 普通正态/均匀分布(未校准方差):

如 Normal(0, 1) 或 Uniform(-1, 1),方差未与 `fan_in`/`fan_out` 关联 → 极易梯度消失/爆炸。

实践建议:

  1. 默认首选 He 初始化(尤其对 CNN 和 MLP),因其对 ReLU 的普适性。

  2. 使用深度学习框架提供的初始化函数(如 PyTorch 的 `kaiming_normal_()`、TensorFlow 的 `glorot_uniform_`)。

  3. 结合 Batch Normalization 可降低对初始化的敏感度,但二者协同使用效果更佳(BN 不能完全替代良好初始化)。

良好的初始化本质是为优化算法(如 SGD、Adam)提供一个梯度稳定、方向多样的起点,极大降低了陷入平坦区域(鞍点或劣质极小点)的概率,使网络能高效收敛到更优解。

相关推荐
元岳数字人小元26 分钟前
AI 数字人开发公司浅谈 虚拟数字人打造景区新服务
人工智能·人机交互·交互
哦哦~92129 分钟前
AI赋能生物医学:从临床数据到药物分子性质预测实战培
人工智能·生物医学·药物分子
GIS数据转换器32 分钟前
城市排水生命线安全运行监测平台深度解析
java·运维·人工智能·python·安全·数据挖掘·无人机
虫无涯35 分钟前
本地离线大模型实战:Ollama + Llama 3.1 8B 全流程部署(适配VSCode Continue代码助手)
人工智能
Rocky Ding*1 小时前
Latent Consistency Models:一篇读懂扩散模型的少步生成核心基础知识
人工智能·深度学习·机器学习·ai作画·stable diffusion·aigc·ai-native
大山佬1 小时前
AI 边缘部署:MCU 上的轻量级目标检测,从 YOLO 到 TFLite Micro 的全链路优化
人工智能
数睿数据无代码开发1 小时前
深度解析smardaten数据大屏:六大核心功能重塑可视化开发
人工智能·信息可视化
陈猪的杰咪1 小时前
GitHub Copilot 2026计费新规:AI Credits消耗解析与节省策略
人工智能·ai·架构·github·copilot
学术头条1 小时前
清华团队开源SCAIL-2:角色动画告别骨骼依赖,端到端还原视频中动作细节
人工智能·科技·机器学习·ai·开源·音视频·agi
لا معنى له1 小时前
世界模型的功能分类法——Renderers, Simulators, Planners, and the Loop That Connects Them
人工智能