学習者モデリングの実践

この章で扱う問い

学習者の頭の中で何が起きているかを直接覗き込むことはできません。僕たちがアクセスできるのは、解答、所要時間、ヒントの要求、視線、発話といった外側に滲み出した行動だけです。本章で考えたいのは、「この限られた窓越しに、学習者の内的な知識状態をどう推測し、どう更新していくか」という問いです。これは適応的支援の根拠を支える計算的基盤であり、前章の ITS アーキテクチャの中核でもあります。学習者モデリングや知識追跡を実装したい読者、データ駆動の学習解析(LA/EDM)に関心のある読者には、本章の手法がそのまま研究の入口として役立つはずです。本章は、なぜそれが本質的に難しい問題なのかを確認したうえで、オーバーレイ・摂動・制約ベースという古典的表現から、ベイジアン知識追跡(BKT)、Performance Factors Analysis (PFA)、深層知識追跡(DKT)、項目応答理論(IRT)までを、説明可能性と精度のトレードオフに沿って整理します。

なぜ学習者モデリングは難しいのか

学習者モデル(student model, learner model)は、個々の学習者の知識、スキル、認知特性、学習履歴を計算機上で表現したものです。SCHOLAR [Carbonell1970scholar] 以来、知的学習支援システム(ITS)の中核的構成要素として研究されてきました。しかしその構築は、いくつかの本質的な困難を抱えています。

第一に、推定対象である 知識状態は潜在変数 です。「方程式 を解けるか」と尋ねることはできても、それに正答した学習者が一次方程式一般を理解しているのか、それともこの一問だけを偶然解けたのかは、外からは区別できません。逆に誤答した学習者が、概念を理解していないのか、計算ミス(slip)をしただけなのかも区別がつきません。観察可能な行動と内的状態の関係は、決定論的ではなく確率的です。

第二に、信号が疎 です。学習者は一回のセッションで数問しか解かないことも多く、ある特定の知識要素について得られる証拠は数件しかないことも珍しくありません。少数のサンプルから内的状態を推定するという統計的に難しい設定が、学習者モデリングの常態です。

第三に、同じ観察を説明する内的状態は複数あり得る という問題があります。誤答に対して「未習得」「スリップ」「問題文の誤読」「動機の低下」など、複数の説明が両立してしまうのです。この意味で、学習者モデリングは典型的な不良設定問題(ill-posed problem)です。実用的な学習者モデルは、領域知識や学習過程に関する仮定を導入してこの曖昧さを縮減します。BKT が「習得状態は不可逆」「観測は二値」と仮定するのも、IRT が「能力は一次元の連続変数」と仮定するのも、すべてこの同定可能性を確保するための工夫です。

これらの困難は、モデリング手法の選択に直接影響します。表現を細かくすれば診断は精密になりますが推定は不安定になり、表現を粗くすれば推定は安定しますが診断粒度を失います。本章で扱う各手法は、このスペクトラム上のどこかに位置しているわけです。

学習者モデルが捉える側面

学習者モデルが何を表現するかは、システムの目的に依存します。実用上は、知識状態、誤概念、メタ認知、情動という四つの側面が代表的な構成要素となります。これらは独立に存在するわけではなく、互いに相互作用しながら学習行動を生み出しています。

知識状態とその粒度

知識状態は学習者モデルの最も基本的な構成要素であり、ドメインの各概念やスキルをどの程度習得しているかを表します。表現としては、「習得済み/未習得」の二値、 区間の連続値、確率分布などがあり得ます。連続値や確率分布を採用する利点は、「ほぼ習得したが時々間違える」「半分は理解している」といった中間状態を扱える点です。

設計上のもう一つの判断は粒度(granularity)です。「代数」全体を一つの値で表す粗い粒度から、「 型方程式の移項」「正負の符号処理」といった微細なスキル単位まで分解する細かい粒度まで、連続的な選択があります。Cognitive Tutor のような実用システムは、各問題ステップを数十から数百の知識要素(Knowledge Component, KC)に分解しています。粒度を細かくすれば、どこで詰まっているかを精密に診断でき、習得済みのスキルを反復させずに済みます。一方で、各 KC について得られる観察は減るため、推定は不安定になり、KC 間の関係を考慮しないと冗長な学習を強いることもあります。粒度の選択は、データ量・診断精度・解釈性のバランスとして決まります。

