![]() |
slope 6.2.1
|
Base class for screening rules in SLOPE. More...
#include <screening.h>

Public Member Functions | |
| virtual | ~ScreeningRule ()=default |
| Virtual destructor. | |
| virtual std::vector< int > | initialize (const std::vector< int > &full_set, int alpha_max_ind)=0 |
| Initialize the screening rule at the start of the path algorithm. | |
| virtual std::vector< int > | screen (Eigen::VectorXd &gradient, const Eigen::ArrayXd &lambda_curr, const Eigen::ArrayXd &lambda_prev, const Eigen::VectorXd &beta, const std::vector< int > &full_set)=0 |
| Screen for the next path step. | |
| virtual bool | checkKktViolations (Eigen::VectorXd &gradient, const Eigen::VectorXd &beta, const Eigen::ArrayXd &lambda_curr, std::vector< int > &working_set, const Eigen::MatrixXd &x, const Eigen::MatrixXd &residual, const Eigen::VectorXd &x_centers, const Eigen::VectorXd &x_scales, JitNormalization jit_normalization, const std::vector< int > &full_set)=0 |
| Check for KKT violations and update working set if necessary. | |
| virtual bool | checkKktViolations (Eigen::VectorXd &gradient, const Eigen::VectorXd &beta, const Eigen::ArrayXd &lambda_curr, std::vector< int > &working_set, const Eigen::SparseMatrix< double > &x, const Eigen::MatrixXd &residual, const Eigen::VectorXd &x_centers, const Eigen::VectorXd &x_scales, JitNormalization jit_normalization, const std::vector< int > &full_set)=0 |
| Check for KKT violations with sparse matrix input. | |
| virtual bool | checkKktViolations (Eigen::VectorXd &gradient, const Eigen::VectorXd &beta, const Eigen::ArrayXd &lambda_curr, std::vector< int > &working_set, const Eigen::Map< Eigen::MatrixXd > &x, const Eigen::MatrixXd &residual, const Eigen::VectorXd &x_centers, const Eigen::VectorXd &x_scales, JitNormalization jit_normalization, const std::vector< int > &full_set)=0 |
| Check for KKT violations with sparse matrix input. | |
| virtual bool | checkKktViolations (Eigen::VectorXd &gradient, const Eigen::VectorXd &beta, const Eigen::ArrayXd &lambda_curr, std::vector< int > &working_set, const Eigen::Map< Eigen::SparseMatrix< double > > &x, const Eigen::MatrixXd &residual, const Eigen::VectorXd &x_centers, const Eigen::VectorXd &x_scales, JitNormalization jit_normalization, const std::vector< int > &full_set)=0 |
| Check for KKT violations with sparse matrix input. | |
| virtual std::string | toString () const =0 |
| Get string representation of the screening rule. | |
Protected Attributes | |
| std::vector< int > | strong_set |
| Strong set of variables. | |
Base class for screening rules in SLOPE.
This abstract class defines the interface for screening rules to accelerate optimization by reducing the problem size.
Definition at line 47 of file screening.h.
|
pure virtual |
Check for KKT violations with sparse matrix input.
| gradient | The gradient vector |
| beta | Current beta coefficients |
| lambda_curr | Current lambda values |
| working_set | Current working set (will be updated if violations found) |
| x | Design matrix (sparse format) |
| residual | Current residuals |
| x_centers | Centers for normalization |
| x_scales | Scales for normalization |
| jit_normalization | Whether to use JIT normalization |
| full_set | Full set of features |
Implemented in slope::NoScreening, and slope::StrongScreening.
|
pure virtual |
Check for KKT violations with sparse matrix input.
| gradient | The gradient vector |
| beta | Current beta coefficients |
| lambda_curr | Current lambda values |
| working_set | Current working set (will be updated if violations found) |
| x | Design matrix (sparse format) |
| residual | Current residuals |
| x_centers | Centers for normalization |
| x_scales | Scales for normalization |
| jit_normalization | Whether to use JIT normalization |
| full_set | Full set of features |
Implemented in slope::NoScreening, and slope::StrongScreening.
|
pure virtual |
Check for KKT violations and update working set if necessary.
| gradient | The gradient vector |
| beta | Current beta coefficients |
| lambda_curr | Current lambda values |
| working_set | Current working set (will be updated if violations found) |
| x | Design matrix |
| residual | Current residuals |
| x_centers | Centers for normalization |
| x_scales | Scales for normalization |
| jit_normalization | Whether to use JIT normalization |
| full_set | Full set of features |
Implemented in slope::NoScreening, and slope::StrongScreening.
|
pure virtual |
Check for KKT violations with sparse matrix input.
| gradient | The gradient vector |
| beta | Current beta coefficients |
| lambda_curr | Current lambda values |
| working_set | Current working set (will be updated if violations found) |
| x | Design matrix (sparse format) |
| residual | Current residuals |
| x_centers | Centers for normalization |
| x_scales | Scales for normalization |
| jit_normalization | Whether to use JIT normalization |
| full_set | Full set of features |
Implemented in slope::NoScreening, and slope::StrongScreening.
|
pure virtual |
Initialize the screening rule at the start of the path algorithm.
| full_set | The full set of feature indices |
| alpha_max_ind | The index of the feature with maximum absolute gradient |
Implemented in slope::NoScreening, and slope::StrongScreening.
|
pure virtual |
Screen for the next path step.
| gradient | The gradient vector |
| lambda_curr | Current lambda values |
| lambda_prev | Previous lambda values |
| beta | Current beta coefficients |
| full_set | Full set of features |
Implemented in slope::NoScreening, and slope::StrongScreening.
|
pure virtual |
Get string representation of the screening rule.
Implemented in slope::NoScreening, and slope::StrongScreening.
|
protected |
Strong set of variables.
Definition at line 195 of file screening.h.