【问题标题】:PCA in machine learning机器学习中的 PCA
【发布时间】:2015-02-28 17:19:54
【问题描述】:

当在训练集上应用 PCA 技术时,我们找到了一个系数矩阵 A,它是主成分。因此,当我们在训练阶段时,我们会找到这些主体并将其投影到数据上。我的问题是我们是应用相同的主体还是在测试阶段为数据找到新的主体?

我认为在这样的答案中:如果我们将其用于降维,我们必须找到新的主体。但是如果我们将它用于特征提取(例如脑电图数据的特征提取),我们必须使用旧的(用于训练阶段的数据)我的想法有多少是正确的?

BS:我不是同时提问和回答问题,而是说出我的想法,指出误解的要点,听取专家的意见

【问题讨论】:

  • 我不明白这个问题。 “新校长”和“老校长”是什么意思?你能详细说明一下吗?
  • 我相信问题是:你是否在训练集上计算主成分向量,然后使用它们与测试集(或实际应用中的新观察)或您是否采用您的测试集/新观察结果并重新计算主成分向量。
  • 对于降维和特征提取,答案是您永远不会根据测试数据或新观察重新计算一组新的基向量。您“学习”的基向量是您学习的模型,您可以在任何新传入的数据(无论是测试数据还是现实世界的应用程序数据)上使用该模型。
  • @eigenchris,正如 F 先生所说..
  • 另一方面,获取您已经分离的数据并在该特征空间区域本地执行 PCA 会完成什么?在这种情况下,您会隐含地说,区分数据的不是全局特征属性,而是以该类的特征空间部分为条件的局部变化。我相信像局部线性嵌入(以及我提到的 ISOMAP)这样的方法旨在处理这个问题,一般来说,这些例程不需要(实际上也不希望)重新安装在每个本地类上。

标签: machine-learning artificial-intelligence pca


【解决方案1】:

PCA 是特征向量变换的一种。目标是降低维度。它有点合并相关的特征。如果您具有 weightsize 之类的功能,并且大多数物体很重,那么它也很大。它用一个 weight_and_size 代替了这些功能。它可以降低噪音,也可以使 e.q.神经网络更小。

它使网络能够在更短的时间内解决问题(减少网络的规模)。它还应该提高泛化能力。

因此,如果您使用 PCA压缩 特征向量训练您的网络,您还必须使用转换后的数据对其进行测试。仅仅是因为它只有与压缩特征向量一样多的输入。您还必须使用完全相同的转换。如果网络知道第一个输入是weight_and_size,你就不能把 e.q 的值放进去。 warm_and_colorful 并期待好的结果。

【讨论】:

    【解决方案2】:

    PCA 和 PCR 均建立在训练数据之上,转换应用于测试以进行性能(错误)评估。使用这两种技术,您可以获得更好的结果,而不是仅使用单个训练数据集,而是进行 K-fold 交叉验证,其中您为每个折叠执行单独的 PCA 并将转换应用于测试集。希望能帮助到你!

    【讨论】:

      猜你喜欢
      • 2017-06-12
      • 2015-11-05
      • 2012-03-24
      • 2017-03-16
      • 2015-10-23
      • 1970-01-01
      • 1970-01-01
      • 2011-06-04
      • 2018-11-27
      相关资源
      最近更新 更多