2017-08-11 65 views
0

當前有哪些問題我遇到的是分類結果是不好即使我使用了許多不平衡的加工技術,如resamplingsmotecost-learning如果不平衡的處理方法都不起作用

具體來說,我有一個數據集,困難容易是2班在我的數據集。雖然課堂分發服務不平衡(困難:簡單= 187:13)在我的數據集。

我使用random forest來訓練我的模型並使用10-fold cross validation對其進行評估,結果是在線「無策略」。

然後我用一些技術來處理這個不平衡的問題,但我只能得到非常低的實驗結果如下(「成本敏感」,「打擊」,「重採樣」),有些值甚至低於0.1。

Methods   P(d) R(d) F(d) P(e) R(e) F(e) Acc 
------------------------------------------------------------- 
no strategy  0.000 0.000 0.000 0.935 0.995 0.964 0.930 
cost-sensitive  0.500 0.077 0.133 0.939 0.995 0.966 0.935 
smote    0.500 0.077 0.133 0.939 0.995 0.966 0.935 
resampling   0.500 0.077 0.133 0.939 0.995 0.966 0.935 

我該如何改進我的結果或是其他高級技術?在此先感謝:)

+0

似乎'採樣','成本敏感的學習'不適合我,我不想用'異常檢測'來發現異常值:( – Yongfeng

+0

P,R和F以上的平均精度,召回率和F-measure分別爲 – Yongfeng

回答

0

你想優化什麼?如果它是精確的或者回憶,你也可以嘗試改變概率閾值(也就是說,使用> 0.5來代替「簡單」),你可以使用例如> 0.2)。玩它,看看什麼是使用簡歷的最佳門檻。

另一種選擇是使用最常用類的欠採樣。因此,通過CV摺疊,創建許多'摺疊',其中包含來自'簡單'類別的所有值以及來自'困難'類別的一些值,以使它們平衡。在所有這些「摺疊」上訓練一個模型,然後用它們全部以合奏的方式預測實際的CV摺疊。

+0

首先,我嘗試優化上述值(即精度,召回率,F-measure),並且閾值不能被修改TT。其次,你有一些更好的建議_undersampling_ methods? – Yongfeng

+0

爲什麼不能修改閾值?在文獻中有很多欠採樣方法,所以只需檢查你的編程語言中有什麼可用的。 – Stergios

+0

你的第二個選項看起來像'EasyEnsmble'算法,所以你知道這些方法的其他特定算法名稱(如過採樣,成本敏感學習,主動學習和基於內核的)。 – Yongfeng