Cross-validated bandwidth for the GPS model
Usage
locpol_ps_bw(
dp,
cv_method,
lp_type,
n_start,
bw_init = NULL,
bw_seed = NULL,
bw_upper_cont = "adaptive",
cv_type = "loocv",
lp_order = 1,
n_threads = 0,
rcv_train_frac = 0.5,
mnl_start = "zero",
mnl_maxit = 10000L,
mnl_reltol = sqrt(.Machine$double.eps),
mnl_gradtol = NULL,
mnl_stable = TRUE
)Arguments
- dp
Data list (see
dgps_did) withdpost,covariates, and dimensions.- cv_method
Cross-validation method.
- lp_type
Local polynomial type (e.g., "logit").
- n_start
Number of random restarts (data-adaptive starts are generated).
- bw_init
Optional initial bandwidth(s) for optimization restarts. Supply a length-3 vector or a 3 x n_start matrix. If provided, this overrides internally generated starts and sets n_start to ncol(bw_init).
- bw_seed
Optional integer seed for reproducible random starts.
- bw_upper_cont
Upper bound for continuous bandwidth search. Use numeric value or
"adaptive"(default).- cv_type
Cross-validation type ("loocv" or "rcv").
- lp_order
Local polynomial order for the GPS fit (
pin the paper).- n_threads
Optional number of OpenMP threads for GPS logit routines. Use
n_threads <= 0(default) to rely on runtime/environment detection. If the package is built without OpenMP, the same code runs serially and this argument is ignored.- rcv_train_frac
Training fraction used by RCV sample splitting. Ignored when
cv_type = "loocv". Defaults to0.5.- mnl_start
Starting rule for local multinomial-logit fits:
"zero"for cold starts,"global"for one global parametric start,"previous"for serial previous-fit starts, or"global_previous"for both strategies.- mnl_maxit
Maximum local multinomial-logit optimizer iterations.
- mnl_reltol
Relative objective tolerance for local multinomial-logit optimization.
- mnl_gradtol
Optional infinity-norm gradient gate. Use
NULLto disable and preserve the original objective-only stopping rule.- mnl_stable
Whether to use overflow-safe log-sum-exp math inside the local multinomial-logit optimizer. Defaults to
TRUE.