} // parameter initialization
// Setting up the bias multiplier
if (bias_term_) {
- bias_multiplier_.reset(new Blob<Dtype>(1, 1, 1, M_));
- caffe_set(M_, Dtype(1), bias_multiplier_->mutable_cpu_data());
+ bias_multiplier_.Reshape(1, 1, 1, M_);
+ caffe_set(M_, Dtype(1), bias_multiplier_.mutable_cpu_data());
}
this->param_propagate_down_.resize(this->blobs_.size(), true);
}
bottom_data, weight, (Dtype)0., top_data);
if (bias_term_) {
caffe_cpu_gemm<Dtype>(CblasNoTrans, CblasNoTrans, M_, N_, 1, (Dtype)1.,
- bias_multiplier_->cpu_data(),
+ bias_multiplier_.cpu_data(),
this->blobs_[1]->cpu_data(), (Dtype)1., top_data);
}
return Dtype(0);
const Dtype* top_diff = top[0]->cpu_diff();
// Gradient with respect to bias
caffe_cpu_gemv<Dtype>(CblasTrans, M_, N_, (Dtype)1., top_diff,
- bias_multiplier_->cpu_data(), (Dtype)0.,
+ bias_multiplier_.cpu_data(), (Dtype)0.,
this->blobs_[1]->mutable_cpu_diff());
}
if (propagate_down[0]) {
bottom_data, weight, (Dtype)0., top_data);
if (bias_term_) {
caffe_gpu_gemm<Dtype>(CblasNoTrans, CblasNoTrans, M_, N_, 1, (Dtype)1.,
- bias_multiplier_->gpu_data(),
+ bias_multiplier_.gpu_data(),
this->blobs_[1]->gpu_data(), (Dtype)1., top_data);
}
return Dtype(0);
const Dtype* top_diff = top[0]->gpu_diff();
// Gradient with respect to bias
caffe_gpu_gemv<Dtype>(CblasTrans, M_, N_, (Dtype)1., top_diff,
- bias_multiplier_->gpu_data(), (Dtype)0.,
+ bias_multiplier_.gpu_data(), (Dtype)0.,
this->blobs_[1]->mutable_gpu_diff());
}
if (propagate_down[0]) {