原标题:【MATLAB机器学习系列】——主成份分析(PCA)在量化投资中的应用
编辑部
我们会再接再厉
1
PAC 核心思想
PCA 算法也叫主成分分析(principal components analysis),用来减少数据集的维数,同时保留数据集中对方差贡献最大的特征来达到简化数据集的目的。 其核心思想就是将 n 维特征映射到 k 维上(k < n),这 k 维是全新的正交特征。我们将这 k 维成为主元,是重新构造出来的 k 维特征,而不是简单地从 n 维特征中取出其余 n-k 维特征。
2
PCA 几何意义
在PCA中,数据从原来的坐标系转换到新的坐标系下,新的坐标系的选择与数据本身是密切相关的。其中,第一个新坐标轴选择的是原始数据中方差最大的方向,第二个新坐标轴选取的是与第一个坐标轴正交且具有最大方差的方向,依次类推,我们可以取到这样的 k 个坐标轴。
0维-PCA:将所有样本信息都投影到一个点,因此无法反应样本之间的差异;要想用一个点来尽可能的表示所有样本数据,则这个点必定是样本的均值。
1维-PCA:相当于将所有样本信息向样本均值的直线投影;
2维-PCA:将样本的平面分布看作椭圆形分布,求出椭圆形的长短轴方向,然后将样本信息投影到这两条长短轴方向上,就是二维PCA。(投影方向就是平面上椭圆的长短轴方向);
3维-PCA:样本的平面分布看作椭圆形分布,投影方法分别是椭圆球的赤道半径a和b,以及是极半径c(沿着z轴);
3
PCA 理论基础
最大方差理论
如何在降维后最大程度保留原有的信息呢?这就要基于最大方差理论来解决这个问题。
信号处理中认为信号(Signal)具有较大的方差,噪声(Noise)有较小的方差,信噪比就是信号与噪声的方差比,越大越好。
因此我们认为,最好的 k 维特征既是将 n 维样本点转换为 k 维后,每一维上的样本方差都很大。
如下图所示:
那我们应该选择哪一个呢?很明显是左图比较好。原因有两个:
1、投影后方差最大
2、点到直线的距离平方和最小
从另一个角度看,左边的图每个点直线上的距离绝对值之和比右边的每个点到直线距离绝对值之和小。那么接下来我们就分析一下,为什么是两个原因。
方差:偏离平均值的程度
红点 A 表示样本点,蓝点 B 表示在 u 上的投影点。u 是直线的斜率也是直线的方向向量,而且是单位向量。
现在从 A 点向 B 所在直线引一条垂线。垂线与 B 的交点叫做 A 在 B 上的投影,再设 A 与 B 的夹角是alphaα,则投影的矢量长度为:
又因为:
A 与 B 的内积等于 A 到 B 的投影长度乘以 B 的模。因为 B 的模即为 u ,并且是单位向量,那么:
也就是说的值等于A向B所在直线投影的矢量长度!
我们再回顾一下协方差的一些概念
协方差:两个随机变量关系的统计量
让数据尽可能表示更多的原始信息,让它们之间不存在(线性)相关性,因为相关性意味着两个字段不是完全独立,必然存在重复表示的信息。
协方差具体的大小并不重要,但是它的正负是重要的。如果它的值是正的,这表明两个特征之间同时增加或减小;如果它的值是负的,这表明两个特征之间有一个增加而另一个减小。如果它的值为0,则表明两个特征之间是独立的。
上面的维数是n乘n,对角线上红色的是特征与自己的协方差,因此它是方差。对角线两侧的协方差是对称的,因此协方差矩阵是一个关于对角线对称的方阵。
方差的公式: