伝播をバック実行した後、ニューラルネットワークのためのデルタ値を計算する:デルタ(1)になり、スカラー値の勾配降下:デルタ値はスカラーかベクトルか?
値を、それがベクトルでなければなりませんか?
更新:具体的にhttp://www.holehouse.org/mlclass/09_Neural_Networks_Learning.html
から撮影
伝播をバック実行した後、ニューラルネットワークのためのデルタ値を計算する:デルタ(1)になり、スカラー値の勾配降下:デルタ値はスカラーかベクトルか?
値を、それがベクトルでなければなりませんか?
更新:具体的にhttp://www.holehouse.org/mlclass/09_Neural_Networks_Learning.html
から撮影
まず、あなたはおそらく、それぞれの層に、我々はn x m
パラメータ(または重み)を持っていることを理解し、それを形成して学習する必要があります2次元行列。
n is the number of nodes in the current layer plus 1 (for bias)
m is the number of nodes in the previous layer.
以前と現在の層の間の2つのノードのいずれかとの間に1つの接続があるので、我々は、n x m
パラメータを有します。
レイヤーLのデルタ(ビッグデルタ)を使用して、レイヤーLのすべてのパラメータの偏微分項を累積することができます。デルタの2Dマトリックスも同様です。 i行目(現在の層のi番目のノード)とマトリックスのj列目(前のレイヤのj番目のノード)、したがって
D_(i,j) = D_(i,j) + a_j * delta_i
note a_j is the activation from the j-th node in previous layer,
delta_i is the error of the i-th node of the current layer
so we accumulate the error proportional to their activation weight.
質問に答えるを更新しますデルタは行列でなければなりません。
を参照してくださいありがとうが、私の質問はなぜスカラーがエラーではなくマトリックスとして出力されているのですか?(a)転置はスカラです。おそらく、私が指摘したリンクは間違っていますか? –
エラーはnx1で、aの転置は1xmなので、製品はnxmです。おそらく(1xn)x(nx1)で計算してスカラーになります。 – greeness
式の参照はありますか? – greeness
@greeness更新 –