2016-08-23 25 views
0

我有一個不平衡的數據集,總共有209行(樣本),其中包括166行(class0)和43行(class1)。 因此,我想解決不平衡的問題,然後我用python指令來調整類的權重。關於tree.decisionTreeClassifier調整class_weight

tree.DecisionTreeClassifier(max_depth=4,class_weight={1:3.8}) 
clf.fit(scale_data, data_answer 

最後,在結果(圖1),將樣品仍然209但值成爲166.0(class0)和166.34(1類)。 class1採樣十進制數字後的數字。 我無法解釋結果,甚至無法編譯Cpython編寫的源代碼(https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/tree/_tree.pyx#L1948>) 任何人都可以幫助我嗎? 謝謝。

fig.1

回答

0

類1不 「小數點後採樣的數字。」我不確定這意味着什麼。相反,樣本是加權的,所以值是43 * 3.8 = 163.4

+0

類別權重是否意味着要進行過採樣以擴大樣本大小? – yating

+0

@ yating No.這是訓練期間給予班級的權重,它會影響您選擇用於確定分組的標準函數的結果。 –