news 2026/4/19 4:32:32

AI 术语通俗词典:范数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI 术语通俗词典:范数

范数是数学、线性代数、数据分析、机器学习和人工智能中非常常见的一个术语。它用来描述一个向量、矩阵或更一般的数据对象“有多大”。不过,这里的“大小”并不一定只是日常意义上的长度,而是一种按照特定规则定义出来的数值度量。

如果说向量回答的是“一个对象在多个维度上的数值表示”,那么范数回答的就是“这个向量整体有多大”。因此,范数常被用来衡量向量长度、矩阵大小、误差强弱、参数规模以及模型复杂度,在人工智能中非常重要。

一、基本概念:什么是范数

范数(Norm)可以理解为一种“大小度量规则”。它把一个向量、矩阵或其他对象映射为一个非负数,用来表示这个对象整体上的大小。

在初学阶段,最常见的是向量范数(Vector Norm)。

例如,一个 n 维向量可写为:

范数的作用,就是根据向量中这些分量的数值,计算出一个整体“长度”或“规模”的结果。

最常见的范数之一是 L2 范数(L2 Norm),也常被称为欧几里得范数(Euclidean Norm)。其公式可写为:

其中:

• xᵢ 表示向量在第 i 个维度上的分量

• n 表示向量的维度个数

• ‖x‖₂ 表示向量 x 的 L2 范数

这个公式的含义并不复杂:先把每个分量平方,再求和,最后开平方。它得到的结果,本质上就是这个向量在几何空间中的“长度”。

例如,若:

那么它的 L2 范数为:

这与勾股定理的结果是一致的。

除了 L2 范数,还有两个非常常见的范数:L1 范数和 L∞ 范数。

L1 范数的公式可写为:

它表示把各个分量的绝对值直接相加。

从通俗角度看,L1 范数可以理解为:不考虑方向,只把每个维度上的“用量”加总起来。

L∞ 范数(无穷范数)的公式可写为:

它表示取所有分量绝对值中的最大值。

从通俗角度看,L∞ 范数可以理解为:只看各个维度中“最大的一项”有多大。

因此,不同范数实际上是在回答不同的问题:

• L1 范数回答“总量有多大”

• L2 范数回答“整体长度有多大”

• L∞ 范数回答“最大分量有多大”

这说明,范数并不是唯一的一种“大小”,而是一类不同的度量方式。

从通俗角度看,范数可以理解为:把一个由多个数字组成的对象,按照某种规则压缩成一个表示“整体大小”的数。

二、范数的重要性与常见应用场景

1、范数的重要性

范数之所以重要,是因为在人工智能和数据分析中,我们经常不仅要看“每个分量是多少”,还要看“整体规模有多大”。

首先,范数可以帮助我们把多维数据的“整体大小”表达出来。

例如,一个向量有很多分量,如果只看每个分量,很难快速判断它整体是大还是小;而范数可以把这些分散的信息汇总为一个数。

其次,范数是很多距离、误差和相似度概念的基础。

例如,欧氏距离(Euclidean Distance)本质上就与 L2 范数密切相关。两个向量之差的 L2 范数,就可以表示它们之间的欧氏距离。

再次,范数在机器学习中常用于控制模型复杂度。

在模型训练中,参数过大可能带来过拟合(Overfitting)风险,因此常通过范数来约束参数规模。正则化(Regularization)中的 L1 正则化和 L2 正则化,就直接建立在范数基础之上。

2、常见应用场景

(1)在向量分析中,范数常用于表示向量长度

在几何和线性代数中,向量的“长度”通常就是用范数来描述的。

特别是 L2 范数,它最接近日常直觉中的“长度”概念。

(2)在距离计算中,范数常用于定义样本之间的差异

若两个向量分别是 x 和 y,那么它们的差向量 x - y 的范数,就可以用来衡量二者差异有多大。

例如,欧氏距离本质上就是:

(3)在机器学习中,范数常用于正则化

在模型训练中,人们常通过对参数向量的范数加约束,来防止模型参数过大。

例如:

• L1 正则化与 L1 范数有关

• L2 正则化与 L2 范数有关

这使范数在特征选择、模型压缩和泛化能力控制中都很重要。

(4)在误差分析中,范数可用于衡量整体误差大小

如果一个模型在多个样本上都存在误差,那么这些误差可以组成一个误差向量。这时,我们可以通过范数来衡量整体误差强弱,而不只是看某一个样本的误差。

(5)在矩阵和张量计算中,也可以用范数衡量整体规模

范数不仅适用于向量,也适用于矩阵。

例如,一个矩阵中的元素很多,我们也常希望用一个数来表示这个矩阵“整体有多大”,这时就会用到矩阵范数(Matrix Norm)。

可以概括地说:

• 向量说明“由哪些分量组成”

• 范数说明“这个对象整体有多大”

三、使用范数时需要注意的问题

范数虽然非常常用,但在理解和使用时也要注意几个问题。

1、不同范数衡量的“大小”并不完全相同

L1、L2、L∞ 等范数都会给出一个非负数,但它们强调的对象特征不同。

因此,不能简单地把所有范数看成同一种“长度”,而应结合具体问题理解它们各自的含义。

2、范数结果依赖于数据尺度

如果向量中的数值整体变大,那么范数通常也会变大。

