机器学习数学基础 120 章

坐标、距离、直线、平面与超平面

层级:A|必学

1. 从数据表到几何空间

一个有 dd 个数值特征的样本可以看成 dd 维空间中的点。线性分类器寻找把类别分开的超平面,k 近邻寻找附近的点,聚类寻找紧密的点群,PCA 寻找数据延展最大的方向。几何不是额外的比喻,而是这些算法的直接数学结构。

2. 一维、二维与三维坐标

数轴上的点由一个数 xx 表示。平面上的点用有序对 (x1,x2)(x_1,x_2) 表示,空间中的点用 (x1,x2,x3)(x_1,x_2,x_3) 表示。推广到 dd 维:

x=(x1,x2,,xd)TRd.\boldsymbol x=(x_1,x_2,\ldots,x_d)^{\mathsf T}\in\mathbb R^d.

例如样本的两个特征是身高与体重,(175,70)(175,70) 是平面上的一个点。但两个坐标的单位和尺度不同,直接计算距离可能让数值范围大的特征支配结果,因此常需要标准化。

3. 两点之间的 Euclidean 距离

二维勾股定理给出

d(x,y)=(x1y1)2+(x2y2)2.d(\boldsymbol x,\boldsymbol y) =\sqrt{(x_1-y_1)^2+(x_2-y_2)^2}.

dd 维推广为

xy2=j=1d(xjyj)2.\|\boldsymbol x-\boldsymbol y\|_2 =\sqrt{\sum_{j=1}^{d}(x_j-y_j)^2}.

例如 x=(1,2)\boldsymbol x=(1,2)y=(4,6)\boldsymbol y=(4,6),距离为 32+42=5\sqrt{3^2+4^2}=5

Euclidean 距离不是唯一选择。Manhattan 距离把绝对差相加,Mahalanobis 距离还考虑尺度与特征相关性。范数与距离章节会系统讨论。

4. 直线的多种表示

斜截式

y=kx+b.y=kx+b.

kk 是斜率,bb 是与纵轴交点。竖直线无法用有限斜率表示,因此这种形式不够统一。

一般式

w1x1+w2x2+b=0.w_1x_1+w_2x_2+b=0.

写成向量形式:

wTx+b=0.\boldsymbol w^{\mathsf T}\boldsymbol x+b=0.

w=(w1,w2)T\boldsymbol w=(w_1,w_2)^{\mathsf T} 垂直于直线,称为法向量。若 v\boldsymbol v 是沿直线的方向,则 wTv=0\boldsymbol w^{\mathsf T}\boldsymbol v=0

参数式

给定直线上一点 x0\boldsymbol x_0 和方向 v\boldsymbol v

x=x0+tv,tR.\boldsymbol x=\boldsymbol x_0+t\boldsymbol v, \qquad t\in\mathbb R.

它表达“从起点沿某个方向移动任意距离”。

5. 平面与超平面

三维平面写成

w1x1+w2x2+w3x3+b=0.w_1x_1+w_2x_2+w_3x_3+b=0.

dd 维中,

H={xRd:wTx+b=0}H=\{\boldsymbol x\in\mathbb R^d: \boldsymbol w^{\mathsf T}\boldsymbol x+b=0\}

称为超平面,其中 w0\boldsymbol w\ne\boldsymbol0。它通常是 d1d-1 维:二维空间里的超平面是直线,三维空间里是普通平面。

超平面把空间分为两侧:

wTx+b>0,wTx+b<0.\boldsymbol w^{\mathsf T}\boldsymbol x+b>0, \qquad \boldsymbol w^{\mathsf T}\boldsymbol x+b<0.

线性分类器据此预测正类或负类。

6. 点到超平面的有符号距离

对超平面 wTx+b=0\boldsymbol w^{\mathsf T}\boldsymbol x+b=0,点 x0\boldsymbol x_0 的有符号距离为

wTx0+bw2.\frac{\boldsymbol w^{\mathsf T}\boldsymbol x_0+b}{\|\boldsymbol w\|_2}.

普通距离取绝对值:

wTx0+bw2.\frac{|\boldsymbol w^{\mathsf T}\boldsymbol x_0+b|}{\|\boldsymbol w\|_2}.

为什么要除以 w\|\boldsymbol w\|?因为 (w,b)(\boldsymbol w,b)(cw,cb)(c\boldsymbol w,cb)c0c\ne0)描述同一个超平面,但未归一化的打分会放大 c|c| 倍。除以法向量长度后才得到与表示尺度无关的真实几何距离。

