2017-06-17 100 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%確定你的數據集即使它是高維度也是非線性的。
最後,我認爲你在測試樣本中有很好的測試結果是正常的,因爲它表明你的數據集在高維方面是線性的或接近線性的,或者它不會很好地工作。也許可以進行交叉驗證幫助你確認你的方法是否合適。