PCA是否被视为机器学习算法


10

我知道主成分分析是一种降维技术,即给定10个输入特征,它将产生较少数量的独立特征,这些特征是原始特征的正交和线性变换。

PCA由本身视为学习算法或它是一个数据预处理步骤。

Answers:


9

有人将其标记为无监督的技术并不少见。您可以对特征向量进行一些分析,这有助于解释数据的行为。当然,如果您的转换仍然具有很多功能,那么此过程可能会非常困难。不过,有可能因此我将其视为机器学习。

编辑:

由于选择了我的答案(不知道为什么),所以我想我会增加更多内容。

PCA做两件事是等效的。首先,通常所说的,它使方差最大化。其次,它通过查看成对距离将重构误差最小化。

通过查看特征向量和特征值,可以轻松地推论哪些变量和特征对方差有所贡献,以及不同变量如何与其他变量一起移动。

最后,它实际上取决于您如何定义“学习”。PCA学习了一个新的特征空间,该空间捕获了原始空间的特征。我倾向于认为这可能是有意义的。

它复杂吗?不,不是真的,但这会减少它作为一种算法吗?不,我不这么认为。


3
我觉得这个答案纯粹是观点,没有提出任何论据。也许详尽,包含并认可他人提出的观点。
霍布斯

15

PCA实际上只是一个轮换。认真地说,仅此而已:这是将数据旋转到新基础上的聪明方法。此基础的属性使其可以用作几个过程的预处理步骤。

  1. 基础是正交。如果您的特征具有多重共线性(两个或多个特征线性相关),这将非常有用:保证应用PCA可以为您提供不再是问题的基础。此过程称为主成分回归

  2. 基本向量是有意义相对于所述数据的传播:它们是本征向量的的协方差矩阵。这第二个特性引起了PCA作为降维技术的著名效用:旋转数据后,将数据投影到与总方差的很大一部分相关的基向量的子集上,可以得到(通常)保留(数据的(有趣的)大多数结构特性。


那么:这是一种学习算法吗?这是一个哲学问题。是什么使事物成为学习算法?当然,PCA并不是“监督”学习算法,因为我们可以在有或没有目标变量的情况下做到这一点,并且通常将“无监督”技术与聚类相关联。

是的,PCA是一个预处理过程。但是在您完全记下它不是“学习”某些东西之前,我希望您考虑以下内容:PCA 可以通过从字面上取协方差矩阵的特征向量来计算,但是实际上这并不是通常这样做的方式。数值上等效且计算效率更高的过程是仅获取数据的SVD。因此,PCA只是SVD的特定应用,因此询问PCA是否为学习算法实际上就是询问SVD是否为学习算法。

现在,虽然您可能会觉得PCA不是学习算法,但您会觉得很舒服,这就是为什么您不应该使用SVD来做同样的事情:这是一种非常强大的主题建模协作过滤方法。使SVD对这些应用有用的属性与使它对降低尺寸有用的属性(即PCA)完全相同。

SVD是特征分解的概括,即使作为SVD的受约束版本,它也非常强大。您可以通过查看邻接矩阵的特征向量在图形上执行社区检测,或者通过查看过渡矩阵的特征向量来确定马尔可夫模型的稳态概率,这恰好也是从本质上来说也是计算PageRank的方式。

在幕后,PCA正在执行简单的线性代数运算。但是,这是许多应用程序所基于的完全相同的操作,大多数人都不会质疑将“机器学习”这个标签应用于其上。这类算法称为矩阵因式分解,甚至扩展到诸如word2vec之类的复杂技术:的确,实际上,您可以通过将PCA应用于词同频矩阵而实际上获得类似word2vec的结果。再次归纳一下,PCA结果的另一个词是嵌入。Word2vec可能是最著名的嵌入示例,但是构造嵌入(作为中介)也是RNN中使用的编码器-解码器体系结构的重要组成部分GANsGANs是目前ML研究的前沿。


那么回到您的问题:PCA是一种“机器学习算法”吗?好吧,如果不是,那么您应该准备就协作过滤,主题建模,社区检测,网络中心性以及嵌入模型说同样的话。

仅仅因为它是简单的线性代数并不意味着它也不是魔术。


6

绝对不是学习算法,因为您不会在PCA中学习任何东西。但是,可以像其他大多数降维方法一样,将其用于不同的学习算法中以达到更好的性能。


4

PCA用于消除冗余功能。它找到数据高度分布的方向。它并不关心数据的标签,因为它是代表数据的最小二乘投影。多重判别分析,MDA尝试找到最能分离数据的预测。后者考虑标签并找到可以最佳分离数据的方向,尽管它对找到的决策种类有一些细节。总结起来,PCA这不是学习算法。它只是试图找到数据高度分布的方向,以消除相关特征。类似的方法,例如MDA尝试找到方向以对数据进行分类。虽然MDA很像PCA,但前者用于分类,它考虑标签,但后者不直接用于分类。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.