マルチクラスロジスティック回帰のカテゴリクロスエントロピー更新ルールを導出する方法

Nov 25 2020

同様の投稿があることを認識しています:クロスエントロピー損失のベクトル化

しかし、それを数時間見ていると、彼らが何を言おうとしているのかまだわかりません。

マルチクラスロジスティック回帰でクロスエントロピー関数を使用するための更新ルールを見つけようとしています。ここでは10クラスです。

これが何を意味しているのか混乱しています-これはデータセット全体のコストですか、それとも単一の例のコストですか?yとyhatがスカラーであり、合計が1つの例を通過するのか、yとyhatがベクトルであり、iインデックスがセット全体を通過することを意味するのかはわかりません。

それがトレーニングセット全体を通過していると仮定すると、すべてのシータでそれをどのように導き出すのでしょうか?それをベクトル化する方法、およびすべての重みの一般的な更新ルールを考え出す方法は?

私は答えにとても感謝しています-私は長い間ペンと紙で試しましたが、まだそれを手に入れていません。

ありがとう、A

回答

1 gunes Nov 25 2020 at 16:12

これはトレーニングセット全体ではありません。これは一例ですが、$i$クラスインデックスを表します。だから、あなたが持っているなら$n$ クラス、 $\mathbf y$ そして $\mathbf{ \hat y}$ です $n\times 1$ 実数ベクトル。 $\mathbf y$ はグラウンドトゥルースであるため、サンプルの正しいクラスに対応するインデックスを持つバイナリベクトルになります。 $1$ と他の $0$

勾配を見つけるには、1つのサンプルのみを想定し、各トレーニングサンプルの勾配を合計します。したがって、簡単にするために、この定式化を使用して微分を行います。$\frac{\partial L}{\partial \theta}$、 どこ $y=\sigma( \theta^Tx+b)$