誤概念と典型的誤りの体系化

学習者は単に正しい知識を欠いているだけでなく、しばしば 間違った知識を持っています。物理学における「重い物体は軽い物体より速く落ちる」という素朴理論や、算数における のような分数演算の誤りは、いずれも体系的な誤った規則の適用から生じるものです。

VanLehn [VanLehn1990] は引き算における学習者の誤りを大規模に分析し、不完全な手続き的知識を学習者が「修復(repair)」しようとした結果として、体系的な誤りパターンが現れることを示しました。これらは「バグ(bugs)」と呼ばれ、引き算だけで数百のバグが同定されています。誤概念や典型的誤りを学習者モデルに明示的に組み込むと、「答えが違う」と指摘するだけでなく「なぜその誤りが生じたか」を診断でき、誤った内的規則そのものに介入する設計が可能になります。

メタ認知と情動

知識状態だけが学習を決めるわけではありません。学習者がどのように自分の理解をモニタリングし、どの方略を選び、いつヒントを求めるかというメタ認知能力は、学習成果と強く関連します。Roll et al. [Roll2011] は、Cognitive Tutor において学習者のヘルプ要求パターンを分析し、適切なタイミングでヒントを求める学習者ほど学習成果が高いことを示しました。逆に、すぐにヒントに頼る「help abuse」と、困難に直面しても求めない「help avoidance」はいずれも学習効果を下げます。Kruger and Dunning [Kruger1999] が示したように、自己評価そのものが系統的に歪むこともあります。

情動状態も無視できません。D'Mello et al. [DMello2008] は、AutoTutor との対話中の学習者の状態を「集中」「混乱」「退屈」「フラストレーション」などに分類し、これらが学習成果と関連することを示しました。とりわけ 適度な混乱は学習を促進します。既存の理解と新しい情報のあいだに不一致が生じている兆候だからです。しかし混乱が解消されないまま長く続くとフラストレーションや諦めに転化します。学習者モデルが情動を捉えられれば、介入のタイミングをより適切に決められるでしょう。

学習者の知識をどう表現するか

知識状態の表現方法は、ドメイン知識との関係をどう捉えるかによって三つの古典的アプローチに大別されます。それぞれが「学習者の知識とは何か」についての異なるオントロジーを背景に持っています。

オーバーレイ:専門家知識の部分集合として

オーバーレイモデル(overlay model)は最も基本的な形式で、専門家が持つべき知識を基準としたうえで、学習者の知識をその部分集合として表します。ドメインモデルが「一次方程式」「二次方程式」「連立方程式」という三つの KC で構成されているなら、学習者モデルは各 KC に習熟度を割り当てます。実装が単純で、ドメインモデルと学習者モデルの構造が一致するため対応が明確です。

しかし、学習者は専門家知識の一部を欠いているだけではありません。誤った知識を持っていることもあり、純粋なオーバーレイモデルではこれを表現できません。「分かっていない」と「間違って分かっている」を同じく「未習得」として扱ってしまうのです。オーバーレイは、誤りが体系的でないドメイン、あるいは粒度が粗くて誤概念を区別する必要がない用途では有効ですが、誤概念診断には別の枠組みが必要となります。

摂動:正しい知識+バグ

摂動モデル(perturbation model)は、オーバーレイの限界を克服するために、学習者の知識を「正しい知識+誤った知識(バグ)」として表現します。Brown and Burton の DEBUGGY/BUGGY システム [Burton1982] は古典的な例で、小学生の引き算における体系的な誤りを診断します。例えば「smaller-from-larger」というバグは、「繰り下がりのある桁で、下の数が上の数より大きいとき、上下を逆にして引く」という誤った規則の適用です。このバグを持つ学習者は「」を計算するとき、十の位で ではなく を計算してしまい、結果として という体系的な誤答を示します。

