2016-11-03 5 views
1

私は不均衡な訓練データを持っています。私はwekaでロジスティック回帰を使って分類しています。不均衡なデータをwekaでどのように分類するのですか?

良いと悪い2つのクラスがあります。 Goodは75000インスタンス、不良は 3000です。テストデータには10000個の良好なデータがあります。

私が訓練するとき、それは良いデータに傾きます。つまり、ほとんどすべての悪いインスタンスを良好に分類します。私は何をすべきか ? 私は75000の代わりに10000の良いインスタンスをトレーニングデータに入れようとしましたが、それでも問題は同じです。

+0

情報なしで伝えるのは難しいです。あなたはまだあなたのデータセットに匿名一意識別子を持っていますか?その場合は、その属性を削除します。 – knb

答えて

0

Pythonについてはわかりませんが、guiバージョンではクラスの不均衡を減らすためにSpreadSubsampleを使用できます。 「悪い」がクラスの良い表現であると感じる場合は、「良い」というインスタンスの数を変えて試すことができます。 [フィルタを選択する必要があり、これは==>監修==>インスタンス==> SpreadSubsample ==>「最大数」を使用してインスタンスの数を変更行うに

0

、あなたができた物事のカップルがあります。試してみる。

  1. 誤って分類されたインスタンスに余分な重みが与えられるように、ブースト(AdaBoostM1)を使用してください。
  2. weka.classifiers.meta.CostSensitiveClassifierを使用し、「悪い」インスタンスに「良い」インスタンスより高い重みを与えます。 注::全体的な精度は低下する可能性がありますが、分類器を「悪い」インスタンスの識別に役立てることができます。
関連する問題