点积与对偶性
一、点积的代数定义
两个同维向量的点积(dot product) 是对应分量相乘再相加(结果是一个数):
例:v = (2, 3),w = (4, 1)
v·w = 2×4 + 3×1 = 8 + 3 = 11
注意:点积的输入是两个向量,输出是一个标量(数)。
二、点积的几何意义:投影
点积还有一个完全等价的几何解释,用投影来理解:
其中 是两个向量之间的夹角。
直观理解:把 投影到 的方向上(或反过来),点积 = ” 的长度 × 在 方向上的投影长度”。
y
↑
│ ╱ w
│ ╱│
│ ╱ │ ← w 在 v 方向上的投影
│ ╱ │
│╱θ │
┗━━━━━━━━━━━━━━→ x
●───────► v
投影
| 夹角 θ | cos θ | v·w 的符号 | 含义 |
|---|---|---|---|
| θ < 90° | 正 | 正 | 两向量大致同向 |
| θ = 90° | 0 | 0 | 两向量垂直(正交) |
| θ > 90° | 负 | 负 | 两向量大致反向 |
重要结论:(垂直 ⟺ 点积为零)。
验证垂直:
v = (1, 0),w = (0, 1)
v·w = 1×0 + 0×1 = 0 ✓ 两轴互相垂直
三、对偶性:点积的另一面
现在揭示一个深刻的事实:点积与线性变换是同一回事。
从”数 → 向量”的线性变换
考虑一个从二维空间到数轴的线性变换 (输出是标量)。它的矩阵是 1×2 的行向量:
关键洞察:这个变换的结果,恰好等于一个向量与 的点积:
对偶性(duality)的核心:
每一个”从向量映射到数”的线性变换,都对应一个唯一的向量——这个向量就是变换矩阵的行。用这个向量做点积,就等价于做这个变换。
几何意义:任何”向量→数”的线性变换,都可以被理解为”把向量投影到某个方向再缩放”。这个方向就是那个唯一的向量所在的方向。
为什么这对点积重要
这解释了为什么点积是对称的()且可以互换投影方向——因为投影本质上是一个线性变换,而这个变换可以用一个向量编码。点积和线性变换是同一枚硬币的两面。
四、点积在机器学习中的意义
相似度度量:两个向量点积越大,表示它们”越同向”(越相似)。
| 应用 | 用法 |
|---|---|
| 余弦相似度 | ,衡量两向量方向一致性 |
| 推荐系统 | 用户向量与物品向量的点积 = 匹配度 |
| 神经网络 | 线性层 的每个输出神经元 = 输入与权重向量的点积 |
| 注意力机制 | Query 与 Key 的点积决定关注强度 |
注意力机制的例子: 正是点积——它衡量”查询”与”键”的相似度,相似度越高,注意力权重越大。这与”投影长度 = 相似度”的几何直觉完全一致。
核心结论:
- 点积:对应分量相乘相加(代数)
- 点积 = 投影长度 × 原长度(几何)
- 垂直 ⟺ 点积为 0
- 对偶性:向量→数的线性变换 = 与某个向量做点积
- 点积是机器学习的相似度基石
五、点积运算的性质
| 性质 | 公式 |
|---|---|
| 对称性 | |
| 分配律 | |
| 与数乘 | |
| 与模 |
小结
- 点积:(输出标量)
- 几何:(投影)
- 对偶性:线性泛函(向量→数)= 某个向量的点积
- 点积是相似度度量,广泛用于 ML、注意力机制
下一节:叉积,另一种向量乘法。
