2

Pylearn2 OR Caffe を使用して、深いネットワークを構築しています。私の目標は公称です。適切な損失関数を見つけようとしていますが、Pylearn2 または Caffe で見つけることができません。

「好みレベルの損失関数: 離散順序ラベルによる回帰」という論文を読みました。一般的なアイデアはわかりましたが、最後のレイヤーが Logistic Regression 上の SoftMax (確率を出力する) である場合、しきい値がどうなるかはわかりません。

そのような損失関数の実装を指摘することで、私を助けることができますか?

ありがとうございます。それでは、お元気で

4

2 に答える 2

0

pylearn2 と caffe の両方で、ラベルは 1 ~ 5 ではなく 0 ~ 4 にする必要があります。出力レイヤーは 5 ユニットになり、それぞれが本質的にロジスティック ユニットです...そしてソフトマックスは、最終的な出力を正規化するアダプターと考えることができます。ただし、「softmax」は出力タイプとして一般的に使用されます。トレーニング中、個々のユニットの値が正確に 0.0 または 1.0 になることはめったにありません...それは常にユニット全体の分布であり、対数損失を計算できます。この損失は「完全な」ケースと比較するために使用され、エラーは逆伝播されてネットワークの重みを更新します。PL2 または Caffe からの生の出力は、特定の数字 0、1、2、3、または 5 ではないことに注意してください。これは 5 つの数値であり、それぞれが 5 つのクラスのそれぞれの可能性に関連付けられています。分類すると、

例を挙げてみます... 3 クラスの問題があるとします。3 ユニットのソフトマックスでネットワークをトレーニングします。最初の単位は最初のクラスを表し、2 番目は 2 番目、3 番目は 3 番目のクラスを表します。

テストケースをフィードして取得するとします...

0.25、0.5、0.25 ...0.5 が最高なので、分類子は「2」と言うでしょう。これはsoftmax出力です...出力ユニットの合計が1になるようにします。

于 2015-01-24T23:25:10.993 に答える