2014-11-14 54 views
2

我對svm權重有一個簡單的問題。我在做一個二元分類。我想爲兩個類設置不同的權重。我的代碼是這樣的如何在opencv svm中定義重量

Mat weights = (Mat_<double>(2,1)<<1,2); 
CvMat weight = weights; 
param.class_weights = &weight; 

我想知道哪個重量是哪個類?我沒有從opencv文件。謝謝。

+0

我認爲他們是你訓練的每個樣品的重量。例如,如果你有n個變量並用m個樣本訓練,你的權重可能是m×n。這是我的猜測。 – DXM 2014-11-15 01:14:17

回答

0

classWeights - C_SVC問題中的可選權重,分配給特定的類。它們乘以C,因此類#i的參數C變爲類重量(i)* C。因此,這些權重影響不同類的錯誤分類懲罰。權重越大,對相應類別的數據錯誤分類的懲罰越大。