给定一些白化变换,我们将一些特征相关的向量更改为一些分量不相关的向量。运行一些学习算法。
为什么这行得通?在原始空间中,向量分量之间存在相关性,它携带了一些信息(相关性是信息,对吗?)。现在,我们对数据进行白化并得到一个圆形斑点作为输出。所有关于相关性的信息都丢失了——在我看来,大部分信息都丢失了。学习在相关数据上定义的决策边界/分布会不会容易得多(因为所有信息都存在)?那么,例如,SVM(因为在我的实践中这是最需要这个的方法)如何通过美白获得更好的结果?
给定一些白化变换,我们将一些特征相关的向量更改为一些分量不相关的向量。运行一些学习算法。
为什么这行得通?在原始空间中,向量分量之间存在相关性,它携带了一些信息(相关性是信息,对吗?)。现在,我们对数据进行白化并得到一个圆形斑点作为输出。所有关于相关性的信息都丢失了——在我看来,大部分信息都丢失了。学习在相关数据上定义的决策边界/分布会不会容易得多(因为所有信息都存在)?那么,例如,SVM(因为在我的实践中这是最需要这个的方法)如何通过美白获得更好的结果?
美白是计算机视觉应用课程的标准,并且可以帮助各种机器学习算法收敛到超越 SVM 的最佳解决方案。(在我的回答结束时有更多信息。)
现在,我们对数据进行白化并得到一个圆形斑点作为输出。
更数学地说,白化使用其特征向量变换分布,使其协方差矩阵成为单位矩阵。Bishop (1995) pp. 300 以程式化的方式说明了这一点:
白化是一个有用的预处理步骤,因为它对输入进行去相关和规范化。
去相关
机器学习算法的训练步骤只是一个优化问题,但它是被定义的。白化为输入变量提供了很好的优化属性,使这些优化步骤收敛得更快。这种改进的机制是它影响了最速下降式优化算法中 Hessian的条件数。以下是一些进一步阅读的来源:
正常化
输入变量现在具有单位方差这一事实是特征归一化的一个示例,这是许多 ML 算法的先决条件。事实上,SVM(以及正则化线性回归和神经网络)需要对特征进行归一化才能有效地工作,因此仅由于特征归一化效应,白化可能会显着提高 SVM 的性能。