主成分分析法简单例题 主成分分析法( 二 )


如上图所示,我们将 样本到红色向量的距离 称作是投影误差(Projection Error) 。以二维投影到一维为例,PCA 就是要找寻一条直线,使得各个特征的投影误差足够小,这样才能尽可能的保留原特征具有的信息 。
因为PCA仅保留了特征的主成分,所以PCA是一种有损的压缩方式.
从 PCA 的执行流程中,我们知道,需要为 PCA 指定目的维度k。如果降维不多,则性能提升不大;如果目标维度太小,则又丢失了许多信息 。
由于 PCA 减小了特征维度,因而也有可能带来过拟合的问题 。PCA 不是必须的,在机器学习中,一定谨记不要提前优化,只有当算法运行效率不尽如如人意时,再考虑使用 PCA 或者其他特征降维手段来提升训练速度 。
降低特征维度不只能加速模型的训练速度,还能帮我们在低维空间分析数据,例如,一个在三维空间完成的聚类问题,我们可以通过 PCA 将特征降低到二维平面进行可视化分析 。
根据 13 个特征对葡萄酒分类(推销给不同品味的人),利用 PCA ,可以将数据从 13 维降到 2 维进行可视化 。
array([[1.369e+01, 3.260e+00, 2.540e+00, 2.000e+01, 1.070e+02, 1.830e+00,
5.600e-01, 5.000e-01, 8.000e-01, 5.880e+00, 9.600e-01, 1.820e+00,
6.800e+02],
[1.269e+01, 1.530e+00, 2.260e+00, 2.070e+01, 8.000e+01, 1.380e+00,
1.460e+00, 5.800e-01, 1.620e+00, 3.050e+00, 9.600e-01, 2.060e+00,
4.950e+02],
[1.162e+01, 1.990e+00, 2.280e+00, 1.800e+01, 9.800e+01, 3.020e+00,
2.260e+00, 1.700e-01, 1.350e+00, 3.250e+00, 1.160e+00, 2.960e+00,
3.450e+02]])
array([[ 0.87668336,0.79842885,0.64412971,0.12974277,0.48853231,
-0.70326216, -1.42846826,1.0724566 , -1.36820277,0.35193216,
0.0290166 , -1.06412236, -0.2059076 ],
[-0.36659076, -0.7581304 , -0.39779858,0.33380024, -1.41302392,
-1.44153145, -0.5029981 ,1.70109989,0.02366802, -0.84114577,
0.0290166 , -0.73083231, -0.81704676],
[-1.69689407, -0.34424759, -0.32337513, -0.45327855, -0.14531976,
1.24904997,0.31964204, -1.52069698, -0.4346309 , -0.75682931,
0.90197362,0.51900537, -1.31256499]])
array([0.36884109, 0.19318394, 0.10752862, 0.07421996, 0.06245904,
0.04909, 0.04117287, 0.02495984, 0.02308855, 0.01864124,
0.01731766, 0.01252785, 0.00696933])
array([[-2.17884511, -1.07218467],
[-1.80819239,1.57822344],
[ 1.09829474,2.22124345]])
LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
intercept_scaling=1, max_iter=100, multi_class='ovr', n_jobs=1,
penalty='l2', random_state=0, solver='liblinear', tol=0.0001,
verbose=0, warm_start=False)
array([1, 3, 2, 1, 2])
array([[14,0,0],
[ 1, 15,0],
[ 0,0,6]])
准确率(精度)为 : 0.9722222222222222
参考: 主成分分析
《 斯坦福机器学习》
《机器学习 A-Z》
如何理解主成分分析法 (PCA)什么是主成分分析法
主成分分析法: 英文全名 Principal Component Analysis 简称 PCA ,由名字就可以看出来,这是一个挑重点分析的方法 。主成分分析 法是通过 恰当 的数学变换 ,使新变量—— 主成分成为原变量 的线性 组合 ,并选 取少数 几个在变差总信息量中 比例较 大的主成分来分析 事物 的一种方法。主成分在变差信息量中的比例越大 , 它在综合评价 中的作用就越大
思想: 整体思想就是化繁为简,抓住问题关键,也就是降维思想 。当然,既然是抓住关键,那么自然就是以牺牲精度为代价 。
解决问题: 因为每个变量都在不同程度上反映了所研究问题的某些信息,并且指标之间彼此有一定的相关性,因而所得的统计数据反映的信息在一定程度上有重叠 。在用统计方法研究多变量问题时,变量太多会增加计算量和分析问题的复杂性 。
人们希望在进行定量分析过程中,涉及的变量较少,得到的信息量较多 。为了尽可能的减少冗余和噪音,一般情况可以从相关变量中选择一个,或者把几个相关变量综合为一个变量作为代表,用少数变量来代表所有变量 。
原理: 因为评估所涉及的众多变量之间既然有一定的相关性,就必然存在着起支配作用的因素 。根据这一点,通过对原始变量和相关矩阵的内部结构的关系研究 ,找出影响目标变量某一要素的几个综合指标,使综合指标为原来变量的线性拟合 。这样,综合指标不仅保留了原始变量的主要信息,且彼此间不相关,又比原始变量具有某些更优越的性质,使得我们在研究复杂目标变量评估问题时,容易抓住主要矛盾 。
形象理解
比如,某学籍数据,有两列 M 和 F ,其中M 列的取值是如果学生为男性,则取值为 1 如果为女性,则取值为 0。F 列,如果为男性则取值为 0 否则取值为一 。由这两种关系可以知道,这两列数据是强相关的 。只要保留一列,就能够完全还原另外一列 。当然,不要局限于数据删除,还有数据转换,删除可以理解为在此方法中的一种方式 。

秒懂生活扩展阅读