You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This package provides a Python implementation of **Gaussian Process Factor Analysis (GPFA)** that incorporates a novel approach to efficiently handle variable-length time series data. Building on the original method by [Byron Yu et al. (2009)](https://papers.nips.cc/paper/2009/hash/6c1b887a379c4f0c2c621f305d15f6b0-Abstract.html), this implementation introduces a **block-matrix–based inversion strategy** that reuses kernel computations across trials of different lengths.
7
+
8
+
The package also includes **scikit-learn–compatible API** for integration into existing ML workflows such as:
9
+
- A **Modular Preprocessing** — Separates data preprocessing from model logic via a dedicated `EventTimesToCounts` transformer.
10
+
- Accepts standard array-like inputs (not `Neo` objects), simplifying integration with other tools.
11
+
- Follows scikit-learn's transformer–estimator interface for clean, reusable workflows.
12
+
- A new **variance-explained metric** to evaluate GPFA model fits.
13
+
14
+
This implementation is adapted from [Elephant](https://elephant.readthedocs.io/en/latest/reference/gpfa.html)’s GPFA codebase with substantial modifications to improve performance, modularity, and usability in Python-based pipelines.
4
15
5
-
This package is an implementation of Gaussian Process Factor Analysis (GPFA) by Byron Yu et al.,
6
-
(2009) in python. The code is based on [Elephant](https://elephant.readthedocs.io/en/latest/reference/gpfa.html)'s
7
-
python implementation plus additional modules and functional implementations.
0 commit comments