python3を用いて2クラス分類をしています。
データ数は約140ほどしかなく、クラス0が135つ、クラス1が5つほどの偏りがあります。
普通の機械学習では全てを0に分類することで良い精度となっている状態だったため、mbalanced-learnのSMOTE(Synthetic Minority Over-sampling Technique)により均衡データにすることを試みました。
トレーニングデータとテストデータに分けてトレーニングデータにsmoteをかけようと思いましたが、分けた後のトレーニングデータにラベル1の個数が少なすぎて、エラーとなってしまいました。
そこでデータを分ける前の全体にsmoteをかけたのちトレーニングデータとテストデータに分け学習、テストを行ったところ、f値はとてもよくなりました。
ここで質問です。良い精度が得られたのはテストデータに入っているラベル1のデータがトレーニングデータにも共通してしまっているせいなのでしょうか。smoteでラベル1を増やす方法について、全く同じものを複製しているのではないという認識ですが、やはり分ける前の全データに適応してしまうのは誤りでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/01 06:47