Ensmallen – Flexible C++ library for efficient mathematical optimization
11–17 of 17 posts
Re: Ensmallen – Flexible C++ library for efficient mathematical optimization
#12Sounds like the name is based on the perfectly cromulent word "embiggen"[1], but somewhat confusingly uses the first part of the word "enlarge". [1] https://www.merriam-webster.com/dictionary/embiggen
Re: Ensmallen – Flexible C++ library for efficient mathematical optimization
#13How does this differ from Ceres?
Ceres also does work for dense problems and general convex optimization, but it doesn't provide as much of an advantage over other packages (that is, you could just call into any existing l-bfgs implementation and wouldn't benefit much).
For some other problems, Ceres doesn't scale or can get in the way. For example, if you have a single value to maximize and a large number of variables, then ceres' auto-diff system won't work (ceres::Jet is based on "forward-mode" automatic differentiation, storing partial derivatives on the stack. If you have a high-dimensional gradient, it can exhaust stack space). On the other hand, Ensmallen doesn't seem to come with any auto-diff functionality.
Re: Ensmallen – Flexible C++ library for efficient mathematical optimization
#14Re: Ensmallen – Flexible C++ library for efficient mathematical optimization
#15[1] The test cases can be seen as examples, obviously, but they are not written in an easily accessible form IMHO.
EDIT: Looking more closely, it seems you need to provide an explicit gradient, no autodiff included, which makes it a complete nonstarter for me.
Re: Ensmallen – Flexible C++ library for efficient mathematical optimization
#16Sounds like the name is based on the perfectly cromulent word "embiggen"[1], but somewhat confusingly uses the first part of the word "enlarge". [1] https://www.merriam-webster.com/dictionary/embiggen
;)
Re: Ensmallen – Flexible C++ library for efficient mathematical optimization
#17Sounds like the name is based on the perfectly cromulent word "embiggen"[1], but somewhat confusingly uses the first part of the word "enlarge". [1] https://www.merriam-webster.com/dictionary/embiggen
I don't think "emsmallen" can be said reasonably :)