两种神经网络参数初始化方法

重点介绍一下Xavier和Kaiming初始化:

Xavier

为了使得网络中信息更好的流动,每一层输出的方差应该尽量相等。

正态分布参数初始化

N ( 0 , 2 n in + n out ) \mathcal{N}\left(0, \frac{2}{n_{\text {in }}+n_{\text {out }}}\right) N(0,nin +nout 2)

均匀分布参数初始化

U ( − 6 n in + n out , 6 n in + n out ) \mathcal{U}\left(-\sqrt{\frac{6}{n_{\text {in }}+n_{\text {out }}}}, \sqrt{\frac{6}{n_{\text {in }}+n_{\text {out }}}}\right) U(−nin +nout 6 ,nin +nout 6 )

Kaiming

Xavier初始化的问题在于,它只适用于线性激活函数,但实际上,对于深层神经网络来说,线性激活函数是没有价值,神经网络需要非线性激活函数(例如ReLU)来构建复杂网络。

前向传播时每层的方差都是1
反向传播时梯度的方差都是1

正态分布参数初始化

N ( 0 , 2 n in ) \mathcal{N}\left(0, \frac{2}{n_{\text {in }}}\right) N(0,nin 2)

均匀分布参数初始化

U ( − 6 n in , 6 n in ) \mathcal{U}\left(-\sqrt{\frac{6}{n_{\text {in }}}}, \sqrt{\frac{6}{n_{\text {in }}}}\right) U(−nin 6 ,nin 6 )

n i n n_{in} nin表示每层输入的神经元数量


参考

相关推荐
A先生的AI之旅17 小时前
2026-1-30 LingBot-VA解读
人工智能·pytorch·python·深度学习·神经网络
下午写HelloWorld17 小时前
一维卷积神经网络 (1D CNN)
人工智能·神经网络·cnn
渡我白衣1 天前
【MySQL基础】(2):数据库基础概念
数据库·人工智能·深度学习·神经网络·mysql·机器学习·自然语言处理
下午写HelloWorld1 天前
生成对抗网络GAN的简要理解
人工智能·神经网络·生成对抗网络
陈天伟教授1 天前
人工智能应用-机器听觉:15. 声纹识别的应用
人工智能·神经网络·机器学习·语音识别
名为沙丁鱼的猫7291 天前
【MCP 协议层(Protocol layer)详解】:深入分析MCP Python SDK中协议层的实现机制
人工智能·深度学习·神经网络·机器学习·自然语言处理·nlp
沃达德软件2 天前
图像处理与复原技术
图像处理·人工智能·深度学习·神经网络·目标检测·计算机视觉·目标跟踪
njsgcs2 天前
dqn和cnn有什么区别 dqn怎么保存训练经验到本地
人工智能·神经网络·cnn
是小蟹呀^2 天前
卷积神经网络(CNN):卷积操作
人工智能·神经网络·cnn
葫三生2 天前
存在之思:三生原理与现象学对话可能?
数据库·人工智能·神经网络·算法·区块链