ctrl_GPCMlasso: Control function for GPCMlasso

View source: R/ctrl_GPCMlasso.R

ctrl_GPCMlassoR Documentation

Control function for GPCMlasso

Description

Control parameters for penalty terms and for tuning the fitting algorithm.

Usage

ctrl_GPCMlasso(
  log.lambda = TRUE,
  lambda = NULL,
  l.lambda = 50,
  lambda.min = 0.1,
  penalize.main.effects = FALSE,
  fuse.per.variable = FALSE,
  scale.covariate.effects = TRUE,
  include.item.effects = TRUE,
  adaptive = TRUE,
  weight.penalties = TRUE,
  ada.lambda = 1e-04,
  ada.power = 1,
  Q = 15,
  lambda2 = 1e-04,
  cvalue = 1e-05,
  trace = TRUE,
  folds = 10,
  cores = 25,
  null_thresh = 0.01,
  gradtol = 1e-06,
  steptol = 1e-06,
  iterlim = 500,
  precision = 3,
  all.dummies = FALSE,
  ctrl.gpcm = list()
)

Arguments

log.lambda

Logical. Should the grid of tuning parameters be created on a log scale?

lambda

Optional vector of tuning parameters. If NULL, a grid of length l.lambda is created automatically.

l.lambda

Length of the tuning parameter grid.

lambda.min

Minimal value used for the automatically created tuning parameter grid.

penalize.main.effects

Logical. Should global covariate effects be penalized?

fuse.per.variable

Logical. Should item-specific effects referring to the same covariate be fused across items?

scale.covariate.effects

Logical. If TRUE, covariate effects are multiplied by item discrimination parameters as in the original GPCMlasso parameterization. If FALSE, covariate effects enter the linear predictor directly.

include.item.effects

Logical. If TRUE, item-specific covariate effects are included. If FALSE, only global covariate effects are estimated.

adaptive

Logical. Should adaptive lasso weights be used?

weight.penalties

Logical. Should penalties be weighted according to the number of penalty terms and corresponding parameters?

ada.lambda

Tuning parameter for ridge-regularized estimation of adaptive weights.

ada.power

Power used for adaptive weights.

Q

Number of nodes used in Gauss-Hermite quadrature.

lambda2

Ridge penalty on all coefficients except slope parameters.

cvalue

Internal parameter for the quadratic approximation of the L_1 penalty.

trace

Logical. Should progress information be printed?

folds

Number of folds for cross-validation.

cores

Number of cores used for parallel computation.

null_thresh

Threshold used to distinguish zero from non-zero values.

gradtol

Parameter for optimization accuracy. See nlm.

steptol

Parameter for optimization accuracy. See nlm.

iterlim

Parameter for optimization accuracy. See nlm.

precision

Number of decimal places used to round coefficient estimates in selected output methods.

all.dummies

Logical. Should all dummy variables be included for factors with more than two categories?

ctrl.gpcm

List of control arguments for the initial gpcm fit used to obtain starting values.

Value

A list of control parameters used by GPCMlasso.

Author(s)

Gunther Schauberger
gunther.schauberger@tum.de

References

Schauberger, G. and Mair, P. (2020). A regularization approach for the detection of differential item functioning in generalized partial credit models. Behavior Research Methods, 52, 279–294. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.3758/s13428-019-01224-2")}

See Also

GPCMlasso, plot.GPCMlasso

Examples

ctrl <- ctrl_GPCMlasso()
str(ctrl)

ctrl_small <- ctrl_GPCMlasso(
  l.lambda = 5,
  cores = 1,
  trace = FALSE
)

ctrl_fusion <- ctrl_GPCMlasso(
  l.lambda = 5,
  cores = 1,
  penalize.main.effects = TRUE,
  include.item.effects = TRUE,
  fuse.per.variable = TRUE,
  scale.covariate.effects = FALSE,
  trace = FALSE
)


GPCMlasso documentation built on Sept. 8, 2026, 5:08 p.m.