王丹萍,王 忠,梁宏濤
(青島科技大學(xué) 信息科學(xué)技術(shù)學(xué)院,山東 青島 266061)
隨著人工智能、大數(shù)據(jù)、智能教學(xué)平臺(ITS,intelligent tutoring system)等信息技術(shù)的不斷發(fā)展無形中推動(dòng)了教育形式由傳統(tǒng)向新型模式的轉(zhuǎn)變?!吨袊逃F(xiàn)代化2035》)[1]提出,高校需探求新的教學(xué)模式,促進(jìn)以個(gè)性化學(xué)習(xí)為基礎(chǔ)的教學(xué),以推動(dòng)人工智能在教育方面的應(yīng)用。雖說人工智能的發(fā)展為學(xué)生自主學(xué)習(xí)提供了可能,但也帶來了諸多挑戰(zhàn),例如,在線學(xué)習(xí)平臺學(xué)生的數(shù)量遠(yuǎn)超于教師數(shù)量,教師難以提供學(xué)生個(gè)性化教學(xué)。因此,基于學(xué)生歷史學(xué)習(xí)數(shù)據(jù),如何利用科學(xué)有效的方法針對學(xué)生的學(xué)習(xí)狀態(tài)進(jìn)行準(zhǔn)確分析與預(yù)測,已成為目前智慧教育領(lǐng)域中亟待解決的重要課題。
而解決個(gè)性化教學(xué)的關(guān)鍵是知識追蹤(KT,knowledge tracing)[2],知識追蹤旨在創(chuàng)建學(xué)生的知識狀態(tài)與認(rèn)知結(jié)構(gòu)隨時(shí)間變化的模型,將學(xué)生的歷史學(xué)習(xí)記錄作為模型的輸入,評估學(xué)習(xí)者的知識水平,即掌握知識的程度跟隨時(shí)間變化的過程,以此來預(yù)測學(xué)生在未來學(xué)習(xí)中的作答表現(xiàn),實(shí)現(xiàn)個(gè)性化學(xué)習(xí)輔導(dǎo)[3]。
通過查閱知識追蹤領(lǐng)域綜述文獻(xiàn)可知,業(yè)界研究者們根據(jù)知識追蹤領(lǐng)域的數(shù)據(jù)信息特點(diǎn)、變量的表示形式、建模方法針對知識跟蹤模型展開研究。Liang等[4]總結(jié)了知識追蹤模型在智慧教育領(lǐng)域的改進(jìn)模型及其應(yīng)用。Li等[5]從學(xué)習(xí)者、歷史學(xué)習(xí)數(shù)據(jù)、知識點(diǎn)等詳細(xì)闡述了知識追蹤在教育界的應(yīng)用研究。其中值得提出的是Zeng等[6]探究了在智慧教育視域下的知識追蹤的現(xiàn)狀及發(fā)展趨勢,總結(jié)了學(xué)生與學(xué)習(xí)資源的交互過程。Zhang等[7]探討了知識追蹤領(lǐng)域研究進(jìn)展,Wei等[8]總結(jié)了知識追蹤領(lǐng)域模型的優(yōu)缺點(diǎn),未對深度學(xué)習(xí)改進(jìn)模型進(jìn)行詳細(xì)介紹,通過知識追蹤領(lǐng)域的研究綜述來看還有很多內(nèi)容亟待解決。
通過查閱、檢索計(jì)算機(jī)領(lǐng)域頂級期刊,閱讀、梳理、總結(jié)知識追蹤模型,從模型的原理、不足、改進(jìn)、應(yīng)用對教育領(lǐng)域的知識追蹤進(jìn)行比較、分析、應(yīng)用、總結(jié)和展望。簡要介紹了傳統(tǒng)知識追蹤模型的原理、特點(diǎn)以及不足。全面梳理了基于深度學(xué)習(xí)的知識追蹤及其改進(jìn)模型,分別從可解釋性問題、缺少學(xué)習(xí)特征、記憶增強(qiáng)網(wǎng)絡(luò)、圖神經(jīng)網(wǎng)絡(luò)、引入注意力機(jī)制的改進(jìn)模型詳細(xì)介紹。整理了知識追蹤領(lǐng)域的公開數(shù)據(jù)集,評價(jià)指標(biāo)及模型性能對比分析,探討了知識追蹤在智慧教學(xué)領(lǐng)域的實(shí)際應(yīng)用,總結(jié)了該領(lǐng)域目前的研究現(xiàn)狀和未來的研究方向。
在智慧教學(xué)領(lǐng)域,依據(jù)數(shù)據(jù)和建模形式不同,知識追蹤模型分為機(jī)器學(xué)習(xí)和深度學(xué)習(xí)方法,機(jī)器學(xué)習(xí)方法中最具代表性的是基于隱馬爾可夫模型[9](HMM,hidden markov model)的貝葉斯知識追蹤模型[10](BKT,bayesian knowledge tracing)。1995年,Corbett等[11]首次提出將BKT引入到智能教學(xué)中。BKT的核心原理是基于時(shí)間序列的隱馬爾可夫概率模型,建立學(xué)生對于知識集合的認(rèn)知狀態(tài)隨時(shí)間變化的模型,追蹤和分析學(xué)生在下一時(shí)刻掌握知識點(diǎn)的概率,模型圖如圖1所示。
圖1 BKT模型原理圖
在傳統(tǒng)BKT模型中,學(xué)生的知識掌握概率主要受到以下這四個(gè)參數(shù)的影響:P(L)是學(xué)習(xí)者在學(xué)習(xí)前對知識掌握的概率;P(T)指學(xué)生掌握知識的情況由“未掌握”到“掌握”的概率;P(T)指學(xué)生掌握知識的情況由“未掌握”到“掌握”的轉(zhuǎn)移概率;P(G)指學(xué)生在未掌握知識的情況下正確作答習(xí)題的概率,稱為猜測概率;P(S)指學(xué)生在掌握知識的情況下錯(cuò)誤作答習(xí)題的概率,稱為失誤概率。一般來說,BKT模型是基于學(xué)生的作答信息追蹤其認(rèn)知狀態(tài),當(dāng)P(L)≥0.95時(shí),則認(rèn)為學(xué)生對知識點(diǎn)已掌握,值得關(guān)注的是,BKT模型基于如下三點(diǎn)假設(shè)。
1)假設(shè)所有學(xué)生具備相同的學(xué)習(xí)環(huán)境和學(xué)習(xí)背景,并且轉(zhuǎn)移概率P(T)在不同時(shí)刻保持不變。
2)假設(shè)每個(gè)題目之間不具備相關(guān)性,各個(gè)題目之間相互獨(dú)立。
假設(shè)學(xué)生不會(huì)遺忘已學(xué)知識點(diǎn),即學(xué)生掌握知識的狀態(tài)僅能由“未掌握狀態(tài)”轉(zhuǎn)移到“掌握狀態(tài)”,不能反向轉(zhuǎn)移。
3)BKT模型預(yù)測結(jié)果雖說具有統(tǒng)計(jì)學(xué)解釋意義,但應(yīng)用于實(shí)際教學(xué)仍存在較多局限性。隨后,諸多研究學(xué)者做了一系列深入和豐富的研究,從不同角度對BKT模型進(jìn)行改進(jìn)與擴(kuò)展。Hawkins等[12]基于學(xué)生作答的習(xí)題具有相似性和關(guān)聯(lián)性,提出了貝葉斯知識追蹤相同模板模型(BKT-ST,bayesian knowledge tracing-same tamplate)模型。Qiu等[13]提出KT-Forget模型和KT-Slip模型,嘗試對時(shí)間因素進(jìn)行建模,新模型考慮參數(shù)“忘記”和“滑動(dòng)”參數(shù),在殘差和AUC都得到了改進(jìn)和提升。Agarwal等[14]提出多狀態(tài)貝葉斯知識跟蹤模型(MS-BKT,multistate-Bayesian knowledge tracing)解決經(jīng)典知識追蹤模型中的學(xué)習(xí)率不變且僅有兩種知識狀態(tài),此模型將知識狀態(tài)從“未學(xué)習(xí)”、“已學(xué)習(xí)”擴(kuò)展到21種狀態(tài),多個(gè)狀態(tài)的添加能更精確地評估學(xué)生的學(xué)習(xí)狀態(tài),提升了模型的性能。
諸多研究學(xué)者在貝葉斯知識追蹤的基礎(chǔ)上提出了擴(kuò)展模型,BKT改進(jìn)模型雖說取得了一定成效,但是BKT模型的假設(shè)具備先天局限性,變量和KC之間無法做到以一一對應(yīng),且模型本身在處理數(shù)據(jù)過程中會(huì)丟失重要信息,無法準(zhǔn)確模擬學(xué)生的知識狀態(tài),因此,BKT模型在實(shí)際教學(xué)過程中難以大范圍推進(jìn)。
由于BKT模型本身的局限性,無法準(zhǔn)確追蹤學(xué)生的作答表現(xiàn)。而近年來深度學(xué)習(xí)以其強(qiáng)大的特征提取能力,且無需人工標(biāo)記數(shù)據(jù)信息,引起了研究者的廣泛關(guān)注,2015年由Piech等[15]首次將深度學(xué)習(xí)應(yīng)用于知識追蹤領(lǐng)域,基于循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN,recurrent neural network)[16],提出一個(gè)經(jīng)典模型,稱為基于深度學(xué)習(xí)[17]的知識追蹤模型(DKT,deep learning based knowledge tracing)。
DKT模型結(jié)構(gòu)如圖2所示。將循環(huán)神經(jīng)網(wǎng)絡(luò)RNN模型應(yīng)用于知識跟蹤中,DKT模型分為輸入層、隱藏層、輸出層[18],輸入層為學(xué)習(xí)者的學(xué)習(xí)表現(xiàn),即歷史學(xué)習(xí)記錄{x1,x2,…,xt},通過壓縮感知機(jī)[19]或one-hot編碼將其轉(zhuǎn)換成向量形式輸入到模型中。隱藏層可看作模型的記憶單元,存儲著學(xué)生的歷史學(xué)習(xí)記錄{h1,h2,…,ht}稱為學(xué)生的知識狀態(tài),通過一個(gè)sigmoid[20]激活線性層,輸出未來學(xué)生的作答表現(xiàn){y1,y2,…,yt},表示正確作答習(xí)題的預(yù)測概率。
圖2 DKT模型原理圖
由圖2可知,每個(gè)時(shí)刻的隱藏信息僅單向傳遞,因此當(dāng)前時(shí)刻的隱藏狀態(tài)僅由上一時(shí)刻的隱藏信息和當(dāng)前時(shí)刻的輸入信息決定。在DKT模型中所涉及的公式如式(1)、(2)所示,其中,Whx、Wyh分別為輸入和輸出權(quán)重矩陣,Whh是遞歸權(quán)重矩陣,bh和by分別為隱藏層偏置和輸出層偏置。
ht=tanh(Whxxt+Whhht-1+bh)
(1)
yt=σ(Wyhht+by)
(2)
DKT模型的優(yōu)化目標(biāo)函數(shù)是小批次次梯度隨機(jī)下降法[21](SGDM,stochastic gradient descent on minnbatches),公式如式(3)所示:
(3)
其中:LBCE為交叉熵?fù)p失函數(shù),δ(qt+1)稱為學(xué)生在t+1時(shí)刻的作答習(xí)題表現(xiàn)的One-hot編碼向量。qt+1為t+1時(shí)刻作答的習(xí)題標(biāo)簽,at+1為回答習(xí)題情況的標(biāo)簽。
基于深度學(xué)習(xí)的DKT模型已經(jīng)解決了傳統(tǒng)BKT模型的大多數(shù)問題,但由于深度學(xué)習(xí)模型的輸入和輸出機(jī)制不具備可解釋性,缺少學(xué)習(xí)特征等極大地限制了知識追蹤模型在實(shí)際教學(xué)方面的應(yīng)用[22],因此,眾多研究學(xué)者針對深度學(xué)習(xí)的知識追蹤模型進(jìn)行改進(jìn)與擴(kuò)展,具體分類如圖3所示。
圖3 DKT改進(jìn)模型思維導(dǎo)圖
2.2.1 可解釋性問題的改進(jìn)
1)自解釋模型。為更好地解決知識交互等可解釋性問題,Lee等[23]提出了一種新的知識查詢網(wǎng)絡(luò)模型(KQN,knowledge query network),利用神經(jīng)網(wǎng)絡(luò)將學(xué)生的學(xué)習(xí)活動(dòng)編碼為知識狀態(tài)和技能向量,將技能向量之間的余弦和歐氏距離[24]與相應(yīng)技能的優(yōu)勢比聯(lián)系起來,使KQN具有可解釋性和直觀性。Yeung等[25]提出(Deep-IRT,deep-item response theory)模型,通過DKVMN模型處理學(xué)生的歷史學(xué)習(xí)規(guī)則,既保留了深度學(xué)習(xí)知識追蹤模型的性能,同時(shí)能夠預(yù)測知識的難易程度和學(xué)生的知識狀態(tài)隨時(shí)間的變化,使模型預(yù)測的過程具備可解釋性。Su等[26]提出了新的框架—時(shí)間-概念增強(qiáng)深度多維項(xiàng)目反應(yīng)理論(TC-MIRT,time concept-multidimensional item response theory)將歷史學(xué)習(xí)記錄集成到一個(gè)改進(jìn)的遞歸神經(jīng)網(wǎng)絡(luò)中,構(gòu)建兩個(gè)時(shí)間增強(qiáng)組件,使模型具備可解釋參數(shù)的能力。
2)事后解釋模型。事后解釋(post-hoc interpretable)方法是解決模型不可解釋性的有效方法,意旨模型預(yù)測結(jié)束后,通過解釋方法構(gòu)造解釋模型,解釋學(xué)習(xí)模型的預(yù)測過程、預(yù)測依據(jù),事后解釋方法既能解決模型的解釋過程、又能提高模型預(yù)測性能。在KT領(lǐng)域,主要有兩種方法,分為層關(guān)聯(lián)傳播(LRP,layer-wise relevance)和不確定性評估。Lu等[27]提出分層相關(guān)性傳播方法,利用反向傳播將相關(guān)性分值傳輸?shù)捷斎雽樱?jì)算反向傳播相關(guān)性。Hu等[28]首次將評估不確定性引入深度知識追蹤,通過為每個(gè)預(yù)測提供不確定分?jǐn)?shù),首次實(shí)驗(yàn)表明,僅使用蒙特卡羅效果不明顯,接著引入正則化損失函數(shù),將敏感的不確定性納入深度知識跟蹤,以此來緩解預(yù)測學(xué)生知識狀態(tài)過程中的不透明性。
2.2.2 缺少學(xué)習(xí)特征的改進(jìn)
雖然DKT及其變體模型是目前應(yīng)用于知識追蹤領(lǐng)域最具成效的方法,但由于DKT模型的輸入僅是one-hot編碼,忽略了學(xué)習(xí)過程中其余重要的特征信息,如:學(xué)生作答題目的次數(shù)、思考時(shí)間、習(xí)題內(nèi)容等,因此DKT模型未能大范圍進(jìn)行個(gè)性化教學(xué)。
1)嵌入學(xué)習(xí)過程特征。Yang等[29]提出了一種人工對特征進(jìn)行預(yù)處理的方法,即根據(jù)學(xué)生的內(nèi)部特征將其離散化,使用基于樹的分類器(CART)將學(xué)生的額外特征信息(學(xué)習(xí)者的響應(yīng)時(shí)間、提示請求和嘗試作答次數(shù))進(jìn)行預(yù)處理,通過最小化交叉熵學(xué)習(xí)分類規(guī)則,學(xué)習(xí)特征經(jīng)過CART融合處理后作為長短期記憶網(wǎng)絡(luò)(LSTM,long short-term memory)的輸入,輸出為學(xué)生在異構(gòu)特征下正確回答習(xí)題的預(yù)測結(jié)果。
Zhang等[30]利用特征工程的方法將學(xué)習(xí)特征離散化,把離散后的特征(學(xué)生作答的時(shí)間、提示請求和嘗試作答次數(shù)),通過自動(dòng)編碼網(wǎng)絡(luò)層,將輸入信息轉(zhuǎn)化成低維特征向量,減少模型訓(xùn)練的時(shí)間和資源。Minn等[31]提出基于動(dòng)態(tài)學(xué)生分類的深度知識跟蹤模型(DKT-DSC,deep knowledge tracing dynamic student classification),融合k-means聚類,在每個(gè)時(shí)刻估計(jì)學(xué)生的學(xué)習(xí)能力,并根據(jù)學(xué)生學(xué)習(xí)能力的相似性將學(xué)生分配小組,學(xué)習(xí)能力相似,則為同一組,根據(jù)學(xué)生所分組追蹤認(rèn)知狀態(tài)。
DKT模型僅將作答習(xí)題的結(jié)果作為模型的輸入,忽略了提問環(huán)節(jié)能反映學(xué)生的思維過程,Chan等[32]提出基于點(diǎn)擊流的(CKT,clickstream knowledge tracing)模型,通過對學(xué)生作答習(xí)題時(shí)的點(diǎn)擊流活動(dòng)建模來擴(kuò)充一個(gè)基本的KT模型,并將與不使用點(diǎn)擊流數(shù)據(jù)的基準(zhǔn)KT模型進(jìn)行比較,實(shí)驗(yàn)數(shù)據(jù)表明,合并點(diǎn)擊流數(shù)據(jù)可以提高模型的性能。
由于學(xué)習(xí)過程包含著許多不能直接觀察到的潛在事件,如片面理解、犯錯(cuò)等,Ruan等[33]首先提出序列深度知識跟蹤(SDKT,sequence-to-sequence deep knowledge tracing)模型,通過編碼器-解碼器結(jié)構(gòu)將學(xué)生的歷史學(xué)習(xí)記錄和未來的作答表現(xiàn)區(qū)分開。編碼器用于對學(xué)習(xí)歷史記錄進(jìn)行編碼,解碼器用于預(yù)測學(xué)生的未來表現(xiàn)。接著Ruan等人提出變分深度知識追蹤(VDKT,variational deep knowledge tracing)模型,稱為潛變量DKT模型,通過潛變量將隨機(jī)性融入DKT模型中。Hooshyar等[34]提出GameDKT模型,模擬學(xué)生在游戲過程中的知識狀態(tài),利用交叉驗(yàn)證預(yù)測學(xué)生在未來時(shí)刻的表現(xiàn)。
2)融入遺忘因素。Wang等[35]提出個(gè)人基礎(chǔ)與遺忘融合的時(shí)間卷積知識追蹤模型(TCN-KT,temporal convolutional network knowledge tracing)融合了學(xué)生遺忘行為,利用RNN計(jì)算得出學(xué)生先驗(yàn)基礎(chǔ),接著利用TCN時(shí)間卷積網(wǎng)絡(luò)預(yù)測作答下一習(xí)題的正確率。Nagatani等[36]基于學(xué)習(xí)過程中的遺忘信息,提出融合遺忘信息的知識追蹤模型,考慮了學(xué)生的整個(gè)學(xué)習(xí)互動(dòng)過程,并納入了多種類型的信息來表示復(fù)雜的遺忘行為。例如,學(xué)生回答相同習(xí)題的時(shí)間間隔、相鄰習(xí)題的時(shí)間間隔、歷史作答習(xí)題的次數(shù)。添加遺忘特征的模型如圖4所示。
圖4 添加遺忘特征模型圖
Gan等[37]基于學(xué)生的知識狀態(tài)是隨著時(shí)間不斷變化的,提出領(lǐng)域感知的知識跟蹤機(jī)(FA-KTM,field-aware knowledge tracing machine),融合了學(xué)生的學(xué)習(xí)行為,即(遺忘和學(xué)習(xí)的動(dòng)態(tài)過程)和適應(yīng)性項(xiàng)目難度,相較于DKT模型性能表現(xiàn)良好。Yang等[38]基于遺忘曲線理論提出了一種更新門來適應(yīng)融合特征的卷積知識跟蹤模型(CKT,convloutional knowledge tracing),利用三維卷積增強(qiáng)了近期作答習(xí)題的短期效應(yīng),利用LSTM對融合后的特征進(jìn)行處理,通過實(shí)驗(yàn)數(shù)據(jù)證明優(yōu)于最先進(jìn)的模型,模型圖如圖5所示。
圖5 卷積知識跟蹤模型
3)其它特征。由于傳統(tǒng)DKT模型存在兩大主要問題,其一是模型預(yù)測時(shí)無法輸入重構(gòu)信息,即使學(xué)生作答習(xí)題表現(xiàn)較好,但預(yù)測的結(jié)果準(zhǔn)確度降低;其二是時(shí)間間隔對于預(yù)測結(jié)果的影響,存在突然的波動(dòng)和下降。為了解決這些問題,Yeung等[39]在損失函數(shù)中添加了重構(gòu)和波性對應(yīng)的正則化項(xiàng)。
Chen等[40]考慮到學(xué)生練習(xí)數(shù)據(jù)的稀疏性是影響知識跟蹤預(yù)測精度的重要因素,提出了名為先決條件驅(qū)動(dòng)的帶約束建模的深度知識跟蹤(PDKT-C,prerequisite-dreven deep knowledge tracing),模型融合了前提條件約束,將教學(xué)概念之間的關(guān)系與知識結(jié)構(gòu)信息同時(shí)融入了知識跟蹤模型中。
Wang等[41]為了更好區(qū)分習(xí)題和概念的關(guān)系,提出了一種深度層次知識跟蹤(DHKT,deep hierarchical knowledge tracing)模型,通過計(jì)算嵌入內(nèi)積的鉸鏈損失(hinge loss)以及利用習(xí)題和知識成分之間的層次信息,將得到的結(jié)果作為神經(jīng)網(wǎng)絡(luò)的輸入,評估學(xué)生的學(xué)習(xí)作答表現(xiàn),模型預(yù)測的結(jié)果取決于當(dāng)前時(shí)刻作答習(xí)題和知識狀態(tài)。
Xu等[42]提出了一種新的知識追蹤方法DynEmb框架,該方法結(jié)合了矩陣分解技術(shù)和最新進(jìn)展的遞歸神經(jīng)網(wǎng)絡(luò)(rnn),該方法無需手工標(biāo)記知識標(biāo)簽信息,通過矩陣分解和技能標(biāo)簽構(gòu)造問題的嵌入,將題目和知識信息融合,通過實(shí)驗(yàn)評估表明具備較好的魯棒性。
Wang等[43]利用側(cè)關(guān)系改進(jìn)知識跟蹤,設(shè)計(jì)了一個(gè)新的框架(DKTS,deep knowledge tracing side),將問題的邊關(guān)系納入知識追蹤,捕獲習(xí)題的順序依賴和內(nèi)在關(guān)系,以跟蹤學(xué)生的知識狀態(tài),在真實(shí)教育數(shù)據(jù)上的實(shí)驗(yàn)結(jié)果驗(yàn)證了所提框架的有效性。
Tong等[44]提出一種基于結(jié)構(gòu)的知識追蹤(SKT,structure knowledge tracing)框架,基于知識結(jié)構(gòu)中的多重關(guān)系對概念間的影響傳播進(jìn)行建模,對于無向關(guān)系(相似關(guān)系),采用同步傳播方法,影響在相鄰概念之間雙向傳播;對于有向關(guān)系(前提關(guān)系),采用局部傳播方法,其影響只能單向地從前任傳播到后續(xù),同時(shí),利用門控函數(shù)更新概念在時(shí)間和空間上的狀態(tài)。Pu等[45]將作答時(shí)間信息和習(xí)題的結(jié)構(gòu)信息作為輸入信息加入到Transformer結(jié)構(gòu)中,增加時(shí)間特性來增強(qiáng)預(yù)測學(xué)生知識狀態(tài)的準(zhǔn)確度。
2.2.3 動(dòng)態(tài)鍵值記憶網(wǎng)絡(luò)模型
雖然DKT模型及其變體在追蹤學(xué)生的知識狀態(tài)取得了一定成效,但也存在一定的缺陷,例如,LSTM[46]通過輸入門獲取短期記憶(即學(xué)生的近期歷史學(xué)習(xí)記錄),遺忘門保留部分長期記憶,但是學(xué)習(xí)過程中的其它影響因素保留在隱藏單元中,當(dāng)學(xué)習(xí)記錄數(shù)量足夠多時(shí),模型則很難準(zhǔn)確預(yù)測學(xué)生的知識狀態(tài),因此記憶增強(qiáng)神經(jīng)網(wǎng)絡(luò)(MANN,memory augmented neural network)[47]是解決上述局限的創(chuàng)新型方法。記憶增強(qiáng)神經(jīng)網(wǎng)絡(luò)在循環(huán)神經(jīng)網(wǎng)絡(luò)基礎(chǔ)上添加了記憶矩陣,能夠?qū)W(xué)習(xí)過程中隱藏的狀態(tài)作為輸入,提高了知識追蹤模型的性能。
香港中文大學(xué)施行建教授受到MANN模型的啟發(fā),提出動(dòng)態(tài)關(guān)鍵值記憶網(wǎng)絡(luò)(DKVMN,dynamic key-value memory networks)[48],此模型在內(nèi)存中使用鍵值對,對不可變的關(guān)鍵組件進(jìn)行輸入,通過讀取和寫入值矩陣追蹤學(xué)生的知識狀態(tài),直接輸出學(xué)生對每個(gè)概念的掌握程度。
DKVMN模型如圖6所示,由三部分組成,左下部分表示相應(yīng)權(quán)重計(jì)算的過程,即通過注意力機(jī)制計(jì)算習(xí)題和知識成分之間的權(quán)重,上部分代表讀取過程,即依據(jù)學(xué)生當(dāng)前作答習(xí)題的難易程度和掌握知識狀態(tài)的水平預(yù)測學(xué)習(xí)表現(xiàn),右部分表示寫入過程,即作答習(xí)題記錄利用擦除加法更新知識狀態(tài),DKVMN模型的步驟如下所示。
圖6 DKVMN模型圖
1)輸入向量qt與嵌入矩陣A得到連續(xù)向量kt,Mk矩陣中每一列存儲著一個(gè)知識成分,矩陣Mv中存儲著知識狀態(tài),在t時(shí)刻,將kt與知識成分(即Mk的每一列)做內(nèi)積,通過Softmax函數(shù)激活,進(jìn)一步計(jì)算相關(guān)權(quán)重,即注意力權(quán)重Wt,公式如式(4)所示:
Wt=Softmax(ktMk(i))
(4)
2)根據(jù)注意力權(quán)重Wt與矩陣Mv進(jìn)行求和得到rt,即學(xué)生對qt的掌握程度,公式如式(5)所示:
(5)
3)由于每個(gè)習(xí)題難易程度不同,將習(xí)題的嵌入向量kt與對習(xí)題的掌握程度rt連接起來,通過全連接層和Tanh激活函數(shù),得到學(xué)生掌握知識的程度和之前練習(xí)的難度即ft,計(jì)算公式如式(6)所示:
(6)
4)通過Sigmoid激活全連接層預(yù)測學(xué)生的作答表現(xiàn)yt,公式如式(7)所示:
(7)
由于DKVMN模型忽略了習(xí)題信息和學(xué)生的行為特征,Ai等[49]提出了概念感知的深層知識追蹤模型(DKVMN-CA,dynamic key-value memory networks concept-aware),首次將深度強(qiáng)化學(xué)習(xí)應(yīng)用于個(gè)性化數(shù)學(xué)練習(xí)推薦系統(tǒng),在DKVMN模型的基礎(chǔ)上,明確考慮了練習(xí)——概念映射關(guān)系,當(dāng)學(xué)生作答習(xí)題結(jié)束后,作答結(jié)果和練習(xí)時(shí)間將用于更新知識狀態(tài)。
Sun等[50]在DKVMN模型基礎(chǔ)上,提出一種結(jié)合行為特征與學(xué)習(xí)能力的知識跟蹤算法(DKVMN-LA,dynamic key-value memory networks learning ability),DKVMN-LA算法將學(xué)生的歷史學(xué)習(xí)記錄分段,定義和計(jì)算在每個(gè)分段中的學(xué)習(xí)能力,并動(dòng)態(tài)地將學(xué)生分為三個(gè)不同的組,結(jié)合學(xué)習(xí)能力特征改進(jìn)了DKVMN,在學(xué)習(xí)過程中利用學(xué)生行為特征獲取信息,提高了模型的預(yù)測。
Abdelrahman等[51]提出了(SKVMN,sequential key-value memory networks)模型,通過增加鍵值存儲器來增強(qiáng)每個(gè)時(shí)刻知識狀態(tài)的表示能力,并且能獲取序列中不同時(shí)刻的知識狀態(tài)之間的依賴關(guān)系,其次在模型中增加了帶有跳數(shù)的LSTM,利用三角隸屬度函數(shù)探索習(xí)題之間的順序依賴關(guān)系;最后通過摘要向量作為練習(xí)過程的輸入改進(jìn)了DKVMN的寫入過程,以便更好地表示存儲在鍵值內(nèi)存中的知識狀態(tài)。
Chaudhry等[52]提出一個(gè)多任務(wù)記憶增強(qiáng)深度學(xué)習(xí)模型(MTEM,multi-task memory enhances deep learning)來聯(lián)合預(yù)測線索獲取和知識跟蹤任務(wù),通過實(shí)驗(yàn)證明,此模型優(yōu)于基線線索獲取預(yù)測模型。Minn等[53]提出一種新的基于記憶網(wǎng)絡(luò)的動(dòng)態(tài)學(xué)生分類(DSCMN,dynamic student classification on memory networks,)模型,通過捕捉學(xué)生每個(gè)時(shí)間間隔以及長期學(xué)習(xí)過程中的學(xué)習(xí)能力來提高模型的預(yù)測精度。
2.2.4 圖神經(jīng)網(wǎng)絡(luò)模型
從知識追蹤領(lǐng)域的數(shù)據(jù)結(jié)構(gòu)特點(diǎn)來看,可以將課程結(jié)構(gòu)化一個(gè)圖,但DKT模型未考慮這種潛在的圖結(jié)構(gòu),Nakagawa等[54]將圖神經(jīng)網(wǎng)絡(luò)(GNN,graph neural network)首次應(yīng)用于知識追蹤領(lǐng)域,提出了基于GNN的圖知識追蹤模型(GKT,graph-based knowledge tracing),如圖7所示,將知識結(jié)構(gòu)轉(zhuǎn)化為一個(gè)圖,節(jié)點(diǎn)對應(yīng)概念,邊對應(yīng)之間的關(guān)系為E,將知識追蹤任務(wù)看作時(shí)間序列節(jié)點(diǎn)級分類問題,GKT模型的具體計(jì)算步驟如下。
1)聚合;模型聚合作答的概念i及其相鄰概念j∈Ni的隱藏狀態(tài)和嵌入。
(8)
其中:xt∈{0,1}2N是一個(gè)輸入向量,表示在t時(shí)間步時(shí)作答習(xí)題的正確性,Ex∈R2N*e是嵌入概念索引和答案響應(yīng)的矩陣,Ec∈RN*e是嵌入概念索引的矩陣,Ec(k)代表Ec的第k行,e為嵌入大小。
1)更新;依據(jù)聚合特征和知識圖結(jié)構(gòu)更新隱藏狀態(tài)。
(9)
(10)
(11)
由式(9)~(11)所示,fself表示多層感知器(MLP),gea表示擦加門,ggru是門選循環(huán)單元(GRU)門,fneighbor是一個(gè)向相鄰節(jié)點(diǎn)傳播的函數(shù)。
2)預(yù)測;輸出學(xué)生在下一時(shí)刻作答習(xí)題表現(xiàn)為正確的預(yù)測概率。
(12)
其中:Wout是所有節(jié)點(diǎn)通用的權(quán)重矩陣,bk是節(jié)點(diǎn)k的偏差項(xiàng),σ是Sigmoid函數(shù),訓(xùn)練該模型以使觀測值的負(fù)對數(shù)似然(NLL)最小化。
由于知識追蹤模型未能全面挖掘歷史學(xué)習(xí)過程中其余豐富的信息,Tong等[55]提出了一種層級圖知識追蹤框架(HGKT,hierarchical exercise graph for knowledge tracing)來探索練習(xí)記錄之間潛在的層級關(guān)系,引入問題圖式的概念來構(gòu)建一個(gè)分層的練習(xí)圖,該框架充分利用了分層習(xí)題圖和注意序列模型的優(yōu)勢,增強(qiáng)了知識追蹤能力。
Yang等[56]提出了一種基于圖的知識跟蹤交互模型(GIKT,graph interaction knowledge tracing),利用圖卷積網(wǎng)絡(luò)通過嵌入傳播實(shí)質(zhì)上合并了問題-技能相關(guān)性,此外,GIKT將學(xué)生對習(xí)題的掌握程度概括為當(dāng)前掌握習(xí)題的狀態(tài)、歷史作答記錄、目標(biāo)問題、以及相關(guān)技能。Song等[57]基于“練習(xí)-概念”關(guān)系和多熱點(diǎn)嵌入缺乏可解釋性提出聯(lián)合圖卷積網(wǎng)絡(luò)的深度知識追蹤(joint knowledge tracing,JKT),通過對原始數(shù)據(jù)和“練習(xí)-概念”的原始關(guān)系進(jìn)行深度重構(gòu),分別構(gòu)建了“練習(xí)-練習(xí)”和“概念-概念”的多維關(guān)系,并構(gòu)建了影響子圖。
由于將圖引入知識追蹤模型中,會(huì)過分關(guān)注節(jié)點(diǎn)細(xì)節(jié),卻不關(guān)注最高層信息,Song等[58]提出了一種基于雙圖對比學(xué)習(xí)的知識追蹤(Bi-CLKT,bi-contrastive learning knowledge tracing),設(shè)計(jì)了“練習(xí)到練習(xí)”(E2E)關(guān)系子圖兩層對比學(xué)習(xí)方案,涉及到子圖的節(jié)點(diǎn)級別對比學(xué)習(xí)以獲得練習(xí)的區(qū)別表示以及圖級對比學(xué)習(xí)以獲得概念的區(qū)別表示,實(shí)驗(yàn)表明,優(yōu)于其他基線模型。
2.2.5 基于注意力機(jī)制
Su等[59]基于注意力機(jī)制[60]首次提出了新的訓(xùn)練增強(qiáng)遞歸神經(jīng)網(wǎng)絡(luò)框架(EERNNA,exercise-enhanced recurrent netural network),模型圖如圖7所示,利用學(xué)生的歷史訓(xùn)練紀(jì)錄和習(xí)題預(yù)測成績,設(shè)計(jì)了雙向LSTM,從習(xí)題中提取練習(xí)語義表示,在大規(guī)模真實(shí)數(shù)據(jù)上的大量實(shí)驗(yàn)證明了EERNNA框架的有效性,且能很好地解決冷啟動(dòng)問題。
圖7 EERNNA 模型圖
為解決數(shù)據(jù)稀疏的問題,Pandey等[61]提出自我注意知識追蹤(SAKT,self -attention knowledge tracing),從學(xué)生歷史學(xué)習(xí)記錄提取出知識成分,并進(jìn)行追蹤預(yù)測學(xué)生的作答表現(xiàn)。Ghosh等[62]提出一種專注知識追蹤(AKT,attentive knowledge tracing)框架,利用一種新穎的單調(diào)注意力機(jī)制,將歷史作答記錄、評估問題的未來反應(yīng)與可解釋性模型結(jié)合,注意力權(quán)重用指數(shù)衰減和上下文感知的相對距離度量進(jìn)行計(jì)算。對概念和問題嵌入進(jìn)行正則化,捕捉相同概念習(xí)題之間的學(xué)習(xí)者個(gè)體差異。
盡管應(yīng)用于知識追蹤的注意機(jī)制有優(yōu)勢,但同樣存在局限性,以往模型的注意層太淺,無法捕捉到不同習(xí)題和認(rèn)知狀態(tài)存在的復(fù)雜關(guān)系。因此Choi等[63]提出一個(gè)基于變壓器的分離自注意知識跟蹤模型(SAINT,self-attentive neural knowledge tracing),SAINT由一個(gè)編碼器和一個(gè)解碼器組成,它們是由幾個(gè)相同層組成的堆棧,由多頭自我注意和點(diǎn)式前饋網(wǎng)絡(luò)組成,特別的是,解碼器層由兩個(gè)多頭注意力層組成,模型圖如圖8所示。
圖8 SAINT 模型圖
Pandy等[64]提出了一種新的感知知識追蹤自注意模型(RKT,relation knowledge tracing),添加了一個(gè)含有上下文信息的關(guān)系感知的自我注意力層,整合了習(xí)題關(guān)系信息和學(xué)生的成績數(shù)據(jù),并通過建立指數(shù)衰減的核函數(shù)集成了遺忘行為信息。Guo等[65]提出了一種基于對抗訓(xùn)練AT的KT方法(ATKT,adversarial training knowledge tracing),首先構(gòu)造了對抗攝動(dòng),并添加至原始的交互嵌入上作為對抗示例。緊接著為了更好地實(shí)現(xiàn)AT,Guo等提出高效的注意力-lstm模型作為KT的骨干,自適應(yīng)地結(jié)合歷史學(xué)習(xí)狀態(tài)隱藏的信息。
綜上所述,基于深度學(xué)習(xí)的知識追蹤模型穩(wěn)固了知識追蹤在智慧教學(xué)領(lǐng)域的基礎(chǔ),結(jié)合深度學(xué)習(xí)的優(yōu)勢與智慧教學(xué)的現(xiàn)狀,采用RNN模擬學(xué)生的認(rèn)知狀態(tài)以及預(yù)測學(xué)習(xí)表現(xiàn)。但傳統(tǒng)的基于深度學(xué)習(xí)的知識追蹤模型具有局限性,諸多研究學(xué)者從可解釋性、缺少學(xué)習(xí)特征、動(dòng)態(tài)鍵值記憶網(wǎng)絡(luò)、圖神經(jīng)網(wǎng)絡(luò)、引入注意力機(jī)制等方面進(jìn)行模型改進(jìn)。
本小節(jié)介紹在知識追蹤領(lǐng)域中公開的10類數(shù)據(jù)集,經(jīng)過整理與統(tǒng)計(jì)其數(shù)據(jù)集的詳細(xì)信息和下載鏈接如表1所示,供研究者可根據(jù)所研究內(nèi)容自行選擇合適的數(shù)據(jù)集。
表1 數(shù)據(jù)集介紹及其下載鏈接
知識追蹤領(lǐng)域一般從分類和回歸兩個(gè)方面評估模型的性能,主要分為以下幾種:均方根誤差(RMSE,root mean square error)、代表真實(shí)值與預(yù)測值之間的差值,均方根值越低,則模型準(zhǔn)確度越高,預(yù)測能力越好;平均絕對誤差(MAE,mean absolute error)、預(yù)測準(zhǔn)測度(ACC),其值越高則準(zhǔn)確率越高;ROC曲線下的面積(AUC,arer under the roc curve),其值越高,模型的性能越好。
具體的計(jì)算公式如表2所示,其中,right代表習(xí)題預(yù)測正確的個(gè)數(shù),N,n表示作答習(xí)題個(gè)數(shù),h(x(i))代表第i個(gè)習(xí)題的預(yù)測分值,y(i)表示真實(shí)分值。在知識追蹤領(lǐng)域中,諸多研究者選取AUC作為模型的評價(jià)指標(biāo),模型提供了一個(gè)評價(jià)標(biāo)準(zhǔn),AUC的得分為0.5表示預(yù)測值和猜測值相同,AUC的值越高,則模型性能越好。
表2 評估指標(biāo)及其公式
表3整理了在知識追蹤領(lǐng)域測試的模型性能表現(xiàn)(以最常用的AUC指標(biāo)為基準(zhǔn)),表中數(shù)據(jù)選取原則為至少在4個(gè)數(shù)據(jù)集上做過實(shí)驗(yàn),數(shù)據(jù)均來源于模型最初提出的論文,取AUC的最大值,BKT為最基礎(chǔ)模型作為參考,根據(jù)實(shí)際意義得知,在不同的數(shù)據(jù)集上模型性能均不同,往往受到超參數(shù)的影響,因此,表中數(shù)據(jù)的參考價(jià)值大于實(shí)際意義。
表3 模型性能(AUC)一覽表
隨著知識追蹤在教育領(lǐng)域的應(yīng)用與研究,其發(fā)展方向不斷深入,主要包括調(diào)整學(xué)生知識結(jié)構(gòu)、程序題的自動(dòng)評測、學(xué)生個(gè)性化指導(dǎo)、預(yù)測學(xué)生掌握知識狀態(tài)等,但目前知識追蹤在起步階段,同樣也存在許多問題亟待解決,接下來總結(jié)了幾個(gè)研究方向供研究者參考。
1)建模單一化問題:知識追蹤領(lǐng)域的建模形式大多采用二元變量來描述學(xué)生的作答情況,知識追蹤領(lǐng)域的數(shù)據(jù)主要來源在線學(xué)習(xí)平臺,而學(xué)生的情緒未能記錄在在線學(xué)習(xí)平臺,而在實(shí)際教學(xué)過程中,想法多變的學(xué)生和種類多變的習(xí)題讓知識追蹤的準(zhǔn)確率難以提升,研究學(xué)者提出關(guān)注學(xué)習(xí)過程中學(xué)生的情緒(無聊、困惑、遺忘等),但由于學(xué)生在不同年齡段想法不同,因此,未來知識追蹤會(huì)更加關(guān)注學(xué)生年齡問題對于建模問題的影響,根據(jù)不同年齡段的學(xué)生,及時(shí)進(jìn)行教學(xué)計(jì)劃的調(diào)整,實(shí)現(xiàn)個(gè)性化教學(xué)。如何將學(xué)生年齡信息并與其它信息進(jìn)行融合等都是未來的重要研究方向。
2)主觀題自動(dòng)測評:隨著人工智能與教育的不斷發(fā)展,大部分研究工作者致力于客觀題自動(dòng)評測,已經(jīng)有較好的成果,而主觀題的測評由于“學(xué)習(xí)者隨意發(fā)揮”,無準(zhǔn)確評價(jià)標(biāo)準(zhǔn),因此很多KT模型無法針對主觀題進(jìn)行建模,特別是針對程序自動(dòng)測評,很多測評系統(tǒng)僅僅能評判程序正確與否,卻無法給出程序的步驟分,而教育十三五規(guī)劃要求培養(yǎng)信息化人才,因此程序的自動(dòng)測評,將成為未來重要的一個(gè)研究方向。
3)針對不同領(lǐng)域建模:起初,知識追蹤針對數(shù)學(xué)問題建模,由于每個(gè)學(xué)科都有其本身的特點(diǎn),應(yīng)用于數(shù)學(xué)問題的建模方式無法直接應(yīng)用于其他學(xué)科,Cheng等人提出了自適應(yīng)知識追蹤(AKT)模型,但是由于AKT模型針對超參數(shù)較為敏感,因此,未來一個(gè)重要方向?yàn)槿绾谓鉀Q不同學(xué)科的超參數(shù)問題,進(jìn)一步提升知識追蹤模型的準(zhǔn)確性。
綜上所述,在人工智能與教育相結(jié)合的大背景下,知識追蹤作為智慧教學(xué)領(lǐng)域的主要研究方向之一,主要目的是獲取學(xué)生的歷史學(xué)習(xí)記錄,追蹤其隨時(shí)間變化的知識狀態(tài),預(yù)測學(xué)生未來時(shí)刻的學(xué)習(xí)表現(xiàn),從而實(shí)現(xiàn)個(gè)性化教學(xué)。本文主要集中近五年教育領(lǐng)域中的知識追蹤模型,對該領(lǐng)域進(jìn)行了全面的梳理與回顧,首先介紹了知識追蹤領(lǐng)域經(jīng)典的貝葉斯知識追蹤(BKT),并針對BKT介紹了其擴(kuò)展模型,基于此模型,介紹了基于深度學(xué)習(xí)的DKT模型,并針對此模型的可解釋性問題、缺少學(xué)習(xí)特征、缺少教育數(shù)據(jù)特征等問題進(jìn)行擴(kuò)展進(jìn)行詳細(xì)闡述;然后整理了知識追蹤領(lǐng)域的公開數(shù)據(jù)集,對比了模型的性能;最后探討了知識追蹤領(lǐng)域現(xiàn)存的問題與未來的發(fā)展方向。