2009-12-09 141 views
5

我目前正處在一個機器學習問題,而我不得不處理很不平衡的數據集。也就是說,有六個類('1','2'...'6')。不幸的是,對於類'1'150個示例/實例,對於'2'90個實例和對於類'3'只有20個。因爲沒有這些類的可用實例,所以其他類不能被「訓練」。WEKA的重採樣濾波器 - 如何解釋結果

到目前爲止,我發現WEKA(我正在使用的機器學習工具包)提供了這個受監督的「Resample」過濾器。當我使用'noReplacement'= false和'bialToUniformClass'= 1.0的過濾器時,這會產生一個數據集,其中的實例數很好,幾乎相等(對於類'1','3'和其他留空)。

我現在的問題是:WEKA和這個過濾器如何爲不同的類生成「新」/附加實例。

非常感謝您的任何提示或建議。

乾杯 朱利安

回答

2

使用WEKA的監督重採樣過濾器添加實例類。這通過簡單地將來自只有少數實例的類的實例添加到結果數據集中實現。

因此,所得到的數據集強烈偏向於只有少數樣本可用的類。

1

它沒有。它重新採樣現有的實例。如果您有一個2類實例,並要求以1.0的偏差進行重採樣,那麼您可以期望該實例的N個副本以及已有數據的N個其他類型的其他實例。

1

嘗試使用預處理中的SMOTE過濾器。

它通過爲次要類生成新數據來平衡你的數據集。