machine-learning - 将特征向量矩阵简化为单个有意义的向量

标签 machine-learning pca feature-selection

我有特征向量矩阵 - 200 个特征长,其中矩阵内的特征向量在时间上相关,但我希望将每个矩阵简化为单个有意义的向量。我已将 PCA 应用于矩阵,以便将其维度降低到具有高方差的维度,并且正在考虑将其行连接到一个特征向量中以汇总数据。

这是一种明智的方法,还是有更好的方法来实现这一目标?

最佳答案

所以你有一个 n x 200 特征矩阵,其中 n 是样本数量,每个样本有 200 个特征,并且每个特征在时间上都与所有其他特征相关?或者您有单独的特征矩阵,每个时间点一个,并且您希望对每个单独的特征矩阵运行 PCA 以找到该时间点的单个特征向量,然后将它们连接在一起?

PCA 在第二种情况下似乎更有用。

虽然这是可行的,但这可能不是最好的方法,因为通过将不同时间的特征折叠在一起会失去时间敏感性。即使最终特征矩阵中的每个特征代表不同的时间,大多数分类器也无法了解特征 2 跟随特征 1 等这一事实。因此,这样做会丢失自然的时间顺序。

如果您关心这些特征之间的时间关系,您可能需要看看循环神经网络,它允许您将信息从 t-1 馈送到节点,同时馈入当前的 t 特征。因此,从某种意义上说,他们了解 t-1 和 t 特征之间的关系,这将帮助您保持时间顺序。请参阅此说明:http://karpathy.github.io/2015/05/21/rnn-effectiveness/

如果您不关心时间,只想将所有内容组合在一起,那么 PCA 将有助于减少您的功能数量。最终,这取决于您认为哪种类型的信息与您的问题更相关。

关于machine-learning - 将特征向量矩阵简化为单个有意义的向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31945203/

相关文章:

tensorflow - "AttributeError:"将脚本转换为 TF2 后

python - 为什么我的 GPU 在矩阵运算中比 CPU 慢?

c++ - 在 OpenCV 中使用 PCA 进行降维

matlab - MATLAB 中的主成分分析

javascript - 拖动功能后关闭弹出叠加层

matlab - 我怎样才能真正减少 PCA 的特征维度?

python - 如何应用训练好的神经网络?

machine-learning - 为什么我们在CNN末尾使用全连接层?

algorithm - 您如何使用为加权综合评分中的特征分配权重?

python - 从 gridsearchCV 内的 RFECV 检索选定的特征