王雙
浙江師范大學(xué) 浙江金華 321004
在人工智能時(shí)代,大規(guī)模培養(yǎng)學(xué)生的個(gè)性化創(chuàng)新能力是智能教育的關(guān)鍵目標(biāo),掌握每個(gè)學(xué)生的知識狀態(tài)是智能教育的必要條件。因此,對學(xué)生進(jìn)行全面的教學(xué)評價(jià)至關(guān)重要。認(rèn)知診斷在教育領(lǐng)域的應(yīng)用旨在挖掘?qū)W生的知識狀態(tài),簡要示意圖如圖1所示。學(xué)生對一系列練習(xí)進(jìn)行作答,每個(gè)練習(xí)包含相應(yīng)的知識點(diǎn),學(xué)生答對練習(xí)則表明已經(jīng)掌握該練習(xí)中所包含的知識點(diǎn)。最終學(xué)生知識點(diǎn)的掌握情況反映到雷達(dá)圖中,雷達(dá)圖的每個(gè)頂點(diǎn)代表一個(gè)知識點(diǎn),學(xué)生知識點(diǎn)掌握情況用深色線條表示,越靠近外側(cè)表示掌握程度越高,即越熟練。
相關(guān)文獻(xiàn)表明,有許多致力于認(rèn)知診斷的研究,諸如項(xiàng)目反應(yīng)理論(Item Response Theory,IRT)[1],多維項(xiàng)目反應(yīng)理論(Multidimensional IRT,MIRT)[2],確定性輸入、噪聲與門模型(Deterministic Inputs, Noisy And gate model,DINA)[3]和矩陣分解(Matrix Factorization,MF)[4]都是基于人工設(shè)計(jì)的函數(shù),難以模擬學(xué)生與練習(xí)之間復(fù)雜的交互作用,而且對于實(shí)現(xiàn)多種特定類型的函數(shù),往往需要耗費(fèi)大量的人力與時(shí)間設(shè)計(jì)相應(yīng)的函數(shù),限制認(rèn)知診斷的效率和精度提升。因此,尋找一種能夠自動(dòng)模擬學(xué)生與練習(xí)之間復(fù)雜交互的方法迫在眉睫。近年來,大數(shù)據(jù)和人工智能飛速發(fā)展,機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘等技術(shù)逐漸應(yīng)用于教育領(lǐng)域,相關(guān)研究者運(yùn)用機(jī)器學(xué)習(xí)技術(shù)顛覆傳統(tǒng)的認(rèn)知診斷方法。Wang 等[5]提出的神經(jīng)認(rèn)知診斷模型(Neural Cognitive Diagnosis,Neural CD)通過運(yùn)用神經(jīng)網(wǎng)絡(luò)模擬學(xué)生和練習(xí)之間復(fù)雜的交互關(guān)系,能夠極大提升認(rèn)知診斷的效率與精度。由于不同知識點(diǎn)之間存在依賴關(guān)系和先決關(guān)系,為了挖掘知識點(diǎn)之間存在的關(guān)系,Gao 等[6]提出關(guān)系圖驅(qū)動(dòng)的認(rèn)知診斷模型(Relation map-driven CDMs)。此外,學(xué)生的學(xué)習(xí)成績會受到家庭條件、就讀學(xué)校等多因素的影響,Zhou 等[7]提出基于情境感知的認(rèn)知診斷模型(Context-aware CDMs)。
為了診斷學(xué)生的知識狀態(tài),獲取學(xué)生的學(xué)習(xí)情況,獲得學(xué)生學(xué)習(xí)結(jié)果的個(gè)性化反饋,以便更好地改進(jìn)教學(xué)。在教學(xué)過程中收集學(xué)生的真實(shí)答題數(shù)據(jù),請教專家標(biāo)注Q矩陣,將收集的數(shù)據(jù)編碼為JSON格式,基于神經(jīng)認(rèn)知診斷模型進(jìn)行實(shí)驗(yàn),將實(shí)驗(yàn)結(jié)果存到本地服務(wù)器,開發(fā)一個(gè)小型的學(xué)生知識狀態(tài)展示系統(tǒng),將實(shí)驗(yàn)結(jié)果進(jìn)行可視化呈現(xiàn)。本文的主要貢獻(xiàn)可以歸納為:
1)考慮練習(xí)和知識點(diǎn)之間的復(fù)雜交互關(guān)系,運(yùn)用神經(jīng)網(wǎng)絡(luò)模擬練習(xí)和知識點(diǎn)之間的復(fù)雜交互;
2)在教學(xué)過程中收集真實(shí)數(shù)據(jù)集,請教相關(guān)專家標(biāo)注Q矩陣,基于神經(jīng)認(rèn)知診斷模型獲取學(xué)生對具體知識點(diǎn)的掌握情況,為教育者提供直觀的個(gè)體認(rèn)知缺陷信息,為后期針對不同個(gè)體實(shí)施智慧教學(xué)方法提供有力支撐,更好地服務(wù)在線教育;
3)針對實(shí)驗(yàn)結(jié)果,在本地搭建服務(wù)器,開發(fā)一個(gè)小型展示系統(tǒng)對學(xué)生認(rèn)知結(jié)果進(jìn)行可視化呈現(xiàn)。
從認(rèn)知理論和心理測驗(yàn)理論兩個(gè)方面描述認(rèn)知診斷理論。
1.1.1 認(rèn)知理論
傳統(tǒng)測驗(yàn)理論在教學(xué)評價(jià)方面存在著種種缺陷,Nichols[8]最早提出將認(rèn)知科學(xué)與認(rèn)知心理學(xué)思想結(jié)合為認(rèn)知診斷評估,其中認(rèn)知理論十分重要。認(rèn)知理論是指在分析學(xué)生認(rèn)知加工過程中所涉及的各類心理學(xué)理論,測量學(xué)中通常把對個(gè)體認(rèn)知過程、加工技能或知識結(jié)構(gòu)的診斷評估稱為認(rèn)知診斷評估或認(rèn)知診斷[9]。認(rèn)知診斷是運(yùn)用認(rèn)知模型對個(gè)體認(rèn)知加工過程中所涉及的認(rèn)知屬性進(jìn)行診斷,在診斷過程中Q矩陣?yán)碚撌种匾?。Q矩陣?yán)碚撌恰皌o determining unobservable knowledge states and representing them by observable item response patterns(calledQ-matrix theory)”[9],其中的核心概念主要包括Q矩陣、鄰接矩陣、可達(dá)矩陣、理想掌握模式、縮減Q矩陣和理想反應(yīng)模式。Q矩陣又稱“0-1 矩陣”。對于學(xué)生的答題記錄,練習(xí)屬性用行向量表示,學(xué)生的知識狀態(tài)用列向量表示,它是連接練習(xí)屬性和學(xué)生知識狀態(tài)屬性的橋梁。
1.1.2 心理測試?yán)碚?/p>
心理測驗(yàn)理論包括標(biāo)準(zhǔn)測驗(yàn)理論和現(xiàn)代測驗(yàn)理論。標(biāo)準(zhǔn)測驗(yàn)理論是指宏觀能力特質(zhì)水平測量及評估宏觀心理特質(zhì),是心理學(xué)意義不明晰的“統(tǒng)計(jì)結(jié)構(gòu)”。在標(biāo)準(zhǔn)測驗(yàn)理論的基礎(chǔ)上衍生出能力水平研究范式,并進(jìn)一步衍生出經(jīng)典測量理論(Classical Test Theory,CTT)、概化理論(Generalizability Theory,GT)和項(xiàng)目反應(yīng)理論。經(jīng)典測量理論是最先發(fā)展、目前為止應(yīng)用較為廣泛的一種測量理論。由于經(jīng)典測量理論所給出的測量結(jié)果存在不足,概化理論體系涉及測量情景關(guān)系、線性模型和方差分量估計(jì)值、概化系數(shù)、依存性指標(biāo)的計(jì)算等問題[10],結(jié)合實(shí)驗(yàn)設(shè)計(jì)與分析,針對經(jīng)典測量理論測量結(jié)果存在的誤差,對經(jīng)典測量理論的信度進(jìn)行深化和推廣。項(xiàng)目反應(yīng)理論具體分析測驗(yàn)對不同能力被試的測量信度與誤差,更加細(xì)致地考察測驗(yàn)對每個(gè)被試者測量的準(zhǔn)確性?,F(xiàn)代測量理論是指宏觀能力與微觀認(rèn)知加工或認(rèn)知結(jié)構(gòu)并重,強(qiáng)調(diào)用心理學(xué)理論指導(dǎo)測驗(yàn)編制。在現(xiàn)代測驗(yàn)理論的基礎(chǔ)上衍生出認(rèn)知水平研究范式,并進(jìn)一步衍生出認(rèn)知診斷理論。
認(rèn)知診斷最初來源于教育心理學(xué)領(lǐng)域,涉及的模型主要包括項(xiàng)目反應(yīng)理論[1]、多維項(xiàng)目反應(yīng)理論[12]和確定性輸入、噪聲與門模型[3]。項(xiàng)目反應(yīng)理論以經(jīng)典測驗(yàn)理論為基礎(chǔ),采用最常用的三參數(shù)模型,如公式(1)所示。公式中的參數(shù)a表示項(xiàng)目區(qū)分度,b代表項(xiàng)目難度,c表示猜測,d表示經(jīng)驗(yàn),θ表示能力值,P(θ)表示答題正確率,在測試過程中具有參數(shù)不變性。多維項(xiàng)目反應(yīng)理論則基于項(xiàng)目反應(yīng)理論,將學(xué)生的潛在特征展至多維。
確定性輸入、噪聲與門模型如公式(2)所示,該模型只涉及失誤和猜測兩個(gè)參數(shù),公式中的參數(shù)s表示失誤,g表示猜測。該模型的理念是如果學(xué)生已經(jīng)掌握測驗(yàn)考察的所有屬性,那么他就會答對此測驗(yàn)題,如果所考察的屬性有一個(gè)未掌握,那么他就答不上此測試題。因此,針對學(xué)生猜對答案和失誤答錯(cuò)的情況,該模型不能處理。
神經(jīng)網(wǎng)絡(luò)是機(jī)器學(xué)習(xí)的一類算法,由神經(jīng)元(感知器)組成,神經(jīng)元被分為多層,層與層之間的神經(jīng)元有連接,同一層的神經(jīng)元無連接。神經(jīng)網(wǎng)絡(luò)包括輸入層、隱藏層和輸出層,輸入層負(fù)責(zé)輸入數(shù)據(jù),隱藏層負(fù)責(zé)輸入層和輸出層的數(shù)據(jù)連接,輸出層負(fù)責(zé)輸出數(shù)據(jù)。
鑒于傳統(tǒng)認(rèn)知診斷方法采用的是人工設(shè)計(jì)的線性交互函數(shù),具有一維性,不足以捕捉學(xué)生和練習(xí)之間復(fù)雜的非線性關(guān)系。Wang 等[5]提出神經(jīng)認(rèn)知診斷模型,該模型基于項(xiàng)目反應(yīng)理論運(yùn)用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)高階線性函數(shù),基于人工函數(shù)利用神經(jīng)網(wǎng)絡(luò)技術(shù)構(gòu)建認(rèn)知診斷模型,模擬人腦答題操作,將練習(xí)難度、區(qū)分度、學(xué)生做題的熟練度等抽象信息具體化,借助神經(jīng)網(wǎng)絡(luò)隱藏層的“黑箱功能”,高效模擬人腦答題過程中的操作,有效地處理學(xué)生與練習(xí)之間復(fù)雜的非線性交互作用。模型通過分析學(xué)生的答題記錄,提取學(xué)生學(xué)習(xí)過程中的各類特征,診斷學(xué)生對知識點(diǎn)的掌握情況,可以有效地為教師和學(xué)生提供個(gè)性化教學(xué)和學(xué)習(xí),極大地提高診斷效率,有效診斷學(xué)生的知識狀態(tài)。
假設(shè)在一個(gè)教育場景中有N個(gè)學(xué)生,M個(gè)練習(xí)和K個(gè)知識概念,則S={s1,s2,...,sN}表示N個(gè)學(xué)生的集合,E={e1,e2,...,eM}表示M個(gè)練習(xí)的集合,K={k1,k2,...,kK}表示K個(gè)知識概念的集合。每個(gè)學(xué)生s會分別選擇一些練習(xí)題進(jìn)行練習(xí),將學(xué)生答題記錄用一個(gè)三元組集合R={s,e,rse}表示,其中s∈S,e∈E,rse表示學(xué)生s在練習(xí)q上的得分。此外,由專家標(biāo)記的Q={Qij}M×K矩陣,如果練習(xí)ei與知識概念kj相關(guān),Qij=1,否則Qij=0。
給定學(xué)生答題記錄R和Q矩陣,本文的目標(biāo)是通過神經(jīng)認(rèn)知診斷模型來診斷學(xué)生對特定知識概念的掌握程度,并將診斷結(jié)果在展示系統(tǒng)上進(jìn)行可視化呈現(xiàn),為后期教學(xué)改進(jìn)提供有力依據(jù)。
神經(jīng)認(rèn)知診斷模型結(jié)構(gòu)主要包括三部分:嵌入階段、信息聚合與更新階段和認(rèn)知診斷結(jié)果預(yù)測階段。首先,將學(xué)生的one-hot 編碼和練習(xí)的onehot 編碼一起嵌入;然后,結(jié)合IRT 將每個(gè)向量融入公式進(jìn)行可解釋性表示,作為神經(jīng)網(wǎng)絡(luò)的輸入;最后,經(jīng)過三層全連接層的訓(xùn)練,通過預(yù)測學(xué)生的得分進(jìn)而分析學(xué)生的知識狀態(tài)。該模型的模型圖如圖2 所示。

