线性代数—向量与矩阵的范数(Norm)

news2025/7/18 22:59:32

参考链接:

范数(Norm)——定义、原理、分类、作用与应用 - 知乎

带你秒懂向量与矩阵的范数(Norm)_矩阵norm-CSDN博客

什么是范数(norm)?以及L1,L2范数的简单介绍_l1 norm-CSDN博客

 范数(Norm)是线性代数中的一个基本概念,用来度量一个向量的“长度”或“大小”

(简单来说,范数告诉我们一个向量离原点有多远。)

  • 向量范数 表征 向量空间中向量的大小,
  • 矩阵范数 表征 矩阵引起变化的大小。 

在机器学习中,范数常用于:

  • 衡量预测误差(损失函数)
  • 控制模型参数(正则化)
  • 比较向量之间的相似度(归一化)

不同范数对应不同的学习目标:

  • L1 控稀疏;
  • L2 控幅度;
  • L∞ 控最大值。

引入范数的原因 

我们都知道,函数与几何图形往往是有对应的关系,这个很好想象,特别是在三维以下的空间内,函数是几何图像的数学概括,而几何图像是函数的高度形象化。
但当函数与几何超出三维空间时,就难以获得较好的想象,于是就有了映射的概念,进而引入范数的概念。

当有了范数的概念,就可以引出两个向量的距离的定义,这个向量可以是任意维数的。

通过距离的定义,进而我们可以讨论逼近程度,从而讨论收敛性、求极限。

  • 范数在计算机领域多用于:迭代过程中收敛性质的判断
    • 一般迭代前后步骤的差值的范数表示其大小常用的是二范数差值越小表示越逼近实际值,可以认为达到要求的精度,收敛。

总的来说,范数存在的意义是为了实现比较距离

比如,在一维实数集合中,我们随便取两个点4和9,我们知道9比4大。

但是到了二维实数空间中,取两个点(1,0)和(3,4),这个时候就没法比较它们之间的大小,因为它们不是可以比较的实数。

于是引入范数这个概念,把(1,0)和(3,4)通过范数分别映射到实数1 和 5 (两个点分别到原点的距离),这样我们就比较这两个点了。

所以可以看到,范数其实是一个函数,它把不能比较的向量转换成可以比较的实数

数学原理

向量的范数

在数学上,对于向量范数的定义,就是只要满足以下三条性质的函数,我们就可以称为它为范数。

(条件1的 \leftrightarrow 的意思就是当且仅当的意思)
所以,范数的是一个宽泛的概念,有很多种,但是一般只会用到常用的范数。

线性代数中最有用的一些运算符是范数(norm)。 非正式地说,向量的范数是表示一个向量有多大。 这里考虑的大小(size)概念不涉及维度,而是分量的大小。

在线性代数中,向量范数是将向量映射到标量的函数 f 。 给定任意向量x,向量范数要满足一些属性。

性质3&4即正定,性质1即齐次,性质2即三角不等性。

向量的 L0范数

意义:非0元素个数

在这里插入图片描述

评价:L0范数表示向量中非零元素的个数。

L0范数的这个属性,使其非常适用于机器学习中的稀疏编码。

在特征选择中,通过最小化L0范数来寻找最少最优的稀疏特征项。

但是,L0范数的最小化问题是NP难问题。而L1范数是L0范数的最优凸近似,它比L0范数要更容易求解。

因此,优化过程将会被转换为更高维的范数(例如L1范数)问题。

向量的 L1范数 (曼哈顿范数、、最小绝对误差)

意义:各个元素的绝对值之和(向量x中非零元素的绝对值之和)

几何意义:实际走的 “横+竖” 的 “城市街道” 距离。

在这里插入图片描述

使用 L1范数可以度量两个向量间的差异,如绝对误差和(Sum of Absolute Difference)

在这里插入图片描述

由于L1范数的天然性质,对L1优化的解是一个稀疏解,

因此L1范数也做 “Lasso regularization”(稀疏规则算子)

通过L1可以实现特征的稀疏,去掉一些没有信息的特征,例如在对用户的电影爱好做分类的时候,用户有100个特征,可能只有十几个特征是对分类有用的,大部分特征如身高体重等可能都是无用的,利用L1范数就可以过滤掉。

向量的 L2范数 (欧几里得范数)

意义:每个元素平方和再平方根

在这里插入图片描述 即 

