Skip to contents

It is highly recommended that you normalise the data, either before using SLISE or by setting normalise = TRUE.

Usage

slise.fit(
  X,
  Y,
  epsilon,
  lambda1 = 0,
  lambda2 = 0,
  weight = NULL,
  intercept = TRUE,
  normalise = FALSE,
  initialisation = slise_initialisation_candidates,
  ...
)

Arguments

X

Matrix of independent variables

Y

Vector of the response variable

epsilon

Error tolerance

lambda1

L1 regularisation coefficient (default: 0)

lambda2

L2 regularisation coefficient (default: 0)

weight

Optional weight vector (default: NULL)

intercept

Should an intercept be added (default: TRUE)

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)

Value

slise.object

Examples

X <- matrix(rnorm(32), 8, 4)
Y <- rnorm(8)
model <- slise.fit(X, Y, (max(Y) - min(Y)) * 0.1)
predicted <- predict(model, X)