General features selection based on certain machine learning algorithm and evaluation methods
Sequence (bool, optional, (defualt=True)) - switch for sequence selection selection include forward,backward and simulate anneal selection
Random (bool, optional, (defualt=True)) - switch for randomly selection of features combination
Cross (bool, optional, (defualt=True)) - switch for cross term generate, need to set sf.ImportCrossMethod() after
df (pandas.DataFrame) - dataframe includes include all features
label (str) - name of the label column
lossfunction (function handle) - handle of the loss function, function should return score as float (logloss, AUC, etc)
direction (str,'ascend'/'descend') - direction to improve, 'descend' for logloss, 'ascend' for AUC, etc
features (list, optional, (defualt=[])) - list of initial features combination, empty list will drive code to start from nothing list with all trainable features will drive code to start backward searching at the beginning
features (list) - list of features that not trainable (labelname, string, datetime, etc)
key (str, optional, default=None) - only the features with keyword will be seleted, default to be None
selectstep (int, optional, default=1) - value for features selection step
frac (float, optional, default=1) - percentage of delete features from all features default to be set as using the batch
batch (int, optional, default=1) - delete features quantity every iteration
key (str, optional, default=None) - only delete the features with keyword
CrossMethod (dict) - different cross method like add, divide, multiple and substraction
features (list, optional, default=[]_) - list of strong features, switch for simulate anneal
TimeLimit (float, optional, default=inf) - maximum running time, unit in minute
FeaturesLimit (int, optional, default=inf_) - maximum feature quantity
clf (predictor) - classfier or estimator, sklearn, xgboost, lightgbm, etc. Need to match the validate function
logfile (str) - log file name
validate (function handle) - function return evaluation score and predictor input features dataset X, label series Y, used features, predictor, lossfunction handle