摘 要:知識追蹤的目的是持續(xù)評估學(xué)生的知識狀態(tài),并預(yù)測學(xué)生未來的學(xué)習(xí)表現(xiàn)。學(xué)生的學(xué)習(xí)過程本質(zhì)上是學(xué)生、知識點(diǎn)和習(xí)題之間的相互作用,學(xué)生通過學(xué)習(xí)行為影響學(xué)習(xí)過程。學(xué)習(xí)行為包括獲取知識行為和遺忘知識行為。為了準(zhǔn)確建模知識追蹤中的學(xué)習(xí)過程和學(xué)習(xí)行為,提出一種融合學(xué)習(xí)過程和學(xué)習(xí)行為的深度知識追蹤模型。該模型結(jié)合項(xiàng)目反應(yīng)理論和LSTM建模知識點(diǎn)與習(xí)題之間的相互作用,利用單調(diào)注意力機(jī)制擬合學(xué)生的學(xué)習(xí)行為,并且定義兩個解碼器用以捕獲學(xué)生與知識點(diǎn)、習(xí)題之間的相互作用,從而融合學(xué)習(xí)過程和學(xué)習(xí)行為。在真實(shí)數(shù)據(jù)集ASSISTment2009和ASSISTment2017上的實(shí)驗(yàn)結(jié)果表明,該模型的表現(xiàn)優(yōu)于已有的知識追蹤模型,相比于次優(yōu)模型,模型的預(yù)測準(zhǔn)確率在兩個數(shù)據(jù)集上均有1%的提高。
關(guān)鍵詞:知識追蹤;項(xiàng)目反應(yīng)理論;學(xué)習(xí)行為;深度學(xué)習(xí)
DOI:10.15938/j.jhust.2024.05.003
中圖分類號: TP18
文獻(xiàn)標(biāo)志碼: A
文章編號: 1007-2683(2024)05-0018-11
Deep Knowledge Tracing Model Integrating Learning Process and Behavior
JIA Rui1, DONG Yongquan1,2,3, CHEN Cheng1, LIU Yuan1
(1.School of Computer Science and Technology, Jiangsu Normal University, Xuzhou 221116, China;
2.Jiangsu Education Informatization Engineering Technology Research Center, Xuzhou 221116, China;
3.Xuzhou Cloud Computing Engineering Technology Research Center, Xuzhou 221116, China)
Abstract:The purpose of knowledge tracking is to continuously assess the state of students′ knowledge and to predict their future learning performance. The student learning process is essentially an interaction between students, knowledge points, and exercises, and students influence the learning process through their learning behaviors. Learning behaviors include knowledge acquisition behaviors and knowledge forgetting behaviors. In order to accurately model the learning process and learning behavior in knowledge tracking, a deep knowledge tracking model that integrates the learning process and learning behavior is proposed. The model combines item response theory and LSTM to model the interactions between knowledge points and exercises, uses a monotonic attention mechanism to fit students′ learning behaviors, and defines two decoders to capture the interactions between students and knowledge points and exercises, thus fusing learning processes and learning behaviors. Experimental results on the real datasets ASSISTment2009 and ASSISTment2017 show that the model outperforms existing knowledge tracking models, and the prediction accuracy of the model is improved by 1% on both datasets compared to the suboptimal model.
Keywords:knowledge tracing; item response theory; learning behavior; deep learning
0 引 言
近年來,新冠肺炎疫情對教育領(lǐng)域造成了巨大的影響,各種在線教育平臺迅速發(fā)展,為學(xué)生的學(xué)習(xí)提供了便利和更多的選擇。知識追蹤(knowledge tracing,KT)是在線教育的重要技術(shù)支撐,通過平臺收集到的學(xué)生學(xué)習(xí)記錄,評估其對知識點(diǎn)的掌握程度。KT的任務(wù)[1]是:①根據(jù)學(xué)生的學(xué)習(xí)歷史預(yù)測其在未來學(xué)習(xí)上的表現(xiàn);②實(shí)時追蹤學(xué)生的知識水平(即學(xué)生對各知識點(diǎn)的掌握程度)。
從教育的角度[2]來看,學(xué)習(xí)過程本質(zhì)上是學(xué)生(Stu)、知識點(diǎn)(C)和習(xí)題(E)之間的相互作用。本文將學(xué)生與知識點(diǎn)之間的相互作用(簡稱Stu-C)定義為學(xué)生對某個知識點(diǎn)的掌握程度,學(xué)生與習(xí)題之間的相互作用(簡稱Stu-E)定義為學(xué)生未掌握知識的情況下猜對習(xí)題的概率和學(xué)生掌握知識的情況下答錯習(xí)題的概率,知識點(diǎn)與習(xí)題之間的相互作用(簡稱C-E)定義為兩者之間的相關(guān)復(fù)雜度。此外,學(xué)生的學(xué)習(xí)過程受到兩種學(xué)習(xí)行為的影響:獲取知識的行為和遺忘知識的行為。獲取知識的行為定義為歷史習(xí)題及其作答結(jié)果對學(xué)生在未來習(xí)題上表現(xiàn)的影響,遺忘知識的行為則定義為隨著時間流逝,歷史習(xí)題影響被削弱的程度。
現(xiàn)有的知識追蹤技術(shù)主要分為基于貝葉斯的知識追蹤方法和基于深度學(xué)習(xí)的知識追蹤方法[3]。貝葉斯知識追蹤[4] (bayesian knowledge tracing, BKT)對Stu-C和Stu-E進(jìn)行建模,且其僅考慮了獲取知識的行為對學(xué)習(xí)過程的影響。QIU等[5]提出的BKT的變體考慮了學(xué)生遺忘行為對學(xué)習(xí)過程的影響。近年來,深度學(xué)習(xí)[6]融入各個領(lǐng)域,在知識追蹤研究中也獲得了不少的成就。Piech首先提出深度知識追蹤模型[7] (deep knowledge tracing,DKT),采用長短期記憶網(wǎng)絡(luò)(long short-term memory, LSTM)[8-9]對Stu-C進(jìn)行了建模。隨后,研究者們陸續(xù)提出動態(tài)鍵值記憶網(wǎng)絡(luò)(dynamic key-value memory networks ,DKVMN)[10],基于二分圖的預(yù)訓(xùn)練嵌入(pre-training embeddings via bipartite graph, PEBG)[11],自注意力知識追蹤(self-attentive knowledge tracing, SAKT)[12]和上下文感知的注意力知識追蹤(context-aware attentive knowledge tracing, AKT)[13]等多個基于深度學(xué)習(xí)的知識追蹤方法。上述基于深度學(xué)習(xí)的知識追蹤模型都建模了Stu-C以及學(xué)生獲取知識的行為,其中,PEBG和AKT還對C-E進(jìn)行建模,但是這些模型都沒有考慮到Stu-E,且只有AKT考慮到了學(xué)生遺忘知識的行為。
綜上所述,現(xiàn)有的模型僅部分考慮了學(xué)生的學(xué)習(xí)過程和學(xué)習(xí)行為,并未將二者融入同一個模型。為此,本文提出一種融合了學(xué)生的學(xué)習(xí)過程和學(xué)習(xí)行為的深度知識追蹤模型PBKT(deep knowledge tracing model with learning process and behavior merging)。主要創(chuàng)新和貢獻(xiàn)有:
①考慮到項(xiàng)目反應(yīng)理論在教育測量[10]中的出色成績和LSTM在時序問題中的優(yōu)越表現(xiàn)[14],提出了一個基于LSTM的Rasch模型嵌入,用以建模知識點(diǎn)與習(xí)題之間的相互作用。
②提出了一個融合學(xué)習(xí)過程和學(xué)習(xí)行為的深度知識追蹤模型(PBKT),學(xué)習(xí)過程包括Stu-C、Stu-E和C-E三種相互作用,學(xué)習(xí)行為包括獲取知識的行為以及遺忘知識的行為。
③通過在兩個真實(shí)在線教育數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明:PBKT可以有效地建模學(xué)生的學(xué)習(xí)過程和學(xué)習(xí)行為,實(shí)時追蹤學(xué)生的知識水平,并且其預(yù)測性能優(yōu)于現(xiàn)有模型。
1 相關(guān)工作
1.1 項(xiàng)目反應(yīng)理論
項(xiàng)目反應(yīng)理論(item response theory, IRT)[15]是心理測量學(xué)中一個經(jīng)典且強(qiáng)大的模型。IRT的產(chǎn)生是由于傳統(tǒng)教育測量具有很大的局限性。例如傳統(tǒng)教育測量的樣本依賴性和測驗(yàn)結(jié)果推廣的有限性等。IRT建模了影響學(xué)生作答情況的兩個方面,分別是學(xué)生的學(xué)習(xí)能力和試題特征(難度、區(qū)分度和猜測情況)。IRT模型的邏輯回歸模型成為了主要應(yīng)用的模型。邏輯回歸模型定義了4個參數(shù)分別用來表示學(xué)生能力、試題困難度、試題區(qū)分度和學(xué)生猜測情況。在實(shí)際應(yīng)用中,該模型又分為單參數(shù)模型(又稱為Rasch模型[16])、二參數(shù)模型和三參數(shù)模型,這三種模型都考慮了學(xué)生能力,區(qū)別在于,單參數(shù)模型只考慮了習(xí)題困難度,二參數(shù)模型考慮了習(xí)題困難度和區(qū)分度,三參數(shù)模型則是將所有參數(shù)都考慮在內(nèi)。三類模型中,盡管Rasch模型最簡單,但在正式評估中可以達(dá)到與更復(fù)雜的預(yù)測模型相當(dāng)?shù)男阅?sup>[13],且其與深度神經(jīng)網(wǎng)絡(luò)結(jié)合時無需引入過多參數(shù),因而研究者多用Rasch模型實(shí)現(xiàn)項(xiàng)目反應(yīng)理論。
1.2 基于貝葉斯的知識追蹤模型
貝葉斯知識追蹤(BKT)[17]是最早使用隱馬爾科夫模型實(shí)現(xiàn)知識追蹤的方法,1995年由Albert引入教育領(lǐng)域。BKT將學(xué)生的潛在知識狀態(tài)建模為一組二進(jìn)制變量,每一個二元變量表示學(xué)習(xí)者掌握或未掌握一個知識點(diǎn)。BKT設(shè)計(jì)了4個參數(shù)P(L)、P(T)、P(G)、P(S)表示Stu-C和Stu-E。在此基礎(chǔ)上,QIU等[5]提出了一個考慮了學(xué)生遺忘行為的BKT變體,BKT-forget,該模型考慮了學(xué)生距離上一次重復(fù)學(xué)習(xí)知識點(diǎn)的間隔時間,將新一天的標(biāo)記加入到BKT中,建模學(xué)生的遺忘行為,但是無法對較短時間的遺忘行為進(jìn)行建模。
1.3 基于深度學(xué)習(xí)的知識追蹤模型
隨著深度學(xué)習(xí)的發(fā)展,Piech等[7]提出了深度知識追蹤(DKT),DKT利用LSTM[18]處理學(xué)習(xí)者的學(xué)習(xí)歷史序列,LSTM輸出的隱藏狀態(tài)向量通過全連接層和激活函數(shù)后表現(xiàn)為學(xué)生對各知識點(diǎn)的掌握程度(Stu-C)。Yeung等[19]提出的DKT+forgetting在DKT的基礎(chǔ)上增加學(xué)生的遺忘行為。Zhang等[10]提出了DKVMN模型,該模型引入了一個外部記憶模塊來存儲知識概念,并更新學(xué)生相應(yīng)的知識點(diǎn)掌握情況(Stu-C)。在深度學(xué)習(xí)的發(fā)展中,Transformer[20]的提出使得許多深度學(xué)習(xí)模型可以使用注意力機(jī)制來捕獲學(xué)習(xí)歷史序列中的依賴關(guān)系。Pandey等[21]基于Transformer提出了自注意力知識追蹤SAKT,利用注意力機(jī)制捕捉學(xué)習(xí)歷史與未來答題結(jié)果之間的關(guān)系,從而得到學(xué)生對各個知識點(diǎn)的掌握程度(Stu-C)。2020年,Pandey等[22]提出了一個SAKT的變體,關(guān)系感知的自我注意知識追蹤(relation-aware self-attention for knowledge tracing, RKT),RKT在SAKT的基礎(chǔ)上將學(xué)生的遺忘行為融入注意力機(jī)制中。上述3個模型都僅僅考慮到了Stu-C。在之后的研究中,Liu等[23]提出了一個基于圖的知識追蹤模型,PEBG,該模型引入知識點(diǎn)與習(xí)題之間的二分圖來建模Stu-C和C-E。2020年,Ghosh等[13]提出了一個上下文感知的注意力知識追蹤模型AKT,AKT將基于注意力的神經(jīng)網(wǎng)絡(luò)模型與一系列具有可解釋性的模型組件藕合在一起建模Stu-C,并且引入了一個習(xí)題難度系數(shù)用以建模C-E。除此,AKT提出了單調(diào)注意力機(jī)制,利用學(xué)生答題時間步距離代替時間間隔,并用其更新注意力權(quán)重,建模學(xué)生的遺忘行為。
綜上所述,當(dāng)前的研究證明建模學(xué)生的部分學(xué)習(xí)過程和學(xué)習(xí)行為對于預(yù)測學(xué)生在未來的表現(xiàn)有積極的影響,但這些模型或者對學(xué)習(xí)過程中的三種相互作用未考慮完全,或者忽略了學(xué)生的遺忘行為。本文所提出的PBKT融合學(xué)習(xí)過程和學(xué)習(xí)行為,并在PBKT中設(shè)計(jì)了一個基于LSTM的Rasch模型,以捕捉知識點(diǎn)與習(xí)題的相關(guān)復(fù)雜度,從而得以實(shí)時追蹤學(xué)生對于各個知識點(diǎn)的掌握程度,預(yù)測學(xué)生未來學(xué)習(xí)表現(xiàn)。
2 融合學(xué)習(xí)過程和學(xué)習(xí)行為的深度知識追蹤模型
本章主要給出知識追蹤的問題定義,并且詳細(xì)介紹本文所提出的融合學(xué)習(xí)過程和學(xué)習(xí)行為的深度知識追蹤模型PBKT。圖1是PBKT的總體框架,由3個部分構(gòu)成,分別是Rasch嵌入層、學(xué)習(xí)層和預(yù)測層。Rasch層的輸入為習(xí)題序列(e1,e2,…,en)以及習(xí)題所涵蓋的知識點(diǎn)序列(c1,c2,…,cn)以及學(xué)生的作答結(jié)果序列(r1,r2,…,rn),通過LSTM和單調(diào)注意力獲得攜帶歷史信息的習(xí)題嵌入與交互嵌入。學(xué)習(xí)層的輸入為嵌入后的習(xí)題和交互,利用單調(diào)注意力模擬學(xué)生的學(xué)習(xí)行為,從而輸出學(xué)生的隱藏知識狀態(tài)。預(yù)測層的輸入是學(xué)生的隱藏知識狀態(tài),分別經(jīng)過Stu-C解碼器和Stu-E解碼器后,輸出學(xué)生對en的作答情況預(yù)測。
2.1 問題定義
知識追蹤的輸入是一個學(xué)生的答題歷史,定義為X={x1,x2,…,xn-1},其中xi表示學(xué)生i時刻的作答情況,稱為一次交互,表示為一個三元組,即xi=(ci,ei,ri),其中,ci表示學(xué)生i時刻所做習(xí)題所涵蓋的知識點(diǎn),ei表示學(xué)生i時刻所做習(xí)題,ri為答題結(jié)果,ri=1表示答題正確,ri=0表示答題錯誤。知識追蹤的任務(wù)則是根據(jù)學(xué)生答題序列X來預(yù)測學(xué)生在下一個習(xí)題en上的表現(xiàn)。
2.2 RASCH嵌入層
Rasch嵌入層的目標(biāo)是通過學(xué)習(xí)序列來挖掘更多的信息,同時解決數(shù)據(jù)稀疏性問題,以盡可能地保留知識點(diǎn)和習(xí)題的相關(guān)復(fù)雜度。在此過程中,習(xí)題和交互的歷史信息至關(guān)重要,這些歷史信息包含著學(xué)生理解知識和解題習(xí)慣,對預(yù)測學(xué)生未來答題結(jié)果有明顯作用,而這些歷史信息的作用會受到學(xué)生遺忘行為的影響。為此,Rasch嵌入層分別對習(xí)題與知識點(diǎn)的相關(guān)復(fù)雜度和歷史信息的影響進(jìn)行了兩步嵌入,以最大化嵌入效果。嵌入層的輸入是(e1,e2,…,en)、(c1,c2,…,cn)和(r1,r2,…,rn)。
在KT任務(wù)中,研究者們常用習(xí)題所屬知識點(diǎn)代表習(xí)題,這種做法可以很好地緩解數(shù)據(jù)稀疏性問題,但是忽略了同一知識點(diǎn)下習(xí)題之間的差異,即忽略了習(xí)題-知識點(diǎn)之間的相互作用。因此,本模型在對習(xí)題進(jìn)行初步嵌入時將習(xí)題與知識點(diǎn)之間的相互作用考慮其中,與知識點(diǎn)映射向量相結(jié)合,使得模型包含習(xí)題自身信息的情況下避免數(shù)據(jù)稀疏造成的影響。嵌入過程如圖2所示。
初步嵌入的對象是知識點(diǎn)cn和交互元組(cn,rn),兩者的嵌入過程相似,但是模型無法處理對元組直接進(jìn)行處理,因此將元組表示為一個實(shí)數(shù)an,如式(1)所示:
an=cn+|C|×rn(1)
然后將cn、an和en分別乘一個嵌入矩陣A1(|C|×dk)、A2(2|E|×1)和A3(2|C|×dk)映射到連續(xù)向量空間中,得到維度為dk維度的知識點(diǎn)向量kn和交互向量Qn以及習(xí)題復(fù)雜度參數(shù)μn∈R。為了將習(xí)題復(fù)雜度融入到kn和Qn中,PBKT利用LSTM提取知識點(diǎn)cn和交互an中的信息得到向量dn和fn,最后利用習(xí)題復(fù)雜度參數(shù)計(jì)算習(xí)題與知識點(diǎn)之間的相關(guān)復(fù)雜度并將其融入知識點(diǎn)和交互向量,得到包含習(xí)題與知識點(diǎn)間相互作用的習(xí)題初步嵌入Cn和交互初步嵌入Rn,如式(2)、(3)所示:
Cn=kn+μn·dn(2)
Rn=Qn+μn·fn(3)
不同學(xué)生對習(xí)題的理解和學(xué)習(xí)方式不盡相同,因此在對未來答題結(jié)果預(yù)測時需要從學(xué)生過去的答題序列中捕捉到其學(xué)習(xí)方式,即過去習(xí)題及其作答情況對未來的影響,不僅如此,學(xué)生對于知識的遺忘情況也不同,對其進(jìn)行建模有助于提升模型的預(yù)測性能。因此,PBKT使用包含核函數(shù)的注意力機(jī)制,即單調(diào)注意力機(jī)制[13],對習(xí)題和交互進(jìn)行二次嵌入,以Cn和Rn為例。二次嵌入過程如圖3所示。
PBKT首先將(C1,C2,…,Cn)分別與3個映射矩陣WQ1、WK1和WV1的查詢向量qC、鍵向量kC和值向量vC,然后分別計(jì)算前n-1個習(xí)題對Cn的影響,對于交互序列(R1,R2,…,Rn)相同處理,獲得過去交互對Rn的影響。如式(4)、(5)所示,其中,αCn-i為第n-i個習(xí)題對Cn的影響, αRn-i為第n-i個交互對Rn的影響。
αCn-i=(qCn)TkCn-i,(i∈{1,2,…,n-1})(4)
αRn-i=(qRn)TkRn-i,(i∈{1,2,…,n-1})(5)
PBKT設(shè)計(jì)了一個時間間隔變量d(n,i)與指數(shù)衰減函數(shù)相結(jié)合設(shè)計(jì)一個函數(shù)以模擬學(xué)生的遺忘行為,d(n,i)使用習(xí)題(或交互)之間的相對時間步長,PBKT利用縮放點(diǎn)積和softmax函數(shù)的原理表示習(xí)題之間的關(guān)系,并用習(xí)題之間的關(guān)系調(diào)整兩個習(xí)題之間的距離,即通過模型的訓(xùn)練學(xué)習(xí)時間間隔變量。計(jì)算式如(6)、(7)、(8)所示。其中γCi,t代表習(xí)題i和習(xí)題t之間的關(guān)系,γRi,t代表交互i與交互t之間的關(guān)系。
d(n,i)=|n-i|·∑nt=i+1γi,t(6)
γCi,t=exp(qCi)TkCtDk∑1≤t≤iexp(qCi)TkCtDk,t≤i(7)
γRi,t=exp(qRi)TkRtDk∑1≤t≤iexp(qRi)TkRtDk,t≤i(8)
然后,RBKT將αCn-i與遺忘函數(shù)相結(jié)合,以獲得更新后的過去每道習(xí)題對Cn的影響sCn-i,如式(9)所示。同樣地,可根據(jù)式(10)得到更新后的過去每個交互對Rn的影響sRn-i。其中,θgt;0是一個可學(xué)習(xí)的衰減率參數(shù)。
sCn-i=exp(-θ·d(n,i))·(qCn)TkCiDk(9)
sRn-i=exp(-θ·d(n,i))·(qRn)TkRiDk(10)
最后,分別以 sC和sR為權(quán)值對vC和vR進(jìn)行加權(quán)和得到二次嵌入后習(xí)題嵌入C^n和交互嵌入R^n,計(jì)算過程如式(11)、(12)所示。
C^n=∑ni=1sn-ivCn(11)
R^n=∑n-1i=1sn-ivRi(12)
2.3 學(xué)習(xí)層
學(xué)習(xí)層根據(jù)歷史習(xí)題和作答情況追蹤學(xué)生的知識水平變化,模擬了學(xué)生獲取知識的行為和遺忘知識的行為。PBKT利用單調(diào)注意力機(jī)制模擬學(xué)生的學(xué)習(xí)行為,輸入為(C^1,C^2,…,C^n) 和(R^1,R^2,…,R^n),輸出為學(xué)生隱藏知識向量hn,如式(13)、(14)所示,公式原理與3.1節(jié)所述一致,不同的是,學(xué)習(xí)層中用C^分別乘一個查詢矩陣和鍵矩陣得到查詢映射qC^i和鍵映射kC^i,用R^乘一個值矩陣得到值映射向量vR^i。
sn,i=exp(-θ·d(n,i))·(qC^n)TkC^iDk(13)
hn=∑n-1i=1sn,ivR^i(14)
2.4 預(yù)測層
預(yù)測層的作用是預(yù)測學(xué)生在未來習(xí)題en上的表現(xiàn),在預(yù)測層中,定義了兩個解碼器,Stu-C解碼器和Stu-E解碼器,分別用于提取學(xué)生對各個知識點(diǎn)的掌握程度以及學(xué)生未掌握知識的情況下猜對en的概率和學(xué)生掌握知識的情況下答錯en的概率。兩個解碼器的輸入為學(xué)生隱藏知識狀態(tài)和未來習(xí)題的嵌入向量,表現(xiàn)為Hn=Concat(hn,C^n),Stu-C解碼器通過線性層和sigmoid函數(shù)將Hn解碼為對該習(xí)題所涵蓋知識點(diǎn)的掌握程度Li。Stu-E解碼器通過線性層和sigmoid函數(shù)將Hn解碼為猜測參數(shù)Si和Gi。Si學(xué)生未掌握知識的情況下猜對題目的概率,Gi表示學(xué)生掌握知識的情況下答錯題目的概率。學(xué)生答對習(xí)題的概率pi∈(0,1) 如式(15)所示:
pi=sigmoid(Li(1-Si)+(1-Li)Gi)(15)
2.5 模型優(yōu)化目標(biāo)
模型需要訓(xùn)練的參數(shù)主要是習(xí)題嵌入矩陣、交互嵌入矩陣和多個單調(diào)注意力層。本文通過最小化模型對于學(xué)生答題結(jié)果的預(yù)測值pi和學(xué)生答題的真實(shí)結(jié)果yi之間的交叉熵?fù)p失函數(shù)來優(yōu)化各個參數(shù)。損失函數(shù)如式(16)所示,本文使用Adam方法優(yōu)化參數(shù):
Loss=-∑n(rilogpi+(1-ri)log(1-pi))(16)
綜上所述,PBKT對輸入序列進(jìn)行二次嵌入,以獲取習(xí)題信息以及學(xué)生的做題習(xí)慣等,然后利用單調(diào)注意力機(jī)制模擬學(xué)生學(xué)習(xí)行為,獲得學(xué)生隱藏知識狀態(tài),最后從隱藏知識狀態(tài)中解碼出的學(xué)生-知識點(diǎn)相互作用和學(xué)生-習(xí)題相互作用,并結(jié)合兩種相互作用,預(yù)測學(xué)生未來答題結(jié)果。具體過程如算法1所示。
PBKT的輸入為學(xué)生的答題序列X={x1,x2,…,xn}和真實(shí)標(biāo)簽y,輸出為學(xué)生答對習(xí)題的概率p。首先初始化知識點(diǎn)嵌入矩陣A1,習(xí)題困難度嵌入矩陣A2,交互嵌入矩陣A3,接下來對習(xí)題和交互進(jìn)行嵌入,算法第2步到第13步的for循環(huán)是對學(xué)習(xí)序列中n個答題記錄的嵌入過程,第3步將交互從元組的形式變?yōu)橐粋€實(shí)數(shù),第4步到第6步分別將知識點(diǎn)、習(xí)題和交互映射到連續(xù)向量空間并提取習(xí)題復(fù)雜度,第7步到第10步利用LSTM提取習(xí)題信息,并將其與習(xí)題復(fù)雜度參數(shù)融入到知識點(diǎn)和交互向量中,完成初步嵌入,第11和第12步利用單調(diào)注意力機(jī)制將學(xué)生的學(xué)習(xí)習(xí)慣等信息加入知識點(diǎn)和交互向量中,完成二次嵌入。
第14步到第21步的for循環(huán)用于用前i-1個答題記錄預(yù)測學(xué)生第i個習(xí)題的答對概率。第15步用單調(diào)注意力機(jī)制獲取學(xué)生當(dāng)前時刻的隱藏知識狀態(tài),第16步拼接第i時刻前隱藏知識狀態(tài)和第i時刻的習(xí)題嵌入,第17、18和19步分別提取學(xué)生在第i時刻對知識點(diǎn)的掌握程度Li、對習(xí)題的失誤概率Si和對習(xí)題的猜對概率Gi,第20步結(jié)合Li、Si和Gi計(jì)算得到學(xué)生對第i個習(xí)題的概率。第22步計(jì)算預(yù)測結(jié)果p和真實(shí)標(biāo)簽y之間的損失并通過反向傳播更新所有模型參數(shù)。
算法1 PBKT
輸入:學(xué)生做題序列X={x1,x2,…,xn},xi=(ci,ei,ri),真實(shí)標(biāo)簽y。
輸出:學(xué)生答對習(xí)題的概率
begin
1)初始化知識點(diǎn)嵌入矩陣A1,習(xí)題困難度嵌入矩陣A2,交互嵌入矩陣A3
2)for i=1 to n do:
3)ai=ci+|C|×ri
4)ki=Ai×ci+bi
5)μi=A2i×ei+b2i
6)Qi=A3i×ei+b3i
7)di=LSTM(ci)
8)fi=LSTM(ci)
9)Ci=ki+μi·di
10)Ri=Qi+μi·fi
11)C^i=Monotonic Attention(Ci,Ci-j,Ci-j),j∈{1,2,…,i-1}
12)R^i=Monotonic Attention(Ri,Ri-j,Ri-j),j∈{1,2,…,i-1}
13)end for
14)for i=2 to n:
15)hi=Monotonic Attention(C^i,C^i-j,R^i-j),j∈{1,2,…,i-1}
16)Oi=Concat(hi,C^i)
17)Li=sigmoid(WLiOi+bLi)
18)Si=sigmoid(WSiOi+bSi)
19)Gi=sigmoid(WGiOi+bGi)
20)pi=sigmoid(Li(1-Si)+(1-Li)Gi)
21)end for
22)Loss=-∑n(ylogp+(1-y)log(1-p))
end
3 實(shí) 驗(yàn)
本文在兩個真實(shí)在線教育數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),通過對比PBKT與其他知識追蹤模型的預(yù)測性能以及知識追蹤表現(xiàn),驗(yàn)證PBKT的有效性。
3.1 數(shù)據(jù)集
首先介紹實(shí)驗(yàn)所使用的兩個真實(shí)在線教育數(shù)據(jù)集。
Assistment2009[24]:該數(shù)據(jù)集來自于ASSISTment在線教育平臺,本文刪除了知識點(diǎn)和作答結(jié)果有缺失值的記錄。經(jīng)過預(yù)處理后,數(shù)據(jù)集包含4 918個學(xué)生,110個知識點(diǎn),16 891個習(xí)題,數(shù)據(jù)集中,user_id字段表示學(xué)生編號,skill_id字段表示知識點(diǎn)編號,problem_id字段表示習(xí)題編號,correct字段表示學(xué)生的答題結(jié)果。
Assistment2017[25]:該數(shù)據(jù)集來自于ASSISTment在線教育平臺,本文刪除了知識點(diǎn)和作答結(jié)果有缺失值的記錄。經(jīng)過預(yù)處理后,數(shù)據(jù)集包含5 558個學(xué)生,102個知識點(diǎn),3 162個習(xí)題,數(shù)據(jù)集中,user_id字段表示學(xué)生編號,skill_id字段表示知識點(diǎn)編號,problem_id字段表示習(xí)題編號,correct字段表示學(xué)生的答題結(jié)果。
對于數(shù)據(jù)集,本文隨機(jī)將數(shù)據(jù)集中60%的數(shù)據(jù)作為訓(xùn)練集, 20%的數(shù)據(jù)作為測試集,20%的數(shù)據(jù)作為驗(yàn)證集,用于參數(shù)的調(diào)整,使用五折交叉驗(yàn)證法,取兩種指標(biāo)的平均值。
3.2 評測指標(biāo)及參數(shù)設(shè)置
對學(xué)習(xí)者答題結(jié)果的預(yù)測是一個二元分類問題,即回答正確或錯誤。因此,本文使用曲線下面積(area under curve, AUC)和精度(accuracy, ACC)指標(biāo)來比較模型性能。AUC的計(jì)算公式如式(17)所示,其中,mi代表正樣本預(yù)測得分,nj代表負(fù)樣本預(yù)測得分,M代表正樣本數(shù)量,N代表負(fù)樣本數(shù)量。ACC的計(jì)算公式如式(18)所示,其中,TP代表樣本預(yù)測值與真實(shí)值相符且為正,F(xiàn)P代表樣本預(yù)測值為正而真實(shí)值為負(fù),F(xiàn)N代表樣本預(yù)測值為負(fù)而真實(shí)值為正,TN代表樣本預(yù)測值與真實(shí)值相符且均為負(fù)。一般來說AUC或ACC值為0.5時代表隨機(jī)猜測時的預(yù)測結(jié)果,兩個指標(biāo)的值越大越好。
AUC=∑I(mi,nj)MN,I(mi,nj)=1,migt;nj0.5,mi=nj0,milt;nj(17)
ACC=TP+TNTP+FP+FN+TN(18)
3.3 對比方法
為了評估PBKT的性能,本文選擇了多個基于回歸的模型和多個基于深度學(xué)習(xí)的模型作為對比方法。
IRT[26]:項(xiàng)目反應(yīng)理論。該理論是用于設(shè)計(jì)、分析和評分測試。
FBKT[4]:FBKT提出了模糊貝葉斯KT模型來應(yīng)對連續(xù)評分場景,以擴(kuò)展KT模型的適用性。
PFA[27]:PFA提出了一種稱為學(xué)習(xí)因素分析的認(rèn)知模型。
DAS3H[28]:DAS3H提出了一種包含學(xué)生遺忘行為的認(rèn)知模型。
DKT[7]:DKT是深度循環(huán)神經(jīng)網(wǎng)絡(luò)在知識追蹤中的首次應(yīng)用。
SAINT[29]:SAINT是使用分離的自注意力神經(jīng)知識追蹤通過堆疊的自注意力層構(gòu)建編碼器-解碼器結(jié)構(gòu)來分別表示習(xí)題和答案。
SAKT[12]:SAKT是受NLP領(lǐng)域中Transformer的啟發(fā),提出的第一個使用Transformer結(jié)構(gòu)的知識追蹤模型。
GKT[30]:GKT將知識追蹤任務(wù)重新表述為GNN中的時間序列節(jié)點(diǎn)級分類習(xí)題。
PEBE-DKT[11]:PEBG表明,通過對每個習(xí)題在豐富的輔助特征上進(jìn)行預(yù)訓(xùn)練嵌入,可以在KT上取得顯著的增益。
AKT[13]:AKT是基于注意力機(jī)制的知識追蹤模型的進(jìn)一步發(fā)展版本。
PBKT:PBKT為本文設(shè)計(jì)的模型,是融合學(xué)習(xí)過程和學(xué)習(xí)行為的知識追蹤模型,主要參數(shù)為嵌入層維度為256,隱藏層維度512,注意力頭數(shù)為8,查詢、鍵和值向量的映射維度為256。
在表1中,比較了PBKT與10個現(xiàn)有方法在兩個數(shù)據(jù)集上的平均AUC值和平均ACC值。結(jié)果表明,PBKT在兩個數(shù)據(jù)集上的性能均優(yōu)于其他對比方法。相比于PBKT,DKT、SAKT的預(yù)測效果較差,這說明僅僅只考慮Stu-C對于模型性能的提升是有限的。同時,考慮到學(xué)習(xí)過程中三種相互作用的PBKT,在評價指標(biāo)AUC上比僅考慮了Stu-C和C-E的次優(yōu)模型AKT提高了1%,這再次證明了PBKT中考慮的Stu-E對于模型性能的提高具有重要作用。
在ASSISTment2009和ASSIST2017數(shù)據(jù)集上,PBKT的AUC分別達(dá)到了0.8259和0.7646,與次優(yōu)模型相比提高了1%左右。這表明PBKT在多種應(yīng)用場景下都具有良好的性能表現(xiàn)。綜合實(shí)驗(yàn)結(jié)果,我們可以看到PBKT通過融合學(xué)習(xí)過程和學(xué)習(xí)行為,取得了更好的效果,這將有助于我們更好地了解學(xué)生的認(rèn)知狀態(tài),提高個性化教育的水平和效果。
3.4 消融實(shí)驗(yàn)
為驗(yàn)證本文方法的兩個關(guān)鍵創(chuàng)新:基于LSTM的Rasch模型嵌入和學(xué)習(xí)過程與學(xué)習(xí)行為的融合,設(shè)計(jì)了4個變體并進(jìn)行消融實(shí)驗(yàn)。圖4展示了不同變體在兩個數(shù)據(jù)集上AUC和ACC的變化情況。其中, LSTM表示從Rash嵌入層中移除LSTM后的PBKT變體;G表示模型移除Stu-E組件后的結(jié)果;F表示模型移除學(xué)生的遺忘行為后的結(jié)果;LSTM+G則表示同時移除LSTM和Stu-E。實(shí)驗(yàn)結(jié)果顯示,取出遺忘行為后模型的AUC分別下降了4%和2.95%,說明遺忘對于學(xué)生的學(xué)習(xí)過程具有重要作用。此外,取出Stu-E后模型同樣導(dǎo)致性能降低,說明將學(xué)生未掌握知識的情況下猜對題目的概率和學(xué)生掌握知識的情況下答錯題目的概率引入知識追蹤具有有效性。另外,將LSTM取出后,模型的預(yù)測準(zhǔn)確率也有明顯的下降,說明LSTM對于習(xí)題嵌入時的語義信息挖掘做出了貢獻(xiàn),并填補(bǔ)了注意力機(jī)制缺乏時序性的缺陷。
3.5 知識追蹤結(jié)果分析
知識追蹤的另一個基本任務(wù)是實(shí)時輸出學(xué)生對于各個知識點(diǎn)的掌握程度。本文將進(jìn)行以下實(shí)驗(yàn)驗(yàn)證PBKT在知識追蹤任務(wù)上的有效性。本文截取了ASSISTment2009數(shù)據(jù)集中一位學(xué)生在一段時間內(nèi)的學(xué)習(xí)記錄,并分別使用DKT模型和PBKT模型追蹤學(xué)生對于3個知識點(diǎn) 掌握程度的變化。如圖5、6所示。圖中橫軸表示學(xué)生學(xué)習(xí)歷史,元組(ci,ri)中ci表示學(xué)生學(xué)習(xí)的知識點(diǎn),ri表示學(xué)生的作答情況??v軸表示模型追蹤的5個知識點(diǎn)。
實(shí)驗(yàn)結(jié)果顯示:在第3時刻,學(xué)生對知識點(diǎn)77答題錯誤后,DKT和PBKT模型對學(xué)生知識點(diǎn)77掌握程度的追蹤結(jié)果都有所下降,在第5時刻,學(xué)生對知識點(diǎn)77答題正確后,DKT和PBKT模型對學(xué)生知識點(diǎn)77掌握程度的追蹤結(jié)果都有所提高。以上結(jié)果說明:DKT和PBKT模型在獲得學(xué)生作答情況以后,都會根據(jù)學(xué)生的作答情況更新對應(yīng)知識點(diǎn)的掌握程度。圖5和圖6中,學(xué)生第1時刻到第6時刻,都沒有學(xué)習(xí)知識點(diǎn)90,在這期間,PBKT模型對于知識點(diǎn)90的掌握程度一直在下降,而DKT模型對于知識點(diǎn)90的掌握程度基本不變,同樣,在第2時刻到第6時刻,是學(xué)生兩次學(xué)習(xí)知識點(diǎn)79之間,DKT模型對知識點(diǎn)79的掌握程度基本不變,而PBKT模型對于知識點(diǎn)79的掌握程度則一直在下降。由此可以看出:DKT模型沒有考慮學(xué)生在學(xué)習(xí)期間的遺忘行為,而PBKT模型則對學(xué)生學(xué)習(xí)中的遺忘行為進(jìn)行了考慮。除此之外,圖5 和圖6顏色的深淺明顯顯示出了,同樣的學(xué)習(xí)序列,DKT推測的知識點(diǎn)掌握程度高于PBKT掌握程度,這是因?yàn)镈KT沒有考慮過知識點(diǎn)的遺忘程度,在學(xué)生學(xué)習(xí)時只有遇到學(xué)生做錯某個知識點(diǎn)才會導(dǎo)致知識點(diǎn)掌握程度的下降,而PBKT則會由于時間的變化而降低知識點(diǎn)掌握程度,更符合實(shí)際情況。
PBKT除了有良好的預(yù)測性能以外也具有一定的解釋性,即Stu-E解碼器輸出的參數(shù),可以代表學(xué)生掌握知識的情況下答錯題目的概率。本文從ASSISTment2009數(shù)據(jù)集中截取了學(xué)生的一段學(xué)習(xí)歷史,并分別使用DKT和PBKT模型追蹤學(xué)生對同一知識點(diǎn)(本文選擇的是知識點(diǎn)26)不同習(xí)題及其作答情況的解釋。如圖7所示,圖中橫軸表示學(xué)生的學(xué)習(xí)歷史,元組(ei,ri)中ei表示學(xué)生學(xué)習(xí)的習(xí)題,ri表示學(xué)生作答情況,縱軸表示數(shù)值。紅色線段表示PBKT預(yù)測的知識點(diǎn)掌握情況,藍(lán)色線段表示DKT模型預(yù)測的知識點(diǎn)掌握情況,綠色矩形則表示該時刻學(xué)生對習(xí)題的出現(xiàn)失誤的概率,同時為了圖片方便顯示,本文將失誤概率的值減半后進(jìn)行可視化。從圖中可以看出,學(xué)生在練習(xí)知識點(diǎn)26相關(guān)習(xí)題時答案都是正確的,只有在第5時刻,作答錯誤,DKT模型給出的解釋是知識點(diǎn)掌握程度陡然下降,而PBKT輸出的掌握程度基本不變,輸出的失誤概率則較高。根據(jù)現(xiàn)實(shí)情況,學(xué)生對某個知識點(diǎn)的掌握程度突然下降的概率較低,更多的可能是,學(xué)生的失誤導(dǎo)致了作答情況出錯,這說明PBKT對這一現(xiàn)象的解釋更符合真實(shí)情況。
4 結(jié) 論
本文重點(diǎn)考慮了學(xué)生學(xué)習(xí)過程中的三種相互作用和學(xué)生學(xué)習(xí)行為對其在未來習(xí)題上作答情況的影響,提出了融合學(xué)生學(xué)習(xí)過程和學(xué)習(xí)行為的深度知識追蹤模型。實(shí)驗(yàn)表明,PBKT在預(yù)測學(xué)生作答情況方面優(yōu)于傳統(tǒng)知識追蹤模型IRT,DKT,SAKT,AKT等。
在未來的研究中,將針對學(xué)習(xí)者之間的差異對知識追蹤的影響進(jìn)行探索。不同的學(xué)習(xí)者具有不同的學(xué)習(xí)能力,即學(xué)習(xí)者掌握知識點(diǎn)的速度是不同的,對于知識點(diǎn)的遺忘速度也是不同的,對于學(xué)習(xí)者學(xué)習(xí)能力區(qū)別明顯的情況,未考慮學(xué)習(xí)者差異性的模型會受到影響。未來工作將進(jìn)一步研究學(xué)習(xí)者差異性對知識追蹤的影響。
參 考 文 獻(xiàn):
[1] 李曉光, 魏思齊, 張昕, 等. LFKT:學(xué)習(xí)與遺忘融合的深度知識追蹤模型[J]. 軟件學(xué)報, 2021, 32(3): 818.
LI XG, WEI SQ, ZHANG X, et al. LFKT: Deep Knowledge Tracing Model with Learning and Forgetting Behavior Merging. Ruan Jian Xue Bao/Journal of Software, 2021,32(3):818.
[2] SUN J, ZOU R, LIANG R, et al. Ensemble Knowledge Tracing: Modeling Interactions in Learning Process[J]. Expert Systems with Applications, 2022, 207: 117680.
[3] LIU Q, SHEN S, HUANG Z, et al. A Survey of Knowledge Tracing[J]. arXiv:2105.15106 [cs], 2021[2022-01-13].
[4] LIU F, HU X, BU C, et al. Fuzzy Bayesian Knowledge Tracing[J]. IEEE Transactions on Fuzzy Systems, 2022, 30(7): 2412.
[5] QIU YM, QI YM, LI HY, et al. Does Time Matter? Modeling the Effect of Time with Bayesian Knowledge Tracing. In: Proc. of the Int′l Conf. on Educational Data Mining. 2011: 139.
[6] HE L. Integrating Performance and Side Factors into Embeddings for Deep Learning-Based Knowledge Tracing[C]//2021 IEEE International Conference on Multimedia and Expo (ICME). 2021: 1.
[7] PIECH C, SPENCER J, HUANG J, et al. Deep Knowledge Tracing[J]. arXiv:1506.05908 [cs], 2015[2021-12-23].
[8] GREFF K, SRIVASTAVA R K, KOUTNIK J, et al. LSTM: A Search Space Odyssey[J]. IEEE Transactions on Neural Networks and Learning Systems, 2017, 28(10): 2222.
[9] 張春祥, 逄淑陽, 高雪瑤. 一種融合ACNN和Bi-LSTM半監(jiān)督縮略語消歧方法[J]. 哈爾濱理工大學(xué)學(xué)報, 2022, 27(5): 30.
ZHANG Chunxiang, PANG Shuyang, GAO Xueyao. A Semi-supervised Acronym Disambiguation Method Fusing ACNN and Bi-LSTM[J]. Journal of Harbin University of Science and Technology, 2022, 27(5): 30.
[10]ZHANG J, SHI X, KING I, et al. Dynamic Key-Value Memory Networks for Knowledge Tracing[C]//Proceedings of the 26th International Conference on World Wide Web. Australia, 2017: 765.
[11]LIU Y, YANG Y, CHEN X, et al. Improving Knowledge Tracing Via Pre-training Question Embeddings[C]//Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence, Yokohama, Japan, 2020: 1577.
[12]PANDEY S, KARYPIS G. A Self-Attentive Model for Knowledge Tracing[J]. arXiv:1907.06837 [cs, stat], 2019[2022-03-27].
[13]GHOSH A, HEFFERNAN N, LAN A S. Context-Aware Attentive Knowledge Tracing[C]//Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery amp; Data Mining, USA: ACM, 2020: 2330.
[14]滿春濤, 康丹青. 考慮上下游的LSTM短時交通流量預(yù)測[J]. 哈爾濱理工大學(xué)學(xué)報, 2019, 24(5): 101.
MAN Chuntao, KANG Danqing. LSTM Short-term Traffic Flow Prediction Considering Upstream and Downstream[J].Journal of Harbin University of Science and Technology, 2019, 24(5): 101.
[15]BRUCATO M, FRICK A, PICHELMANN S, et al. Measuring Spatial Perspective Taking: Analysis of Four Measures Using Item Response Theory[J]. Topics in Cognitive Science, 2023, 15(1): 46.
[16]KOSTIKOV A, VLASENKO K, LOVIANOVA I, et al. Assessment of Test Items Quality and Adaptive Testing on the Rasch Model[J]. Information and Communication Technologies in Education, 2022, 1698: 252.
[17]CORBETT A T, ANDERSON J R. Knowledge Tracing: Modeling the Acquisition of Procedural Knowledge[J]. User Modelling and User-Adapted Interaction, 1995, 4(4): 253.
[18]SONG X, LI J, LEI Q, et al. Bi-CLKT: Bi-Graph Contrastive Learning Based Knowledge Tracing[J]. Knowledge-Based Systems, 2022, 241: 108274.
[19]YEUNG C K, YEUNG D Y. Incorporating Features Learned by an Enhanced Deep Knowledge Tracing Model for STEM/Non-STEM Job Prediction[J]. International Journal of Artificial Intelligence in Education, 2019, 29(3):317.
[20]VASWANI A, SHAZEER N, PARMAR N, et al. Attention is All You Need[C]//Advances in Neural Information Processing Systems: Curran Associates, Inc., 2017:5998.
[21]JIANG H, XIAO B, LUO Y, et al. A Self-attentive Model for Tracing Knowledge and Engagement in Parallel[J]. Pattern Recognition Letters, 2023, 165: 25.
[22]PANDEY S, SRIVASTAVA J. RKT: Relation-Aware Self-Attention for Knowledge Tracing[C]//Proceedings of the 29th ACM International Conference on Information amp; Knowledge Management. Virtual Event Ireland, ACM, 2020: 1205.
[23]HUANG Q, SU W, SUN Y, et al. NTM-Based Skill-Aware Knowledge Tracing for Conjunctive Skills[J]. Computational Intelligence and Neuroscience, 2022, 2022: 1.
[24]FENG M, HEFFERNAN N, KOEDINGER K. Addressing the Assessment Challenge with an Online System that Tutors as it Assesses[J]. User Modeling and User-Adapted Interaction, 2009, 19(3): 243.
[25]PATIKORN T, HEFFERNAN N T, BAKER R S. ASSISTments Longitudinal Data Mining Competition Special Issue: A Preface[J]. Journal of Education Data Mining, 2020, 12(2): 1.
[26]NI Q, WEI T, ZHAO J, et al. HHSKT: A Learner-question Interactions Based Heterogeneous Graph Neural Network Model for Knowledge Tracing[J]. Expert Systems with Applications, 2023, 215: 119334.
[27]CEN H, KOEDINGER K, JUNKER B. Learning Factors Analysis-A General Method for Cognitive Model Evaluation and Improvement[C]// International Conference on Intelligent Tutoring Systems, Berlin, 2006: 164.
[28]LINDSEY R V, SHROYER J D, PASHLER H, et al. Improving Students′ Long-Term Knowledge Retention Through Personalized Review[J]. Psychological Science, 2014, 25(3): 639.
[29]SHIN D, SHIM Y, YU H, et al. SAINT+: Integrating Temporal Features for EdNet Correctness Prediction[C]//LAK21: 11th International Learning Analytics and Knowledge Conference. Irvine CA USA: ACM, 2021: 490.
[30]NAKAGAWA H, IWASAWA Y, MATSUO Y. Graph-based Knowledge Tracing: Modeling Student Proficiency Using Graph Neural Network[C]//IEEE/WIC/ACM International Conference on Web Intelligence. Thessaloniki Greece, ACM, 2019: 156.
(編輯:溫澤宇)
基金項(xiàng)目: 國家自然科學(xué)基金(61872168);江蘇省教育科學(xué)“十四五”規(guī)劃項(xiàng)目(D/2021/01/112);江蘇師范大學(xué)研究生科研與實(shí)踐創(chuàng)新項(xiàng)目(2022XKT1549).
作者簡介:賈 瑞(1999—),女,碩士研究生;
陳 成(1999—),男,碩士研究生.
通信作者:董永權(quán)(1979—),男,教授,碩士研究生導(dǎo)師,E-mail:tomdyq@163.com.