因此,在比较不同对象的范数时,要注意这些对象是否处在相近的尺度上。在实际任务中,这常常涉及归一化(Normalization)或标准化(Standardization)问题。

3、范数大不一定表示“更差”,小也不一定表示“更好”

范数只是一个大小度量,其意义取决于具体场景。

例如,在误差分析中,范数大通常表示误差较大;但在某些信号表示或能量分析中,范数大可能只是表示信号更强,并不一定是坏事。

4、矩阵范数与向量范数不要混淆

虽然都叫“范数”,但矩阵范数和向量范数的定义并不完全相同。

初学阶段通常先掌握向量范数,再逐步扩展到矩阵范数会更稳妥。

5、范数是“度量规则”,不是单独的一种固定公式

很多初学者一看到“范数”就默认是 L2 范数。实际上,L2 范数只是最常见的一种。

在不同任务中,人们完全可能选择不同的范数,因此理解“范数”时,最好同时意识到它是一个更一般的概念。

四、Python 示例

下面给出两个简单示例,用来说明范数的基本计算过程,以及不同范数如何从不同角度描述向量大小。

示例 1:计算一个向量的 L1 范数与 L2 范数

import math # 一个向量x = [3, 4] # 计算 L1 范数l1_norm = 0for value in x: l1_norm += abs(value) # 计算 L2 范数l2_sum = 0for value in x: l2_sum += value ** 2l2_norm = math.sqrt(l2_sum) print("向量 x:", x)print("L1 范数:", l1_norm)print("L2 范数:", l2_norm)

这个例子展示了两种最常见的向量范数。对于向量 [3, 4]:

• L1 范数是 |3| + |4| = 7

• L2 范数是 sqrt(3² + 4²) = 5

这说明,同一个向量在不同范数下,得到的“大小”结果可以不同。

示例 2:计算一个向量的 L∞ 范数

# 一个向量x = [3, -4, 2, 1] # 计算 L∞ 范数linf_norm = max(abs(value) for value in x) print("向量 x:", x)print("L∞ 范数:", linf_norm)

这个例子展示了无穷范数的计算方式。对于向量 [3, -4, 2, 1],L∞ 范数就是各分量绝对值中的最大者,因此结果为 4。

这个结果说明:如果我们只关心“最大的那一项有多大”,那么 L∞ 范数就是很自然的选择。

📘 小结

范数是一种把向量、矩阵等对象的整体大小压缩为单个数值的度量规则。在人工智能中,范数常用于表示长度、定义距离、衡量误差以及控制模型参数规模。不同范数强调的“大小”含义并不完全相同。对初学者而言,可以把它理解为:向量告诉我们“有哪些分量”,而范数告诉我们“这些分量整体上有多大”。

“点赞有美意,赞赏是鼓励”

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/19 4:32:28

019、前沿技术展望:端到端、大模型与代码基 TTS 的未来

上周调试一个老项目,客户要求把 TTS 从云端迁移到嵌入式板子上。我对着那套五年前的拼接式合成引擎,改了三天 prosody 预测模块,结果生成的“明天”两个字还是像机器人卡了痰。就在那一刻,我意识到——我们还在用乐高积木拼声音,而隔壁实验室的端到端模型已经能唱 RAP 了。…

作者头像 李华
网站建设 2026/4/19 4:30:27

电磁兼容测试与合规性设计实战指南

1. 如何打造高效的合规测试体系作为一名在电磁兼容(EMMC)测试领域工作多年的工程师,我见过太多团队在合规测试环节栽跟头。最令人痛心的是,这些失败往往源于前期准备不足。合规测试不是产品开发的最后一道关卡,而是应该贯穿整个设计周期的质量…

作者头像 李华
网站建设 2026/4/19 4:30:23

终极指南:如何在Windows上让Apple触控板获得原生级体验

终极指南:如何在Windows上让Apple触控板获得原生级体验 【免费下载链接】mac-precision-touchpad Windows Precision Touchpad Driver Implementation for Apple MacBook / Magic Trackpad 项目地址: https://gitcode.com/gh_mirrors/ma/mac-precision-touchpad …

作者头像 李华
网站建设 2026/4/19 4:27:37

基于安卓的课堂互动与学情分析系统毕设

博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在设计并实现一种基于安卓平台的课堂互动与学情分析系统,以解决传统课堂教学中师生互动不足、学生学习状态难以量化评估以及教学反馈滞后等问…

作者头像 李华
网站建设 2026/4/19 4:26:00

忽然想到了初恋,该怎么联系?体面不唐突,温柔不尴尬

长大后的某个瞬间,一首歌、一条老街、一阵晚风,都会忽然想起初恋。心里轻轻一动,想知道 TA 现在过得好不好,想发一句问候,却又不敢轻易点开对话框。怕唐突了对方,怕打扰现在的生活,怕显得自作多…

作者头像 李华
网站建设 2026/4/19 4:23:59

U8g2库的三种绘图模式怎么选?从内存占用和刷新速度帮你做决定

U8g2库三种绘图模式实战选型指南:从内存消耗到刷新速率的深度权衡 在嵌入式开发中,选择合适的显示驱动模式往往被忽视,却直接影响项目的稳定性和用户体验。U8g2库作为Arduino生态中最受欢迎的显示驱动库之一,提供了三种截然不同的…

作者头像 李华