starting_point {pense} | R Documentation |
Create Starting Points for the PENSE Algorithm
Description
Create a starting point for starting the PENSE algorithm in pense()
.
Multiple starting points can be created by combining starting points via
c(starting_point_1, starting_point_2, ...)
.
Usage
starting_point(beta, intercept, lambda, alpha)
as_starting_point(object, specific = FALSE, ...)
## S3 method for class 'enpy_starting_points'
as_starting_point(object, specific = FALSE, ...)
## S3 method for class 'pense_fit'
as_starting_point(object, specific = FALSE, alpha, lambda, ...)
## S3 method for class 'pense_cvfit'
as_starting_point(
object,
specific = FALSE,
alpha,
lambda = c("min", "se"),
se_mult = 1,
...
)
Arguments
beta |
beta coefficients at the starting point. Can be a numeric vector, a sparse vector of class dsparseVector, or a sparse matrix of class dgCMatrix with a single column. |
intercept |
intercept coefficient at the starting point. |
lambda |
optionally either a string specifying which penalty level to use
( |
alpha |
optional value for the |
object |
an object with estimates to use as starting points. |
specific |
whether the estimates should be used as starting points only at the penalization level they are computed for. Defaults to using the estimates as starting points for all penalization levels. |
... |
further arguments passed to or from other methods. |
se_mult |
If |
Details
A starting points can either be shared, i.e., used for every penalization level PENSE
estimates are computed for, or specific to one penalization level.
To create a specific starting point, provide the penalization parameters lambda
and alpha
.
If lambda
or alpha
are missing, a shared starting point is created.
Shared and specific starting points can all be combined into a single list of starting points,
with pense()
handling them correctly.
Note that specific starting points will lead to the lambda
value being added to the
grid of penalization levels.
See pense()
for details.
Starting points computed via enpy_initial_estimates()
are by default shared starting points
but can be transformed to specific starting points via
as_starting_point(..., specific = TRUE)
.
When creating starting points from cross-validated fits, it is possible to extract only the
estimate with best CV performance (lambda = "min"
), or the estimate with CV performance
statistically indistinguishable from the best performance (lambda = "se"
).
This is determined to be the estimate with prediction performance within
se_mult * cv_se
from the best model.
Value
an object of type starting_points
to be used as starting point for pense()
.
See Also
Other functions for initial estimates:
enpy_initial_estimates()
,
prinsens()