圖2 神經(jīng)認(rèn)知診斷模型圖
在嵌入階段,針對學(xué)生因素,將學(xué)生的onehot 編碼xs嵌入,與經(jīng)過訓(xùn)練得到的A矩陣相乘得到學(xué)生的熟練度向量Fs,F(xiàn)s中的每個(gè)條目都是連續(xù)的([0,1])向量,F(xiàn)s=[0.8,0.2]表示學(xué)生對第一個(gè)知識概念的掌握程度較高,而對第二個(gè)知識概念的掌握程度較低[5]。
對于練習(xí)因素來說,將練習(xí)的one-hot 編碼xe嵌入,分別與經(jīng)過訓(xùn)練得到的B矩陣、D矩陣相乘和專家標(biāo)注的Q矩陣相乘得到知識點(diǎn)難度向量Fdiff、練習(xí)的區(qū)分度向量Fdisc和知識點(diǎn)相關(guān)度向量Qe。
數(shù)學(xué)表達(dá)式如公式(3)(4)(5)(6)所示:
其中,A、B、D都是可訓(xùn)練矩陣,sigmoid是激活函數(shù)。
在信息聚合與更新階段,基于項(xiàng)目反應(yīng)理論,本模型受到多維項(xiàng)目反應(yīng)理論的啟發(fā),得到神經(jīng)網(wǎng)絡(luò)的輸入x。其數(shù)學(xué)表達(dá)式如公式(7)所示:
運(yùn)用三層全連接層,全連接層公式如公式(8)(9)(10)所示:
Φ表示激活函數(shù),模型中采用sigmoid激活函數(shù),W1、W2、W3表示權(quán)重,b1、b2、b3表示偏置,為了保證學(xué)生對知識點(diǎn)掌握程度越高,則答題正確率越高,模型引入單調(diào)性假設(shè),采用的方法是將W1、W2、W3的每個(gè)元素限制為正值。
輸出y和真實(shí)數(shù)據(jù)的標(biāo)簽r的損失函數(shù),它的數(shù)學(xué)表達(dá)式如公式(11)所示:
經(jīng)過訓(xùn)練,F(xiàn)s的值就是得到的診斷結(jié)果,表示學(xué)生的知識熟練程度。
實(shí)驗(yàn)數(shù)據(jù)集包括學(xué)生答題數(shù)據(jù)和知識概念,其中學(xué)生答題數(shù)據(jù)來自浙江省高等學(xué)校在線開放課程共享平臺上的信息技術(shù)教學(xué)應(yīng)用課程,知識概念來自相關(guān)專家針對具體數(shù)據(jù)集的知識點(diǎn)標(biāo)注,具體包括教育技術(shù)概述、教育信息化、教學(xué)設(shè)計(jì)、信息化教學(xué)環(huán)境和教學(xué)媒體五個(gè)知識點(diǎn)。
因?yàn)樾枰獙W(xué)生和練習(xí)作為構(gòu)建模型的輸入,所以在教學(xué)過程中跟進(jìn)大三年級四個(gè)班級的學(xué)生在一學(xué)期內(nèi)的答題情況,收集學(xué)生的答題數(shù)據(jù),請教相關(guān)專家標(biāo)注練習(xí)與概念之間的相關(guān)性——Q矩陣,將答題數(shù)據(jù)與Q矩陣一一對應(yīng),記錄每個(gè)學(xué)生對每個(gè)知識點(diǎn)的回答情況,最后將記錄好的數(shù)據(jù)轉(zhuǎn)為JSON 格式,運(yùn)用神經(jīng)認(rèn)知診斷模型進(jìn)行實(shí)驗(yàn)。
該數(shù)據(jù)集包含176 個(gè)學(xué)生、79 個(gè)練習(xí)和5 個(gè)知識點(diǎn),共有13 308 條答題記錄。數(shù)據(jù)集統(tǒng)計(jì)如表1 所示。

