鄭浩東,馬 華,謝穎超,唐文勝
(湖南師范大學(xué) 信息科學(xué)與工程學(xué)院,長沙 410081)
在線教育的快速普及和發(fā)展為學(xué)生提供了豐富的學(xué)習(xí)資源,但也帶來了信息迷航問題[1]。一個(gè)解決辦法是根據(jù)學(xué)生的認(rèn)知狀態(tài)進(jìn)行資源推薦[2],如何診斷學(xué)生的認(rèn)知狀態(tài),成為個(gè)性化在線教育的關(guān)鍵問題[2-4]。
知識追蹤(Knowledge Tracing,KT)能根據(jù)學(xué)生的歷史學(xué)習(xí)數(shù)據(jù)實(shí)時(shí)追蹤他的認(rèn)知狀態(tài),并預(yù)測學(xué)生回答下一道習(xí)題時(shí)的表現(xiàn)。傳統(tǒng)的知識追蹤模型主要有基于隱馬爾可夫模型的貝葉斯知識追蹤(Bayesian Knowledge Tracking,BKT)和基于邏輯回歸模型的可加性因素知識追蹤模型[5]。經(jīng)典BKT 通過學(xué)生對某個(gè)知識點(diǎn)的初始掌握程度P(L0)、從不會到學(xué)會的概率P(T)、不知道某知識點(diǎn)但是猜對的概率P(G)和知道某知識點(diǎn)但是答錯(cuò)的概率P(S)四個(gè)參數(shù)建模學(xué)生的認(rèn)知狀態(tài)。在BKT[6]的 基礎(chǔ)上,Yudelson 等[7]提出個(gè)性 化BKT 方法,根據(jù)學(xué)生的知識點(diǎn)作答情況分別計(jì)算學(xué)生從不會到學(xué)會的概率,考慮了學(xué)生間學(xué)習(xí)能力差異的問題。黃詩雯等[8]在BKT 的基礎(chǔ)上加入遺忘概率P(F),提出BF-BKT(Behavior-Forgetting Bayesian Knowledge Tracking),考慮了遺忘行為對學(xué)生認(rèn)知狀態(tài)的影響,提高了模型預(yù)測準(zhǔn)確度。
以上方法基于傳統(tǒng)模型分別從學(xué)生的認(rèn)知狀態(tài)、認(rèn)知狀態(tài)與遺忘因素混合的角度進(jìn)行了知識追蹤的研究,但在遺忘因素方面僅考慮了單一的遺忘概率特征。對影響學(xué)生遺忘行為的更多因素進(jìn)行建模分析,有利于捕獲學(xué)生認(rèn)知狀態(tài)出現(xiàn)的偏差,提高學(xué)生成績預(yù)測結(jié)果的準(zhǔn)確度。
近年來,學(xué)者將深度學(xué)習(xí)用于知識追蹤,充分挖掘?qū)W生答題序列數(shù)據(jù)中的潛在信息,追蹤學(xué)生的認(rèn)知狀態(tài),實(shí)驗(yàn)結(jié)果優(yōu)于傳統(tǒng)方法。典型的深度知識追蹤(Deep Knowledge Tracing,DKT)模型[9]通過長短期記憶(Long Short-Term Memory,LSTM)[10]挖掘答題數(shù)據(jù)中隱藏的有效信息,預(yù)測學(xué)生未來的答題情況。融合注意力機(jī)制的時(shí)間卷積知識追蹤模型[11]針對DKT 存在的可解釋性不足的問題,用注意力機(jī)制識別學(xué)生歷史交互對每一時(shí)刻知識狀態(tài)的影響程度,然后采用時(shí)間卷積網(wǎng)絡(luò)提取學(xué)生動態(tài)變化的知識狀態(tài)。動態(tài)鍵-值對記憶網(wǎng)絡(luò)(Dynamic Key-Value Memory Network,DKVMN)[12]借鑒DKT 的核心思想,改用一個(gè)靜態(tài)矩陣key存儲所有知識點(diǎn),用動態(tài)矩陣value存儲并更新學(xué)生的知識狀態(tài),通過計(jì)算試題和知識點(diǎn)間的相關(guān)權(quán)重預(yù)測學(xué)生在新試題上的答題表現(xiàn)。Abdelrahman 等[13]利用注意力機(jī)制著重考查學(xué)生作答相似習(xí)題時(shí)的答題歷史,改進(jìn)了DKVMN。以上模型在刻畫學(xué)生學(xué)習(xí)行為時(shí)忽略了遺忘行為的影響,LFKT(Learning and Forgetting behavior modeling for Knowledge Tracing)[14]在DKVMN 基礎(chǔ)上,結(jié)合艾賓浩斯遺忘曲線理論[15-16],用學(xué)生重復(fù)學(xué)習(xí)知識點(diǎn)的間隔時(shí)間、重復(fù)學(xué)習(xí)知識點(diǎn)的次數(shù)、順序?qū)W習(xí)間隔時(shí)間以及學(xué)生的知識點(diǎn)原始掌握程度這四個(gè)參數(shù)建模學(xué)生的遺忘行為,提升了預(yù)測精度。
以上方法基于深度學(xué)習(xí)模型分別從LSTM、記憶網(wǎng)絡(luò)和注意力機(jī)制等角度進(jìn)行了知識追蹤的研究。其中,LFKT 模型考慮了四種影響遺忘行為的因素對學(xué)生的答題過程進(jìn)行建模,提升了模型預(yù)測學(xué)生未來表現(xiàn)的準(zhǔn)確度,然而,這些研究尚未建模知識點(diǎn)間的關(guān)系。實(shí)際上,試題考查的多個(gè)知識點(diǎn)可以表示為一張有向圖,并且知識點(diǎn)間存在多種不同的層次或順序關(guān)系?;诖耍袑W(xué)者提出了基于圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)的知識追蹤模型。
GNN 是一種能對圖結(jié)構(gòu)數(shù)據(jù)進(jìn)行操作的神經(jīng)網(wǎng)絡(luò),圖是一種數(shù)據(jù)結(jié)構(gòu),分別將對象和它的關(guān)系表示為節(jié)點(diǎn)和邊。近年來,GNN 通過學(xué)習(xí)圖結(jié)構(gòu)數(shù)據(jù),在節(jié)點(diǎn)分類、邊信息傳播和圖聚類等任務(wù)上均取得顯著效果。事實(shí)上,課程作業(yè)的知識點(diǎn)間相互關(guān)聯(lián)。因此,Nakagawa 等[17]從數(shù)據(jù)結(jié)構(gòu)角度出發(fā),提出基于GNN 的知識追蹤GKT(Graph-based Knowledge Tracing)模型。GKT 通過圖的節(jié)點(diǎn)和邊分別描述知識點(diǎn)和知識點(diǎn)間的關(guān)系,將知識追蹤定義為GNN 中的時(shí)間序列節(jié)點(diǎn)及分類問題,采用GNN 建模學(xué)生的認(rèn)知狀態(tài)。實(shí)驗(yàn)結(jié)果表明,在不需要增加額外信息的條件下,GKT 模型可獲得更好的預(yù)測精度,然而,該模型未考慮學(xué)生的遺忘行為和不同時(shí)刻作答相同知識點(diǎn)的時(shí)序特征對預(yù)測結(jié)果的影響。
綜上,本文提出一種融合遺忘因素與記憶門的圖神經(jīng)網(wǎng)絡(luò)追蹤(GKT blending with Forgetting factors and Memory gate,GKT-FM)模型,結(jié)合認(rèn)知同化理論[18]建模學(xué)生學(xué)習(xí)過程中的遺忘行為,引入記憶門結(jié)構(gòu)完善GKT 模型對答題序列中時(shí)序特征的建模方式,重構(gòu)GNN 的更新過程,預(yù)測學(xué)生未來的答題表現(xiàn)。GKT-FM 模型的主要特點(diǎn)如下:
1)結(jié)合艾賓浩斯遺忘曲線理論[15-16]和認(rèn)知同化理論[18],將影響遺忘行為的特征擴(kuò)充至7 個(gè),包括重復(fù)學(xué)習(xí)知識點(diǎn)的次數(shù)、學(xué)生重復(fù)學(xué)習(xí)知識點(diǎn)的間隔時(shí)間、順序?qū)W習(xí)間隔時(shí)間、學(xué)生要求提示的次數(shù)、學(xué)生答題前的行為、知識點(diǎn)作答正確率和學(xué)生的知識點(diǎn)原始掌握程度,更精確地刻畫遺忘行為。
2)鑒于相鄰測試時(shí)刻的不同習(xí)題可能存在相同的知識點(diǎn),而學(xué)生的知識掌握程度與這些知識點(diǎn)間存在潛在的關(guān)聯(lián)關(guān)系,本文在GKT 的基礎(chǔ)上,構(gòu)建記憶門結(jié)構(gòu),捕獲學(xué)生作答習(xí)題過程中不同習(xí)題包含相同知識點(diǎn)的時(shí)序特征對預(yù)測結(jié)果的影響,更準(zhǔn)確地預(yù)測學(xué)生未來的答題表現(xiàn)。
知識追蹤旨在根據(jù)學(xué)生的歷史學(xué)習(xí)數(shù)據(jù)實(shí)時(shí)追蹤學(xué)生的認(rèn)知狀態(tài),并預(yù)測學(xué)生未來答題時(shí)的表現(xiàn)。給定一個(gè)學(xué)生的歷史學(xué)習(xí)交互序列x0,x1,…,xt,預(yù)測下一次交互xt+1時(shí),學(xué)生答對題目qt+1的概率。xt={(q1,a1),(q2,a2),…,(qt,at)},其中:qt表示t時(shí)刻學(xué)生作答的題目編號;at表示學(xué)生對于qt的答題結(jié)果,答對用1 表示,答錯(cuò)用0 表示。
教育心理學(xué)領(lǐng)域的學(xué)者們發(fā)現(xiàn)人類的遺忘行為會對記憶產(chǎn)生影響,艾賓浩斯遺忘曲線理論[15-16]表明,學(xué)生所學(xué)的知識會發(fā)生遺忘,遺忘會導(dǎo)致學(xué)生的知識掌握程度下降。認(rèn)知同化理論[18]認(rèn)為學(xué)生對于新知識的掌握程度以原有的知識掌握程度為基礎(chǔ),原有知識掌握得越牢固,學(xué)習(xí)新知識就越容易?,F(xiàn)有基于深度學(xué)習(xí)的知識追蹤模型中,有相關(guān)研究考慮了學(xué)生的遺忘行為,以提高模型的可解釋性。本文結(jié)合認(rèn)知同化理論[18],在現(xiàn)有研究使用的重復(fù)學(xué)習(xí)知識點(diǎn)的次數(shù)、重復(fù)學(xué)習(xí)知識點(diǎn)的間隔時(shí)間、順序?qū)W習(xí)間隔時(shí)間和知識點(diǎn)原始掌握程度的基礎(chǔ)上,充分考慮學(xué)生要求提示的次數(shù)、學(xué)生答題前的行為和答題正確率等三個(gè)參數(shù)來建模學(xué)生對已有知識的掌握程度,擴(kuò)充了遺忘行為的特征。
不同習(xí)題所關(guān)聯(lián)的知識點(diǎn)通常存在先后關(guān)系,并且相鄰時(shí)刻不同習(xí)題可能包含相同的知識點(diǎn),這種隱含的時(shí)序特征可能對學(xué)生的知識掌握程度存在潛在影響,在設(shè)計(jì)知識追蹤模型時(shí)應(yīng)該重視這個(gè)影響因素。LSTM 網(wǎng)絡(luò)的特點(diǎn)是將上一個(gè)時(shí)刻的輸出作為下一個(gè)時(shí)刻的輸入,適合處理包含時(shí)序特征的數(shù)據(jù)?;贕NN 的知識追蹤模型GKT,采用鄰接矩陣存儲知識點(diǎn)相關(guān)性,即圖結(jié)構(gòu)表示,更新學(xué)生認(rèn)知狀態(tài)的本質(zhì)是利用圖結(jié)構(gòu)進(jìn)行消息傳遞。但是,GKT 尚未考慮不同時(shí)刻學(xué)生作答相同知識點(diǎn)的時(shí)序特征。
本文在GKT 的基礎(chǔ)上,在更新學(xué)生認(rèn)知狀態(tài)時(shí),結(jié)合LSTM 網(wǎng)絡(luò)的優(yōu)勢構(gòu)建記憶門結(jié)構(gòu)來建模學(xué)生答題序列中的時(shí)序特征。具體來說,在聚合鄰居知識點(diǎn)嵌入后,根據(jù)遺忘因素向量對知識點(diǎn)嵌入作遺忘處理,然后與前一時(shí)刻的知識點(diǎn)嵌入作乘操作,得到該知識點(diǎn)的時(shí)序嵌入,以此建模學(xué)生答題序列中的時(shí)序特征。
綜上,本文以GNN 為基礎(chǔ),將知識追蹤問題描述為依據(jù)學(xué)生的歷史學(xué)習(xí)數(shù)據(jù),實(shí)現(xiàn)以下兩個(gè)目標(biāo):
1)追蹤學(xué)生認(rèn)知狀態(tài)的變化。
2)預(yù)測學(xué)生下一次作答習(xí)題的表現(xiàn)。
本文提出的GKT-FM 模型主要包括:
1)構(gòu)建知識圖:以學(xué)生t時(shí)刻的答題序列信息作為輸入,通過知識度量函數(shù)計(jì)算知識點(diǎn)的相關(guān)性,構(gòu)造鄰接矩陣A代表知識圖。
2)聚合:采用GNN 聚合當(dāng)前知識節(jié)點(diǎn)i和它的鄰居節(jié)點(diǎn)j的隱藏狀態(tài)和嵌入。
3)更新:在知識點(diǎn)k向知識點(diǎn)i傳遞消息時(shí),通過遺忘向量對知識點(diǎn)i的嵌入作遺忘處理,詳見式(6),然后將該嵌入輸入記憶門,捕獲知識點(diǎn)i的時(shí)序特征,得到包含時(shí)序特征的嵌入,最后采用GNN 更新知識點(diǎn)i的隱藏狀態(tài),得到
4)預(yù)測:將知識點(diǎn)i的隱藏狀態(tài)輸入Softmax 函數(shù),隨后輸出學(xué)生在t+1 時(shí)刻的知識水平向量yt,即學(xué)生對于各個(gè)知識點(diǎn)的掌握程度。
具體模型結(jié)構(gòu)如圖1 所示。
圖1 GKT-FM模型的結(jié)構(gòu)Fig.1 Structure of GKT-FM model
將學(xué)生答題的序列數(shù)據(jù)轉(zhuǎn)換為圖結(jié)構(gòu)數(shù)據(jù),用鄰接矩陣A表示。首先通過知識度量函數(shù)獲得知識點(diǎn)的相關(guān)權(quán)重,度量函數(shù)如式(1)[17]所示:
聚合當(dāng)前知識節(jié)點(diǎn)i及其鄰居節(jié)點(diǎn)j∈Ni的隱藏狀態(tài)和嵌入。該層的輸入是向量xt∈{0,1}2N,代表t時(shí)刻的練習(xí),0表示回答錯(cuò)誤,1 代表回答正確。聚合知識隱藏狀態(tài)的方法如式(3)[17]所示:
其中:Wx∈R2N*e是一個(gè)知識點(diǎn)索引和作答結(jié)果的嵌入矩陣;Wc∈RN*e是一個(gè)知識點(diǎn)嵌入矩陣,Wc(k)代表Wc的第k行;e是嵌入大小。
采用圖神經(jīng)網(wǎng)絡(luò)(GNN)更新知識點(diǎn)i的嵌入,考慮到知識點(diǎn)間的影響是單向的,因此在聚合鄰居節(jié)點(diǎn)的消息時(shí),分別考慮知識點(diǎn)i對j的影響權(quán)重和知識點(diǎn)j對i的影響權(quán)重。另外,在聚合函數(shù)中,將遺忘因素向量λt(i)通過感知機(jī)函數(shù)f3對知識點(diǎn)i的嵌入作遺忘處理,擬合由于學(xué)生遺忘了知識點(diǎn)i對其認(rèn)知狀態(tài)造成的影響,然后將該嵌入輸入記憶門,捕獲知識點(diǎn)i的時(shí)序特征,得到時(shí)序嵌入,見式(4):
其中:W1是權(quán)重矩陣,W1∈Re*e;b1是偏移項(xiàng),b1∈Re。遺忘因素向量如式(5)所示,記憶門結(jié)構(gòu)如圖2 所示。
圖2 記憶門結(jié)構(gòu)Fig.2 Structure of memory gate
其中:Pt(i)=[CRt(i),F(xiàn)At(i),HCt(i)]為t時(shí)刻學(xué)生對已有知識的掌握程度,CRt(i)為t時(shí)刻學(xué)生要求提示的次數(shù),F(xiàn)At(i)為學(xué)生答題前的行為,HCt(i)為知識點(diǎn)作答正確率;RTt(i)為t時(shí)刻學(xué)生重復(fù)學(xué)習(xí)知識點(diǎn)的間隔時(shí)間;LTt(i)為t時(shí)刻學(xué)生重復(fù)學(xué)習(xí)知識點(diǎn)的次數(shù);STt(i)代表學(xué)生t時(shí)刻順序?qū)W習(xí)間隔時(shí)間;OMt-1(i)代表t-1 時(shí)刻學(xué)生的知識點(diǎn)原始掌握程度。
知識點(diǎn)k向知識點(diǎn)i傳遞消息的函數(shù)定義為式(6):
其中:[]為拼接操作;W2、W3和W4是權(quán)重矩陣,W2∈RN*e,W3∈RN*e,W4∈RN*1;b2、b3、b4是偏移量,b2∈Re,b3∈Re,b4∈Re;N是知識點(diǎn)個(gè)數(shù)。
學(xué)生在t+1 時(shí)刻的認(rèn)知狀態(tài)計(jì)算方式如式(10)所示:
其中:W5是權(quán)重矩陣,W5∈RN*e;b5是偏移量,b5∈Re。
模型輸出下一次學(xué)生作答習(xí)題的預(yù)測表現(xiàn):
其中:Wout是一個(gè)共享權(quán)重矩陣;bk是節(jié)點(diǎn)k的偏移項(xiàng)。損失函數(shù)L如式(14)所示:
其中:var=5 × 10-5;eps=10-16是t時(shí)刻學(xué)生作答知識點(diǎn)k的預(yù)測結(jié)果;yk是學(xué)生作答知識點(diǎn)k的真實(shí)結(jié)果。
本文實(shí)驗(yàn)在Windows11 下進(jìn)行,CPU 為Intel Core i7-11370H,3.3 GHz,編程語言采用Python 3.9.10,深度學(xué)習(xí)框架采用PyTorch 1.11.0。實(shí)驗(yàn)數(shù)據(jù)集如下:
1)ASSISTments2009(簡寫為ASSIST)[20]。數(shù)據(jù)集主要字段包括:題目編號、學(xué)生編號、知識點(diǎn)編號、學(xué)生要求提示的次數(shù)、學(xué)生學(xué)習(xí)知識點(diǎn)的時(shí)長、學(xué)生的答題結(jié)果等。本文提取ASSISTments2009 數(shù)據(jù)集中單個(gè)知識點(diǎn)回答次數(shù)不少于10 次的記錄,經(jīng)預(yù)處理后,得到62 955 條記錄,其中包括1 000 名學(xué)生和101 個(gè)知識點(diǎn)。
2)KDDCup2010(簡寫為KDD)[21]。該數(shù)據(jù)集用于教育數(shù)據(jù)挖掘競賽,主要字段包括:題目編號、學(xué)生編號、答題時(shí)長、提示次數(shù)、答題結(jié)果等。同樣地,本文提取了該數(shù)據(jù)集中某個(gè)知識點(diǎn)回答次數(shù)不少于10 次的記錄,經(jīng)預(yù)處理,得到了98 200 條記錄,其中包括1 000 名學(xué)生和211 個(gè)知識點(diǎn)。
根據(jù)兩個(gè)數(shù)據(jù)集的不同特點(diǎn),選取不同的數(shù)據(jù)字段并進(jìn)行預(yù)處理,獲得與7 個(gè)遺忘因素相關(guān)的評估數(shù)據(jù)。為確保結(jié)果的有效性并加快模型收斂速度,預(yù)處理過程中對結(jié)果均進(jìn)行了歸一化操作。具體情況如表1 所示。
為評估GKT-FM 模型的性能,本文選擇深度知識追蹤(DKT)[9]、動態(tài)鍵-值對知識追蹤(DKVMN)[12]、LFKT[14]和GKT[17]這4 個(gè)經(jīng)典模型進(jìn)行對比。參考文獻(xiàn)[14],對于每個(gè)模型,本文都進(jìn)行10 次實(shí)驗(yàn),使用平均曲線下面積(Area Under Curve,AUC)和平均精度(ACC)作為模型最終的性能評價(jià)指標(biāo)。對比模型的超參數(shù)按原文獻(xiàn)設(shè)置,具體設(shè)置如下:
1)DKT:對 于ASSIST 和KDD 數(shù)據(jù)集,門控循環(huán)單元(Gated Recurrent Unit,GRU)隱藏層的大小為200,批處理大小設(shè)置為32。
2)DKVMN:對于ASSIST 數(shù)據(jù)集,記憶矩陣列數(shù)為20,隱藏向量的大小為32;對于KDD 數(shù)據(jù)集,記憶矩陣列數(shù)為50,隱藏向量的大小為128,批處理大小設(shè)置為32。
3)LFKT:所有隱藏向量和嵌入矩陣大小為32,批處理大小為30。
4)GKT:所有隱藏向量和嵌入矩陣大小為32,批處理大小為16。
5)GKT-FM:對于ASSIST 數(shù)據(jù)集,知識點(diǎn)鄰接矩陣的大小為101×101。模型總共訓(xùn)練10 次,每次批處理大小為16。
所有模型均采用Adam 優(yōu)化器,除了GKT 與GKT-FM 的學(xué)習(xí)率設(shè)為0.01,其他模型的學(xué)習(xí)率均設(shè)為0.001。
為了減小參數(shù)量,本文統(tǒng)一設(shè)置所有隱藏向量和嵌入矩陣的大小,且通過比較模型在測試數(shù)據(jù)集上的平均AUC 值來選取,測試結(jié)果見表2。ASSIST 數(shù)據(jù)集中,當(dāng)嵌入大小d為32 時(shí),平均AUC 為0.849,高于其他超參數(shù)設(shè)置情況;對于KDD 數(shù)據(jù)集,當(dāng)嵌入大小d為16 時(shí),平均AUC 為0.831,高于其他超參數(shù)設(shè)置情況。
表2 不同嵌入維度下AUC值對比實(shí)驗(yàn)結(jié)果Tab.2 Comparison results of AUC value of different embedded dimensions
為評估7 個(gè)遺忘因素對平均ACC 的影響,本文在ASSIST數(shù)據(jù)集上進(jìn)行一系列實(shí)驗(yàn),每次去掉1 個(gè)因素,得到剩余6 個(gè)因素參與實(shí)驗(yàn)的平均ACC 值。本文將7 個(gè)遺忘因素分別簡記為LT(重復(fù)學(xué)習(xí)知識點(diǎn)的次數(shù))、RT(重復(fù)學(xué)習(xí)知識點(diǎn)的間隔時(shí)間)、ST(順序?qū)W習(xí)間隔時(shí)間)、CR(要求提示的次數(shù))、FA(答題前的行為)、HC(答題正確率)和OM(知識點(diǎn)原始掌握程度)。實(shí)驗(yàn)結(jié)果如表3 所示,可以看出,分別去掉7 個(gè)遺忘因素中的1 個(gè)因素,能在不同程度上降低平均ACC 的值。
表3 遺忘因素對平均ACC的影響分析Tab.3 Effect analysis of forgetting factors on average ACC
將GKT-FM 與DKT、DKVMN、GKT、LFKT 共4 個(gè)經(jīng)典模型,以及GKT-FM 的兩種變體模型(不使用遺忘因素的GKTFM-WF 模型和不使用記憶門結(jié)構(gòu)的GKT-FM-WM 模型)進(jìn)行對比,結(jié)果如表4 所示。從表4 可以看出,本文提出的GKTFM 在所有數(shù)據(jù)集上的AUC 和ACC 都取得了最優(yōu)值。
表4 不同模型的預(yù)測性能對比實(shí)驗(yàn)結(jié)果Tab.4 Experimental results of different models’ prediction performance comparison
本文將數(shù)據(jù)集按7∶2∶1 隨機(jī)劃分訓(xùn)練集、測試集和校驗(yàn)集。采用700 名學(xué)生的學(xué)習(xí)數(shù)據(jù)分別訓(xùn)練5 種模型,200 名學(xué)生進(jìn)行測試,并跟蹤這200 名學(xué)生的認(rèn)知狀態(tài)變化。表4分別給出了GKT-FM 與4 個(gè)對比方法在兩個(gè)數(shù)據(jù)集上的平均AUC 和ACC。可以看出,GKT-FM 相較于GKT,性能提升顯著,AUC 分別提升了6.9%和9.5%,ACC 提升了5.3%和6.7%。若不考慮遺忘行為,相較于GKT-FM,GKT-FM-WF 的AUC 分別下降了3.1% 和1.7%,ACC 分別下降了3.0 和2.8%;若不考慮答題序列中的時(shí)序特征,GKT-FM-WM 的AUC 分別下降了4.7%和2.4%,ACC 分別下降了2.2%和2.5%,說明學(xué)生的遺忘行為和答題序列的時(shí)序特征確實(shí)對他們的認(rèn)知狀態(tài)造成了影響;同時(shí),對比GKT-FM 和GKTFM-WF 與GKT-FM-WM 的結(jié)果可知,本文方法引入7 個(gè)遺忘因素和構(gòu)建的記憶門結(jié)構(gòu)能明顯改善最終的預(yù)測結(jié)果。
為保證實(shí)驗(yàn)結(jié)果的有效性,本文統(tǒng)一了LFKT、GKT 和GKT-FM 的實(shí)驗(yàn)環(huán)境,并通過GKT-FM 模型的兩個(gè)變體的對比驗(yàn)證了遺忘因素和記憶門確實(shí)能影響學(xué)生的認(rèn)知狀態(tài)。
從表4 來看,DKT 借助LSTM 對學(xué)生的整體知識水平進(jìn)行建模,對單個(gè)知識點(diǎn)的建模程度不夠,因此預(yù)測結(jié)果不如DKVMN;但是DKVMN 沒有考慮學(xué)生在學(xué)習(xí)過程中的遺忘行為,因此LFKT 模型的表現(xiàn)優(yōu)于DKVMN;GKT 首次采用圖結(jié)構(gòu)來描述知識點(diǎn)的相關(guān)性,基于GNN 建模學(xué)生的認(rèn)知狀態(tài),取得了較好的預(yù)測結(jié)果,但它沒有考慮學(xué)生的遺忘行為和答題序列數(shù)據(jù)中的時(shí)序特征;GKT-FM 在GKT 的基礎(chǔ)上,充分考慮學(xué)生的遺忘行為和答題序列數(shù)據(jù)中的時(shí)序特征對其認(rèn)知狀態(tài)造成的影響,取得了較好的實(shí)驗(yàn)結(jié)果。
知識追蹤可以實(shí)時(shí)追蹤學(xué)生的認(rèn)知狀態(tài),本文從數(shù)據(jù)集ASSIST 中截取了user_id 為79069 的學(xué)生的一段學(xué)習(xí)記錄,分別用GKT-FM、LFKT 和GKT 模型追蹤學(xué)生對5 個(gè)知識點(diǎn)掌握程度的變化,結(jié)果如圖3 所示。橫軸為學(xué)生的歷史答題記錄,三元組(t,kt,rt)中的kt表示學(xué)生在t時(shí)刻作答習(xí)題所包含的知識點(diǎn),rt表示作答結(jié)果(0 表示答錯(cuò),1 表示答對);縱軸為模型追蹤的5 個(gè)知識點(diǎn)。
圖3 基于不同模型的認(rèn)知狀態(tài)輸出結(jié)果Fig.3 Output results of cognitive state based on different models
1)在第4 時(shí)刻,學(xué)生正確作答了知識點(diǎn)5 后,LFKT、GKT和GKT-FM 對于知識點(diǎn)5 的掌握程度的追蹤結(jié)果均有所提升;在第3 時(shí)刻,學(xué)生錯(cuò)誤作答了知識點(diǎn)2 后,LFKT、GKT 和GKT-FM 對于知識點(diǎn)2 掌握程度的追蹤結(jié)果均有所下降。說明3 個(gè)模型都能根據(jù)學(xué)生的作答結(jié)果更新知識點(diǎn)掌握程度。
2)圖3(a)、(b)中,學(xué)生從第9~15 時(shí)刻學(xué)習(xí)知識點(diǎn)3 期間,在答對知識點(diǎn)3 后:LFKT 結(jié)果顯示該知識點(diǎn)的掌握程度短暫上升,之后持續(xù)快速下降;而GKT-FM 結(jié)果顯示,學(xué)生對該知識點(diǎn)的掌握程度短暫上升,之后的下降趨勢平緩。一方面是由于GKT-FM 建模遺忘行為時(shí)結(jié)合了認(rèn)知同化理論[18],學(xué)生先前掌握的知識點(diǎn)對當(dāng)前的認(rèn)知狀態(tài)起了正向作用;另一方面,時(shí)序特征也讓處在不同時(shí)刻的知識點(diǎn)3 相互關(guān)聯(lián),表現(xiàn)為第9~15 時(shí)刻,知識點(diǎn)3 的掌握程度變化平緩。說明,與LFKT 相比,GKT-FM 能更好地追蹤學(xué)生認(rèn)知狀態(tài)。
3)圖3(a)、(c)中,學(xué)生從第5~15 時(shí)刻學(xué)習(xí)知識點(diǎn)4 期間,在答對知識點(diǎn)4 后:GKT 結(jié)果顯示,學(xué)生對于知識點(diǎn)4 的掌握程度短暫上升,之后波動較大,無規(guī)律可循;GKT-FM 結(jié)果顯示,學(xué)生對于知識點(diǎn)4 的掌握程度短暫上升,之后變化平穩(wěn)。造成這一現(xiàn)象的原因同樣有兩方面:①GKT-FM 建模了學(xué)生的遺忘行為,所以學(xué)生兩次作答同一個(gè)知識點(diǎn)期間,認(rèn)知狀態(tài)的變化遵循遺忘規(guī)律,且變化平穩(wěn);②知識點(diǎn)4 的時(shí)序特征對掌握程度的變化起到平緩作用。說明與GKT 模型相比,GKT-FM 模型能夠更好地追蹤學(xué)生認(rèn)知狀態(tài)。
綜上,GKT-FM 模型可有效建模學(xué)生的遺忘行為和答題序列中的時(shí)序特征,并追蹤學(xué)生的知識點(diǎn)掌握程度。
本文重點(diǎn)考慮了遺忘行為和學(xué)生答題序列中的時(shí)序特征對認(rèn)知狀態(tài)的影響,提出融合遺忘因素與記憶門的圖神經(jīng)網(wǎng)絡(luò)知識追蹤模型GKT-FM。在公開數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,GKT-FM 模型能夠根據(jù)學(xué)生的歷史答題數(shù)據(jù)實(shí)時(shí)追蹤其認(rèn)知狀態(tài)變化,并有效建模學(xué)生的遺忘行為和答題序列數(shù)據(jù)中的時(shí)序特征對其認(rèn)知狀態(tài)造成的影響,在預(yù)測學(xué)生的未來答題表現(xiàn)時(shí)優(yōu)于對比模型。
未來將針對以下兩方面進(jìn)行探索:1)本文所采用數(shù)據(jù)集中題目涉及的知識點(diǎn)相對較少,對計(jì)算資源和計(jì)算時(shí)間的要求仍在可控范圍。如何有效建模含大量知識點(diǎn)的綜合性題目,是下一步研究的重點(diǎn)。2)知識點(diǎn)間的層次關(guān)系是多樣復(fù)雜的,比如包含、先驗(yàn)和后驗(yàn)關(guān)系,本文是通過統(tǒng)計(jì)的方法來構(gòu)建知識點(diǎn)間的關(guān)系,算法仍有改進(jìn)空間,如何更精確地構(gòu)建知識點(diǎn)間的層次關(guān)系,也是接下來需要進(jìn)行的工作。