大纲
Quadratic Hypotheses
线性模型虽然简单, dVC 很小, Ein≈Eout ,但是对于某些线性不可分的数据,会导致 Ein 太大,那这样的分类器效果也不是很好。我们如何打破线性模型的限制呢?
Circular Separable
虽然上面的数据点线性不可分,但是他可以用一个圆圈分开,我们从这里得到启发,是否我们可以设计Circular-PLA,Circular-Regression算法来进行分类
Circular Separable and Linear Separable
这种 xn⇒zn 的转换可以看成是x空间的点映射到z空间中去,而在z域中,可以用一条直线进行分类,也就是从x空间的圆形可分映射到z空间的线性可分。z域中的直线对应于x域中的圆形。因此,我们把 xn⇒zn 这个过程称之为特征转换(Feature Transform)。通过这种特征转换,可以将非线性模型转换为另一个域中的线性模型。
已知x域中圆形可分在z域中是线性可分的,那么反过来,如果在z域中线性可分,是否在x域中一定是圆形可分的呢?答案是否定的。由于权重向量w取值不同,x域中的hypothesis可能是圆形、椭圆、双曲线等等多种情况。
General Quadratic Hypothesis Set
对于更加一般的二次假设,还应该包括一次项和常数项
这样子
Z
空间中一条直线,可以包括
Nonlinear Transform
Good Quadratic Hypothesis
如果我们的目标是学习一个好的二次假设,那么我们可以把目标转化为在 Z 域中寻找一个好的分类直线
The Nonlinear Transform Steps
我们可以分为以下几步做
- 把原始数据从
X 空间通过一个函数 ϕ(x) 转化到 Z 空间,即{(xn,yn)}⇒{(zn,yn)} - 通过一个好的线性分类算法
A
,学习好的参数
w̃ - 返回 g(x)=sign(w̃ Tϕ(x))
总结一下,非线性模型 = 非线性变换 + 线性模型
Price of Nonlinear Transform
虽然非线性变换,看起来很强大。好像很强大,让我们来分析非线性变换的代价
Computation/Storage Price
对于Q阶多项式,我们需要的时间复杂度和空间复杂度都是 O(Qd) ,很难去计算和存储
Model Complexity Price
- d̃ +1=O(Qd)
- 自由变量的数量 = d̃ +1≈dVC(HϕQ)
- dVC(HϕQ)≤d̃ +1
所以 Q 越大,
dVC 越大Generalization Issue
我们又回到机器学习最本质的两个问题的权衡了,所以选择一个合适的 Q 很重要
Structured Hypothesis Sets
Structured Hypothesis Sets
- 高阶次的假设包含低阶次的假设
- 高阶次的假设的VC维不小于低阶次的VC维
- 高阶次假设的训练误差不大于低阶次假设的训练误差
由上图可以看出,随着
dVC 的增大, Ein 逐渐减少,模型复杂度逐渐增大, Eout 先变小后增大在实践中,我们应该先尝试好的模型,看 Ein 是否足够小,如果不够,则增大假设空间的阶数。
- 通过一个好的线性分类算法
A
,学习好的参数