pyRiemann/pyRiemann

Machine learning for multivariate data through the Riemannian geometry of positive definite matrices in Python

解决的问题

pyRiemann 提供了一个专门的机器学习工具包,通过将协方差矩阵视为弯曲流形(黎曼几何)上的点,而非平坦的欧几里得空间中的点,来分析多变量数据。这种方法在通道间关系比原始值更重要的复杂信号分类中特别有效,例如脑机接口(BCI)和遥感应用。

工作原理

该库实现了与 scikit-learn 兼容的 API,用于处理实值对称正定(SPD)矩阵和复值埃尔米特正定(HPD)矩阵。它从多通道时间序列中估计协方差矩阵,并应用黎曼几何技术进行分类。通过 Python Array API 支持 NumPy 和 PyTorch 后端,使用 PyTorch 张量时可实现 GPU 加速和自动微分(autograd)。

适用人群

专为从事脑机接口应用的生物信号(EEG、MEG、EMG)研究者和工程师设计,也适用于遥感领域中处理高光谱或合成孔径雷达(SAR)图像的研究人员。

主要亮点

  • 与 scikit-learn 集成:模仿 scikit-learn API,可直接与 cross_val_scorePipeline 等工具配合使用。
  • 硬件加速:通过 PyTorch 集成支持 GPU 加速和 autograd。
  • 多场景应用:特别优化用于运动想象、事件相关电位(ERP)和稳态视觉诱发电位(SSVEP)等 BCI 范式。
  • 迁移学习:提供基于黎曼普罗克鲁斯特斯分析的多源迁移学习工具,支持不同被试或会话之间的知识迁移。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目