記憶の定着と教材構造の科学 — 自習用技術教材への実装レポート
PEDAGOGY.md の付録。リサーチエージェントによる調査(2026-07-12、WebSearch 複数回 + 一次資料の WebFetch: APA 論文 PDF 全文、FSRS 公式ベンチマーク等)。2020年代の文献(メタ分析・大規模ベンチマーク)を優先して確認。
前提とする成果物: レベル別 Markdown カリキュラム + ローカル HTML 学習サイト(JS 可・サーバ不可・localStorage のみ・クイズと進捗トラッカー内蔵)。
エビデンス強度の凡例: ★★★ = 複数のメタ分析または大規模実地研究で頑健 / ★★ = 実験的裏付けは強いが境界条件あり、または実地検証が限定的 / ★ = 有望だが証拠が混在・限定的。
総括(先に結論)
| 優先度 | 施策 | 根拠の強さ |
|---|---|---|
| 最優先 | クイズを想起(recall)形式にし、FSRS-6 で間隔反復スケジュール | ★★★ |
| 最優先 | successive relearning(正解するまで再出題 × 別日に 3 セッション)をマスター判定に | ★★★ |
| 高 | 各章冒頭に事前テスト(prequestions) | ★★ |
| 高 | 演習を worked example → 穴埋め(completion)→ 自力の足場外し系列に | ★★★(プログラミングでは Parsons 問題が実証済) |
| 高 | コードリーディング/トレース先行(PRIMM 型)+ 実行モデル(notional machine)の明示 | ★★ |
| 中 | 具体例は複数提示し concrete → abstract へフェード | ★★ |
| 中 | 本文は生成・自己参照・物語構造を使い、無関係な面白話(seductive details)は削る | ★★(seductive details の害は★★★寄り) |
| 限定 | ニーモニックは恣意的な対応関係(コマンド名等)のみに限定使用 | ★(汎用性低の判定が確立) |
1. 間隔反復スケジューリング: SM-2 系 vs Leitner vs FSRS
エビデンス強度: 間隔効果そのものは ★★★(Cepeda, Pashler, Vul, Wixted & Rohrer 2006 の定量的総説。Dunlosky et al. 2013 で「高効用」判定)。アルゴリズム間比較は大規模ログデータのベンチマークが主で、対人 RCT ではない点に注意(★★)。
主要文献:
- Ebbinghaus (1885) — 忘却曲線・間隔効果の原点 / Leitner (1972) — 箱方式
- Ye ら MaiMemo チーム (KDD 2022)「A Stochastic Shortest Path Algorithm for Optimizing Spaced Repetition Scheduling」— FSRS の基盤となる DSR(Difficulty / Stability / Retrievability)記憶モデル
- Tabibian et al. (2019, PNAS) — 大規模ログからの間隔反復最適化(改善幅 12.6% の帰属は未確認)
- open-spaced-repetition 公式ベンチマーク — 約 1 万コレクション・約 3.49 億レビューで、FSRS-6 は 99.6% のコレクションで SM-2 より低い log loss(一次資料で確認)。ただしベンチマーク自身が「SM-2 は確率予測用に設計されておらず、比較は完全に公正ではない」と注記
比較の結論:
- Leitner: 実装最簡(箱 5 つ + 固定間隔)だが項目別難易度に適応せず精度最低。「無いより遥かに良い」レベル
- SM-2(Anki 旧既定): 実装コストは FSRS 系とほぼ同じなのに予測精度で一貫して劣後。2025 年時点で新規採用する理由は乏しい
- FSRS: Anki が v23.10(2023-10) で公式統合。MIT ライセンスの公式 TypeScript 実装 ts-fsrs(UMD 対応、ブラウザで動作、npm:
ts-fsrs)があり、静的サイトに同梱可能
実装推奨(localStorage + 静的サイトの最小構成)
アルゴリズム: FSRS-6(ts-fsrs を UMD 単一ファイルで同梱)、パラメータ最適化なしのデフォルト値で運用。
- 根拠: FSRS はデフォルトパラメータのままでも大多数のユーザーで SM-2 より正確。パラメータ個人最適化には Anki 公式の最小要件で 400 レビュー、信頼できる結果を得る目安として約 1,000 レビューのログが必要とされるため、自習サイト規模ではデフォルトが妥当
- 設定:
request_retention = 0.90(目標保持率 90%)、maximum_interval = 180、enable_fuzz = true(同日集中を防ぐ) - 評価ボタン: UI は「もう一度 / できた」の 2 択に簡略化してよい(不正解→
Rating.Again、正解→Rating.Good)。FSRS は 2 値でも動作する - 永続化: カードごとに
{ due, stability, difficulty, reps, lapses, state, last_review }を localStorage に保存。localStorage は消えうるので JSON エクスポート/インポートを必ず付ける - 「今日の復習」ビュー(
due <= nowのカードを横断出題)を進捗トラッカーに統合するのが要
// 最小フロー(ts-fsrs)
const f = fsrs({ request_retention: 0.9, maximum_interval: 180, enable_fuzz: true });
let card = load(id) ?? createEmptyCard();
card = f.next(card, new Date(), ok ? Rating.Good : Rating.Again).card;
save(id, card);
2. ICAP フレームワーク(Chi & Wylie 2014)
エビデンス強度: ★★(枠組みとして有用・支持研究多数だが、階層の厳密な検証には批判もある)
- Chi & Wylie (2014, Educational Psychologist 49(4)) — Interactive > Constructive > Active > Passive 仮説
- Wiggins et al. (2017, AERA Open) — 実教室の準実験で Interactive > Constructive を確認(差は「比較的小さい」)
- 批判: Thurn, Edelsbrunner, Berkowitz, Deiglmayr & Schalk (2023, npj Science of Learning) — 外形的行動からモードを判定できるか、階層の実証基盤が弱いと指摘。初学者には直接指導が勝った研究例も
要点: 最大の学習ゲインは Active → Constructive の境界(選ぶ・なぞる → 自分で生成する)で生じるとされる。「初学者にいきなり構成的活動」は逆効果になりうる → 足場(§5)と組み合わせる。
実装案: 選択式で終わらせず「なぜこの出力になるか説明を書いてから答え合わせ」「自分の言葉で要約」「自分のプロジェクトならどう使うか」(Constructive)。「まず問い → 説明を書かせる → 本文解説」の順に組む。
3. Successive Relearning(Rawson & Dunlosky)
エビデンス強度: ★★★(実コースでの実験、非監督条件でも再現)
- Rawson & Dunlosky (2011, JEP: General) / Rawson, Dunlosky & Sciartelli (2013, EPR) — 実コースでベースライン比 1 レターグレード超の向上。研究室監督下でも自宅の非監督条件でも同等に有効
- Janes, Dunlosky, Rawson & Jasnow (Applied Cognitive Psychology) — 高利害試験でも有効
- 重要な失敗条件: 学習者が「いつカードを落とすか」を自己判断した場合、効果が消えた → 判定ロジックはシステム側が持つこと
実装パラメータ:
- セッション内: 正解するまで再出題(初回学習は「3 回正解」基準が原研究。1 回に緩めても効果は維持されたとの記述あり)
- セッション間: 全項目を別日に再学習。合計 3〜4 セッションが推奨
- マスター判定 = 「異なる日に 3 回正解」。到達で「習得済み」バッジ。ただし復習キューからは外さない
- クイズは再認(選択式)より再生(記述・穴埋め)を優先(Carpenter & DeLosh 2006; Glover 1989)。「頭の中で答える→クリックで解答表示→自己採点」フローは原研究の flashcard 手続きと同型
- フィードバックには理由の説明を付ける(Butler, Godbole & Marsh 2013: 説明フィードバックは転移を改善)
4. 事前テスト効果(pretesting / prequestions)
エビデンス強度: ★★(頑健に再現されるが、効果はテスト済み内容に偏り、フィードバック必須)
- Pan & Sana (2021, JEP: Applied) — 5 実験。事前テストの形式(選択式か記述式か)は効果の大きさをほぼ左右しない。機序は「読み方が変わる」
- Latimier et al. (2019) — 1 週間後では検索練習(事後)が事前テストを上回る → 事前テストは事後の検索練習の代替ではない。両方入れる
- St. Hilaire, Chan & Ahn (2023, Psychonomic Bulletin & Review) — prequestion 効果のメタ分析(全体効果量は未確認)
- Journal of Cognition (2025) 単一研究: 事前テスト+即時フィードバックで d = 1.24、遅延フィードバックで d = 0.82
実装案: 各章冒頭に「まだ習っていないけど予想してみよう」2〜4 問。間違えて当然と明示し、不正解ペナルティなし(進捗率に不算入)。本文学習後に必ず正解へ到達させる(章末で同一概念を再出題)。章の核心概念だけを出す。
5. Worked examples → completion problems → 自力(足場外し)
エビデンス強度: ★★★(認知負荷理論で最も再現されている効果群)
- Sweller & Cooper (1985) 原典 / Renkl, Atkinson & Maier (2000) — 例題→完成問題→自力の漸進系列
- Renkl et al. (2004) — フェードするステップの種類が方向より重要。フェードは自己説明を誘発
- Salden et al. (2010) — 適応的フェードは固定フェードより有効
- Kalyuga & Renkl (2009) — 熟達逆転効果: 上級者には worked example が冗長で問題解決が勝る
実装案: ①完全な worked example(各行に「なぜ」)→ ②completion(核心 1〜2 行を空欄化)→ ③Parsons 問題 → ④白紙から自力。空欄化するのはその章の学習目標に当たるステップ。入門レベルは①②を厚く、上級は①を折りたたみにして④中心へ。
6. 具体例の複数提示と抽象化(concreteness fading)
エビデンス強度: ★★
- Fyfe, McNeil, Son & Goldstone (2014, EPR) — 系統的レビュー。具体→抽象の 3 段階フェード
- McNeil & Fyfe (2012) / Fyfe, McNeil & Borjas (2015) — フェード条件が具体のみ・抽象のみの両方に転移で勝る。具体→抽象はその逆順より優れる
- 注意: 具体物の余計なディテールは転移を妨げる
実装案: 新概念は「具体(実務の生例)→ 半抽象(図式・簡略コード)→ 抽象(一般形)」の 3 ステップ。表面が異なる複数例を出し共通構造を最後に抽象化して命名。クイズでは学習時と違う表面の新規例で転移を測る。
7. 記憶に残る符号化: 生成・自己参照・物語・感情
- 生成効果 ★★: Bertsch et al. (2007) メタ分析で頑健。完全に新規・無関連の材料では限定的
- 自己参照効果 ★★: Symons & Johnson (1997) メタ分析。実装: 教材文を二人称で書く。「自分の直近のプロジェクトでこれを使うとしたら?」プロンプト
- 物語構造 ★★★: Mar, Li, Nguyen & Ta (2021, Psychonomic Bulletin & Review) メタ分析: 75 以上の独立サンプル・3.3 万人超で、物語は説明文より理解されやすく記憶に残る。実装: 章の導入を「開発者が問題に遭遇→失敗→解決」の 300 字ミニシナリオに。概念の羅列を因果連鎖(だから→しかし→その結果)で接続
- 感情デザインの罠: ポジティブ感情デザインは正の効果(Brom et al. 2018: 保持 d+ = 0.387 ほか)だが、内容と無関係な面白エピソード(seductive details)は学習を害する(Sundararajan & Adesope 2020「Keep it Coherent」)。感情は内容そのものに乗せる(失敗談・バグの恐怖・動いた瞬間の快感を学習目標に直結)
- ニーモニック ★: Dunlosky et al. (2013) は「低効用」判定。意味的理解が成立しない恣意的な対応関係だけに限定(
chmodの数値等)
8. プログラミング/CS 教育特有の知見
8a. Parsons 問題 — ★★★
- Ericson, Margulieux & Rick (2017) / Ericson, Foley & Rick (2018, ICER): コード修正・記述練習と同等の学習ゲインを有意に短い時間で達成
- Ericson et al. (2022, ITiCSE WG Report) — 系統的レビュー。write-code への足場としても実証
- 実装: 静的 HTML + JS の D&D で完全ローカル実装可能(js-parsons という OSS もある)。行シャッフル+ディストラクタ行 1〜2 個
8b. コードリーディング先行 — ★★
- Lopez et al. (2008, ICER): 読解・トレース・記述のスキル階層。Lister et al. (2004): トレース正答率 50% 未満はコード説明もできない
- PRIMM(Predict–Run–Investigate–Modify–Make; Sentance & Waite 2017): 約 500 名・8〜12 週の準実験(2019)で統制群より向上。英国 NCCE 公式推奨
- 実装: コード例に「実行前に出力を予想して入力 → 答え合わせ」。変数表を埋めるトレース演習。Modify 課題 → Make
8c. Notional machine(実行モデルの心的モデル) — ★★
- du Boulay et al. (1981) 原典、Sorva (2013, ACM TOCE) 総説、ITiCSE 2020 WG Report。初学者のつまずきの主因は実行時の計算機像の欠如。明示的な学習目標として教えるべきという合意
- 実装: 「この言語のプログラムはこう実行される」章を最初に置き、メモリ図(変数=箱、参照=矢印、コールスタック)を一貫した視覚語彙で全章に再利用
統合実装ロードマップ(最小 → 充実)
フェーズ 1(コア、効果/工数比最大)
- 章末クイズを再生形式中心にし、FSRS-6(ts-fsrs 同梱, retention 0.9, fuzz on)+ localStorage で「今日の復習」キュー
- マスター判定を「別日 3 セッション正解」(successive relearning)に。JSON エクスポート
- 各章冒頭に prequestion 2〜4 問(ペナルティなし、章末で再出題)
フェーズ 2(演習の構造化)
- 演習を worked example → completion → Parsons → 自力の 4 段テンプレートに統一
- コード例に Predict ボタンとトレース表演習。第 0 章に notional machine
フェーズ 3(文章とビジュアルの改稿)
- 執筆規約: 複数の具体例 → 抽象化 / 二人称・ミニ物語で導入 / 「自分ならどう使うか」プロンプト / 無関係トリビアの削除
- フィードバック文には必ず「なぜ」の説明
主な出典
- 間隔反復・FSRS: open-spaced-repetition ベンチマーク / ts-fsrs (GitHub) / fsrs4anki wiki / Tabibian et al. 2019, PNAS (PMC)
- 学習技法総説: Dunlosky et al. 2013, PSPI / Dunlosky & Rawson 2015, APA (PDF) / Carpenter et al. 2022, Nature Reviews Psychology
- Successive relearning: Rawson, Dunlosky & Sciartelli 2013 / retrievalpractice.org 解説 / Efrat Furst 解説
- ICAP: Chi & Wylie 2014 / Wiggins et al. 2017 / 批判: npj Science of Learning 2023
- 事前テスト: Pan & Sana 2021 / St. Hilaire et al. 2023 / Pan & Carpenter 2023 総説 / Journal of Cognition 2025
- Worked examples / fading: Renkl 系レビュー (ERIC PDF) / Sweller: Guidance Fading (PDF)
- Concreteness fading: Fyfe et al. 2014 / Fyfe, McNeil & Borjas 2015
- 符号化: Mar et al. 2021 (PMC) / Brom et al. 2018 / Sundararajan & Adesope 2020
- CS 教育: Ericson et al. 2022 ITiCSE WG / Sorva 2013 TOCE / Notional Machines ITiCSE 2020 WG / PRIMM (KCL PDF)
調査上の注記: (1) FSRS の優位性はログデータ・ベンチマーク由来で対人 RCT ではない。(2) 一部メタ分析(St. Hilaire 2023、Bertsch 2007、Sundararajan & Adesope 2020、Symons & Johnson 1997)は全体効果量の数値が未確認(結論の方向のみ確認)。