表1 數(shù)據(jù)集統(tǒng)計(jì)
在本次實(shí)驗(yàn)中,從回歸和分類兩個(gè)角度對模型進(jìn)行評估。從回歸角度來說,用均方根誤差(RMSE)作為評價(jià)該認(rèn)知診斷模型的指標(biāo),用于量化預(yù)測得分與實(shí)際得分之間的差距,其中預(yù)測得分是0 ~1之間的連續(xù)變量;從分類角度來說,用預(yù)測得分的準(zhǔn)確率(Accuracy)和ROC 曲線下面積(AUC)作為評價(jià)該認(rèn)知診斷模型的指標(biāo),學(xué)生回答正確用1表示,回答不正確用0 表示。
將數(shù)據(jù)集劃分為訓(xùn)練集和測試集,其中80%用于訓(xùn)練,20%用于測試,采用5 折交叉驗(yàn)證,batch_size 設(shè)為32,epoch 設(shè)為5,實(shí)驗(yàn)預(yù)測結(jié)果如表2所示。

表2 實(shí)驗(yàn)預(yù)測結(jié)果
選擇第五個(gè)epoch 的實(shí)驗(yàn)結(jié)果,展示前20 個(gè)學(xué)生對知識點(diǎn)的掌握情況,如表3 所示。

