当前位置: 首页 > news >正文

数据预处理与权重初始化

数据预处理(data preprocessing)

在将数据输入到神经网络前, 我们希望先进行一些预处理,使其更适合高效训练。

标准化

简单的数据预处理就是让数据以 0 为中心(zero-centered)或标准化。
下面这张图片中,坐标轴为数据的两个特征(如RGB图像的两个颜色通道),每个点代表一个样本。原始数据可能会很分散,且里中心较远,我们需要将它们减去均值并除以标准差。这样做可以使数据有正有负,不至于全是正的或者负的。
img

去相关(decorrelation)和白化(whitening)

非图像数据多使用去相关和白化。
去相关:计算整个训练集的协方差矩阵,然后使用该矩阵的特征值分解来旋转数据,使得不同特征之间不再相关。
白化(也叫球化):在去相关的基础上,进一步修正。
数学层面理解参考这篇文章
img

为什么要预处理数据

  • 减轻对权重的敏感程度
  • 使权重矩阵易于被优化
    img

权重初始化(weight initialization)

在训练神经网络时,权重的初始化对最终的训练效果有很大影响。好的初始化方法可以加快收敛速度,避免梯度消失或爆炸问题。

零初始化

$W = 0, b = 0$如何?很糟糕。如果我们用的激活函数是ReLU, 那么输出就全是 $0$ 了,梯度也为 $0$,神经网络的训练会完全停滞。把初始权重全部设置为 $0$ 或某个常数会导致缺少某种对称性破缺(symmetry breaking),使神经网络失去了“提取不同特征”的能力。

高斯分布的小随机数初始化

w=alpha*np.random.randn(Din, Dout)
这种策略对于浅层网络比较有效,但对于深层网络来说,随着层数的增加,信号会逐渐变小或变大,导致梯度消失或爆炸。
img

img

Xavier初始化(Glorot初始化)

W = np.random.randn(Din, Dout) / np.sqrt(Din)
将标准差设置为层输入维度的平方根之一。
核心思想是让每一层的输出方差等于输入方差
Gemini给出的类比:

想象你在玩传话游戏(深层神经网络):

  • 如果声音太小(权重初始化过小):传了几个人后,声音就听不见了(信号趋近于 0,梯度消失)。
  • 如果声音太大(权重初始化过大):传了几个人后,声音震耳欲聋甚至失真(信号趋近于无穷大或饱和,梯度爆炸)。

推导

假设某一层的输入 $x$ 和权重 $W$ 独立同分布,且均值为 $0$,方差分别为 $\mathrm{Var}(x)$ 和 $\mathrm{Var}(W)$。该层的输出 $y$ 为:
$$y = W x$$
输出的方差为:
$$\mathrm{Var}(y) = \mathrm{Var}(W x) = \mathrm{Var}(W) \cdot \mathrm{Var}(x) \cdot n$$
其中 $n$ 是输入的维度。为了保持方差不变,我们希望 $\mathrm{Var}(y) = \mathrm{Var}(x)$,因此需要满足:
$$\mathrm{Var}(W) \cdot n = 1 \implies \mathrm{Var}(W) = \frac{1}{n}$$
img

这样做很适合tanh激活函数。
img
但是对于ReLU激活函数来说,Xavier初始化仍然会导致信号逐渐变小,因为ReLU会将一半的输入置零。
img
怎么办?只需把标准差设置为$\frac{2}{\sqrt{n}}$即可。这种方法叫做Kaiming Initialization。结果如下。
img
但是!!!Kaiming Initialization不适合Residual Networks,因为ResNet中有跳跃连接,一定会有$Var(F(x)+x) > Var(x)$。
因此我们需要将第一个卷积层做 MSRA, 而将第二个卷积层置为 0。
img

正则化

实际训练中我们需要一些正则化策略来防止过拟合。训练时我们会以某种方式注入一些噪声,干扰神经网络的训练,从而提升模型的泛化能力,在测试时则去除或者平均掉这些噪声。

L2 正则化

