Conversation
nikhilbhavikatti
commented
Sep 3, 2025
- Provides convenience functions built on top of VIPurPCA library for uncertainty propagation in PCA.
- Supports computation of both deterministic eigenvectors and their uncertainty
- _prepare_pca_inputs(dists) : Builds stacked mean vectors, block-diagonal covariance matrices, and labels from a list of distributions.
- For each distribution, its covariance matrix is preserved independently, and all are combined into a single block-diagonal covariance matrix.
- _effective_rank_from_X(X) : Computes the effective numerical rank of the input matrix via SVD.
- _fit_pca_with_uncertainty(Y, cov_Y, n_components) : Fits PCA with uncertainty propagation and adjusts for rank deficiency automatically.
- compute_distribution_eigenvectors(dists, n_components=3) : Returns eigenvectors of distributions under uncertainty-aware PCA.
- plot_distribution_trajectories(...) : Plots static trajectories of distributions in PCA space, with uncertainty-aware sampling of eigenvectors.
|
thank you for providing this integration of vipurpca. A few things need to be resolved or clarified before merging:
|
[x] Plotting function changed to compute_distribution_trajectories [x] Add Notebook to provide sample plotting example [x] Remove paramters pcx, pcy and labels
The comments are addressed in commit : 5afe320 |
|
We had discussed during our meeting that Lines 123 to 141 in 337c581 The reason for this is that we want to be able create distribution plots as shown in the original paper. |