It is highly recommended that you normalise the data, either before using SLISE or by setting normalise = TRUE.
Usage
slise.formula(
formula,
data,
epsilon,
lambda1 = 0,
lambda2 = 0,
weight = NULL,
normalise = FALSE,
initialisation = slise_initialisation_candidates,
...
)
Arguments
- formula
formula
- data
data for the formula
- epsilon
Error tolerance
- lambda1
L1 regularisation coefficient (default: 0)
- lambda2
L2 regularisation coefficient (default: 0)
- weight
Optional weight vector (default: NULL)
- normalise
Preprocess X and Y by scaling, note that epsilon is not scaled (default: FALSE)
- initialisation
Function that gives the initial alpha and beta, or a list containing the initial alpha and beta (default: slise_initialisation_candidates)
- ...
Arguments passed on to
graduated_optimisation
,slise_initialisation_candidates
beta_max
Stopping sigmoid steepness (default: 20 / epsilon^2)
max_approx
Approximation ratio when selecting the next beta (default: 1.15)
max_iterations
Maximum number of OWL-QN iterations (default: 300)
debug
Should debug statement be printed each iteration (default: FALSE)
num_init
the number of initial subsets to generate (default: 500)
beta_max_init
the maximum sigmoid steepness in the initialisation
pca_treshold
the maximum number of columns without using PCA (default: 10)
Examples
data <- data.frame(y = rnorm(8), a = rnorm(8), b = rnorm(8))
model <- slise.formula(y ~ a * b + abs(a), data, 0.1, normalise = TRUE)