updateParameter ============================== .. js:function:: ConvolutionalLayer.updateParameter() パラメータの更新 ソース ^^^^^^ .. code-block:: js updateParameter() { var lap = new Lap(this.updateTime); var prev_layer = this.prevLayer; var eta = net.learningRate / miniBatchSize; var weight_idx = 0; // 出力のチャネルに対し for (var channel_idx = 0; channel_idx < this.numChannels; channel_idx++) { this.bias.dt[channel_idx] -= eta * this.deltaBias.dt[channel_idx]; // 入力のチャネルに対し for(var prev_channel_idx = 0; prev_channel_idx < prev_layer.numChannels; prev_channel_idx++){ // フィルターの行に対し for (var r2 = 0; r2 < this.filterSize; r2++) { // フィルターの列に対し for (var c2 = 0; c2 < this.filterSize; c2++) { this.weight.dt[weight_idx] -= ( eta * this.deltaWeight.dt[weight_idx] + net.learningRate * L2lambda * this.weight.dt[weight_idx]); weight_idx++; } } } } Assert(weight_idx == this.weight.dt.length); lap.Time(); }