LDA++
|
#include <GradientDescent.hpp>
Public Types | |
typedef ParameterType::Scalar | Scalar |
Public Member Functions | |
virtual Scalar | search (const ProblemType &problem, Eigen::Ref< ParameterType > x0, const ParameterType &grad_x0, const ParameterType &direction)=0 |
LineSearch is an interface that is meant to be used to update the parameter x0 in the direction 'direction' by (probably) performing a line search for the best value.
|
pure virtual |
Search for a good enough function value in the direction given and the function given.
This function changes its parameter x0 which is passed by reference.
problem | The function to be minimized |
x0 | The improved position (passed by reference) |
grad_x0 | The gradient at the initial x0 |
direction | The direction of search which can be different than the gradient to account for Newton methods |
Implemented in ldaplusplus::optimization::ArmijoLineSearch< ProblemType, ParameterType >, and ldaplusplus::optimization::ConstantLineSearch< ProblemType, ParameterType >.