[R] A covariance shrinkage approach designed to crosscov matrices
Hi everyone,
I recently worked on a method that extends typical covariance shrinkage approaches used for covariance estimation (applied to ensemble-based data assimilation).
My motivation comes from the fact that most shrinkage estimators, such as OAS or Ledoit–Wolf (e.g., the implementations in scikit-learn), focus on improving the estimate of the full covariance matrix. In many applications, however, we are actually interested in submatrices of this covariance, especially cross-covariances between two different sets of variables, such as the input/output of a model.
In this work we propose a formulation that is designed for estimating any submatrix of the covariance matrix, including cross-covariance blocks between variables. The shrinkage coefficient is derived with respect to the submatrix of interest rather than the full covariance.
Paper: https://link.springer.com/article/10.1007/s10596-026-10413-w
Code / implementation: https://github.com/LASG-USP/crosscov-shrinkage
I’m sharing this mainly to hear feedback from people working on ML methods that rely on sample covariance estimates. If anyone finds it interesting, it would also be great to hear whether this approach helps in other applications where cross-covariance estimation is important. Any feedback, criticism, or experiments are welcome.
submitted by /u/Maximum-Injury-7284
[link] [comments]