像L1范数一样,L2也可以度量两个向量间的差异,如平方差和(Sum of Squared Difference):

在这里插入图片描述

评价:L2范数是最常用的范数,比如用的最多的度量距离欧氏距离就是一种L2范数

在回归里面,有人把加了L2范数项的回归c称为“岭回归”(Ridge Regression),有人也叫它“权值衰减(weight decay)”。

它被广泛的应用在解决机器学习里面的过拟合问题:

  • 通常被用来做优化目标函数的正则化项,防止模型为了迎合训练集而过于复杂造成过拟合的情况,从而提高模型的泛化能力

为什么L2范数可以防止过拟合?回答这个问题之前,我们得先看看L2范数实际上是什么。
L2范数是指向量各元素的平方和然后求平方根。我们让L2范数的规则项最小,可以使得的每个元素都很小,都接近于0L1范数会让它等于0,L2范数是接近于0),这是有很大的区别的。而越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象。

为什么越小的参数说明模型越简单?

因为当限制了参数很小,实际上就限制了多项式某些分量的影响很小,即 相当于减少参数个数。

向量的 Lp范数 (一般形式)

意义:每个元素p次方和再p次方根

  • L0、L1、L2 都是Lp范数的特例,分别对应P=0、1、2的情况;
  • 可调节p控制范数行为(越大越趋近于L∞,即最大范数)

 即 

向量的 ∞范数 (最大范数)

意义:向量的 Lp范数的 p取无限大,即为向量的无穷范数,主要被用来度量向量元素的最大值

  • 取向量中最大绝对值作为长度。
  • 有时用于鲁棒性分析。

PS

L2范数其实就是向量的标准内积,向量的长度一定是范数,长度是范数的充分条件,但不是必要条件,也就是说,范数不一定就是向量的长度。由

长度定义的性质可知,满足长度的定义要符合平行四边形。

举一个反例就可以证明非必要性:向量L1范数不满足平行四边形法则(A=(0,1)、B=(1,0))。
由内积决定的长度具有更丰富的几何结构。

总结

简单总结一下就是:

  • L1范数: 为x向量各个元素绝对值之和,也叫“稀疏规则算”(Lasso regularization)。
    • 比如 向量A=[1,-1,3], 那么A的L1范数为 |1|+|-1|+|3|.
  • L2范数: 为x向量各个元素平方和的1/2次方(即 元素平方和的开根号)
    • L2范数又称Euclidean范数或者Frobenius范数
  • Lp范数: 为x向量各个元素绝对值p次方和的1/p次方

使用机器学习方法解决实际问题时,通常用L1或L2范数做正则化(regularization),从而限制权值大小,减少过拟合风险。特别是在使用梯度下降来做目标函数优化时。


 

L1正则化产生稀疏的权值,L2正则化产生平滑的权值为什么会这样?
在支持向量机学习过程中,L1范数实际是一种对于成本函数求解最优的过程,因此,L1范数正则化通过向成本函数中添加L1范数,使得学习得到的结果满足稀疏化,从而方便提取特征。

  • L1范数可以使权值稀疏,方便特征提取。
  • L2范数可以防止过拟合,提升模型的泛化能力。

L1和L2正则先验分别服从什么分布

  • L1是拉普拉斯分布。
  • L2是高斯分布。

矩阵的范数

跟向量的范数定义类似,只不过矩阵的范数的性质比向量的范数性质多了一条相容性。
我们直接引出矩阵的范数定义:

矩阵范数的第三条性质也称为加法相容性,第四条是乘法相容性,前提都是矩阵之间可以进行加法或乘法的运算。

矩阵的 1-范数(列模)

意义:矩阵的 列向量的和 的最大值,即 A的每列元素绝对值之和 的最大值,也称为A的列范数

矩阵的 2-范数(谱模)

意义:A^TA 矩阵的最大特征值的开平方,也称谱范数

  • 特征值相当于是两个维度的压缩,相当于是从矩阵的维度里面找到最大的。

矩阵的 ∞范数(行模)

意义:矩阵的 行向量的和 的最大值,即 A的每行元素绝对值之和 的最大值,也称为A的行范数

矩阵的 F-范数

意义:Frobenius范数,即矩阵元素绝对值的平方和再开平方。类似于向量的L2范数。

 即 

也可以描述为:

总结

