2016-12-05 15 views
0

私は6つの浮動小数点変数を持つ約1000のオブジェクトのセットで分類子を実行しようとしています。私はいくつかの異なるモデルの予測値の配列を生成するためにscikit-learnのクロス検証機能を使用しました。私はsklearn.metricsを使って自分の分類子と混乱テーブルの精度を計算しました。ほとんどの分類器は約20-30%の精度を持っています。以下は、SVC分類子の混乱テーブルです(精度25.4%)。マルチクラス分類器の性能を評価するための良い指標は何ですか?

enter image description here

私は機械学習への新たなんだので、私はその結果を解釈するかどうかはわかりませんし、問題を評価するための他の良い指標があるかどうか。直感的に言えば、たとえ25%の精度であっても、クラシファイアが25%の予測を得ているとすれば、それは少なくとも幾分効果的だと思いますよね?統計的な議論でそれをどのように表現できますか?

答えて

0

この表が混乱のテーブルである場合、私はあなたの分類器が大部分の時間にクラスEを予測すると思います。あなたのクラスEがあなたのデータセットで過剰表現されていると思います。同じ数のインスタンス 例A、B、Cの3つのクラスがあり、テストデータセットでは、クラスAがすべての時間クラスAを予測する場合、クラスAは表示されません(90%)。精度、

良いメトリックが損失を記録使用することで、ロジスティック回帰は、このメトリックを最適化 がhttps://stats.stackexchange.com/questions/113301/multi-class-logarithmic-loss-function-per-class

アン参照良いアルゴリズムであります他のソリューションは、あなたの小さなクラスのオーバーサンプリングを行うことです

0

まず、混乱のテーブルを見ることは非常に困難です。それをイメージとしてプロットすれば、何が起きているのかを直感的に理解することができます。

これは、より簡単で高速なので、最適化するには単一の数値メトリックを使用することをお勧めします。システムが期待どおりに機能しないことが判明したら、選択したメトリックを修正してください。

精度は、すべてのクラスで同じ量のサンプルを使用している場合には、通常は良い指標です。それ以外の場合(ここではそうです)、私はF1 scoreを使用することをお勧めします。これは見積もりの​​precision and recallを考慮しています。

EDIT:ただし、25%の精度、またはいずれかのメトリックが「十分に良い」かどうかは、お客様が決定します。ロボットが人を撃つべきかどうかを分類しているならば、おそらくあなたのアルゴリズムを修正するべきですが、擬似ランダムまたはランダムなデータかどうかを判断する場合、25%の正確さがその点を証明するのに十分かもしれません。

関連する問題