L2 正则化(也称为权重衰减)通过在损失函数中添加权重的平方和来惩罚过大的权重,从而防止过拟合。
$$Loss = Loss_{data} + \lambda \sum{W^2}$$
其中,$\lambda$ 是正则化强度的超参数。

Dropout

在前向传播时,以一定概率 $p$ 随机“丢弃”神经元(将其输出设为零),从而防止神经元之间的过度依赖。
img
Dropout让神经网络具有一定的鲁棒性,因为它迫使网络在每次训练时都依赖不同的子网络,从而减少过拟合的风险。
img

在测试时,为了让 Dropout 有一定稳定性,我们引入了随机掩码。

img

一般用于大型网络最后几层的全连接层中。但是后来一些网络(GoogleNet, ResNet)使用了全局平均池化, 就不用 Dropout 了

批量归一化(Batch Normalization)

批量归一化通过对每个小批量的数据进行归一化处理,使其均值为0,方差为1,从而加快训练速度并提高模型的稳定性。

数据增强(Data Augmentation)

图像反转, 图像裁剪, 图像旋转, 颜色抖动等都是引入随机性、扩充数据集的数据增强方法。
img

其他的如DropConnect, Stochastic Depth等就不展开了。

Reference

  • EECS498
  • 去相关与白化(decorrelation and whitening)
http://www.jsqmd.com/news/345756/

相关文章:

  • 2026年江苏有实力的全彩电子纸,电子纸屏幕厂家采购推荐指南 - 品牌鉴赏师
  • 【软考】系统分析师-论文范文(一)
  • 2026年未来之家五金店性价比怎么样,细聊可信度与客户认可度 - 工业推荐榜
  • 美国移民机构推荐观察:什么样的机构,才真正适合 2026 年的申请人?
  • 纺织车间温湿度数据采集远程监控系统方案
  • 探讨铁道来车警示系统个性化定制,宁波恒博通讯怎么样 - 工业设备
  • 2026年V型法兰球阀供应商性价比排名,选哪家不再纠结 - mypinpai
  • 深入解析:Milvus:Schema详解(四)
  • 大模型岗位薪资破40万!蚂蚁华为等企业案例+全套104G学习资源包免费领
  • 细聊强力去屑洗发水品牌,黛熙梦在国内口碑如何 - 工业品网
  • 2026年碳材料石墨化炉品牌Top10,专业评测选好炉 - myqiye
  • 基于SpringBoot的高校固定资产管理系统毕设源码
  • 2026年研发能力强的超声波布料切割机厂家推荐 - 工业品牌热点
  • Gensors压力扫描阀:现代工业测试的核心设备
  • Go接口设计与依赖注入实战
  • Redis未授权访问漏洞vulhub靶场搭建及复现
  • 完整教程:深入探讨HarmonyOS中ListItem的滑动操作实现与优化
  • CISP认证全解析:PTECISECISODSG四大方向怎么选?网安小白必看!
  • 小白也能懂:AI、大数据与大模型的区别与应用场景
  • 剖析初高中学技术的学校校企合作情况,沈阳新东方技工学校品牌值得关注 - 工业品牌热点
  • 学习率、超参数、模型集成和迁移学习
  • 厦大的大模型团队最新报告:大模型概念、技术与应用实践(附140页PPT下载)
  • 告别低效繁琐!降AI率网站 千笔·专业降AIGC智能体 VS speedai
  • SpringBoot4.0新特性-Null-safety消灭空指针
  • 分析恒博通讯设备公司 旗下产品价格贵不贵 - 工业品网
  • 还不知道怎么学大模型?别再闷头瞎学了,看我五分钟,顶你两小时(附教程)
  • 从LLM到运筹优化:四大AI模型分类与应用场景全解析
  • 计算机毕业设计之springboot大学生综测可视化系统
  • 开题报告 springboot和vue-基于SSH框架的寄卖管理系统的设计与实现
  • 2026年热门的吊牌灯箱,停车场吊牌灯箱,商场吊牌灯箱厂家用户好评榜单 - 品牌鉴赏师