机器学习面经-SVD、PCA、LDA
一、简介
当涉及到降维和特征提取时,PCA、LDA和SVD是三种常用的线性代数和机器学习算法。它们在不同的应用场景下有着各自的优势和用途,也是面试中常问的一些基础知识。一句话总结:PCA是一种无监督降维算法,通过保留数据的主要信息来减少特征维度。LDA是一种有监督降维算法,着重于最大化类别之间的可分性。SVD是一种数学分解技术,常用于矩阵分解和数据压缩。
二、面经
1、请介绍一下PCA?
2、PCA的主要步骤是什么?
3、PCA的优缺点是什么?
4、请推导一下PCA?
5、请推导一下SVD,SVD是如何做矩阵分解的?
6、SVD和PCA的关系是怎么样的?
7、请介绍一下LDA以及LDA的一般步骤?
8、LDA的优缺点?
9、PCA和LDA的区别?
三、面经参考回答
1、请介绍一下PCA?
参考回答:PCA也叫主成分分析法,PCA旨在找到数据中的主成分,并利用这些主成分表征原始数据,从而达到降维的目的。PCA的本质目标就是最大化投影的方差,也就是让数据在主轴上投影的方差最大。在将数据中心化以后,我们可以找到一条主轴,在这条主轴上数据分布得更为分散,这也意味着数据在这个方向上方差更大。在信号处理领域,我们认为信号具有较大方差,噪声具有较小方差,信号与噪声之比称为信噪比。信噪比越大意味着数据的质量越好,反之,信噪比越小意味着数据 的质量越差。由此我们不难引出PCA的目标,即最大化投影方差,也就是让数据在主轴上投影的方差最大。
2、PCA的主要步骤是什么?
参考回答:假设有m条n维的数据,(1)对样本数据进行中心化处理。将每一行零均值化,也就是减去这一行的均值。(2)求样本协方差矩阵。(3)对协方差矩阵进行特征值分解,将特征值从大到小排列。(4)取特征值前d大对应的特征向量ω1,ω2,...,ωd,通过以下映射将n维样本映射到d维,相当于降维。
3、PCA的优缺点是什么?
参考回答:
优点:(1)仅仅是以方差衡量数据信息,不受数据意外的其他因素影响。(2)各个主成分之间正交,可消除原始数据成分间的相互影响因素。(3)计算的方式比较简单,主要是通过特征值分解。
缺点:(1)主成分各个特征维度的含义具有一定的模糊性,不如原样本特征的解释性强。(2)方差小的非主成分也可能包含了对样本差异的重要信息,因此降维丢失后可能对后续数据产生影响。(3)PCA属于有损压缩。
4、请推导一下PCA?
参考回答:
- 首先假设有样本 [x1, x2, x3, x4,…. xn];
- 求出样本的均值然后对样本中每一个元素进行中心化处理,将每一行零均值化,也就是减去这一行
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
林小白的机器学习指南,从本人面试的机器学习算法岗位出发,对机器学习“八股文”做详细的介绍、推导;