我试图了解为什么SVM分类器无法正确分类我的数据。我只提供了2000个原始数据样本中的10个样本XX
。我无法理解Matlab返回的混淆矩阵。我使用了SVM分类器。我的代码是否错误,尤其是进行交叉验证的方式是否正确?XX
被标准化为X
,并且Y
是标签。每个特征向量的长度为8。
**问题**)有人可以帮忙解决这个问题吗?
pred 0 pred 1
actual 0 100 0
actual 1 100 0
谢谢
最佳答案
你有:
不平衡的数据集(7个和3个样本),
一个8维特征空间,只有7个和3个样本,不足以填充它(请参见维数诅咒),以及
您仅使用这些样本的一半进行训练,这意味着您距离填充特征空间甚至还很远。
因此,对于SVM的概括是将所有内容归类为“类0”,我并不感到惊讶。
尝试仅使用其中一个功能(XX
的第一列),然后使用留一法交叉验证。
关于matlab - 无法理解SVM返回的混淆矩阵,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50790159/