2017-06-17 101 views
0

我正在一个项目中使用Spark Mllib线性支持向量机对一些数据进行分类(l2正则化)。我有200个积极的观察结果和150个(产生的)消极观察结果,每个数据具有744个特征,代表了房屋不同区域的人的活动水平。线性支持向量机与非线性支持向量机高维数据

我已经运行了一些测试,并且“areaUnderROC”度量值为0.991,并且似乎该模型在对我提供给它的数据进行分类时非常好。 我做了一些研究,发现线性SVM在高维数据中很好,但问题是我不明白线性如何能够很好地分割我的数据。

我觉得在2D,也许这是问题,但找底部的形象,我90%肯定,我的数据看起来更像是一个非线性问题enter image description here

所以这是正常的,我有一个好测试结果?难道我做错了什么?我应该改变方法吗?

回答

2

我觉得你的问题是关于“为什么线性SVM能classfy我HIGHT尺寸数据良好,即使该数据应该是非线性的”
一些数据集看起来像在低维非线性就像在右边你示例图片,但从字面上来说很难说高维数据集肯定是非线性的,因为nD非线性在(n + 1)D空间中可能是线性的。所以我不知道为什么你90%确定你的数据集即使它是高维度也是非线性的。
最后,我认为你在测试样本中有很好的测试结果是正常的,因为它表明你的数据集在高维方面是线性的或接近线性的,或者它不会很好地工作。也许可以进行交叉验证帮助你确认你的方法是否合适。