HDIM
1.0.0
Packages for High Dimensional Linear Regression
|
Abstract base class for all iterative solvers. More...
#include <abstractsolver.hpp>
Public Member Functions | |
virtual Eigen::Matrix< T, Eigen::Dynamic, 1 > | operator() (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &X, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &Y, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &Beta_0, T lambda, unsigned int num_iterations)=0 |
Run the AbstractSolver for a fixed number of steps, specified by num_iterations. More... | |
virtual Eigen::Matrix< T, Eigen::Dynamic, 1 > | operator() (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &X, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &Y, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &Beta_0, T lambda, T duality_gap_target)=0 |
Run the Sub-Gradient Descent algorithm until the duality gap is below the threshold specified by duality_gap_target. More... | |
Abstract base class for all iterative solvers.
This class supports two types of convergence criteria – iterative and duality gap.
Definition at line 32 of file abstractsolver.hpp.
|
pure virtual |
Run the AbstractSolver for a fixed number of steps, specified by num_iterations.
X | An n x p design matrix. |
Y | A 1 x n vector of predictors. |
Beta_0 | A 1 x n vector of starting parameters. |
lambda | Current grid element. |
num_iterations | The number of times the algorithm should iterate. |
Implemented in hdim::CoordinateDescentWithScreen< T >, hdim::internal::ScreeningSolver< T >, and hdim::internal::Solver< T >.
|
pure virtual |
Run the Sub-Gradient Descent algorithm until the duality gap is below the threshold specified by duality_gap_target.
X | An n x p design matrix. |
Y | A 1 x n vector of predictors. |
Beta_0 | A 1 x n vector of starting parameters. |
lambda | Current grid element. |
duality_gap_target | The algorithm will iterate until the compute duality gap is below duality_gap_target. Note care should be exercised, as the algorithm can iterate ad infinitum. |
Implemented in hdim::internal::ScreeningSolver< T >, hdim::internal::Solver< T >, and hdim::CoordinateDescentWithScreen< T >.