摂動モデルの強みは、誤答を単なるノイズではなく、構造化された情報 として扱える点にあります。学習者が同じバグを繰り返していれば、システムはその誤った規則そのものを標的とした介入ができます。一方、想定されるバグを事前にカタログ化する労力は大きく、未知のバグには対応できません。引き算のような閉じた手続き的領域では成功しましたが、より開かれた領域では網羅的なバグカタログ作成が現実的でないことが多くあります。

制約ベース:解の正しさを保証する制約集合

Ohlsson [Ohlsson1994] が提案し、Mitrovic [Mitrovic2003] が発展させた制約ベースモデリング(Constraint-Based Modeling, CBM)は、視点を逆転させます。手続き的知識を明示的にモデル化するのではなく、正しい解が満たすべき制約の集合 として領域知識を表現します。SQL 問合せの学習であれば「WHERE 句で参照される列は FROM 句のテーブルに存在しなければならない」「集約関数を使う列以外は GROUP BY 句に含めねばならない」といった制約を列挙します。学習者の解答が制約に違反していれば、対応する知識要素が未習得と推測されるわけです。

CBM の実用上の強みは、学習者の解法経路を逐一追跡しなくてよい点にあります。モデル追跡では、学習者の各ステップを専門家の解法と照合する必要がありますが、CBM では最終解答が制約を満たすかだけを確認すればよいのです。これによりモデル構築コストが大幅に下がります。SQL-Tutor [Mitrovic2003] は数百の制約を用いて SQL の学習を支援し、実授業で効果が実証されています。課題は適切な制約集合の同定であり、制約が多すぎれば管理困難、少なすぎれば診断粒度が粗くなります。

これら三つのアプローチは、知識を「不足」「誤り」「制約違反」のどれとして見るかが異なりますが、いずれも記号的・離散的な表現に依拠しています。次節で扱うベイジアン知識追跡や DKT は、これを確率的・連続的な表現に拡張する系譜です。

モデル更新:BKT と知識追跡の系譜

学習者モデルは静的ではなく、学習者が問題を解くたびに更新されねばなりません。「正答した/誤答した」という観察から、潜在的な習得状態をどう更新するか——これが 知識追跡(knowledge tracing) の問題です。

Bayesian Knowledge Tracing:四つのパラメータ

Corbett and Anderson [Corbett1995] のベイジアン知識追跡(BKT)は、各 KC について学習者が習得しているかどうかを二値の隠れ状態とする隠れマルコフモデル(HMM)として定式化されます。状態は「未習得」と「習得」の二つで、習得状態は不可逆(一度習得したら忘れない)と仮定します。各時点で観測される正答/誤答は、隠れ状態から確率的に生成されます。BKT が扱うパラメータは次の四つです。

  • :初期習得確率。学習開始時点で KC を既に習得している確率です。
  • :学習機会転移確率。一度の練習機会で未習得から習得へ遷移する確率です。
  • :スリップ確率。習得しているのに誤答してしまう確率です。
  • :推測確率。習得していないのに偶然正答してしまう確率です。
flowchart LR
    U["未習得<br/>(latent)"]
    L["習得<br/>(latent)"]
    U -- "P(T)" --> L
    U -- "1-P(T)" --> U
    L -- "1.0" --> L
    U -. "正答 P(G)" .-> OU1["観測"]
    U -. "誤答 1-P(G)" .-> OU1
    L -. "正答 1-P(S)" .-> OL1["観測"]
    L -. "誤答 P(S)" .-> OL1

図9-1: Bayesian Knowledge Tracing (BKT)の状態遷移モデル。隠れ状態(習得/未習得)の間を で遷移し、各状態から観測(正答/誤答)が確率的に生成される。

正答を観測したときの事後確率はベイズの定理から次のように計算されます。

その上で、次の練習機会を経ることで習得確率が転移によって増加します。

具体的に数値を入れて見てみましょう。Corbett and Anderson が LISP・代数系チューターで報告した代表的な値に近いパラメータとして、 を取ります。学習者がまず一問正答したとします。事後確率は

となり、転移を考慮した次の時点の事前確率は です。続いて誤答を観測すれば

