diff options
Diffstat (limited to 'src/caffe/net.cpp')
-rw-r--r-- | src/caffe/net.cpp | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/caffe/net.cpp b/src/caffe/net.cpp index 397ee02b..f3429b22 100644 --- a/src/caffe/net.cpp +++ b/src/caffe/net.cpp @@ -207,30 +207,22 @@ void Net<Dtype>::GetLearningRateAndWeightDecay() { } template <typename Dtype> -const vector<Blob<Dtype>*>& Net<Dtype>::ForwardPrefilled() { - Dtype ignored_loss; - return ForwardPrefilled(&ignored_loss); -} - -template <typename Dtype> const vector<Blob<Dtype>*>& Net<Dtype>::ForwardPrefilled(Dtype* loss) { - *loss = Dtype(0.); + if (loss != NULL) { + *loss = Dtype(0.); + } for (int i = 0; i < layers_.size(); ++i) { // LOG(ERROR) << "Forwarding " << layer_names_[i]; - *loss += layers_[i]->Forward(bottom_vecs_[i], &top_vecs_[i]); + Dtype layer_loss = layers_[i]->Forward(bottom_vecs_[i], &top_vecs_[i]); + if (loss != NULL) { + *loss += layer_loss; + } } return net_output_blobs_; } template <typename Dtype> const vector<Blob<Dtype>*>& Net<Dtype>::Forward( - const vector<Blob<Dtype>*> & bottom) { - Dtype ignored_loss; - return Forward(bottom, &ignored_loss); -} - -template <typename Dtype> -const vector<Blob<Dtype>*>& Net<Dtype>::Forward( const vector<Blob<Dtype>*> & bottom, Dtype* loss) { // Copy bottom to internal bottom for (int i = 0; i < bottom.size(); ++i) { |