複数のクラスがある場合、分類子の確率しきい値をどのように調整できますか?[重複]


10

バイナリ確率分布

上記は、いくつかの確率に基づいて、バイナリクラスのケースの確率分類子出力が0または1の非常に単純な例です。
さらに、しきい値を変更する方法は簡単です。しきい値を50%より高くまたは低く設定して、精度/再現率のバランスを変更し、独自の状況に合わせて最適化します。

ただし、マルチクラスシナリオで同じ考え方をしようとすると、下の図に示すように3つのクラスでも(これらは確率であると想像してください)

3つの確率分布

どのようにして、しきい値をシフトする方法を考え始めますか?
デフォルトでは、最も確率の高いクラスを使用します(ここではクラス3)。
このバランスを取りたい場合(精度/再現率に影響を与えるため)、何ができますか?
最初の最も支配的なクラスをそれらを再正規化し、これらの2つの間にしきい値を設定することを検討することもできますが、これは洗練されたソリューションのようには聞こえません。
従うべき確かな方法論はありますか?

回答:


10

クラスの事前分布を使用できます。

vπvπcvcπc

適切な分布が必要な場合は、再正規化する必要があります。

π=(0.4,0.3,0.3)

vf(x)

f(x)={2v2θ1otherwise
θ(0,1)

次に、これは(少なくとも決定を行う場合)、比例するクラス確率を計算することと同じです。(v11θ,v2θ)π=(11θ,1θ)

π

この種の以前の仮定をモデルに組み込むより原則的な方法については、ベイジアン推論を検討することをお勧めします。


ご回答有難うございます。意味あり。したがって、前の要素で要素ごとの乗算を行った後、通常と同じように最大数を選択することをお勧めします
George Pligoropoulos

はい。結果のベクトルを正規化すると、同じ順序の分布が得られることに注意してください。
cangrejo 2017年

1
それはちょうど美しいです、ありがとう!
guyos 2018年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.