Type: Package
Title: Iterative Hard Thresholding Extensions to Cyclops
Version: 1.0.3
Date: 2025-7-21
Maintainer: Marc A. Suchard <msuchard@ucla.edu>
Description: Fits large-scale regression models with a penalty that restricts the maximum number of non-zero regression coefficients to a prespecified value. While Chu et al (2020) <doi:10.1093/gigascience/giaa044> describe the basic algorithm, this package uses Cyclops for an efficient implementation.
License: Apache License 2.0
Depends: R (≥ 3.2.2), Cyclops (≥ 1.3.0)
Imports: ParallelLogger
Suggests: testthat, knitr, rmarkdown
Encoding: UTF-8
RoxygenNote: 7.3.2
NeedsCompilation: no
Packaged: 2025-07-21 18:55:07 UTC; msuchard
Author: Marc A. Suchard [aut, cre], Patrick Ryan [aut], Observational Health Data Sciences and Informatics [cph]
Repository: CRAN
Date/Publication: 2025-07-21 19:11:35 UTC

Create a fastIHT Cyclops prior object

Description

createFastIhtPrior creates a fastIHT Cyclops prior object for use with fitCyclopsModel.

Usage

createFastIhtPrior(
  K,
  penalty = 0,
  exclude = c(),
  forceIntercept = FALSE,
  fitBestSubset = FALSE,
  initialRidgeVariance = 10000,
  tolerance = 1e-08,
  maxIterations = 10000,
  threshold = 1e-06
)

Arguments

K

Maximum # of non-zero covariates

penalty

Specifies the IHT penalty

exclude

A vector of numbers or covariateId names to exclude from prior

forceIntercept

Logical: Force intercept coefficient into regularization

fitBestSubset

Logical: Fit final subset with no regularization

initialRidgeVariance

Numeric: variance used for algorithm initiation

tolerance

Numeric: maximum abs change in coefficient estimates from successive iterations to achieve convergence

maxIterations

Numeric: maximum iterations to achieve convergence

threshold

Numeric: absolute threshold at which to force coefficient to 0

Value

An IHT Cyclops prior object of class inheriting from "cyclopsPrior" for use with fitCyclopsModel.

Examples

nobs = 500; ncovs = 100
prior <- createFastIhtPrior(K = 3, penalty = log(ncovs), initialRidgeVariance = 1 / log(ncovs))


Create an IHT Cyclops prior object

Description

createIhtPrior creates an IHT Cyclops prior object for use with fitCyclopsModel.

Usage

createIhtPrior(
  K,
  penalty = "bic",
  exclude = c(),
  forceIntercept = FALSE,
  fitBestSubset = FALSE,
  initialRidgeVariance = 0.1,
  tolerance = 1e-08,
  maxIterations = 10000,
  threshold = 1e-06,
  delta = 0
)

Arguments

K

Maximum # of non-zero covariates

penalty

Specifies the IHT penalty; possible values are 'BIC' or 'AIC' or a numeric value

exclude

A vector of numbers or covariateId names to exclude from prior

forceIntercept

Logical: Force intercept coefficient into regularization

fitBestSubset

Logical: Fit final subset with no regularization

initialRidgeVariance

Numeric: variance used for algorithm initiation

tolerance

Numeric: maximum abs change in coefficient estimates from successive iterations to achieve convergence

maxIterations

Numeric: maximum iterations to achieve convergence

threshold

Numeric: absolute threshold at which to force coefficient to 0

delta

Numeric: change from 2 in ridge norm dimension

Value

An IHT Cyclops prior object of class inheriting from "cyclopsPrior" for use with fitCyclopsModel.

Examples

prior <- createIhtPrior(K = 10)

mirror server hosted at Truenetwork, Russian Federation.