简单总结一下就是:

  • L1范数: 列范数,矩阵的 列向量的和 的最大值,即 A的每列元素绝对值之和 的最大值。
  • L2范数: A^TA 矩阵的最大特征值的开平方,也称谱范数
    • 特征值相当于是两个维度的压缩,相当于是从矩阵的维度里面找到最大的。
  • L∞范数: 行范数,矩阵的 行向量的和 的最大值,即 A的每行元素绝对值之和 的最大值。
  • Lf范数: Frobenius范数,类似于向量的L2范数,矩阵元素平方和再开平方。

范数的作用

作用领域用途说明
向量距离度量两个点或向量之间的“距离”用于损失函数、相似度计算
模型正则化控制模型复杂度,防止过拟合通过惩罚大参数避免学习噪声
向量归一化把向量缩放到单位长度常用于余弦相似度比较
稀疏表示用最少的非零值表达信息L1 正则可自动“筛选特征”

在机器学习中的实际应用

✅ 1. 损失函数中的误差度量

类型范数说明
MAE(平均绝对误差)L1鲁棒,对异常值不敏感
MSE(均方误差)L2常用,惩罚大误差更重

✅ 2. 模型正则化(Regularization)

类型正则项功能
L1 正则(Lasso)(\lambda \sum\theta_i
L2 正则(Ridge)λ∑θi2\lambda \sum \theta_i^2缓和过拟合,不会让参数变0,但压小

✅ 3. 向量归一化(Normalization)

✅ 4. 稀疏建模(Sparse Modeling)

  • 在某些应用中,希望模型只依赖少数几个特征(稀疏性):
    • 如文本分类、基因数据分析;

使用 L1 正则可以“自动让不重要的参数变成 0”;

  • L1 是稀疏性建模的核心工具。

面试范数相关常见提问汇总 + 答题思路

✅ 一、基础概念类问题(定义 + 原理)

❓Q1:解释一下什么是范数吗?

答题思路:

范数是一种用来衡量向量“大小”或“长度”的函数,它在机器学习中用于表示误差、距离、向量归一化或正则化。常见的范数有 L1 范数、L2 范数等,分别对应不同的应用需求。

❓Q2:L1 范数和 L2 范数的区别是什么?你更偏向哪一个?

答题思路:

  • L1 范数是所有元素的绝对值之和,鼓励模型稀疏;
  • L2 范数是所有元素平方和的平方根,鼓励整体平滑;
  • 如果任务要求模型可解释性强、特征选择重要,我会选择 L1;
  • 如果任务对稳定性更敏感,比如图像处理,我倾向 L2。

✅ 二、应用场景类问题(结合模型/正则)

❓Q3:在损失函数中为什么有时使用 L1 有时使用 L2?

答题思路:

  • L1(如 MAE)更稳健,适合对异常值敏感的任务;
  • L2(如 MSE)更常见,对大误差惩罚更重;
  • 如果数据中有 outlier,建议使用 L1;
  • 如果更关注整体误差稳定性,可以使用 L2。

❓Q4:正则化中 L1 和 L2 分别起什么作用?

答题思路:

  • L1 正则通过绝对值惩罚,会使某些参数收缩为 0,实现特征选择;
  • L2 正则通过平方惩罚,防止参数过大,减少过拟合;
  • L1 更适合用于高维稀疏建模(如文本分类),L2 更适合神经网络等连续模型。

✅ 三、原理理解类问题(深入推导)

❓Q5:为什么 L2 正则不产生稀疏性,但 L1 会?

答题思路:

  • 从几何角度讲,L1 范数的等值线是菱形,容易与损失函数的最优点交于坐标轴;
  • 而 L2 范数的等值线是圆形,更倾向于“均匀缩小所有参数”而不是让某些为 0;
  • 所以 L1 更容易“压掉”不重要的特征,让参数变为0。

❓Q6:你知道范数与梯度下降优化的关系吗?

答题思路:

  • 在添加正则化的损失函数中,比如 L2,会影响梯度更新方向;
  • L2 会加上 λθ\lambda \theta 项,等于对参数有一个“缩小”的趋势;
  • L1 的梯度是非连续的(不可导点),所以常用次梯度或特殊优化方法处理。

✅ 四、项目/实践类问题(结合实际应用)

❓Q7:在项目中有没有用到范数?怎么选的 L1 / L2?

答题思路(举例):

  • “在我做房价预测项目中,我使用了 L1 正则化进行特征选择,发现有多个冗余特征被自动归零,提升了模型解释性。”
  • “而在另一个图像复原项目中,我使用了 L2 损失函数和 L2 正则,因为目标是尽可能还原每个像素值,不允许过大偏差。”

❓Q8:若模型过拟合了,会怎么用范数应对?

答题思路:

  • 我会通过添加正则化项(L1/L2)来约束模型参数的规模;
  • 如果模型很复杂,特征维度很高,我会尝试 L1 来让模型自动做特征选择;
  • 如果我关注模型的稳定性和泛化性能,我会使用 L2 控制参数幅度。

✅ 五、开放性问题(考察综合素质)

❓Q9:如果我说 L2 正则是控制模型复杂度的“软剪枝”,你怎么理解?

答题思路:

  • 软剪枝指的是“不强制为0,而是控制其变小”;
  • L2 不会像 L1 一样使参数归零,但会持续压缩大的权重;
  • 这有助于模型在保持全部特征的情况下减少过拟合。

快速知识卡片(可打印记忆)

L1 范数L2 范数
公式(\sumx_i
名称曼哈顿距离欧几里得距离
特点稀疏、鲁棒平滑、常用
正则化应用Lasso(特征选择)Ridge(稳定优化)
适用场景高维稀疏建模连续模型控制复杂度
损失函数MAEMSE
面试关键词特征选择、正则稀疏性权重控制、余弦相似度归一化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2355829.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【业务领域】电脑主板芯片电路结构

前言 由前几期视频合集(零基础自学计算机故障排除—7天了解计算机开机过程),讲解了POST的主板软启动过程;有不少网友留言、私信来问各种不开机的故障,但大多网友没能能过我们的这合集视频,很好的理清思路,那这样的情况…

pandas读取Excel数据(.xlsx和.xls)到treeview

对于.xls文件,xlrd可能更合适,但需要注意新版本的xlrd可能不支持xlsx,不过用户可能同时需要处理两种格式,所以可能需要结合openpyxl和xlrd?或者直接用pandas,因为它内部会处理这些依赖。 然后,…

JVM——垃圾收集策略

GC的基本问题 什么是GC? GC 是 garbage collection 的缩写,意思是垃圾回收——把内存(特别是堆内存)中不再使用的空间释放掉;清理不再使用的对象。 为什么要GC? 堆内存是各个线程共享的空间&#xff0c…

马克·雷伯特:用算法让机器人飞奔的人

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 马克雷伯特:用算法让机器人飞奔的人 一、天才的起点 在机器人领域,有一个名字如雷贯耳——马克雷伯特(Marc Raibert)。作为波士顿动力公司(Boston…

信创系统资产清单采集脚本:主机名+IP+MAC 一键生成 CSV

原文链接:信创系统资产清单采集脚本:主机名IPMAC 一键生成 CSV Hello,大家好啊!今天给大家带来一篇在信创终端操作系统上自动批量采集主机名、IP 和 MAC 并导出为 CSV 表格的实战文章!本方案使用 sshpass 和 Bash 脚本…

SpringBoot获取用户信息常见问题(密码屏蔽、驼峰命名和下划线命名的自动转换)

文章目录 一、不返回password字段二、返回的createTime和updateTime为空原因解决:开启驼峰命名和下划线命名的自动转换 设置返回的日期格式 一、不返回password字段 在字段上面添加JsonIgnore注解即可 JsonIgnore // 在把对象序列化成json字符串时,忽略…

Mac下安装Python3,并配置环境变量设置为默认

下载Python 访问Python官方网站 https://www.python.org/ 首先获得python3安装路径 执行命令: which python3 以我这台电脑为例,路径为:/Library/Frameworks/Python.framework/Versions/3.9/bin/python3 编辑 bash_profile 文件 然后用 vim 打…

Linux-04-用户管理命令

一、useradd添加新用户: 基本语法: useradd 用户名:添加新用户 useradd -g 组名 用户:添加新用户到某个组二、passwd设置用户密码: 基本语法: passwd 用户名:设置用户名密码 三、id查看用户是否存在: 基本语法: id 用户名 四、su切换用户: 基本语法: su 用户名称:切换用…

【进阶】--函数栈帧的创建和销毁详解

目录 一.函数栈帧的概念 二.理解函数栈帧能让我们解决什么问题 三.相关寄存器和汇编指令知识点补充 四.函数栈帧的创建和销毁 4.1.调用堆栈 4.2.函数栈帧的创建 4.3 函数栈帧的销毁 一.函数栈帧的概念 --在C语言中,函数栈帧是指在函数调用过程中,…

【一】 基本概念与应用领域【数字图像处理】

考纲 文章目录 1 概念2005甄题【名词解释】2008、2012甄题【名词解释】可考题【简答题】可考题【简答题】 2 应用领域【了解】2.1 伽马射线成像【核医学影像】☆2.2 X射线成像2.3 紫外波段成像2.4 可见光和红外波段成像2.5 微波波段成像2.6 无线电波段成像2.7 电子显微镜成像2…

NU1680低成本、无固件、高集成度无线充电电源接收器

无线充电 电子产品具有无线充电功能使用会更便利,介绍一款低成本、无固件、高集成度无线充电电源接收器NU1680 原理图和BOM可点绑定资源下载,LC部分电容建议X7R。 Load空载切满载测试 (CC Mode) – 尽量保证电子负载没有过冲 – 电子负载不要从0到满…

2025MathorCup数学应用挑战赛B题

目录 模型建立与求解 1.问题一的模型建立与求解 1.1 搬迁补偿模型设计 1.2 住户是否搬迁的应对策略与分析 1.3 定量讨论 2.问题二的模型建立与求解 2.1 搬迁方案模型的优化介绍 2.2 模型的评估 2.3 模型结果 3.问题三的模型建立与求解 3.1 拐点存在性分析模型的建立 3.2 模型的…

组件的基本知识

组件 组件的基本知识 组件概念组成步骤好处全局注册生命周期scoped原理 父子通信步骤子传父 概念 就是将要复用的标签,抽离放在一个独立的vue文件中,以供主vue文件使用 组成 三部分构成 template:HTML 结构 script: JS 逻辑 style: CSS 样…

Origin绘图操作:图中迷你图绘制

一、背景描述 Origin绘图时,局部数据变化较小,在整体图片中表现为局部曲线重叠在一起,图中y1和y2在x0-2时重叠在一起,需要将局部放大,绘制迷你图 二、实现方法 1.在左边工具栏选择放大镜,按住ctrl在图中…

数据升降级:医疗数据的“时空穿梭“系统工程(分析与架构篇)

一、核心挑战与量化分析 1. 版本演化困境的深度解析 (1) 格式断层的结构化危机 数据转换黑洞:某医疗信息平台(2021-2023)统计显示: 数据类型CDA R1→R2转换失败率R2→FHIR转换失败率关键失败点诊断记录28.4%19.7%ICD编码版本冲突(18.7%)用药记录15.2%12.3%剂量单位标准化…

【GESP】C++三级练习 luogu-B2089 数组逆序重存放

GESP三级练习,一维数组练习(C三级大纲中5号知识点,一维数组),难度★☆☆☆☆。 题目题解详见:https://www.coderli.com/gesp-3-luogu-b2089/ 【GESP】C三级练习 luogu-B2089 数组逆序重存放 | OneCoderGE…

Copilot 上线深度推理智能体 Researcher

近日,微软推出两款首创的工作场景推理智能体:Researcher(研究员)和Analyst(分析师)。它们能以安全合规的方式访问您的工作数据(包括邮件、会议、文件、聊天记录等)及互联网信息&…

日常开发小Tips:后端返回带颜色的字段给前端

一般来说,展示给用户的字体格式,都是由前端控制,展现给用户; 但是当要表示某些字段的数据为异常数据,或者将一些关键信息以不同颜色的形式呈现给用户时,而前端又不好判断,那么就可以由后端来控…

如何在WordPress网站中设置双重验证,提升安全性

随着互联网的不断进步,网站的安全问题越来越受到重视。尤其对于WordPress这样常用的建站平台,安全性显得尤为重要。尽管WordPress自带一定的安全性,但仅依靠用户名和密码的登录方式仍然存在风险。因此,启用“双重验证”便成为了提…

Python 虚拟环境管理:venv 与 conda 的选择与配置

文章目录 前言一、虚拟环境的核心价值1.1 依赖冲突的典型场景1.2 隔离机制实现原理 二、venv 与 conda 的架构对比2.1 工具定位差异2.2 性能基准测试(以创建环境 安装 numpy 为例) 三、venv 的配置与最佳实践3.1 基础工作流3.2 多版本 Python 管理 四、…