【问题标题】:MATLAB: PCA for Dimensionality ReductionMATLAB:用于降维的 PCA
【发布时间】:2017-08-19 15:12:41
【问题描述】:

我计算了图像数据集的颜色描述符并生成了一个 152×320 矩阵(152 个样本和 320 个特征)。我想使用 PCA 来降低我的图像描述符空间的维度。我知道我可以使用 Matlab PCA 内置函数来实现这一点,但是当我刚刚开始学习这个概念时,我想在没有内置函数的情况下实现 Matlab 代码,这样我就可以清楚地了解该函数是如何工作的。我试图在网上找到如何做到这一点,但我只能找到 PCA 的一般概念或使用内置函数实现它,而没有清楚地解释它是如何工作的。任何人都可以通过分步说明或链接来帮助我,该链接可以解释如何实现 PCA 降维的简单方法。我之所以如此困惑,是因为 PCA 有很多用途和实现它的方法,我越读越困惑。

【问题讨论】:

    标签: matlab image-processing pca descriptor dimensionality-reduction


    【解决方案1】:

    PCA 基本上采用数据的主要特征向量(或者更好的是它们对协方差矩阵的主要特征向量的投影)。

    您可以使用SVD (Singular Value Decomposition)

    在这里模仿MATLAB的pca() function应该怎么做:

    1. 居中所有特征(数据的每一列均值应为零)。
    2. 对您的数据应用svd() function
    3. 使用 V 矩阵(其列)作为向量来投影数据。根据您希望拥有的数据维度选择要使用的列数。

    投影数据现在是新的降维数据。

    【讨论】:

      猜你喜欢
      • 2017-08-05
      • 1970-01-01
      • 2013-12-31
      • 2015-08-19
      • 2019-07-21
      • 2013-03-06
      • 2021-04-04
      • 2018-01-28
      • 2018-08-27
      相关资源
      最近更新 更多