CS.argmax {argminCS}R Documentation

Construct a discrete confidence set for argmax.

Description

This is a wrapper to construct a confidence set for the argmax by negating the input and reusing CS.argmin.

Usage

CS.argmax(data, method = "softmin.LOO", alpha = 0.05, ...)

Arguments

data

An n \times p matrix; each row is a p-dimensional sample.

method

A string indicating the method to use; defaults to 'softmin.LOO'. Can be abbreviated (e.g., 'SML' for 'softmin.LOO'). See Details for full list.

alpha

Significance level. The function returns a 1 - \alpha confidence set.

...

Additional arguments passed to corresponding testing functions.

Details

The supported methods include:

softmin.LOO (SML) Leave-one-out algorithm using exponential weighting.
argmin.LOO (HML) Variant of SML that uses hard argmin instead of soft weighting. Not recommended.
nonsplit (NS) Variant of SML without data splitting. Requires a fixed lambda value. Not recommended.
Bonferroni (MT) Multiple testing using Bonferroni correction.
Gupta (GTA) The method of Gupta SS (1965). “On Some Multiple Decision (Selection and Ranking) Rules.” Technometrics, 7(2), 225–245. doi:10.1080/00401706.1965.10490251..
Futschik (FCHK) A two-step method from Futschik A, Pflug G (1995). “Confidence Sets for Discrete Stochastic Optimization.” Annals of Operations Research, 56(1), 95–108. doi:10.1007/BF02031702..

Value

A vector of indices (1-based) representing the confidence set for the argmax.

References

Zhang T, Lee H, Lei J (2024). “Winners with confidence: Discrete argmin inference with an application to model selection.” arXiv preprint arXiv:2408.02060.

Gupta SS (1965). “On Some Multiple Decision (Selection and Ranking) Rules.” Technometrics, 7(2), 225–245. doi:10.1080/00401706.1965.10490251.

Futschik A, Pflug G (1995). “Confidence Sets for Discrete Stochastic Optimization.” Annals of Operations Research, 56(1), 95–108. doi:10.1007/BF02031702.

Chernozhukov V, Chetverikov D, Kato K (2013). “Testing many moment inequalities.” RePEc. IDEAS Working Paper Series.

Examples

set.seed(108)
n <- 200
p <- 20
mu <- (1:p)/p
cov <- diag(p)
data <- MASS::mvrnorm(n, mu, cov)

## softmin.LOO (SML)
CS.argmax(data)

## argmin.LOO (HML)
CS.argmax(data, method = "HML")

## nonsplit (NS) - requires lambda
CS.argmax(data, method = "NS", lambda = sqrt(n)/2.5)

## Bonferroni (MT) - t test default
CS.argmax(data, method = "MT", test = "t")

## Gupta (GTA)
CS.argmax(data, method = "GTA")

## Futschik (FCHK) with default alpha.1 and alpha.2
CS.argmax(data, method = "FCHK")

## Futschik (FCHK) with user-specified alpha.1 and alpha.2
alpha.1 <- 0.001
alpha.2 <- 1 - (0.95 / (1 - alpha.1))
CS.argmax(data, method = "FCHK", alpha.1 = alpha.1, alpha.2 = alpha.2)


[Package argminCS version 1.1.0 Index]