表3 學(xué)生對知識點(diǎn)的掌握情況
經(jīng)過實(shí)驗(yàn),獲取176 個(gè)學(xué)生對五個(gè)知識點(diǎn)的掌握情況。由表2 可知,第一個(gè)學(xué)生沒有掌握第一個(gè)知識點(diǎn)和第五個(gè)知識點(diǎn),對第四個(gè)知識點(diǎn)的掌握情況最好,對第二、三個(gè)知識點(diǎn)的掌握情況一般;第二個(gè)學(xué)生沒有掌握第二個(gè)知識點(diǎn)和第四個(gè)知識點(diǎn),對第一、三、五個(gè)知識點(diǎn)剛剛掌握,其他學(xué)生以此類推。由此可知,在以人為本理念的指導(dǎo)下采用神經(jīng)認(rèn)知診斷模型,以學(xué)生的學(xué)習(xí)答題記錄為基礎(chǔ),關(guān)注學(xué)生的認(rèn)知加工過程和潛在特質(zhì)狀態(tài),利用多層感知機(jī)(MLP)深度、全面且充分地挖掘教育大數(shù)據(jù)中所蘊(yùn)含的價(jià)值,對學(xué)生的學(xué)習(xí)情況進(jìn)行診斷與分析,為教師的個(gè)性化教學(xué)和學(xué)生個(gè)性化學(xué)習(xí)指引方向,充分利用教育資源,為教師智慧導(dǎo)學(xué)提供依據(jù),對后期教學(xué)改進(jìn)提供有力支撐,引導(dǎo)學(xué)生智慧的生成,促進(jìn)智慧教學(xué)的發(fā)生。
展示界面采用自適應(yīng)布局,將雷達(dá)圖置入一個(gè)div 標(biāo)簽,進(jìn)行居中顯示。整個(gè)過程中涉及的技術(shù)有HTML5、CSS3、JavaScript、Vue3.0、ECharts和koa2,以下是對這些技術(shù)的詳細(xì)描述。
HTML5 增加語義標(biāo)簽、用于繪畫的canvas 元素、本地離線存儲等功能,是響應(yīng)式設(shè)計(jì)的基礎(chǔ),可以應(yīng)用于多種瀏覽器中。CSS3 是對CSS 的擴(kuò)展,可以調(diào)整頁面效果,包含選擇器、動(dòng)畫、Media Query 等多種模塊,其中Media Query 在響應(yīng)式布局中能夠?yàn)椴煌直媛实脑O(shè)備提供相適應(yīng)的CSS3樣式。JavaScript 用于為頁面添加交互行為,具有跨平臺特性。Vue3.0 采用MVVM 模型,即Model-View-View Model,具有數(shù)據(jù)響應(yīng)式功能,采用組件化,可以將復(fù)雜的業(yè)務(wù)進(jìn)行拆分,該技術(shù)中的虛擬DOM 可以極大提高網(wǎng)頁性能。ECharts 是基于JavaScript 的數(shù)據(jù)可視化圖表庫,內(nèi)部圖表資源豐富,采用雷達(dá)圖。
koa2 是基于node.js 的框架,該框架支持async/await 函數(shù),采用洋蔥模型中間件,并且采用next 函數(shù)進(jìn)行中間件執(zhí)行順序的控制。
運(yùn)用HTML5、CSS3、JavaScript、Vue3.0 和ECharts 技術(shù)搭建前端展示模塊,運(yùn)用koa2 搭建后端模塊,將學(xué)生的知識掌握情況數(shù)據(jù)轉(zhuǎn)為JSON 格式存在本地服務(wù)器,對176 個(gè)學(xué)生的認(rèn)知狀態(tài)進(jìn)行可視化呈現(xiàn)。
學(xué)生對知識點(diǎn)的掌握情況采用雷達(dá)圖的形式進(jìn)行呈現(xiàn),并且可以獲取相應(yīng)的診斷報(bào)告。其中第一個(gè)學(xué)生對知識點(diǎn)的掌握情況如圖3 所示,認(rèn)知診斷報(bào)告如圖4 所示。

