MCPcopy Create free account
hub / github.com/DeepGraphLearning/graphvite / pyOptimizer

Class pyOptimizer

include/bind.h:800–842  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

798};
799
800class pyOptimizer : public py::class_<graphvite::Optimizer> {
801public:
802 typedef graphvite::Optimizer Optimizer;
803 typedef py::class_<Optimizer> Base;
804 using Base::def;
805 using Base::def_readonly;
806
807 template<class... Args>
808 pyOptimizer(py::handle scope, const char *name, const Args &...args) :
809 Base(scope, name, args...) {
810 attr("__doc__") = "Optimizer(*args, **kwargs)"
811 R"(
812 General interface of first-order optimizers.
813
814 This class has 2 constructors
815
816 .. function:: Optimizer(type)
817 .. function:: Optimizer(lr=1e-4)
818
819 Parameters:
820 type (int): kAuto
821 lr (float, optional): initial learning rate
822 )";
823
824 // data members
825 def_readonly("type", &Optimizer::type);
826 def_readonly("lr", &Optimizer::lr);
827 def_readonly("weight_decay", &Optimizer::weight_decay);
828 def_readonly("schedule", &Optimizer::schedule);
829
830 // member functions
831 def(py::init<int>(), py::no_gil(),
832 py::arg("type") = graphvite::kAuto);
833
834 def(py::init<float>(), py::no_gil(),
835 py::arg("lr") = 1e-4);
836
837 py::implicitly_convertible<int, graphvite::Optimizer>();
838 py::implicitly_convertible<float, graphvite::Optimizer>();
839
840 def("__repr__", &Optimizer::info, py::no_gil());
841 }
842};
843
844class pySGD : public py::class_<graphvite::SGD, graphvite::Optimizer> {
845public:

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected