训练样本的数量和训练数据的维数应该是什么关系?
例如,我有一个包含 20000 个训练样本和 16000 个特征的案例。我正在考虑使用 PCA 来获得一些降维的情况,但我不知道我应该减少多少维我的训练数据。这些之间有关系吗?我正在使用具有 2 个类和一个线性内核的支持向量机分类器。
训练样本的数量和训练数据的维数应该是什么关系?
例如,我有一个包含 20000 个训练样本和 16000 个特征的案例。我正在考虑使用 PCA 来获得一些降维的情况,但我不知道我应该减少多少维我的训练数据。这些之间有关系吗?我正在使用具有 2 个类和一个线性内核的支持向量机分类器。
SVM 找到的解决方案会自动限制在样本跨越的空间内,因此使用 PCA 来去除方差为零的维度不会改变解决方案。正如 damienfrancois 所写,减少超出此范围的风险可能会破坏相关信息。为避免这种情况,您有两种选择:
1) 相信结构风险最小化不仅是一个有趣的理论概念,而且可以为您的应用程序做正确的事情,并按原样使用数据。
2)使用特征选择算法来找出哪些特征/组合实际上是有用的。然而,对于这么多的特征来说,找到最优的特征组合显然是不可行的,所以你可以只根据个人的表现对特征进行排序(在线性情况下:一个t-score),然后测试你需要多少最好的特征为了得到一个好的结果。
Zaw Lin 的评论当然是正确的,你总是可以在这样一个高维空间中分离类,但同样当然分类器性能不应该在训练数据上评估,而是使用交叉验证。