Skip to content

Commit 5cc76ad

Browse files
author
Daniel Gordon
committed
enabling the alternate solvers to be accessed by the python interface
1 parent 66823b5 commit 5cc76ad

3 files changed

Lines changed: 12 additions & 2 deletions

File tree

python/caffe/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from .pycaffe import Net, SGDSolver
1+
from .pycaffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, RMSPropSolver, AdaDeltaSolver, AdamSolver
22
from ._caffe import set_mode_cpu, set_mode_gpu, set_device, Layer, get_solver, layer_type_list
33
from .proto.caffe_pb2 import TRAIN, TEST
44
from .classifier import Classifier

python/caffe/_caffe.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,15 @@ BOOST_PYTHON_MODULE(_caffe) {
297297
bp::class_<AdaGradSolver<Dtype>, bp::bases<Solver<Dtype> >,
298298
shared_ptr<AdaGradSolver<Dtype> >, boost::noncopyable>(
299299
"AdaGradSolver", bp::init<string>());
300+
bp::class_<RMSPropSolver<Dtype>, bp::bases<Solver<Dtype> >,
301+
shared_ptr<RMSPropSolver<Dtype> >, boost::noncopyable>(
302+
"RMSPropSolver", bp::init<string>());
303+
bp::class_<AdaDeltaSolver<Dtype>, bp::bases<Solver<Dtype> >,
304+
shared_ptr<AdaDeltaSolver<Dtype> >, boost::noncopyable>(
305+
"AdaDeltaSolver", bp::init<string>());
306+
bp::class_<AdamSolver<Dtype>, bp::bases<Solver<Dtype> >,
307+
shared_ptr<AdamSolver<Dtype> >, boost::noncopyable>(
308+
"AdamSolver", bp::init<string>());
300309

301310
bp::def("get_solver", &GetSolverFromFile,
302311
bp::return_value_policy<bp::manage_new_object>());

python/caffe/pycaffe.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
from itertools import zip_longest as izip_longest
1111
import numpy as np
1212

13-
from ._caffe import Net, SGDSolver
13+
from ._caffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, \
14+
RMSPropSolver, AdaDeltaSolver, AdamSolver
1415
import caffe.io
1516

1617
# We directly update methods from Net here (rather than using composition or

0 commit comments

Comments
 (0)