と、一問の誤答で習得確率は大きく下がります。次に再び正答すれば 程度まで戻ります。 が低く が高いほど、誤答は強い証拠となり、正答は弱い証拠となります。BKT のパラメータは単なる適合のための数値ではなく、各 KC の性質(スリップしやすいか、推測されやすいか、習得に時間がかかるか)を解釈可能な形で要約してくれます。Cognitive Tutor はこの習得確率が一定の閾値(典型的には 0.95)を超えるまで同じ KC の練習を続けさせる「mastery learning」を実装しています。

BKT の限界は、各 KC を独立に扱い、KC 間の依存関係や学習者の個人差をモデル化しない点にあります。これに対して、Pardos らの個人化 BKT [Pardos2010] は学習者ごとに をパーソナライズし、Yudelson らはさらに も個人差に応じて学習することを試みました。

Performance Factors Analysis:ロジスティック回帰としての知識追跡

Pavlik et al. の Performance Factors Analysis (PFA, 2009) は、BKT とは異なる定式化を採ります。PFA は知識追跡をロジスティック回帰問題として捉え、ある時点で KC を含む問題に正答する確率を、これまでの 成功回数失敗回数 の線形和で予測します。

ここで はそれぞれ学習者 が KC について過去に正答/誤答した回数、 はその KC の基本難易度、 は成功と失敗それぞれが習得に与える効果の係数です。例えば であれば「正答からの方が誤答からよりも学べる」KC、その逆であれば「失敗から学ぶ」KC ということになります。

PFA の強みは、BKT が扱えなかった 複数 KC を含む問題 を自然に扱える点と、解釈可能なまま個人差や問題ごとの効果を取り込める点です。一つの問題が複数の KC を要求する場合でも、各 KC の成功・失敗カウントを足し合わせるだけで済みます。実証研究では、PFA は多くのデータセットで BKT と同等以上の予測精度を示すことが報告されています。一方で、PFA は順序情報を直接扱わず(成功と失敗の総数のみを使う)、最近の応答が古い応答と同じ重みで扱われる点には批判もあります。

Deep Knowledge Tracing:表現を学習する

Piech et al. [Piech2015] の Deep Knowledge Tracing (DKT) は、知識追跡を再帰型ニューラルネットワーク(典型的には LSTM)の系列予測問題として再定式化しました。入力は のペアの系列、出力は次の問題での正答確率です。LSTM の隠れ状態が、学習者の知識状態を陽に名前付けされない形で表現します。

DKT の利点は、KC の定義を人手で与える必要がないこと、KC 間の依存関係を自動的に捉え得ること、そして実証的に BKT を上回る予測精度を示すことが多い点です。一方、隠れ状態が何を表現しているかは解釈困難であり、「この KC の習得確率はいくら」という診断的な質問に答えることは BKT ほど自然ではありません。Xiong et al. [Xiong2016] は、DKT が BKT より優れて見える結果の一部はデータ前処理の差に由来することを指摘し、両者の比較は依然として論争的です。

DKT のもう一つの問題は、出力した正答確率の系列が時として一貫性を欠くことです。例えば、ある問題に正答した直後にその KC の習得確率が下がる、という BKT では起こり得ない振る舞いが報告されています。これに対する応答として、DKT にメモリ機構を加えた Dynamic Key-Value Memory Networks や、Transformer ベースの Self-Attentive Knowledge Tracing が提案され、解釈性と精度の両立が試みられています(第12章参照)。

ここに、本章を貫くトレードオフが現れます。BKT は少数の解釈可能なパラメータと明確な隠れ状態を提供し、教師や学習者にも説明しやすいモデルです。DKT は表現力と予測精度を取る代わりに、説明可能性を犠牲にします。「学習者の知識をどう表現するか」という選択は、技術的選好の問題ではなく、システムが何を説明できるべきかという要件によって決まるのです。

項目応答理論:能力の連続的推定

知識追跡が 特定の KC 群の習得状態の時系列 を追うのに対し、項目応答理論(Item Response Theory, IRT)[Lord1968]学習者の能力 という一次元の潜在変数を点推定することを目的とします。最も単純な2パラメータロジスティックモデルでは、学習者 が問題 に正答する確率を

