数据分析面试【机器学习】总结之-----PCA主成成分分析 常见面试题整理

阅读之前看这里????:博主是正在学习数据分析的一员,博客记录的是在学习过程中一些总结,也希望和大家一起进步,在记录之时,未免存在很多疏漏和不全,如有问题,还请私聊博主指正。
博客地址:天阑之蓝的博客,学习过程中不免有困难和迷茫,希望大家都能在这学习的过程中肯定自己,超越自己,最终创造自己。

1.PCA定义

PCA是比较常见的线性降维方法,通过线性投影将高维数据映射到低维数据中,所期望的是在投影的维度上,新特征自身的方差尽量大,方差越大特征越有效,尽量使产生的新特征间的相关性越小

PCA算法的具体操作为对所有的样本进行中心化操作,计算样本的协方差矩阵,然后对协方差矩阵做特征值分解,取最大的n个特征值对应的特征向量构造投影矩阵。

2.PCA具体计算步骤

数据分析面试【机器学习】总结之-----PCA主成成分分析 常见面试题整理

3.降维之后的维度怎么确定

  • 可以利用交叉验证,再选择一个很简单的分类器,来选择比较好的 k‘ 的值
  • 可以设置一个比重阈值 t,比如 95%,然后选择满足阈值的最小的 k‘:

i=1dλii=1dλit\frac {\sum _{i=1}^{d’}\lambda _i}{\sum _{i=1}^ d\lambda _i} \ge t

4.降维的必要性

  1. 多重共线性–预测变量之间相互关联。多重共线性会导致解空间的不稳定,从而可能导致结果的不连贯。
  2. 高维空间本身具有稀疏性。一维正态分布有68%的值落于正负标准差之间,而在十维空间上只有0.02%。
  3. 过多的变量会妨碍查找规律的建立。
  4. 仅在变量层面上分析可能会忽略变量之间的潜在联系。例如几个预测变量可能落入仅反映数据某一方面特征的一个组内。

5.降维的目的:

  1. 减少预测变量的个数
  2. 确保这些变量是相互独立的
  3. 提供一个框架来解释结果 降维的方法有:主成分分析、因子分析、用户自定义复合等。
  4. PCA(Principal Component Analysis)不仅仅是对高维数据进行降维,更重要的是经过降维去除了噪声,发现了数据中的模式。

6.给你一个数据集。该数据集包含很多变量,你知道其中一些是高度相关的。经理要求你用PCA。你会先去掉相关的变量吗?为什么?

丢弃相关变量会对PCA有实质性的影响,因为有相关变量的存在,由特定成分解释的方差被放大。

例如:在一个数据集有3个变量,其中有2个是相关的。如果在该数据集上用PCA,第一主成分的方差会是与其不相关变量的差异的两倍。此外,加入相关的变量使PCA错误地提高那些变量的重要性,这是有误导性的。

7.在PCA中有必要做旋转变换吗?如果有必要,为什么?如果你没有旋转变换那些成分,会发生什么情况?

是的,旋转(正交)是必要的,因为它把由主成分捕获的方差之间的差异最大化。这使得主成分更容易解释。但是不要忘记我们做PCA的目的是选择更少的主成分(与特征变量个数相较而言),那些选上的主成分能够解释数据集中最大方差。

通过做旋转,各主成分的相对位置不发生变化,它只能改变点的实际坐标。如果我们没有旋转主成分,PCA的效果会减弱,那样我们会不得不选择更多个主成分来解释数据集里的方差。

8.PCA为什么要用协方差矩阵的特征向量矩阵来做投影矩阵呢?

降维的目的就是“降噪”和“去冗余”。
“降噪”的目的就是使保留下来的维度间的相关性尽可能小,而“去冗余”的目的就是使保留下来的维度含有的“能量”即方差尽可能大。
我们要最大化方差来保留更多的信息。去噪。
有趣的是,协方差矩阵能同时表现不同维度间的相关性以及各个维度上的方差

协方差矩阵度量的是维度与维度之间的关系,而非样本与样本之间。协方差矩阵的主对角线上的元素是各个维度上的方差(即能量),其他元素是两两维度间的协方差(即相关性)。

先看“降噪”,让保留下的不同维度间的相关性尽可能小,也就是说让协方差矩阵中非对角线元素都基本为零。达到这个目的的方式——矩阵对角化。

再看“去冗余”,对角化后的协方差矩阵,对角线上较小的新方差对应的就是那些该去掉的维度。我们只取那些含有较大能量(特征值)的维度,其余的就舍掉即可。

9.PCA 算法总结

PCA 是一种非监督降维方法,它只需要特征值分解,就可以对数据进行降维,去躁。

  • 主要优点:
    仅仅需要以方差衡量信息量,不受数据集以外的因素影响
    各主成分之间蒸饺,可消除原始数据成分间的相互影响的因素
    计算方法简单,主要运算是特征值分解,易于实现。

  • 主要缺点:
    主成分各个特征维度的含义具有一定的模糊性,不如原始样本特征的解释性强
    方差小的非主成分也可能含有对样本差异的重要信息,因此降维丢弃可能对后续数据处理有影响

参考:
知乎PCA 面试级整理
知乎PCA主成分分析学习总结
机器学习面试题之PCA(八)

—————————————————————————————————————————————————
博主码字不易,大家关注点个赞转发再走呗 ,您的三连是激发我创作的源动力^ - ^
数据分析面试【机器学习】总结之-----PCA主成成分分析 常见面试题整理