圖3 診斷報(bào)告的可視化呈現(xiàn)

圖4 認(rèn)知診斷報(bào)告
在教學(xué)過程中收集學(xué)生的答題數(shù)據(jù),請教相關(guān)專家后對收集的數(shù)據(jù)進(jìn)行練習(xí)和知識點(diǎn)的標(biāo)注——Q矩陣,根據(jù)Q矩陣將學(xué)生答題數(shù)據(jù)中的練習(xí)與知識點(diǎn)一一對應(yīng),然后將處理好的數(shù)據(jù)轉(zhuǎn)為JSON 編碼格式,運(yùn)用神經(jīng)認(rèn)知診斷模型診斷學(xué)生的認(rèn)知情況,最后開發(fā)一個(gè)小型的可視化呈現(xiàn)系統(tǒng),將學(xué)生診斷結(jié)果進(jìn)行可視化呈現(xiàn)。首先,收集現(xiàn)代教育技術(shù)與應(yīng)用課程的13 308 個(gè)答題記錄;其次,通過請教相關(guān)專家標(biāo)注Q矩陣,將數(shù)據(jù)集轉(zhuǎn)為JSON 編碼格式,投入Neural CD 模型中,學(xué)生one-hot 編碼和練習(xí)one-hot 編碼一起作為神經(jīng)網(wǎng)絡(luò)的輸入,對學(xué)生的知識狀態(tài)進(jìn)行診斷;最后,運(yùn)用HTML、JavaScript、vue3.0 和Echarts 技術(shù)搭建前端展示模塊,將學(xué)生的知識掌握情況數(shù)據(jù)轉(zhuǎn)為JSON 格式存在本地服務(wù)器,對176 個(gè)學(xué)生的知識掌握情況進(jìn)行可視化呈現(xiàn)。根據(jù)獲取的診斷結(jié)果,可以直觀了解學(xué)生的認(rèn)知情況,為后期的教學(xué)改進(jìn)提供有力支撐。