THALis: covariance and Riemannian feature pipeline

window → covariance → tangent features, interesting shift from looking at each channel alone. draw what shrinkage does to a nearly flat covariance ellipsoid later

archived module (fb0bfe7): src/control/riemann_features.py implements EEG-window covariance estimation, a Riemannian/Fréchet mean, tangent-space projection, affine-invariant and log-Euclidean distances, and vectorized tangent features.

Rest and pinky TDA summary
Rest and pinky TDA summary

Sliding-window Betti numbers
Sliding-window Betti numbers

reference chain: window → covariance estimate → reference/mean → tangent coordinates or manifold distances → downstream feature consumer. Record whether alpha/beta bands are handled jointly or separately, since that changes matrix dimension and interpretation.

  • review questions: what estimator/regularization keeps covariance matrices positive definite with short windows? Is the reference mean fit on training data only? Which distance is used in TDA versus classification? Distinguish the chosen manifold metric from the archive's overly broad claim that ordinary matrix-space distance is meaningless.
  • experiment linkage: the following TDA runs include variants without Riemannian features. Those comparisons are the place to evaluate the representation choice; the module's existence alone is not evidence of better decoding or topology preservation.
  • archived code references: fb0bfe7.

Movement-class persistence diagrams
Movement-class persistence diagrams

Rest–pinky H₁ bottleneck distances
Rest–pinky H₁ bottleneck distances

Bootstrap intervals for Betti numbers
Bootstrap intervals for Betti numbers

Honey, I Shrunk the Sample Covariance Matrix
Honey, I Shrunk the Sample Covariance Matrix

Multi-class BCI classification with Riemannian geometry
Multi-class BCI classification with Riemannian geometry

MOABB Schirrmeister2017 dataset documentation
MOABB Schirrmeister2017 dataset documentation