史浩杰,李 幸,賈俊鋮,匡 健,那幸儀
(1.蘇州大學 計算機科學與技術學院,江蘇 蘇州 215006;2.Momenta-初速度(蘇州)科技有限公司,江蘇 蘇州 215100)
隨著人工智能在教育領域的應用,智能教育也走向了大眾的視野。智能教育是人工智能與傳統(tǒng)教育的結(jié)合,可以幫助教師上課、批改作業(yè)等。在教學過程中,學生成績是評價教學質(zhì)量的重要依據(jù)。然而,目前大部分智能教育方案缺少對學生試題得分的預測,光靠人工去預測需要耗費大量精力,因此, 如何幫助老師和學生對試題得分進行預測是一個非常重要的問題。
現(xiàn)有的試題得分預測大多數(shù)采用神經(jīng)網(wǎng)絡,它在獲得規(guī)范化的學生學習狀況數(shù)據(jù)表后,對數(shù)據(jù)表中的各屬性值進行正交編碼,構(gòu)建神經(jīng)網(wǎng)絡的訓練數(shù)據(jù)集,基于該訓練數(shù)據(jù)集進行神經(jīng)網(wǎng)絡的成績預測模型的構(gòu)建和訓練,最后將待預測的學生數(shù)據(jù)進行數(shù)據(jù)轉(zhuǎn)換、規(guī)范化、正交編碼及歸一化處理后,輸入至訓練好的成績預測模型進行學業(yè)成績分類預測,獲得學生學業(yè)成績預測結(jié)果并通過顯示單元進行顯示。然而,這種得分預測只能是對學生的一個總成績進行預測,無法精確到每一題的得分。往往相同分數(shù)的學生具備不同的能力,學生要知道自己的問題必須要知道自己具體錯在哪。
要想知道學生具體的錯誤,首先必須要知道考試中的試題類型是什么,因為有些學生會出現(xiàn)會求結(jié)果但是不會寫過程的情況,這就很容易導致他們在客觀題上得分還不錯,但是在主觀題上得分卻不理想。通常大部分考試中題型一般是客觀題和主觀題按照一定比例組成,客觀題只要結(jié)果正確即可獲得全部分數(shù),否則不得分;而主觀題則是答對一個點即可獲得相關分數(shù),結(jié)果并不是判斷是否得滿分的唯一標準。因此,在對學生進行得分預測時,必須緊密結(jié)合試題的評分標準。
該文結(jié)合認知診斷和神經(jīng)網(wǎng)絡分別對客觀題和主觀題進行得分預測,主要以試題考察的知識點作為影響學生成績的主要因素,并且結(jié)合主客觀評分標準來進行得分預測。目的是能夠讓學生理解試題相對于自己的難易程度,從而選擇合適的試題練習來提高自己的成績。
IRT模型:IRT模型即項目反映理論(item response theory),通過被測試者在問卷調(diào)查上的作答情況對他們的特征進行分析,從而挖掘出他們的潛在特征。IRT模型最早應用在心理學中,在應用時需要建立以下假設:(1)單維性假設,即假設在本次測試中只測試心理問題,不測試其他問題;(2)立性假設,即假設患者作答每道測試題相互獨立,作答情況只和患者的心理狀態(tài)有關,不存在隨便亂寫的情況;(3)模型假設,即患者的答案與其心理狀態(tài)具有一定的函數(shù)關系。使用IRT模型對患者進行心理評估時,常用的方法是極大似然估計,在已知測試題包含的心理參數(shù)時通過患者的作答情況計算出患者最大概率的心理狀態(tài)。同樣該模型可以應用在教育領域,在已知試題的相關參數(shù)(考察的知識點)下,結(jié)合學生的答題情況對學生在該參數(shù)上的表現(xiàn)進行診斷分析。
神經(jīng)網(wǎng)絡常見的學習方式有監(jiān)督學習和無監(jiān)督學習。
有監(jiān)督學習:有監(jiān)督學習是指給定一組訓練數(shù)據(jù)集,從中學習出一個能夠處理非線性數(shù)據(jù)的模型,當模型訓練完成后,輸入新的測試數(shù)據(jù),可以使用該模型輸出預測結(jié)果。在監(jiān)督學習中,訓練集的要求是需要具有特征和結(jié)果兩個參數(shù),結(jié)果一般由相關領域?qū)<疫M行標注。因此監(jiān)督學習常用于解決分類問題,它通過訓練集進行提取特征,然后對照結(jié)果訓練出一個最優(yōu)的學習模型,再利用該模型將測試集輸入的特征映射為對應的輸出結(jié)果,再對輸出結(jié)果進行合理的判斷就可以實現(xiàn)對目標的分類,也就具備了分類未知數(shù)據(jù)的能力。
無監(jiān)督學習:無監(jiān)督學習是指輸入數(shù)據(jù)沒有被標記,也沒有確定的輸出結(jié)果。因為往往會有一些數(shù)據(jù)由于缺乏經(jīng)驗很難進行人工標注或者人工標注的成本太大,在無法知道樣本數(shù)據(jù)的類別時需要根據(jù)樣本數(shù)據(jù)間的相似性對樣本集進行分類,使類內(nèi)差距最小,類間差距最大,也就是說無監(jiān)督學習不是告訴計算機怎么去分類,而是讓它自己去學習如何做分類這件事。當計算機分類正確時會采取一種激勵的形式,而分類錯誤時會做出懲罰,因此無監(jiān)督學習的目標不是訓練出一個分類模型,而是對其分類行為是否做出最大回報的決定。
表1 符號的定義及描述
續(xù)表1
客觀題主要分為選擇題和填空題,客觀題的分數(shù)只有滿分和0分。因此,如果學生缺乏試題所涉及的知識點,通常得不到該試題的分數(shù)。只有掌握了該試題包含的所有知識點,才能正確地回答問題。此外,學生也可能會存在失誤把會做的題目做錯,也可能把不會做的題目猜對,這些因素必須考慮在內(nèi)。
主觀題的評分與客觀題不一樣,學生每答對一個點就可以獲得相應的分數(shù),學生如果掌握了一部分知識點就可以獲得一些分數(shù),并且主觀題由于沒有選項讓學生選擇,想要猜對幾乎是不可能。因此,主觀題的得分預測方法與客觀題并不一致。
問題定義:(1)給定學生得分矩陣,試題知識點關聯(lián)矩陣,如何對客觀題進行準確的得分預測;(2)給定學生知識狀態(tài)矩陣和得分矩陣,如何對主觀題進行準確的得分預測。為解決2.2小節(jié)中的第一個問題,提出一種基于認知診斷客觀題得分預測方法O-CDM(objective question-cognitive diagnosis model)。下面將介紹該方法框架和具體做法。
圖1 O-CDM框架
S
對試題P
的潛在反應向量,如式(1)所示。如果學生S
掌握試題P
中涉及的所有知識點,則潛在回答設置為1;如果學生S
缺少至少一個涉及的知識點,則潛在回答設置為0。(1)
(2)用P
(α
|Y
)表示學生S
的知識狀態(tài)α
為真的后驗概率,如式(2)所示;R
是學生在α
狀態(tài)下正確回答試題P
的期望值,如式(3)所示;I
是學生具有知識狀態(tài)α
的期望值,如式(4)所示:(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(5)重復步驟(3)和(4),直到β
中每個分量都收斂。(6)學生的知識狀態(tài)X
可以通過最大化學生得分的后驗概率獲得,其定義如式(10)所示:(10)
(7)在獲得學生的知識狀態(tài)后,在矩陣中找到學生在該狀態(tài)下每道試題的得分,矩陣的計算方法如式(11)所示:=*(11)
為解決2.2小節(jié)中的第二個問題,提出一種基于卷積神經(jīng)網(wǎng)絡主觀題得分預測方法S-CNN(subjective question-convolutional neural network)。下面將介紹該方法框架和具體做法。
X
作為輸入,學生的得分矩陣作為標簽,使用Relu和Sigmoid作為激活函數(shù),用卷積神經(jīng)網(wǎng)絡進行訓練并且預測主觀題得分,方法框架如圖2所示。圖2 S-CNN框架
(1)該網(wǎng)絡模型包括輸入層、卷積層、隱藏層、池化層、全連接層和輸出層,整個卷積神經(jīng)網(wǎng)絡流程如圖3所示。
圖3 卷積流程
(2)輸入層包括學生知識狀態(tài)矩陣=(X
,X
,…,X
),卷積層對輸入矩陣執(zhí)行卷積操作(d
個卷積核,卷積核大小為u
),得到隱藏層H
= (h
,h
,…,h
-+1),h
通過激活函數(shù)Relu計算,如式(12)所示:(12)
其中,w
表示輸入層神經(jīng)元i
和隱藏層神經(jīng)元j
之間的權(quán)重,b
表示隱藏層神經(jīng)元j
的閾值。(13)
(4)新的隱藏層H
通過一個全連接層和一個輸出層,得到主觀題的預測得分y
,y
由Sigmoid激活函數(shù)計算,如式(14)、(15)所示:(14)
y
=Sigmoid(w
×f
+b
)(15)
其中,w
表示隱藏層神經(jīng)元j
和全連接層神經(jīng)元o
之間的權(quán)重,b
表示全連接層神經(jīng)元o
的閾值,w
表示全連接層神經(jīng)元o
和輸出層神經(jīng)元v
之間的權(quán)重,b
表示輸出層神經(jīng)元v
的閾值。此次數(shù)據(jù)來自中科大老師提供的某所高中的高二數(shù)學期末考試成績(http://staff.ustc.edu.cn/~qiliuql/data/math2015.rar),一共有20道題,其中有14道選擇題,6道主觀題,這些試題考察了集合、不等式、三角函數(shù)、對數(shù)函數(shù)、平面向量、導數(shù)、函數(shù)圖像、空間直角坐標系、抽象函數(shù)、推理與論證、計算這11個知識點(已經(jīng)由相關領域?qū)<覙俗?。該數(shù)據(jù)集包括兩個子數(shù)據(jù)集:Math1子數(shù)據(jù)集包括所有學生在選擇題上的得分以及每道選擇題考察的知識點(選擇題的失誤率設為1.68%,猜對率為25%);Math2子數(shù)據(jù)集包括所有學生在主觀題上的得分以及每道主觀題考察的知識點。數(shù)據(jù)集的詳細信息如表2所示。使用整個數(shù)據(jù)集的80%作為訓練集,20%作為測試集。
表2 數(shù)據(jù)集信息
在本次實驗中,用得分預測的準確率(Accuracy)、精確率(Precision)、召回率(Recall)、F1作為評價指標,計算公式分別如式(16)~式(19)所示:
(16)
(17)
(18)
(19)
其中,TP表示正確預測學生答對試題的數(shù)量,F(xiàn)P表示錯誤預測學生答錯試題的數(shù)量,F(xiàn)N表示錯誤預測學生答對試題的數(shù)量,TN表示正確預測學生答錯試題的數(shù)量。
實驗對比了項目反應理論模型(IRT)和協(xié)同過濾(kNN)兩種試題得分預測的方法,實驗結(jié)果如表3和表4所示。
表3 客觀題對比結(jié)果 %
表4 主觀題對比結(jié)果 %
通過實驗結(jié)果可以發(fā)現(xiàn),O-CDM與S-CNN方法分別在客觀題和主觀題得分預測上高于傳統(tǒng)方法,因為O-CDM方法考慮到客觀題存在的各種情況并且結(jié)合矩陣算法進行得分預測,而S-CNN方法能夠利用卷積神經(jīng)網(wǎng)絡找到學生知識點掌握情況與試題得分之間的關聯(lián)性,因此這兩種方法在客觀題與主觀題得分預測上都具備獨特的優(yōu)勢。
該文主要是根據(jù)試題的類型結(jié)合認知診斷和卷積神經(jīng)網(wǎng)絡進行得分預測,與之前的一些得分預測不同的在于考慮了平時考試試題的類型,分為客觀題和主觀題,預測的準確率也比較高,從而可以根據(jù)預測的得分讓學生進行選擇試題加強訓練。但是由于題目的知識點只能用0和1表示掌握和未掌握,分析學生知識點狀態(tài)也是只有掌握和未掌握,并不能表示學生掌握了多少,并且題目考察的知識點的難易程度還是沒法得出。因此未來希望能夠從學生知識點的掌握程度以及題目考察知識點難易程度出發(fā),在預測出學生知識點的掌握程度后,從題目中挑選出更加合適的題目讓學生進行查漏補缺,這將是一個比較難的挑戰(zhàn),希望能夠突破,從而讓教育更加完善。