5 #ifndef BALL_QSAR_FEATURESELECTION_H
6 #define BALL_QSAR_FEATURESELECTION_H
8 #ifndef BALL_QSAR_MODEL_H
12 #ifndef BALL_QSAR_KERNELMODEL_H
16 #ifndef BALL_QSAR_LINEARMODEL_H
39 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
47 void setModel(
Model& m);
55 void forwardSelection(
int k=4,
bool optPar=0);
61 void backwardSelection(
int k=4,
bool optPar=0);
63 void stepwiseSelection(
int k=4,
bool optPar=0);
69 void twinScan(
int k,
bool optPar=0);
75 void implicitSelection(
LinearModel& lm,
int act=1,
double d=1);
79 void removeHighlyCorrelatedFeatures(
double& cor_threshold);
83 void removeLowResponseCorrelation(
double& min_correlation);
87 void removeEmptyDescriptors();
89 void selectStat(
int s);
93 void setQualityIncreaseCutoff(
double& d);
102 void updateWeights(std::multiset<unsigned int>& oldDescIDs, std::multiset<unsigned int>& newDescIDs, Eigen::VectorXd& oldWeights);
111 std::multiset<unsigned int>* findIrrelevantDescriptors();
117 Eigen::VectorXd* weights_;
120 void forward(
bool stepwise,
int k,
bool optPar);
123 double quality_increase_cutoff_;
BALL_EXTERN_VARIABLE const double k