2016-11-23 9 views
0

現在、ロジスティック回帰やランダムフォレストなどの分類学習アルゴリズムを使用して信号を推定するプロジェクトでは、scikit-learnを使用しています。シグナル予測の偽陰性率を下げる

私は現在、混乱行列を使用して予測の異なるアルゴリズムのパフォーマンスを評価していますが、両方のアルゴリズムに共通の問題があることがわかりました。すなわち、いずれの場合も、アルゴリズムの精度は比較的良いと思われる(約90%〜93%)が、FNの総数はTP(FNR < 3%)に比べかなり高い。私の予測問題でこのような問題が発生している理由を知っている人がいますか?可能であれば、この問題を解決する方法についていくつかのヒントを教えてください。

お返事ありがとうございました。

更新日: データセットは非常に不均衡(8:1)で、合計約180,000回の観測があります。私はすでにOSS、SMOTE(+ Tomekまたは+ ENN)などのいくつかのリサンプリング方法をテストしましたが、どちらも良い結果を返していません。どちらの場合も、リコール率は2.5%から20%に上昇しますが、精度は大幅に低下します(60%から20%)。

+1

ライブラリを使用していますか? –

+0

はい、Scikitを使用しています。 – Biertje

答えて

0

おそらく不均衡なデータセットがあります。クラスの1つに他のクラスよりも多くの例があります。

解決策の1つは、例を少なくしてクラスを誤って分類するコストが高くなることです。

クロス検証済みのこの質問はあなたの問題に多くのアプローチを説明します。 https://stats.stackexchange.com/questions/131255/class-imbalance-in-supervised-machine-learning

EDIT:あなたは、最初のアプローチとして、balancedにパラメータclass_weightを設定することができscikit-learnを使用していることを考えると

をあなたのLogistic regression

+0

データセットは非常に不均衡(約8:1)しています。私はすでにSMOTEのようないくつかのリサンプリング方法を試しましたが、どちらも良い結果を返しません。 – Biertje

+0

あなたはそれ以上の情報を教えてくれますか?あなたのデータの混乱行列といくつかのサンプルを投稿するように? –

+0

すぐにお返事ありがとうございます。私もclass_weightにバランスを取ろうとしましたが、精度は75%近くまで下がりました。 – Biertje

関連する問題