DimensionReductionRegression.CORE
— TypeCORE
CORE (covariance reduction) is a dimension reduction method for understanding the unique features of matrices within a collection of covariance matrices. The CORE
result contains the projection directions proj
and the optimized log-likelihood function value llf
.
DimensionReductionRegression.PrincipalHessianDirections
— TypePrincipalHessianDirections
Fit a regression model using principal Hessian directions
DimensionReductionRegression.SlicedAverageVarianceEstimation
— TypeSlicedAverageVarianceEstimation
A multi-index regression model fit using sliced average variance estimation (SAVE).
DimensionReductionRegression.SlicedInverseRegression
— TypeSlicedInverseRegression
A multi-index regression model fit using sliced inverse regression (SIR).
DimensionReductionRegression.coordinate_test
— Methodcoordinate_test(m, H0; resid=false, fit_kwds=(), dt_kwds=(), kwds...)
Test the null hypothesis that Hyp' * B = 0, where B is a basis for the estimated SDR subspace.
If resid
is false, a method-specific chi^2 test is used, depending on the type of m
. In this case, fit_kwds
and dt_kwds
are ignored and any additional keyword arguments are passed to the method-specific dimension test.
If resid
is true, the covariates are residualized relative to H0 and a dimension test is used to assess the null hypothesis that the dimension is zero. In this case, fit_kwds
specifies how the model is fit to the residualized data, and dt_kwds
specifies how the dimension test is conducted.
References:
DR Cook. Testing predictor contributions in sufficient dimension reduction. Annals of Statistics (2004), 32:3. https://arxiv.org/pdf/math/0406520.pdf
Huang SH, Shedden K, Chang HW. Inference for the dimension of a regression relationship using pseudo-covariates. Biometrics. 2023 Sep;79(3):2394-2403. doi: 10.1111/biom.13812.
DimensionReductionRegression.core
— Methodcore(covs, ns, ndim=1, params=Array{Float64}(0, 0), maxiter, gtol)
Given a collection of covariance matrices C1, ..., Cm, covariance reduction (CORE) finds an orthogonal matrix Q such that the reduced matrices Q'CjQ capture most of the variation among the Cj.
Arguments
covs::Array{Array{S, 2}}
: the covariance matrices to reducens::Array{T}
: the sample size used to estimate each covariance matrixndim::Integer=1
: number of dimensions in the reduction (number of columns of Q)params::Array{Float64}
: starting valuesmaxiter::Integer
: the maximum number of iterations in the optimizationgtol::Float64
: return when the gradient norm is smaller than this value
References
DR Cook, L Forzani (2008). Covariance reducing models: an alternative to spectral modeling of covariance matrices. Biometrika 95:4.
A Edelman, TA Arias, ST Smith (1998). The geometry of algorithms with orthogonality constraints. SIAM J Matrix Anal Appl. http://math.mit.edu/~edelman/publications/geometryofalgorithms.pdf
DimensionReductionRegression.dimension_test
— Methoddimension_test(s)
Returns p-values and Chi-squared statistics for the null hypotheses that only the largest k eigenvalues are non-null.
DimensionReductionRegression.dimension_test
— Methoddimension_test(sir)
Test the null hypotheses that only the largest k eigenvalues are non-null.
If method is ':chisq' use the chi-square test of Li (1992). If method is ':diva' use the DIVA approach:
"Inference for the dimension of a regression relationship using pseudo‐covariates" SH Huang, K Shedden, H Chang - Biometrics, 2022.
DimensionReductionRegression.grass_opt
— Methodgrass_opt(params, fun, grad!, maxiter, gtol) -> Tuple
Minimize a function on a Grassmann manifold using steepest descent.
Arguments
- "
params::Array{Float64, 2}
" Starting value for the optimization. - "
fun::Function
" The function to be minimized. - "
grad!::Function
" The gradient of fun. - "
maxiter::Integer
" The maximum number of iterations. - "
gtol::Float64
" Convergence occurs when the gradient norm falls below this value.
The function returns a 3-tuple containing the parameter value that minimizes the function, the minimizing function value, and a Boolean indicating whether the search converged.
Reference
A Edelman, TA Arias, ST Smith (1998). The geometry of algorithms with orthogonality constraints. SIAM J Matrix Anal Appl. http://math.mit.edu/~edelman/publications/geometryofalgorithms.pdf
StatsAPI.fit
— Methodfit(PrincipalHessianDirections, X, y; method="y", ndir=2)
Use Principal Hessian Directions (PHD) to estimate the effective dimension reduction (EDR) space.
StatsAPI.fit
— Methodfit(SlicedAverageVarianceEstimation, X, y; nslice, ndir)
Use Sliced Average Variance Estimation (SAVE) to estimate the effective dimension reduction (EDR) space.
'y' must be sorted before calling 'fit'.
StatsAPI.fit
— Methodsir(y, x; nslice, ndir)
Use Sliced Inverse Regression (SIR) to estimate the effective dimension reduction (EDR) space.
'y' must be sorted before calling 'fit'.