2017-08-23 37 views
0

機械学習における分類子のアンサンブルに関する質問があります。私はEnsemble methodsについて読んだことがありますが、私は何を考えているのかを関連付けることはできませんでした。機械学習分類アンサンブル

マルチクラスの問題にいくつかの分類子があり、ある分類子が他のクラスよりも優れたパフォーマンスを示す場合、どうすればこの特性を私のアンサンブルで利用できますか?

たとえば、 クラシファイアAは、残りのクラスと比較して、クラス1でF1が高くなります。 クラシファイアBは、残りのクラスと比較して、クラス2でF1が高いと評価します。 クラシファイアCは、残りのクラスと比較して、クラス3でF1が高くなります。 クラシファイアAのクラス1の確率に重み付けをして残りを減らすようなアンサンブルはどうすればよいですか?

私は単純な2層アプローチを考えています。 レイヤ1:各クラシファイアについて、クラスのパフォーマンスに基づいてクラス全体に重みを内部的に置き、正規化します。 レイヤ2:各F1の性能に基づいた各分類器の重み

これは意味がありますか?

 
Layer1 
Model A  Class1  Class2  Class3 
Original 0.2   0.5  0.3 
Weight  0.2*0.25 0.5*0.5 0.3*0.25 
Equals  0.05  0.25  0.075 
Normalise 0.133  0.66  0.2 
 
Layer2 
Models  Class1  Class2  Class3 
A   0.3*0.133 0.3*0.66 0.3*0.2 
B   0.5*blah 0.5*blah 0.5*blah 
C   0.2*blah 0.2*blah 0.2*blah 
Avg   Avg   Avg  Avg 

ありがとうございます。

答えて

0

理論的には、異なるモデルの結果を重み付けしてより良い結果を得ることができる理由は、クラスを見つけることがタスクを考慮して、クラスに基づいて異なる重みを与えることができますか?

いくつかのクラシファイアをグローバルに重み付けできます。また、クラスが決定されると(つまり、クラスがXであることが合意された十分な分類子がある場合)、確率を再加重することができます(例えば、アンサンブルが確率が60%で、このクラスの信頼できる分類子が高い確率でそれを80%にする)。しかし、これが実際に役立つかどうかはわかりません。