と表現します。ここで は学習者の能力、 は問題の難易度、 は問題の識別力です。 で正答確率は 0.5 となり、 が大きいほど能力差が正答確率に強く反映されます。

IRT は、もともとは大規模試験の評価理論として発展しましたが、適応的テスト(Computerized Adaptive Testing, CAT)の基盤として学習支援にも応用されています。CAT では、学習者の能力推定値 に近い難易度の問題を逐次選び、推定の不確実性が一定以下になった時点で測定を打ち切ります。これにより、固定数の問題を解かせる伝統的テストよりも少ない出題で同程度の精度を達成できます。

IRT と知識追跡は補完的です。IRT は「この学習者の総合能力はどの程度か」を簡潔に答え、BKT や DKT は「どの KC を習得しているか」を詳細に答えます。診断的支援には知識追跡が必要ですが、能力の総括的評価には IRT の単純さが有利です。

モデルの利用と評価

構築された学習者モデルは、適応的支援の基盤として利用されます。第10章で本格的に扱う適応の各次元——次の問題の選択、ヒントの個別化、習得判定と進度制御——はすべて学習者モデルの推定値を入力とします。例えば BKT の習得確率は mastery learning の判定基準として直接使えます。CBM の違反制約はフィードバック内容そのものを決めます。DKT の予測確率は、次に提示すべき問題の困難度の調整に使えます。

モデルの良し悪しは三つの観点から評価されます。予測精度 は次の問題での正答確率の予測を AUC や RMSE で評価するもので、最も直接的ですが、予測精度が高いことが必ずしも教育効果につながるとは限りません。診断の正確性 は推定された知識状態が真の理解度とどれだけ一致するかであり、独立した事後テストとの相関で間接的に評価されます。支援の効果 は、学習者モデルに基づく適応的支援が学習成果を実際に向上させるかをランダム化比較試験で評価します。最終的には三つ目の観点が決定的ですが、コストが高く実施できる研究は限られています。多くの実用システムは予測精度の改善を間接的な指標として用いています。

まとめ

学習者の知識状態は外から直接見えない潜在変数であり、疎で曖昧な観察からそれを推論しなければなりません。本章では、この本質的な困難に対する応答として、表現の選び方によって異なる三つの古典的アプローチ(オーバーレイ、摂動、制約ベース)と、推論方法として位置づけられる知識追跡の系譜(BKT、PFA、DKT)、そして能力の総括的評価に強い IRT を見てきました。一貫していたのは、説明可能性と予測精度のトレードオフ です。BKT や CBM はパラメータや制約が解釈可能で教師や学習者に説明できる代わりに、表現力に限界があります。DKT は表現力と予測精度を取る代わりに、隠れ状態の解釈を諦めます。どちらが正解というわけではなく、システムが何を提供すべきかによって適切な位置取りが決まるわけです。

次章への橋渡し

学習者の状態を推定できたら、次はそれを使って何をするかが問題になります。第10章では、適応的学習支援の設計を扱います。学習者モデルの推定値に基づいて何を提示するかを動的に決めるという行為を、適応の粒度(マクロ・ミクロ・即時)と次元(内容・順序・難易度・支援量)の二軸で整理し、その設計判断と効果の限界を見ていきましょう。

さらに学ぶために

  • Corbett, A. T., & Anderson, J. R. (1995). Knowledge tracing: Modeling the acquisition of procedural knowledge. User Modeling and User-Adapted Interaction, 4(4), 253-278.
  • Mitrovic, A., Martin, B., & Suraweera, P. (2007). Intelligent tutors for all: The constraint-based approach. IEEE Intelligent Systems, 22(4), 38-45.
  • Piech, C., et al. (2015). Deep knowledge tracing. Advances in Neural Information Processing Systems, 28.
  • Pavlik, P. I., Cen, H., & Koedinger, K. R. (2009). Performance Factors Analysis — A new alternative to knowledge tracing. Proceedings of AIED 2009.