normprod
正規化ドット積重み関数
構文
Z = normprod(W,P,FP)
dim = normprod('size',S,R,FP)
dw = normprod('dz_dw',W,P,Z,FP)
説明
normprod は重み関数です。重み関数は、入力に重みを適用して重み付けされた入力を返します。
Z = normprod(W,P,FP) は、次の入力を取ります。
W |
|
P |
|
FP | 関数パラメーターの行 cell 配列 (オプション、無視) |
これは、S 行 Q 列の正規化ドット積行列を返します。
dim = normprod('size',S,R,FP) は、層次元 S、入力次元 R、および関数パラメーターを取り、重みサイズ [S 行 R 列] を返します。
dw = normprod('dz_dw',W,P,Z,FP) は、W に対する Z の微分を返します。
例
ここでは、ランダムな重み行列 W および入力ベクトル P を定義し、対応する重み付き入力 Z を計算します。
W = rand(4,3); P = rand(3,1); Z = normprod(W,P)
ネットワークの利用
newgrnn を呼び出すことによって、normprod を使用する標準的なネットワークを作成できます。
入力の重みによって normprod が使用されるようにネットワークを変更するには、net.inputWeights{i,j}.weightFcn を 'normprod' に設定します。層の重みの場合には、net.layerWeights{i,j}.weightFcn を 'normprod' に設定します。
いずれの場合も、sim を呼び出し、normprod を使用してネットワークのシミュレーションを行います。シミュレーションの例については、newgrnn を参照してください。
アルゴリズム
normprod は、入力ベクトルの要素の和によって正規化されたドット積を返します。
z = w*p/sum(p)
バージョン履歴
R2006a より前に導入