深度学习篇---深度学习中的范数


文章目录


前言

本文介绍了一系列范数的定义、计算、使用。比如L1\L2\L∞\Frobenius范数(矩阵L2范数),用于正则化(防止过拟合)、损失函数。


一、向量范数

1.L0范数

1.1定义

向量中非零元素的数量

1.2计算式

1.3特点

  1. 非凸计算困难(NP难问题)。
  2. 用于稀疏性约束 ,但实际常用L1范数替代

1.4应用场景

1.4.1特征选择

特征选择(稀疏特征提取)。

1.4.2压缩感知

压缩感知(信号稀疏表示)。

2.L1范数(曼哈顿范数)

2.1定义

定义:向量元素绝对值之和

2.2计算式

2.3特点

  1. 凸函数,可优化性强
  2. 诱导稀疏性:优化过程中倾向于将部分参数置零
  3. 几何解释:菱形等高线,在坐标轴处有"尖角"(稀疏性来源)。

2.4应用场景

2.4.1L1正则化

L1正则化(Lasso):用于线性回归、神经网络权重稀疏化

2.4.2鲁棒回归

鲁棒回归(如最小绝对偏差)。

3.L2范数(欧几里得范数)

3.1定义

定义:向量元素平方和的平方根。

3.2特点

  1. 严格凸,优化稳定。
  2. 抑制大参数值,防止过拟合。
  3. 几何解释:圆形等高线,各方向平滑下降。

3.3应用场景

  1. L2正则化(岭回归、权重衰减):防止模型过拟合。
  2. 损失函数(如均方误差损失)。

4.L∞范数(最大范数)

4.1定义

定义:向量元素绝对值的最大值

4.2计算式

4.3特点

  1. 关注最大幅值的元素。
  2. 对抗样本 生成中用于约束扰动大小

4.4应用场景

  1. 对抗训练(限制扰动的最大幅度)。
  2. 梯度裁剪(防止梯度爆炸)。

5.Lp范数(广义范数)

5.1定义

定义:向量元素绝对值的p次方和的1/p次幂。

5.2计算式

5.3特点

p=1时为L1范数 ,p=2时为L2范数 ,p→∞时趋近L∞范数

不同p值对应不同的稀疏性和平滑性权衡

二、矩阵范数

1. Frobenius范数(矩阵L2范数)

1.1定义

定义:矩阵元素平方和的平方根。

1.2特点

  1. 将矩阵视为向量后计算L2范数
  2. 衡量矩阵的"总能量"。

1.3应用场景

  1. 权重矩阵的正则化 (如全连接层参数约束)。
  2. 矩阵分解(如PCA、SVD)。

2. 核范数(迹范数)

2.1定义

定义:矩阵奇异值之和。

2.2计算式

2.3特点

  1. 反映矩阵的低秩性质。
  2. 用于低秩矩阵恢复

2.4应用场景

  1. 推荐系统(矩阵补全,如Netflix问题)。
  2. 鲁棒PCA(分离低秩矩阵与稀疏噪声)。

3. 谱范数(最大奇异值范数)

3.1定义

定义:矩阵的最大奇异值

3.2计算式

3.3特点

  1. 衡量矩阵对向量的最大拉伸程度
  2. Lipschitz连续性相关。

3.4应用场景

  1. 生成对抗网络(GAN):约束判别器的Lipschitz常数。
  2. 谱归一化(稳定训练过程)。

三、范数在深度学习中的核心应用

1. 正则化(防止过拟合)

1.1L1正则化

L1正则化:通过稀疏化权重减少模型复杂度(如Lasso回归)。

1.2L2正则化

L2正则化:通过限制权重幅度防止过拟合(如岭回归、神经网络权重衰减)。

2. 损失函数设计

2.1L1损失

L1损失(MAE):对异常值鲁棒,用于回归任务

2.2L2损失

L2损失(MSE):对异常值敏感,但优化更稳定

3. 权重约束与优化

3.1梯度裁剪

梯度裁剪:使用L2或L∞范数限制梯度大小,防止梯度爆炸。

3.2谱归一化

谱归一化:通过谱范数约束网络层的Lipschitz常数(如WGAN)。

4. 模型压缩与稀疏化

4.1L1正则化

L1正则化:生成稀疏权重矩阵,便于模型压缩(如剪枝)。

4.2结构化范数

结构化范数(如Group Lasso):约束特定参数组的稀疏性。

5. 对抗防御

5.1L∞范数

L∞约束:限制对抗扰动的大小(如对抗训练中的PGD攻击)。

四、不同范数的对比与选择

范数类型 稀疏性 计算复杂度 典型应用

L0 最强 NP难 理论分析,实际中少用

L1 强 低 特征选择、稀疏模型

L2 无 低 防止过拟合、稳定优化

L∞ 无 低 对抗训练、梯度裁剪

Frobenius 无 中 矩阵正则化、分解

核范数 低秩性 高 推荐系统、低秩恢复

五、总结

L1/L2范数

L1/L2范数:基础正则化工具,分别诱导稀疏性和平滑性。

矩阵范数

矩阵范数:处理高维数据、低秩建模及稳定训练。

范数选择原则

  1. 根据任务需求(稀疏性、低秩性、鲁棒性)。
  2. 考虑计算效率和优化难度
  3. 结合模型结构(如卷积层常用Frobenius范数,全连接层用L2)。

理解不同范数的特性及其几何意义 ,能够帮助设计更高效的模型架构、正则化策略和优化方法,从而提升深度学习模型的性能和泛化能力。


相关推荐
J先生x2 分钟前
【IP101】图像处理进阶:从直方图均衡化到伽马变换,全面掌握图像增强技术
图像处理·人工智能·学习·算法·计算机视觉
Narutolxy3 小时前
大模型数据分析破局之路20250512
人工智能·chatgpt·数据分析
浊酒南街3 小时前
TensorFlow中数据集的创建
人工智能·tensorflow
码上淘金3 小时前
【Python】Python常用控制结构详解:条件判断、遍历与循环控制
开发语言·python
Brilliant Nemo3 小时前
四、SpringMVC实战:构建高效表述层框架
开发语言·python
2301_787552874 小时前
console-chat-gpt开源程序是用于 AI Chat API 的 Python CLI
人工智能·python·gpt·开源·自动化
懵逼的小黑子4 小时前
Django 项目的 models 目录中,__init__.py 文件的作用
后端·python·django
layneyao4 小时前
AI与自然语言处理(NLP):从BERT到GPT的演进
人工智能·自然语言处理·bert
Y3174295 小时前
Python Day23 学习
python·学习
Ai尚研修-贾莲5 小时前
Python语言在地球科学交叉领域中的应用——从数据可视化到常见数据分析方法的使用【实例操作】
python·信息可视化·数据分析·地球科学