10 ms·
Nice. I also have an implementation in Rust (no public repository, private note-taking app). One low-hanging fruit (IMO) to improve on the base SM-2 is to more
by graboid 2y ago
Nice. I also have an implementation in Rust (no public repository, private note-taking app).
One low-hanging fruit (IMO) to improve on the base SM-2 is to more smartly pick the initial ease. I just took the average ease of "similar" mature items. Since for my use-case, spaced repetition items are embedded in notes, "similar" items meant items in the same note, or in notes that were tagged similarly.
These days I often wonder if I should just switch to FSRS [1], which Anki also switched to. It delivers better results. However, I am hesitating, since I understand SM-2, and it is easy to read the code while FSRS is complex and feels kinda black-boxy, which wouldn't feel right to me.
A quick note to the implementation above: I wonder if having that many answer options is worth it. It probably increases the cognitive effort needed for grading and I wonder if the increased precision in some cases is worth that. But who knows?
[1] https://github.com/open-spaced-repetition https://github.com/open-spaced-repetition
- adastra22 2y agoIs there an actual problem that you'd be solving by switching algorithms?
- zetalyrae 2y agoFSRS gives you the same retention for less work, or, equivalently, you can remember more things for the same amount of time worked.
- adastra22 2y agoWhile being more opaque & difficult to self-correct for. How much more work are we talking about? A theoretical couple of minutes in a year? Not worth it.
- nebulosa 2y agoUsing the scheduler estimates from the FSRS simulator [1], for desired retention held equal at 85%, I received approximately 20-30% improvements in workload upon switching to FSRS from SM-2. Even disregarding the "internal" improvements, the ability to reduce the number of parameters that require modification/present risk to performant scheduling is heavily reduced to only setting desired retention explicitly (a benefit in and of itself) as well as minor decisions (e.g. inclusion of suspended cards). Interpretability really is far less of an issue than efficiency, and frankly the achievements of the team behind FSRS (including their decision to make it publicly available) should be lauded. [1] https://colab.research.google.com/github/open-spaced-repetition/fsrs4anki/blob/v4.10.2/fsrs4anki_simulator.ipynb https://colab.research.google.com/github/open-spaced-repetit...