Structural Recall

Spaced repetition that reinforces connections between ideas.

Structural Recall adds a structural recommendation layer to spaced repetition. When a card is forgotten, it identifies other cards built on the same underlying concepts and schedules them for reinforcement. FSRS manages individual review timing; a reviewed motif graph decides which related material to revisit.

  • Python
  • FSRS-6
  • Motif graph
  • LLM-assisted authoring

The idea

Spaced-repetition systems typically schedule each card according to its own review history. But the ideas behind cards often overlap. Forgetting an ordinary least squares derivation, for instance, may indicate difficulty with concepts that also appear in ridge regression.

Structural Recall represents these recurring ideas as motifs. A failed card triggers a search for other cards sharing its motifs, or connected through one graph edge. The goal is to refresh related structure, not merely repeat the same question.

How it works

The system combines two independent mechanisms. FSRS-6 predicts recall probability and determines when each card is due. The motif graph identifies related cards to resurface after a failure.

Recommendations favor shared, uncommon motifs; for similarly related candidates, estimated recall probability favors cards closer to being forgotten. Up to three reinforcements are placed in the following session alongside 15 regularly scheduled cards. If the graph provides no neighbors, MiniLM embedding similarity supplies a fallback.

Constructing the graph

An LLM-assisted pipeline proposes flashcards, motifs, and links from lecture notes and other source material. Proposed motifs require human approval; duplicates are resolved and relationships are reviewed in a separate pass.

The graph is deliberately explicit. A recommendation can be traced to the motifs and weighted connections that produced it, rather than only to a semantic similarity score. The implementation separates authoring, review sessions, recommendation logic, scheduling, and storage so these parts can evolve independently.

Evaluation

I compared each card's three highest-ranked motif neighbors against recommendations from embedding cosine similarity and lexical Jaccard similarity. The experiment used two independently authored collections: machine learning/statistics and natural language processing.

Top-three recommendation overlapML / StatisticsNLP
Semantic similarity0.1850.146
Lexical similarity0.1710.122

Overlap was below 0.20 against both baselines in both collections. This shows that motif-based retrieval selects substantially different neighbors; it does not establish that the added reviews improve retention.

Limitations

Different recommendations are not necessarily better recommendations. The current evaluation measures how structurally selected neighbors differ from text-based baselines, not how much those reviews improve learning.

Coverage also varies by material: conceptual cards in the NLP collection were more likely to lack motifs than cards built around reusable mathematical structures. The next step would be a longitudinal comparison against FSRS-only review, measuring retention and review cost.

Technical details

The main case study is intentionally short. The implementation, scoring rules, data construction, and evaluation details are preserved below for readers who want to inspect them.

Recommendation algorithm

After a card is marked forgotten, the recommender gathers cards sharing one of its motifs or reachable through a single edge in the reviewed motif graph. Directly shared motifs carry weight 1.0; a constitutive graph edge carries weight 1.0, while a merely related edge carries weight 0.5.

score(c′) =Σm ∈ matched w(m) · ln(N / df(m))− precall(c′)

The logarithmic inverse-frequency term rewards motifs that are rare in the collection. df(m) counts cards containing motif m, and FSRS supplies the candidate's recall probability. Because the structural sum is not bounded to the same range as recall probability, the latter is primarily a tie-breaker among candidates with similar structural scores.

For structural cards, retrieval may cross topics; conceptual cards are searched within a narrower topic scope. If no structural candidate is available, MiniLM cosine similarity supplies the fallback.

Scheduling and reinforcement

FSRS-6 manages the normal review schedule and updates each card's memory state after a grade. The daily plan is fixed at the start of a session: up to 15 scheduled cards and three additional reinforcements.

A failure advances the forgotten card's FSRS review and triggers a neighbor search. The top one or two structural neighbors are queued for the next session rather than inserted immediately. Pending reinforcements expire after three days if not served. The queue is a short-horizon reinforcement mechanism; FSRS remains responsible for long-term scheduling.

Knowledge graph construction

The authoring agent reads lecture PDFs and notes, then drafts cards with concept labels, kinds, and candidate motifs. New motifs require human approval before joining the vocabulary; flagged duplicates are resolved separately.

Edges between motifs are proposed only after the vocabulary has stabilized and are then reviewed. The two edge weights distinguish identity or constitutive relationships (1.0) from related but distinct ideas (0.5). This human-reviewed structure allows the recommendation path to be explained.

System architecture

The UI layer provides authoring commands and study review interactions. A logic layer owns recommendation ranking, study sessions, ingestion, scheduling, and vocabulary policy. The foundation layer owns persistent storage and text embeddings.

Only the store module performs SQL operations, including the atomic grade commit and reinforcement queue. Other modules receive a store instance rather than importing a database connection. A consistent eligibility filter restricts access to reviewed cards in rotation that have not been deleted.

Evaluation methodology

For every card, the top three recommendations from the motif system were compared with top-three selections from embedding cosine similarity and lexical Jaccard similarity on the same population. Two independently authored corpora were evaluated: ML/statistics and NLP, each with its own vocabulary and graph.

Direct motif-sharing accounted for 80.8% of retrieval in ML/statistics and 59.7% in NLP; graph edges alone contributed 2.4% and 0.7%, respectively, with the remaining cases using an embedding fallback. Motif-less rates were 17.9% in ML/statistics and 43.5% in NLP for conceptual kinds, compared with 9.5% and 14.3% for structural kinds.

The experiment demonstrates that the motif recommender selects different material. It does not measure the effect of those selections on learning outcomes.

Research references
  1. Anderson, J. R. (1974). Retrieval of propositional information from long-term memory. Cognitive Psychology, 6(4), 451–474. DOI.
  2. Chan, J. C. K., McDermott, K. B., & Roediger, H. L. III. (2006). Retrieval-induced facilitation: Initially nontested material can benefit from prior testing of related material. Journal of Experimental Psychology: General, 135(4), 553–571. DOI.
  3. Cepeda, N. J., Vul, E., Rohrer, D., Wixted, J. T., & Pashler, H. (2008). Spacing effects in learning: A temporal ridgeline of optimal retention. Psychological Science, 19(11), 1095–1102. DOI.