From 4c2c1975c44f26d729ad94c6142480c6f17a33a3 Mon Sep 17 00:00:00 2001 From: Yangqing Jia Date: Fri, 25 Oct 2013 17:32:36 -0700 Subject: [PATCH] regarding https://plus.google.com/113952791760990667476/posts/Q5fwQY6JeEq - stopped the adagrad attempt. --- include/caffe/solver.hpp | 4 +++- src/caffe/proto/caffe.proto | 10 ---------- src/caffe/solver.cpp | 2 +- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/include/caffe/solver.hpp b/include/caffe/solver.hpp index 98c872d..2055ab6 100644 --- a/include/caffe/solver.hpp +++ b/include/caffe/solver.hpp @@ -50,12 +50,14 @@ class SGDSolver : public Solver { protected: virtual void PreSolve(); - virtual Dtype GetLearningRate(); + Dtype GetLearningRate(); virtual void ComputeUpdateValue(); virtual void SnapshotSolverState(SolverState * state); virtual void RestoreSolverState(const SolverState& state); // history maintains the historical momentum data. vector > > history_; + + DISABLE_COPY_AND_ASSIGN(SGDSolver); }; diff --git a/src/caffe/proto/caffe.proto b/src/caffe/proto/caffe.proto index 45f2198..22716a1 100644 --- a/src/caffe/proto/caffe.proto +++ b/src/caffe/proto/caffe.proto @@ -112,16 +112,6 @@ message SolverParameter { // whether to snapshot diff in the results or not. Snapshotting diff will help // debugging but the final protocol buffer size will be much larger. optional bool snapshot_diff = 14 [ default = false]; - // Adagrad solver parameters - // For Adagrad, we will first run normal sgd using the sgd parameters above - // for adagrad_skip iterations, and then kick in the adagrad algorithm, with - // the learning rate being adagrad_gamma * adagrad_skip. Note that the adagrad - // algorithm will NOT use the learning rate multiplier that is specified in - // the layer parameter specifications, as it will adjust the learning rate - // of individual parameters in a data-dependent way. - // WORK IN PROGRESS: not actually implemented yet. - optional float adagrad_gamma = 15; // adagrad learning rate multiplier - optional float adagrad_skip = 16; // the steps to skip before adagrad kicks in } // A message that stores the solver snapshots diff --git a/src/caffe/solver.cpp b/src/caffe/solver.cpp index 87c346f..bf4bdbc 100644 --- a/src/caffe/solver.cpp +++ b/src/caffe/solver.cpp @@ -116,7 +116,7 @@ Dtype SGDSolver::GetLearningRate() { template void SGDSolver::PreSolve() { - // First of all, see if we need to initialize the history + // Initialize the history vector > >& net_params = this->net_->params(); history_.clear(); for (int i = 0; i < net_params.size(); ++i) { -- 2.7.4