向量 (Vector) 基础
向量是一个有“方向”和“大小”的对象,数学上表示为一个有序数组
基础运算
- 加法:逐元素相加:
- 数量乘(数乘向量):每个元素都乘上一个常数 :
范数 (Norm) 与归一化 (Normalization)
范数是衡量向量“大小”或“长度”的函数,不同范数有不同的“测量方式”
范数的一般形式
范数(曼哈顿距离 / 稀疏范数)
- 每一维的绝对值直接加起来
- 在几何上是“走街区”的距离(Manhattan Distance)
- 在机器学习中常用于稀疏性建模(L1正则化),例如 Lasso 回归
L2 范数(欧几里得距离 / 向量长度)
- 最自然的“直线长度”
- 是我们默认理解的向量“大小”
- 在 SVM、最小二乘回归中广泛应用(如 Ridge Regression)
范数(最大范数(Max Norm)或切比雪夫距离(Chebyshev Distance))
- 向量中最大绝对值分量
越大的 ,范数对大分量的惩罚越大(更“极端”)
定义(L2范数)向量的“长度”:
或者
单位向量(归一化)
内积运算
设 , 是它们之间的夹角。
代数定义的点积
几何定义的点积
从几何角度出发,引入单位向量
单位向量点积的几何定义是
另一方面
两边同时乘以 ,得到
- 内积(点积):两个向量的“相似度”,也是几何角度的夹角关系:
正交 (Orthogonal)
| 情况 | 结果 | 意义 |
|---|---|---|
| 夹角小于90度 | 同方向有投影 | |
| 夹角为90度 | 正交(垂直) | |
| 夹角大于90度 | 方向相反(反向) |
| 性质 | 数学表达式 | 说明 |
|---|---|---|
| 交换律 | 次序无关 | |
| 分配律 | 向量加法上的分配性 | |
| 数乘结合律 | 是标量 | |
| 正定性 | ,且 = 0 当且仅当 | 点积自己的结果永不为负 |
| 零向量判定 | 正交或有一方为零向量 | 判断垂直/线性无关 |
在SVM中用向量表示每一个样本点,而不是使用坐标系
矩阵 (matrix) 与转置 (transpose)
转置
将行换成列
| 性质 | 数学表达式 |
|---|---|
| 二次转置还原原矩阵 | |
| 加法可交换 | |
| 乘法转置时顺序会颠倒 | |
| (是常数) | 常数可提取 |
矩阵乘法:
如果 ,,则:
矩阵乘法的本质:行向量与列向量的内积组合
超平面 (Hyperplane) 基础
在 维空间中,一个超平面是一个维度为 的线性子空间,可以表示为
其中, 是法向量,决定平面的方向; 是偏置,决定平面的位置。
- 是一个 列向量,通常是 维向量,表示超平面的法向量(即垂直于超平面的方向)。
- 是一个 列向量,表示输入空间中的一个点(样本)。
- 是 的转置 (transpose),因此 是两个向量的 内积(dot product),结果是一个标量。
- 是一个 偏置项(bias),决定了超平面在空间中的平移位置。
- 所以整个表达式 的值是一个 实数。
所有在 方向上“投影相同”的点,形成一个平面。
也就是说, 表示的是一个 正交于 的面,这面上所有点的 -投影都刚好被 抵消掉,所以结果是 0。
几何解释:
- 的点在超平面的一侧;
- 的点在另一侧;
- 的点恰好在超平面上。
在SVM中超平面是用于分类的边界,SVM寻找“最大间隔的超平面”来划分两个类别。
硬间隔 SVM
标记
- 如果 ,则 被判定为正类;,则为负类。
函数间隔
几何间隔(margin)
函数间隔归一化结果就是几何间隔
找任意平面上的点
我们知道平面 上存在一些点,选一个 满足:
例如你可以从某个已知 上去找 ,或者直接作为中间变量。
点 到平面 的距离,就是从 到平面上一点 的向量 在法向量方向 上的投影长度。
因为 垂直于平面,投影就是垂直距离!
这个投影长度公式如下:
利用 将 替换:
所以代入得:
即:
硬间隔 SVM 是支持向量机的最基础形式,要求所有训练样本必须被完全线性分开。
也就是说:
- 所有点都必须被一个超平面 正确地分开;
- 并且我们希望这个超平面“离所有点尽可能远”,即最大化间隔(margin)。
线性可分的二分类问题
给定训练集:
目标:找到一个超平面
将正负样本严格分开,并最大化到两类样本的间隔。
最大间隔分类器(Hard Margin)
任意一个样本 ,几何间隔定义为:
表示第 个样本点 到分类超平面 的有符号距离(即“带方向”的几何间隔):
- → 分类正确
- → 分类错误
- → 正好落在超平面上
| 符号 | 名称 | 类型/范围 | 作用 |
|---|---|---|---|
| 几何间隔 | 实数 | 点 到超平面的带符号距离 | |
| 标签 | 表示 是正类还是负类 | ||
| 输入样本 | 向量 | 样本特征向量 | |
| 法向量/权重 | 向量 | 决定超平面的方向 | |
| 偏置 | 实数 | 控制超平面的位置 | |
| 点积/预测值 | 实数 | 决定 落在超平面的哪一侧 | |
| 向量长度 | 非负实数 | 用于归一化距离,决定几何间隔尺度 |
是否线性可分
Darren Engwirda
最优间隔分类器
小样本、非线性及高维模式识别
整个分类器的几何间隔为:
SVM的目标
也就是最大化所有样本中最小几何间隔。
最大间隔分类(max-margin classification)
原始优化问题(Primal Form)
这相当于最大化间隔的二次规划问题。
判断是否线性可分
低维 / 数据量小:直接观测
高维 / 数据量大:检查凸包(convex hull)是否相交
凸包是一个凸的闭合曲线(曲面),而且刚好包住了所有的数据。
如果数据不是线性可分的,我们就必须要采用一些特殊的方法,比如SVM的核技巧把数据转换到更高的维度上,在那个高维空间数据更可能是线性可分的(Cover定理)。
4. 线性变换与空间映射
定义:
线性变换是保持加法和数量乘法性质的变换,通常由一个矩阵来表示:
其中 是变换矩阵, 是输入向量, 是输出。
举例:
二维旋转、投影、拉伸等都是线性变换。
在SVM中:
- 把输入样本 通过变换(尤其在核SVM中)映射到高维空间以实现线性可分。
🎯 在SVM中:
SVM优化的是:
这直接影响决策边界的宽度。
6. 拉格朗日乘子法(对偶优化)
定义:
用于有约束优化问题,通过引入“乘子”把约束合入目标函数中。
一般形式:
最小化 ,满足 ,构造:
🎯 在SVM中:
SVM的优化问题:
- 主问题:求解
- 对偶问题:引入 拉格朗日乘子,最终转化为:
对偶问题更适合加核函数,因此非常关键。
7. 特征空间与升维(用于核SVM)
升维思想:
在原空间中无法线性分割的点,通过一个映射 变换到更高维空间,使其线性可分。
例如将 变为 。
✅ 核函数:
核技巧让我们可以直接计算高维内积:
常见核函数:
- 线性核
- 多项式核
- 高斯核
8. 正定矩阵与Gram矩阵(核函数的有效性依据)
Gram矩阵定义:
对于数据集 ,Gram矩阵是:
✅ 正定矩阵:
矩阵 是正定的当且仅当对任意非零向量 ,有:
🎯 在SVM中:
- 核函数有效的充要条件是其对应的 Gram 矩阵是对称正定的。
- 这保证优化问题是凸的,解是全局最优。