3
ニューラルネットワークのSoftmax層
バックプロパゲーションでトレーニングされたニューラルネットワークにsoftmaxレイヤーを追加しようとしているので、その勾配を計算しようとしています。 出力はで、は出力ニューロン数です。hj=ezj∑ezihj=ezj∑ezih_j = \frac{e^{z_j}}{\sum{e^{z_i}}}jjj それを導き出せば ∂hj∂zj=hj(1−hj)∂hj∂zj=hj(1−hj)\frac{\partial{h_j}}{\partial{z_j}}=h_j(1-h_j) ロジスティック回帰に似ています。しかし、数値勾配チェックが失敗するため、これは間違っています。 何が間違っていますか?クロス導関数も計算する必要があると思っていました(つまり)が、これを実行して勾配の次元を維持する方法がわかりません同じように、逆伝播プロセスに適合します。∂hj∂zk∂hj∂zk\frac{\partial{h_j}}{\partial{z_k}}