向量范数(norm)是给一个向量量“有多大”的函数:输入一串数,输出一个非负实数。就像量身高可以用厘米,也可以用英尺,向量也有多把尺子,最常用的是 L1 范数(L1 norm)和 L2 范数(L2 norm)。
设向量 x = (x1, x2, ..., xn)。L1 范数等于各分量绝对值之和;L2 范数等于各分量平方和再开根号,就是勾股定理推广到多维。拿 x = (3, -4) 举例:L1 是 3 + 4 = 7,L2 是 √(9 + 16) = 5。同一个向量,两把尺子给出不同数字,没有谁“错”,只是量的角度不同。
生活化比喻:从原点走到 (3, -4),如果只能沿街道横平竖直走,步数是 7,这就是 L1,也叫曼哈顿距离;如果能穿楼直线飞过去,距离是 5,这就是 L2,也叫欧几里得距离。L1 像按街区计费,L2 像无人机直线距离。
和相邻概念的区别:
- 范数 vs 距离:范数是“一个点到原点的长度”;两个向量的距离,通常是把它们相减再取范数,如 ||a - b||₂。
- 范数 vs 正则化(regularization):正则化是把范数当作惩罚项塞进损失函数。L1 正则化(Lasso)倾向把一些权重压到恰好为 0,得到稀疏解,可用于特征选择;L2 正则化(岭回归、权重衰减)把权重整体压小但不常为 0,训练更平滑。
- L0 常被口语化地叫“零范数”,但它不满足齐次性,严格说不是范数,只是数非零分量的个数;L∞ 范数取最大绝对值,是另一把尺子。
| 对比项 | L1 范数 | L2 范数 |
|---|---|---|
| 几何别名 | 曼哈顿距离 | 欧几里得距离 |
| 计算方式 | 绝对值相加 | 平方和开根 |
| 大分量的代价 | 线性增长 | 平方增长,惩罚更重 |
| 正则化效果 | 易产生稀疏权重 | 权重整体收缩、更平滑 |
| 对异常偏差 | 相对不敏感 | 更容易被放大 |
对从业者,做向量检索时,嵌入向量(embedding)的“相似”取决于尺子:AI 词典:余弦相似度">余弦相似度(cosine similarity)看方向,L2 距离看绝对位置,二者在向量已归一化时关系密切;具体实现以官方文档为准。做梯度裁剪(gradient clipping)、对抗扰动评估时,也要说明用的是哪个范数,否则“扰动很小”没有共同标准。对普通人,理解这两把尺子,能看懂搜索、推荐和风控系统里“相似”“异常”“惩罚”背后的取舍:它们不是自然真理,而是被选定的测量方式。
