在韦卡做PCA



我正在尝试在WEKA(分类问题)中进行PCA降维。

我的数据中有 200 个

属性和接近 2100 行。

以下是我遵循的步骤

  • 在WEKA资源管理器中导入csv文件

  • "预处理"选项卡中,应用,规范化数据(使整个数据在 [0,1] 范围内

  • 然后实施 PCA。

    • 在 PCA 的选项中,有一个 centerData 选项,如果设置为 False,将在标准化数据后使用相关矩阵进行计算(如果我错了,请纠正我),如果设置为 true,将使用协方差矩阵。

我的疑问是

  1. 我是否应该在实现 PCA 之前规范化数据?我尝试在规范化之前和之后这样做,我得到了不同的结果。所以我很困惑。
  2. 我是否应该标准化数据(使平均值为0),然后应用PCA。

这两种情况下,我应该在PCA WEKA中为中心数据选项选择什么选项?

这个问题在这里得到了部分回答:首先是PCA还是首先规范化?

要直接回答您的问题:

规范化将是个人选择。 如果设置 centerData=TRUE,并且不规范化或标准化数据,则某些具有较大值的属性在 PCA 中的影响将更大。 如果您设置 centerData=FALSE,Weka 会为您标准化数据。

为了证实您的怀疑,在Weka中,centerData执行以下操作:

中心数据=真

  • 居中您的数据(不会规范化或标准化,因此如果您决定这样做,则需要事先执行此操作)
  • PCA 使用协方差矩阵执行

中心数据=假

  • PCA使用相关矩阵执行(数据通过该方法标准化)

相关内容

  • 没有找到相关文章

最新更新