optimStepSizeFactor: Coarse line search for optimum step-size modification factor

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/optimStepSizeFactor.R

Description

This routine helps in finding an optimum step-size modification factor for GAMBoost, i.e., that results in an optimum in terms of cross-validated log-likelihood.

Usage

1
2
3
4
optimStepSizeFactor(x=NULL,y,x.linear=NULL,
                    direction=c("down","up","both"),start.stepsize=0.1,
                    iter.max=10,constant.cv.res=NULL,parallel=FALSE,
                    trace=FALSE,...) 

Arguments

x

n * p matrix of covariates with potentially non-linear influence. If this is not given (and argument x.linear is employed), a generalized linear model is fitted.

y

response vector of length n.

x.linear

optional n * q matrix of covariates with linear influence.

direction

direction of line search for an optimal step-size modification factor (starting from value 1).

start.stepsize

step size used for the line search. A final step is performed using half this size.

iter.max

maximum number of search iterations.

constant.cv.res

result of cv.GAMBoost (with just.criterion=TRUE) for stepsize.factor.linear=1, that can be provided for saving computing time, if it already is available.

parallel

logical value indicating whether evaluation of cross-validation folds should be performed in parallel on a compute cluster. This requires library snowfall.

trace

logical value indicating whether information on progress should be printed.

...

miscellaneous parameters for cv.GAMBoost.

Details

A coarse line search is performed for finding the best parameter stepsize.factor.linear for GAMBoost. If an pendistmat.linear argument is provided (which is passed on to GAMBoost), a search for factors smaller than 1 is sensible (corresponding to direction="down"). If no connection information is provided, it is reasonable to employ direction="both", for avoiding restrictions without subject matter knowledge.

Value

List with the following components:

factor.list

array with the evaluated step-size modification factors.

critmat

matrix with the mean log-likelihood for each step-size modification factor in the course of the boosting steps.

optimal.factor.index

index of the optimal step-size modification factor.

optimal.factor

optimal step-size modification factor.

optimal.step

optimal boosting step number, i.e., with minimum mean log-likelihood, for step-size modification factor optimal.factor.

Author(s)

Written by Harald Binder [email protected].

References

Binder, H. and Schumacher, M. (2009). Incorporating pathway information into boosting estimation of high-dimensional risk prediction models. BMC Bioinformatics. 10:18.

See Also

GAMBoost, cv.GAMBoost

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
## Not run: 
##  Generate some data 
n <- 100; p <- 10

#   covariates with non-linear (smooth) effects
x <- matrix(runif(n*p,min=-1,max=1),n,p)             
eta <- -0.5 + 2*x[,1] + 2*x[,3]^2 + x[,9]-.5
y <- rbinom(n,1,binomial()$linkinv(eta))

#  Determine step-size modification factor for a generalize linear model
#  As there is no connection matrix,  perform search into both directions 

optim.res <- optimStepSizeFactor(direction="both",
                                y=y,x.linear=x,family=binomial(),
                                penalty.linear=200,
                                trace=TRUE)

#   Fit with obtained step-size modification parameter and optimal number of boosting
#   steps obtained by cross-validation

gb1 <- GAMBoost(x=NULL,y=y,x.linear=x,family=binomial(),penalty.linear=200,
                stepno=optim.res$optimal.step,
                stepsize.factor.linear=optim.res$optimal.factor) 

summary(gb1)


## End(Not run)

GAMBoost documentation built on May 30, 2017, 3:50 a.m.