参数初始化的方式

随机初始化

使用随机数生成器(如高斯分布或均匀分布)为参数赋初始值。常见方法包括:

  • Xavier初始化:适用于Sigmoid或Tanh激活函数,权重从均值为0、方差为\\frac{1}{n_{\\text{in}}}的高斯分布中采样,其中n_{\\text{in}}为输入维度。
  • He初始化:适用于ReLU激活函数,权重从均值为0、方差为\\frac{2}{n_{\\text{in}}}的高斯分布中采样。

预训练初始化

利用预训练模型(如BERT、ResNet)的权重作为初始值,适用于迁移学习场景。需注意调整输出层结构以匹配目标任务。

零初始化

将所有权重初始化为0,适用于偏置项(bias)。但全零初始化可能导致神经元对称性问题,通常需结合其他方法使用。

常量初始化

将参数设置为固定常量(如全1初始化),常用于特定场景(如门控机制的初始偏置)。需谨慎使用以避免梯度消失或爆炸。

正交初始化

通过奇异值分解(SVD)生成正交矩阵作为初始权重,能缓解深度网络中的梯度消失问题。适用于RNN或Transformer等结构。

代码示例(PyTorch):

python 复制代码
# Xavier初始化  
torch.nn.init.xavier_normal_(layer.weight)  

# He初始化  
torch.nn.init.kaiming_normal_(layer.weight, mode='fan_in', nonlinearity='relu')  

# 正交初始化  
torch.nn.init.orthogonal_(layer.weight)  
相关推荐
AI街潜水的八角5 小时前
PyTorch框架——基于深度学习PmrNet神经网络AI去噪图像增强系统(含训练代码、创新对比、数据集和GUI交互界面)
人工智能·pytorch·深度学习
MediaTea5 小时前
DL:循环神经网络的基本原理与 PyTorch 实现
人工智能·pytorch·rnn·深度学习·神经网络
udc小白5 小时前
Excel实现LSTM示例
人工智能·深度学习·神经网络·机器学习·excel·lstm
皮肤科大白6 小时前
PanDerm多模态皮肤科基础模型的核心创新与应用价值
人工智能·深度学习·机器学习
Black蜡笔小新7 小时前
企业级AI模型工作站DLTM深度学习推理工作站助力制造业迈入智能质检新时代
人工智能·深度学习
Yunzenn7 小时前
深度解析字节前沿研究-Cola DLM第 04 章:Cola DLM 架构全景 —— 三层解耦的设计哲学
java·linux·python·深度学习·面试·github·transformer
冬奇Lab7 小时前
每日一个开源项目 #110:ai-engineering-from-scratch - 从零构建 AI 工程全栈能力
人工智能·深度学习·llm
ujainu7 小时前
CANN pto-isa:Transformer 推理编译链路:从 PyTorch 到昇腾 NPU 执行
pytorch·深度学习·transformer·ascend
一切皆是因缘际会7 小时前
AI 从 “模仿智能” 到 “重构世界” 的范式跃迁
大数据·人工智能·深度学习·重构·架构
生成论实验室7 小时前
Token即事件:Transformer为何是“事件-关系网络”的最佳实现——兼论大语言模型如何从“概率鹦鹉”进化为“认知主体”
人工智能·深度学习·语言模型·agi·安全架构