Discover and explore top open-source AI tools and projects—updated daily.
Bayesian spaced repetition algorithm for flashcard quiz scheduling
Top 82.7% on SourcePulse
Ebisu is a public-domain Python library for intelligent quiz scheduling, designed for developers of flashcard applications. It uses Bayesian statistics and exponential forgetting to predict recall probability and update memory models based on quiz results, moving beyond rigid scheduling algorithms to optimize review efficiency and retention.
How It Works
Ebisu models recall probability using a Beta distribution, which is updated with quiz results via Bayesian inference. Time-based decay is handled by transforming the Beta distribution, resulting in a Generalized Beta of the First Kind (GB1) distribution. The library analytically computes moments of this distribution to approximate a new Beta distribution, enabling efficient and accurate scheduling.
Quick Start & Requirements
pip install ebisu
Highlighted Details
Maintenance & Community
Licensing & Compatibility
Limitations & Caveats
total
values in updateRecall
or when the algorithm is "extremely surprised" by results.11 months ago
Inactive