7. 决策边界与打分函数

线性分类器常用

f(x)=wTx+b.f(\boldsymbol x)=\boldsymbol w^{\mathsf T}\boldsymbol x+b.
  • f(x)=0f(\boldsymbol x)=0:点在边界上;
  • f(x)>0f(\boldsymbol x)>0:在法向量指向的一侧;
  • f(x)<0f(\boldsymbol x)<0:在另一侧;
  • f(x)/w|f(\boldsymbol x)|/\|\boldsymbol w\|:到边界的几何距离。

f(x)f(\boldsymbol x) 本身通常不是概率。逻辑回归再用 Sigmoid 把它映射为概率;SVM 则利用带符号间隔训练分类边界。

8. 圆、球与邻域

二维中,中心 c\boldsymbol c、半径 rr 的圆周满足

xc2=r,\|\boldsymbol x-\boldsymbol c\|_2=r,

圆盘满足 r\le r。高维推广称为球面与球。k 近邻、核方法和局部密度估计都在研究某种距离下的邻域。

不同范数产生不同形状的“球”:二维 L2 球是圆,L1 球是菱形,L∞ 球是正方形。正则化解的几何差异由这些形状产生。

9. 维度与“看不见的空间”

高维空间不能直接画出来,但代数规则没有改变。应坚持两个习惯:

  1. 标注对象的维度与形状;
  2. 用二维或三维特例建立几何直觉,再用公式推广。

高维还有反直觉现象:距离可能趋于集中,数据空间变得极其稀疏,局部邻域需要更多样本。这是“维数灾难”的一部分。

10. 特征缩放如何改变几何

假设两个特征是年收入(数十万)与年龄(几十)。未经缩放的 Euclidean 距离几乎完全由收入决定。标准化

zj=xjμjσjz_j=\frac{x_j-\mu_j}{\sigma_j}

把每个特征转成以标准差为单位的相对偏离。它会改变点之间的几何关系,因此预处理不是无关紧要的清洗步骤,而是模型假设的一部分。

易错点

  1. 点与向量常用同一坐标表示,但概念角色不同:点是位置,向量是位移;在 Euclidean 空间可方便地互相表示。
  2. w\boldsymbol w 是超平面的法向量,不是沿平面的方向。
  3. wTx+b\boldsymbol w^{\mathsf T}\boldsymbol x+b 是打分,不经归一化不是几何距离。
  4. 维度数与样本数不同;nn 个样本、dd 个特征通常形成 n×dn\times d 矩阵。
  5. 类别型特征的整数编码通常没有自然 Euclidean 几何。

常见问答

Q1:为什么线性模型叫“线性”,明明有偏置 bb

严格说 wTx+b\boldsymbol w^{\mathsf T}\boldsymbol x+b 是仿射函数;机器学习惯例仍称线性模型。把输入添加一个恒为 1 的坐标后,可把偏置并入扩展权重。

Q2:高维超平面真的存在吗?

存在,定义完全由线性方程给出。不能可视化不等于不能计算;点到超平面的距离、投影和两侧判断都能直接运算。

Q3:特征缩放对树模型也重要吗?

普通决策树按单特征阈值切分,通常对单调缩放不敏感;但距离模型、SVM、线性模型正则化和梯度优化往往明显受影响。

练习

  1. 求点 (1,2)(1,2)(4,6)(4,6) 的 Euclidean 距离和 Manhattan 距离。
  2. 直线 2x1x2+3=02x_1-x_2+3=0 的一个法向量是什么?点 (0,3)(0,3) 是否在直线上?
  3. 判断点 (2,0)(2,0) 位于该直线的哪一侧。
  4. 求点 (2,0)(2,0) 到该直线的距离。
  5. x2=2x1+1x_2=2x_1+1 写成 wTx+b=0\boldsymbol w^{\mathsf T}\boldsymbol x+b=0
  6. 解释为什么把 w,b\boldsymbol w,b 同时乘 10 不改变决策边界。

答案与提示

  1. 5577
  2. (2,1)T(2,-1)^{\mathsf T};代入得 00,在直线上。
  3. 打分 2×20+3=7>02\times2-0+3=7>0,在正侧。
  4. 7/57/\sqrt5
  5. 2x1x2+1=02x_1-x_2+1=0
  6. 方程两边整体乘非零常数不改变零点集合,符号在乘正数时也不变。