setNames() import and the Rmlx device API call in float64
randomized PCA. Document the model output and PCA plot main arguments.GPU linear-model solves now receive a residual correction when Rmlx omits its correction, including QR fallbacks. This improves coefficient and residual precision for nearly deterministic models.
mlxs_lm() and mlxs_glm() now check the final fit in CPU float64 and
warn when estimated combined coefficient error exceeds precision_tol = 0.1
times its statistical uncertainty. Use
precision_tol = NULL to disable the check. Checked fits store the
estimated error as precision_error.
mlxs_lm_fit() now uses Rmlx's specialized code for QR on the GPU when the
design has more than 10 million elements, with qr_method available for
explicit selection.
mlxs_glm() now moves to float64 on the cpu where necessary to
compute more accurate estimates.mlxs_glm_control() function.mlxs_lm() and mlxs_glm() now reject rank-deficient x. A bug which
meant we calculated qr(x) twice has now been fixed.mlxs_lm(), mlxs_lm_fit(), and mlxs_glm_control() now expose
rank_tol to tune rank-deficiency detection. Set rank_tol = FALSE
to skip rank checks entirely.mlxs_lm() now drops unused factor levels.bread(), estfun() and hatvalues() methods for mlxs_lm to allow for
sandwich-style robust standard errors.mlxs_lm methods now return base R objects by default, controllable
via the output argument.confint.mlxs_lm() and confint.mlxs_glm() can now return bootstrap
confidence intervals. So can the respective summary() methods.augment(), predict() and summary() methods.mlxs_prcomp(), a prcomp()-style PCA interface with exact and
randomized truncated MLX-backed decomposition paths. Benchmarks show
this greatly outperforms base R prcomp() and other specialised packages
for fast PCA.mlxs_glmnet(). It can now outperform glmnet::glmnet() for large
problems (roughly n x p > 5,000,000).mlxs_cv_glmnet() as a cross-validation wrapper for the MLX-backed
elastic-net path fits, analogous to glmnet::cv.glmnet().mlxs_lm_fit() so advanced users can call the MLX-backed QR solver directly.