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

十种处理权重矩阵的方法及数学公式

1. 权重归一化(Weight Normalization)

  • 目的:通过分离权重向量的范数和方向来加速训练。
  • 公式:对于权重向量 w \mathbf{w} w,归一化后的权重 w ′ \mathbf{w}' w 为:

w ′ = w ∥ w ∥ \mathbf{w}' = \frac{\mathbf{w}}{\|\mathbf{w}\|} w=ww

其中 ∥ w ∥ \|\mathbf{w}\| w w \mathbf{w} w 的欧几里得范数。

2. 谱归一化(Spectral Normalization)

  • 目的:通过控制权重矩阵的谱范数,稳定生成对抗网络(GANs)的训练。
  • 公式:对于权重矩阵 W W W,谱归一化后的矩阵 W ′ W' W 为:

W ′ = W σ ( W ) W' = \frac{W}{\sigma(W)} W=σ(W)W

其中 σ ( W ) \sigma(W) σ(W) W W W 的谱范数,即最大奇异值。

3. 权重衰减(Weight Decay)

  • 目的:通过正则化防止过拟合。
  • 公式:权重更新时加入正则化项:

w ← w − η ( ∂ L ∂ w + λ w ) \mathbf{w} \leftarrow \mathbf{w} - \eta \left( \frac{\partial L}{\partial \mathbf{w}} + \lambda \mathbf{w} \right) wwη(wL+λw)

其中 η \eta η 是学习率, L L L 是损失函数, λ \lambda λ 是正则化参数。

4. 权重剪裁(Weight Clipping)

  • 目的:限制权重范围以稳定训练。
  • 公式:对于权重 w w w,剪裁后的权重 w ′ w' w 为:

w ′ = { c if  w > c − c if  w < − c w otherwise w' = \begin{cases} c & \text{if } w > c \\ -c & \text{if } w < -c \\ w & \text{otherwise} \end{cases} w= ccwif w>cif w<cotherwise

其中 c c c 是预定义阈值。

5. 权重共享(Weight Sharing)

  • 目的:减少参数数量,提高泛化能力,常用于卷积神经网络(CNNs)。
  • 公式:在CNN中,同一卷积核的权重在输入上共享,具体实现依赖卷积操作。

6. 权重初始化(Weight Initialization)

  • 目的:合理初始化权重以加速训练并避免梯度问题。
  • 公式
    • Xavier初始化

W ∼ N ( 0 , 2 n in + n out ) W \sim \mathcal{N}\left(0, \frac{2}{n_{\text{in}} + n_{\text{out}}}\right) WN(0,nin+nout2)

  • He初始化

W ∼ N ( 0 , 2 n in ) W \sim \mathcal{N}\left(0, \frac{2}{n_{\text{in}}}\right) WN(0,nin2)

其中 $n_{\text{in}}$ 和 $n_{\text{out}}$ 分别是输入和输出单元数。

7. 批归一化(Batch Normalization)

  • 目的:归一化层的输入以加速训练并提高稳定性。
  • 公式:对于小批量 B = { x 1 , … , x m } \mathcal{B} = \{x_1, \ldots, x_m\} B={x1,,xm},输出为:

x ^ i = x i − μ B σ B 2 + ϵ \hat{x}_i = \frac{x_i - \mu_{\mathcal{B}}}{\sqrt{\sigma_{\mathcal{B}}^2 + \epsilon}} x^i=σB2+ϵ xiμB

其中 μ B \mu_{\mathcal{B}} μB σ B 2 \sigma_{\mathcal{B}}^2 σB2 是小批量的均值和方差, ϵ \epsilon ϵ 避免除零。

8. 层归一化(Layer Normalization)

  • 目的:对每个样本的特征归一化,适用于RNNs等。
  • 公式:对于特征向量 x \mathbf{x} x,输出为:

x ^ = x − μ σ 2 + ϵ \hat{\mathbf{x}} = \frac{\mathbf{x} - \mu}{\sqrt{\sigma^2 + \epsilon}} x^=σ2+ϵ xμ

其中 μ \mu μ σ 2 \sigma^2 σ2 x \mathbf{x} x 的均值和方差。

9. 权重量化(Weight Quantization)

  • 目的:将权重转为低精度表示以减少模型大小和加速推理。
  • 公式:简单量化方法为:

w q = round ( w − w min w max − w min × ( 2 b − 1 ) ) × w max − w min 2 b − 1 + w min w_q = \text{round}\left(\frac{w - w_{\text{min}}}{w_{\text{max}} - w_{\text{min}}} \times (2^b - 1)\right) \times \frac{w_{\text{max}} - w_{\text{min}}}{2^b - 1} + w_{\text{min}} wq=round(wmaxwminwwmin×(2b1))×2b1wmaxwmin+wmin

其中 b b b 是位数, w min w_{\text{min}} wmin w max w_{\text{max}} wmax 是权重范围。

10. 稀疏化(Sparsification)

  • 目的:将部分权重设为零以减少参数量。
  • 公式:使用阈值 τ \tau τ

w ′ = { w if  ∣ w ∣ ≥ τ 0 otherwise w' = \begin{cases} w & \text{if } |w| \geq \tau \\ 0 & \text{otherwise} \end{cases} w={w0if wτotherwise

这些方法在深度学习中应用广泛,选择时需考虑模型架构、数据特性和资源限制。

相关文章:

  • python-leetcode 49.二叉树中的最大路径和
  • 【ES6】ES6中的类
  • 侯捷C++课程学习笔记:构造函数那些事儿(四)
  • 微信h5环境使用开放标签(wx-open-launch-weapp)打开三方小程序
  • 【商城实战(25)】解锁UniApp移动端适配秘籍,打造完美商城体验
  • 第一章:Tailwind CSS基础与项目设置 - 第一节:Tailwind CSS入门 - 核心理念与工作流
  • BGP 规划问题、路由黑洞与环路
  • 面试之《前端常见的设计模式》
  • Quantum Computing:量子计算如何改变世界
  • 行为模式---策略模式
  • C++多线程编程 3.互斥量、互斥锁
  • 百某田网任务脚本
  • c语言经典案例题
  • Insar结合ISCE2,某一个文件进行并行-stackSentinel.py
  • 【Maven教程与实战案例】
  • 霍夫变换法是基于传统视觉特征的道路车道线检测算法中的一种经典方法
  • 【反无人机目标检测】DRBD-YOLOv8
  • 解决用拼音录入汉字时导致的应用退出floating point invalid operation at 0x6b873ec3
  • 【使用 Python 结合 ADB 监控进程状态】
  • C# JObject 快速定位节点值
  • 朝鲜称将在各领域采取反制措施,应对美国敌对挑衅
  • 国家统计局公布2024年城镇单位就业人员年平均工资情况
  • 烤肉店从泔水桶内捞出肉串再烤?西安未央区市监局:停业整顿
  • 上海率先推进生物制品分段生产试点,这款国产1类创新药获批上市
  • 证监会:2024年依法从严查办证券期货违法案件739件,作出处罚决定592件、同比增10%
  • 鸿海下调全年营收展望:AI服务器业务强劲,预计今年营收增超50%