許 嘉,韋婷婷,于 戈,黃欣悅,呂 品,2,3
1.廣西大學計算機與電子信息學院,南寧530004
2.廣西大學廣西多媒體通信網絡技術重點實驗室,南寧530004
3.廣西大學廣西高校并行與分布式計算重點實驗室,南寧530004
4.東北大學計算機科學與工程學院,沈陽110819
考試是區分學生能力和選拔人才的重要手段,在教育領域發揮著至關重要的作用。試卷質量的好壞對考試公平性有直接影響。而題目難度是影響試卷質量的核心因素,因為過于簡單或者過于困難的題目都無法很好地支撐學生能力的區分和人才的選拔??梢?,題目難度評估是保障考試公平性需要解決的重要問題之一。與此同時,題目難度評估也在智能教育領域中發揮著重要作用,為智能組卷、題目自動生成和個性化習題推薦等多項智能教育領域的核心任務提供有效支撐。鑒于此,本文對近年來題目難度評估相關的研究工作進行了深入調研和分析,以期為相關領域的研究學者提供幫助。
在對題目難度評估的相關研究工作進行深入討論之前,首先澄清三個術語——題目、試題和習題之間的區別和聯系。根據應用領域的不同,題目可以被稱為試題(當其應用于考試時)或習題(當其應用于課后練習時)??梢?,試題和習題是題目在不同應用場景下的不同表述。因此本文用術語“題目”統一指代術語“試題”和“習題”。
經典測試理論(classical test theory,CTT)將題目難度定義為正確回答該題的學生占總體學生的比率。佟威等人認為基于題目文本獲得的題目難度可稱為題目的絕對難度。Zhu 等人則認為題目難度是對題目內容復雜性的度量。此外,Teusner 等人認為不同學生對題目的感知難度與學生的知識狀態水平密切相關。同時,Gan 等人也認為存在由學生知識狀態水平而決定的題目相對難度。上述對于題目難度的理解可歸于兩種觀點:第一種觀點認為題目難度是題目本身特性(例如題型和題目內容等)的反映,本文稱之為題目的絕對難度;第二種觀點則認為題目難度是學生個體知識狀態水平的反映,應該通過學生與題目之間的答題交互表現來量化題目難度,本文稱之為題目的相對難度。本文將題目難度分為絕對難度和相對難度兩方面分別進行討論。
題目難度評估是當下教育領域的研究熱點,雖然近三年來已有5 篇綜述類論文對題目難度評估的相關研究工作進行了分析總結,然而本文和這些論文具有顯著區別并作出了新的貢獻。其中,文獻[16-18]一方面只針對經典的知識追蹤模型進行了介紹和分析,沒有討論題目難度評估的其他模型方法;另一方面,沒有覆蓋近兩年最新發表的眾多知識追蹤模型。文獻[19]僅對題目絕對難度的研究方法進行了分析,沒有涉及對題目相對難度研究方法的總結。文獻[20]則主要分析了基于深度學習方法的知識追蹤模型,沒有討論除深度學習方法之外的知識追蹤模型。綜上,已有的綜述類論文要么只關注于題目絕對難度評估相關的研究工作,要么只是針對題目相對難度評估所涉及的知識追蹤模型進行了分析總結,均沒有以整個題目難度評估領域為視角對近年來的研究進展進行系統的梳理、對比和分析。本文不但系統總結了題目難度評估領域的最新研究進展,還基于同一個公開數據集對近年來最受關注的基于深度學習的題目相對難度評估方法中的典型模型進行了實驗對比和分析,從而讓讀者對這些模型有深入的理解。
本文以整個題目難度評估領域為視角,分析總結了該領域的研究現狀,主要貢獻包括:
(1)對近十年來題目難度評估的相關研究工作進行了統計、比較和分類;
(2)以題目絕對難度預測和題目相對難度預測為分類框架對相關研究工作進行了分類討論;
(3)對近年來最受關注的基于深度學習的題目相對難度評估模型進行了實驗對比和分析;
(4)對題目難度預測的相關數據集、題目難度預測方法中典型的信息提取方法、模型的評價指標和訓練標簽進行了系統總結。
傳統教育中的題目絕對難度評估方法包括預測試和專家評估。預測試是指在題目未被應用到考試前組織一部分學生對所有的題目進行提前測試,再根據學生在測試中的答題表現統計每道題目的難度。預測試方法常被應用于雅思、托福等考試中。易知,預測試法的局限性:(1)其得到的題目難度與參加預測試的學生的知識能力水平緊密相關;(2)存在題目泄露的風險;(3)參與預測試的學生規模一般要求比較大,導致較多人力和財力的消耗。專家評估則由命題經驗豐富的領域專家或教師對題目難度進行評估。由于專家或教師的評估結果帶有主觀性,這無疑會影響題目難度評估的穩定性。
在教育心理學領域,經典測試理論也以學生的測試結果作為題目難度的評估依據。然而,由于該理論存在假設性強且某些參數在理論上具有意義卻很難在實際中計算得到等問題,在經典測試理論的運用中通常只是簡單以題目得分率或通過率作為題目難度的取值。
鑒于目前已有不少題目絕對難度的評估方法被提出,一些文獻對這些題目絕對難度評估方法進行分類。其中,以文獻[19]的分類策略最為細致全面。文獻[19]將題目絕對難度評估方法分為認知法和系統方法。首先,認知法認為題目的絕對難度是學生正確回答該題所需要的認知能力,進一步可分為啟發式法和教育分類法。啟發式法又被稱為專家評估法,其依賴于領域專家對題目難度進行評估和確定;教育分類法則利用認知模型(例如Bloom 分類模型)評估題目的絕對難度。題目絕對難度評估方法的另一大分支系統方法利用各種計算機技術(例如自然語言處理技術)來量化題目絕對難度,以減少難度量化過程中的人為干預,又可分為統計法和數據驅動法。以經典測試理論為代表的統計法以學生們的歷史答題數據為輸入并利用統計模型量化得到題目絕對難度值。系統法中的數據驅動法可進一步分為基于規則的方法和基于機器學習的方法。其中,基于規則的方法利用專家制定的規則來計算題目的絕對難度?;跈C器學習的方法則是以題目的題干、選項等信息作為題目特征,以題目已知的難度信息作為標簽進而利用機器學習模型構建題目絕對難度預測模型,是目前題目絕對難度評估的主流方法。經過統計分析,本文在文獻[19]提出的題目絕對難度方法分類策略的基礎上進一步將基于機器學習方法細分為基于傳統機器學習的方法和基于深度學習的方法。圖1 展示了本文的分類策略。鑒于基于機器學習方法是當今題目絕對難度評估的主流技術,本文將在第2 章詳細討論其研究現狀。
圖1 題目絕對難度評估的方法分類Fig.1 Classification of approaches for question absolute difficulty evaluation
教育心理學領域提出的認知診斷理論是近年來解決題目相對難度評估問題的主流方法。認知診斷是對個體認知過程、加工技能或知識結構的診斷評估。在被運用于題目難度評估時,認知診斷首先以學生答題數據為輸入對該生的知識狀態水平進行診斷,之后基于診斷結果評估某道題目對于該生的相對難度。認知診斷被分為靜態認知診斷(忽略時間因素)和動態認知診斷(考慮時間因素對學生知識狀態水平的診斷結果的影響)。
靜態認知診斷假設學生的知識狀態水平在一定時間內是固定不變的,其利用學生的答題數據對學生的知識狀態水平進行評估,進而評估題目對學生的相對難度。作為靜態認知診斷模型的代表,項目反應模型(item response model,IRM)和DINA 模型(deterministic input,noisy“and”gate model)都常被用于量化題目的相對難度。其中,項目反應模型首先基于學生的答題結果計算學生的能力參數和題目的特性參數(包括絕對難度、區分度、猜測度),再以這些參數作為Logistics 函數的輸入來得到題目對于學生的相對難度信息。項目反應模型沒有引入知識點的概念,只將學生的知識狀態水平粗粒度地描述為單一的能力值。與項目反應模型不同的是,DINA 模型引入了知識點的概念并通過定義矩陣來描述題目和知識點之間的關系,之后以矩陣和記錄了全體學生的答題結果數據的矩陣為輸入,并定義相應的項目反應函數來診斷得到學生對各個知識點的掌握程度值,題目對于學生的相對難度值則等于該學生對該題考查的各個知識點的掌握程度值的乘積。近年來,學者們將模糊集理論、機器學習模型與各種認知診斷模型相結合,提出了多種混合認知診斷技術,進一步提高了認知診斷的準確率,因此本文將靜態認知診斷方法分為傳統認知診斷和混合認知診斷。
動態認知診斷則基于學生的答題數據序列動態評估和更新學生的知識狀態水平,以跟蹤學生隨時間的變化對知識點的掌握情況,進而在不同時刻更新題目對于學生的相對難度信息。由于知識追蹤技術利用學生的答題序列追蹤學生隨時間變化的知識狀態水平,從而評估某一道題目對于學生的相對難度,因此有學者認為知識追蹤等同于動態認知診斷。根據追蹤手段的不同,動態認知診斷方法可進一步分為基于貝葉斯網絡的動態認知診斷和基于深度學習的動態認知診斷。
圖2 給出了本文對于題目相對難度評估方法的分類策略。由于近十年發表的靜態認知診斷相關的文獻大都采用了混合認知診斷策略,本文將會在第3.1 節詳細介紹這類方法。3.2 節則對動態認知診斷技術進行闡釋和分析。
圖2 題目相對難度評估的方法分類Fig.2 Classification of approaches for question relative difficulty evaluation
鑒于預測試和專家評估等題目絕對難度評估方法具有耗時耗力、主觀性較強、效率低下等缺點,學者們開始通過建立難度預測模型來評估題目的絕對難度。近十年來的題目絕對難度評估方法主要利用機器學習模型評估(或稱預測)題目的絕對難度,預測過程可分為四個基本任務:(1)獲取題目真實絕對難度;(2)數據預處理;(3)特征提??;(4)題目絕對難度預測模型選擇。本文根據題目絕對難度預測方法在特征提取和預測模型選擇階段是否使用深度學習技術將基于機器學習的方法細分為基于傳統機器學習方法和基于深度學習方法。題目絕對難度預測方法的分類策略詳見圖3所示。下文分別對每類方法進行深入討論。
圖3 基于機器學習的題目絕對難度預測方法分類Fig.3 Classification of machine learning based approaches for question absolute difficulty prediction
該類方法利用傳統機器學習中的支持向量機、決策樹、隨機森林、淺層BP(back propagation)神經網絡等模型實現對題目絕對難度的預測。
文獻[41]基于淺層BP 神經網絡提出了一種針對中文閱讀理解題的題目絕對難度預測的方法。該方法首先從題目和閱讀文本中提取多個特征(例如題干長度、選項長度),其次分析這些特征與題目絕對難度之間的相關性,最終篩選出對題目絕對難度有較高影響力的特征作為BP 神經網絡的輸入,最終實現對閱讀理解題的絕對難度值的預測。
文獻[42]則利用支持向量機對臺灣社會課程的單選題進行絕對難度預測。首先,使用社會課程教科書和詞嵌入技術構建一個語義空間,并將題目元素(包括題目題干、正確答案、干擾選項)投影到語義空間中,以獲得相應表征向量。通過計算題目元素表征向量之間的余弦相似性從而得到題目的語義特征。最后,將語義特征輸入支持向量機中進行訓練和測試,最終實現題目絕對難度預測。
文獻[43]利用隨機森林模型對漢語選擇題進行難度等級預測。首先以漢語教材中的專有名詞為基礎建立知識樹模型,其后將知識樹的屬性(例如知識樹的廣度和深度)作為隨機森林模型的輸入,從而對題目的絕對難度進行等級評估。
文獻[44]利用題目編號、題目難度類型、題目總提交次數、題目總通過次數、題目首次提交通過的次數和首次提交通過的總用時作為決策樹模型的輸入特征,實現了編程題的絕對難度預測。
各種回歸模型也常被用于預測題目的絕對難度。例如,文獻[45]首先分析得到了英國小學科學測試題目的難度影響因素,具體包括課程變量(涉及課程主題、課程子主題、概念)、題目類型、刺激性質(即題目中的圖表類型)、知識深度和語言變量,并使用上述變量建立回歸模型來預測題目的絕對難度。又如文獻[46]討論了英語時態的提示性填空題(cued gap-filling items)的難度預測問題。其針對題目文本、填空詞語等多個影響題目難度的題目特征進行了嶺回歸分析,從而建立題目特征與題目難度之間的關系模型。文獻[21]則提出從題目文本提取題目的語料庫特征(例如詞匯特征和句法特征),并將這些特征作為多元線性回歸模型的輸入來訓練該模型從而實現題目絕對難度預測。
上述提及的文獻均只選用單一的機器學習模型對題目難度進行預測,而部分論文會利用多種機器學習模型進行題目絕對難度預測,再從中選擇特定應用場景下最優的模型。例如,文獻[47-48]均是利用多元線性回歸和決策樹模型對英語閱讀理解題中的選擇題進行難度預測。又如文獻[49]從英文聽力題的聽力材料文本和題目文本中提取多個特征并基于這些特征訓練線性回歸、決策樹、支持向量機等機器學習模型。文獻[50]選取了醫學單選題的多個特征(例如語言學特征和信息檢索特征),并利用隨機森林、線性回歸、支持向量機等機器學習模型對題目絕對難度進行評估。文獻[51]使用邏輯回歸、支持向量機和隨機森林對文本信息較為豐富的英語閱讀題進行題目絕對難度等級的預測。文獻[52]將從選擇題的題目文本中提取的可讀性特征、語言學特征和信息檢索特征作為隨機森林、決策樹、支持向量機、線性回歸模型的輸入,實現對題目絕對難度的預測。文獻[25]提取題目文本的詞頻逆文本頻率指數特征作為隨機森林、決策樹、支持向量機和線性回歸模型的輸入,模型輸出題目的絕對難度值和區分度。文獻[53]則使用支持向量機、決策樹、樸素貝葉斯網絡和淺層BP 神經網絡對題目絕對難度進行等級評估。
基于傳統機器學習的題目難度預測方法的相關文獻較多,表1 總結了常用于題目絕對難度預測的傳統機器學習模型和相關文獻。
表1 題目絕對難度預測常用的機器學習模型Table1 Frequently-used machine learning models for question absolute difficulty prediction
近年來,深度學習技術的運用進一步提升了許多應用領域中預測或分類任務的精度。因此,不少學者也開始利用深度學習框架來提高對題目絕對難度預測的準確性。
文獻[58]基于卷積神經網絡(convolutional neural networks,CNN)提出了一種預測英語考試中閱讀理解題絕對難度的神經網絡模型TACNN(test-aware attentionbased convolutional neural network),如圖4(a)所示。首先輸入層將題目文本進行向量化,其次利用CNN學習題目文本信息(包括閱讀文本、題干和選項)的有效語義表征。然后,使用注意力機制來限定閱讀文本中每個句子對題目絕對難度評估的貢獻。最后,考慮到不同測試中題目難度的不可比性,提出了一種基于考試上下文信息的訓練方式來訓練神經網絡模型TACNN。
文獻[12]則基于卷積神經網絡和循環神經網絡(recurrent neural network,RNN)的思想提出了三種針對數學試題的絕對難度預測神經模型,包括C-MIDP(基于CNN 構建)、R-MIDP(基于RNN 構建)和HMIDP(基于CNN 和RNN 構建的混合模型)。這三種模型的框架如圖4(b)所示。具體的,CNN 用來提取題目文本的語義信息,RNN 則用來提取題目文本的序列語義和邏輯信息,此外考慮到不同考試中學生群體的不可比性,在訓練模型的過程中同樣采用了一種基于考試上下文信息的訓練方式,以期提升預測的準確度。
鑒于長短期記憶網絡(long short-term memory,LSTM)在處理序列數據上表現良好,文獻[23]基于LSTM 網絡提出了一種針對漢語閱讀理解題的題目絕對難度預測模型,本文將其命名為TCN-DPN(text correlation network and difficulty prediction network),其模型如圖4(c)所示。該模型首先將題目文本進行向量化;然后,將題目文本向量輸入LSTM 模型中得到題目信息向量,最后題目信息向量經過全連接層輸出題目的絕對難度等級。
文獻[22]基于深度神經網絡模型提出了針對醫學考試中選擇題的題目絕對難度預測模型DAN(document enhanced attention based neural network),詳見圖4(d)所示。DAN 首先通過拼接題目的題干和選項構造查詢,然后基于查詢從一個醫學文檔數據庫中獲取和該題相關的醫學文檔。之后,利用Bi-LSTM(bidirectional long short-term memory)模型構建選擇題文本組成部分(即題干、選項和檢索到的相關醫學文檔)的語義特征表達。最后,基于語義特征表達將題目的難度信息分為刻畫學習者排除干擾選項困難程度的困惑難度(confusion difficulty)和刻畫從醫學文檔數據庫中獲取與該題相關的醫學文檔的困難程度的召回難度(recall difficulty)兩部分,并最終以加權求和方式將這兩部分難度整合形成該題的絕對難度值。
文獻[2]對帶圖片的選擇題的難度評估問題進行研究,首先基于深度多模態嵌入模型學習題目的文本和圖片信息的有效表征,然后提出一個基于貝葉斯推理的題目難度預測框架(Bayesian inference-based exercise difficulty prediction,BEDP)來預測該類型題目的絕對難度。BEDP 模型的框架如圖4(e)所示。
圖4 基于深度學習的題目絕對難度預測重要模型架構Fig.4 Architecture of important deep learning based question absolute difficulty prediction models
表2 對基于深度學習的題目絕對難度預測模型的優點和局限性進行了對比分析。
表2 基于深度學習的題目絕對難度預測模型對比Table 2 Comparison of deep learning based question absolute difficulty prediction models
雖然近十年提出的題目絕對難度預測方法大多是基于機器學習模型構建的,仍有學者提出了其他的解決思路。例如,針對人工智能課程中的特定類型的題目,包括將自然語言轉化為FOL(first-order logic)的題目和FOL 轉化為自然語言句子的題目,學者們提出了基于專家制定規則的題目絕對難度評估策略。具體的,學者們從這類題目的特點出發,利用可獲取的題目答案參數(例如量詞的數量、隱含符號的數量、不同連接詞的數量)和專家制定的規則來預測這類題目的絕對難度等級。還有學者提出可以將題目的不同部分或者不同方面的絕對難度進行相乘或者相加來計算題目的絕對難度。例如,文獻[60]首先從題目的題干和選項中獲取與絕對難度相關的因素,其次利用定義的公式獲得題干的難度值和選項的難度,最后將題干和選項的難度分數進行相乘最終得到題目的絕對難度值。文獻[61]以求和的方法將任務難度、內容難度和刺激難度(指學生在理解和分析題目陳述內容時所面臨的困難程度)整合起來作為題目的絕對難度值。文獻[62]則研究了Java 編程題的難度評估問題,根據題目的答案獲取到多個軟件度量指標(例如圈復雜度、平均嵌套塊深度)后對每個軟件度量指標的取值進行加權求和后作為題目的絕對難度值。此外,部分學者還將神經網絡模型與模糊集理論相結合,實現對題目絕對難度的評估。例如,文獻[63]對雅思聽力題的聽力材料和題目文本進行特征提取,隨后利用自適應神經模糊推理系統成功量化了雅思聽力題的絕對難度。文獻[64]則以Tree 數據結構的參數(例如節點數、樹的深度)為輸入,并同時利用自適應神經模糊推理系統與神經象征模型構建搜索算法題(例如深度優先搜索算法題)的絕對難度預測模型。
近十年提出的題目絕對難度預測方法主要包括基于傳統機器學習方法和基于深度學習方法。在論文數量方面,前者占題目絕對難度預測相關文獻總數的近九成,這很大程度是因為基于深度學習框架來提升題目絕對難度預測的準確性是需要大量題目數據和學生答題數據作為支撐的,而能訪問到這樣規模數據的研究機構不多。本文對收集到的近十年的題目絕對難度相關文獻進行統計后發現:這些方法所服務的學科集中在英語(21%)、計算機(16%)、醫學(12%)、語文(7%)和數學(7%);題型方面,針對選擇題所提出的方法占比最大(29%),剩下依次是填空題(7%)、聽力題(7%)和編程題(5%)。
近十年提出的靜態認知診斷方法大都為混合認知診斷方法,即將經典的認知診斷模型與各種機器學習模型、教育理論進行結合,以優化認知診斷過程從而提高對題目相對難度的預測準確率(表3 展示了近年來典型的混合認知診斷方法)。
表3 混合認知診斷Table 3 Hybrid cognitive diagnostic
項目反應理論(item response theory,IRT)是經典的認知診斷方法之一,為分析學生能否答對某道題提供了可解釋的參數。然而經典的IRT 模型僅基于學生的答題結果數據預測題目的相對難度值,未利用題目的文本和知識點信息。鑒于此,文獻[36]將IRT 模型和深度學習框架相結合提出了一個深層項目反應理論框架(deep item response theory,DIRT)來彌補傳統IRT 模型的不足。DIRT 框架包含了三大模塊:輸入模塊、深度診斷模塊和預測模塊。輸入模塊使用能力向量來表征學生對各個知識點的掌握程度值,并設計密集嵌入層將題目文本向量和題目知識點向量進行密集化處理。深度診斷模塊中,基于輸入模塊中生成的學生能力向量、題目文本向量和知識點向量來作為深度神經網絡模型的輸入。最后的預測模塊以深度診斷模塊得到的學生能力參數、題目區分度和題目絕對難度作為Rasch 模型的輸入,利用訓練好的模型預測題目相對難度值。文獻[37]則將認知診斷和神經網絡相結合,提出了一個通用的神經認知診斷框架,命名為NeuralCD(neural cognitive diagnosis)。
部分學者將認知診斷模型和模糊集理論相結合,提出題目相對難度評估的新思路。部分認知診斷模型(例如DINA 模型)只利用學生在客觀題上的答題結果數據,無法充分利用主觀題的多級評分信息。為了同時利用學生在客觀題和主觀題上的答題結果數據,文獻[38]將模糊集理論和教育假設結合到認知診斷模型DINA 中,提出了模糊認知診斷框架FuzzyCDF(fuzzy cognitive diagnosis framework)。
近年來,學者們還將矩陣分解技術(matrix factorization,MF)應用到認知診斷領域,即將學生得分矩陣分解為學生潛在矩陣和題目潛在矩陣,分別用以刻畫學生和題目在低維空間中的表現程度?;趯W生和題目的低維矩陣的乘積對學生得分矩陣進行逼近,進而得到題目對于學生的相對難度。概率矩陣分解(probabilistic matrix factorization,PMF)是常用的矩陣分解方法之一,文獻[8]混合運用了PMF 模型和認知診斷模型用于預測學生關于某道題的相對難度。首先將學生答題歷史矩陣和專家標注的矩陣作為DINA 模型的輸入,得到學生的知識點掌握程度。在得到學生知識點掌握程度后,將其作為先驗參數應用于概率矩陣分解中,進而預測題目相對難度。
為了便于讀者的理解,本節用知識追蹤代替動態認知診斷。由于本文收集到的題目相對難度預測方法大部分是知識追蹤相關的,本文根據統計的實際情況將題目相對難度預測方法中的知識追蹤分為基于貝葉斯方法和基于深度學習方法,如圖5 所示。
圖5 知識追蹤方法的分類Fig.5 Classification of knowledge tracking approaches
基于隱馬爾可夫模型設計的貝葉斯知識追蹤模型(Bayesian knowledge tracing,BKT)是早期知識追蹤方法的代表。BKT 將學生對于某個知識點的掌握狀態建模為一個二值變量,包括掌握和未掌握兩個狀態,并假設該生對于每個知識點都有四個參數:(1)先驗知識水平,即該生未答題前對該知識點的掌握程度;(2)學習率,指該生每次答題后知識點從未掌握狀態轉移至掌握狀態的概率;(3)猜測概率,指該生未掌握該知識點但猜測答對其對應題目的概率;(4)失誤概率,指該生掌握該知識點卻失誤答錯其對應題目的概率。EM(expectation maximum)算法常被用來估計BKT 模型中的以上四個參數,利用得到的參數并通過隱馬爾可夫模型更新學生知識點的掌握狀態。
在BKT 模型的基礎上:一方面,一些學者繼續從學生方面和題目方面探討其他因素(如學生遺忘行為、學生不同的學習能力、題目絕對難度、知識點的層次結構關系)對題目相對難度的影響;另一方面,也有學者利用教育心理學領域的理論模型擴展BKT模型以獲得更高的題目相對難度預測準確率。表4總結比較了近十年提出的BKT 擴展模型。
表4 BKT 擴展模型Table 4 Extended models for BKT
在擴展BKT 模型的研究任務中,部分學者考慮加入學生方面的多種因素以提升對學生知識狀態水平的評估準確度,繼而提高對題目相對難度的預測精度。例如,文獻[72]假設學生間隔一段時間后的答題表現下降的原因有二:(1)學生遺忘知識點內容;(2)學生答題失誤。利用該假設,分別將學生遺忘概率和同一天的失誤概率作為參數引入到BKT 模型。文獻[39]從學生的個性化特性出發提出了三種改進的BKT 模型,分別考慮不同學生對知識點的初始掌握程度、不同學生對知識點的學習速率以及同時考慮了以上二者。文獻[75]將利用便攜式腦電圖設備檢測學生的心理狀態數據嵌入到BKT 模型中。文獻[80]則基于所收集的學生答題行為特征對BKT 模型進行了擴展改進。文獻[82]則直接加入了表征學生情感狀態的變量(如是否困惑、無聊等狀態)來擴展標準的BKT 模型。文獻[84]提出了四個改進的BKT模型:BKT+F(考慮遺忘因素)、BKT+S(考慮知識點間的相似性)、BKT+A(假設能力較強的學生有較低的失誤率和較高的猜測概率)以及BKT+FSA(前三個模型的綜合)。
標準BKT 模型將學生對知識點的掌握狀態設置為掌握和未掌握兩個狀態。文獻[86]提出學生對知識點的掌握狀態不應只是一個二值變量,繼而在標準的BKT 模型中增加了一個從未掌握到掌握的過渡狀態。而文獻[81]在學生對知識點的掌握和未掌握兩個狀態之間添加兩個中間狀態對標準BKT 模型進行擴充。文獻[88]則提出了一個多狀態BKT 模型,將描述學生對知識點的掌握狀態的變量從標準BKT 模型中的兩種狀態(即“掌握”和“未掌握”)擴展到21種狀態。
此外,還有部分學者考慮加入題目方面的多種因素來提升BKT 模型對題目相對難度的預測效果。例如,文獻[74]考慮了學生當前正在回答的題目與之前已回答的題目之間的相似性,并利用題目間的相似性來改進BKT 的預測效果。在看到標準BKT 模型缺乏對學習領域中不同知識點間層次關系的描述能力,文獻[77]提出了能夠表征和利用知識點拓撲結構關系的動態貝葉斯網絡。文獻[73]則引入題目絕對難度特征來改進標準的BKT 模型。
上述研究工作表明將學生方面的多種因素或題目方面的多種因素融合到標準BKT 模型中均可有效提升模型的預測準確率。鑒于此,有學者同時利用學生方面和題目方面的多種因素對標準BKT 模型進行擴展。例如,文獻[79]提出一個BKT改進模型Fast,允許將學生方面和題目方面的一般特征集成到該模型中。又如,文獻[83]利用教學系統中課程章節學習視頻之間的結構信息設計了兩種知識跟蹤方法:Multi-Grained-BKT 和Historical-BKT。其中,前者考慮了粗粒度知識點(例如Python 數據類型)和細粒度知識點(例如字符串、List 列表)之間的關聯結構關系,后者則設定學生猜測答對和失誤答錯的概率都取決于其上一次的答題結果,即如果上一次答題是正確的,則此次答題猜測答對的概率越大而失誤概率越小。
除了引入學生和題目方面的影響因素,還有學者或將其他理論或技術與標準BKT 模型相結合,或考慮將其他方面的特征融入到標準BKT 模型中,以提升BKT 模型對題目相對難度信息的預測性能。例如,文獻[76]將潛在因子模型和BKT 模型相結合。文獻[78]則將BKT 模型和項目反應理論模型(即IRM)進行整合。又如文獻[85]考慮不同類型的教學干預會對學生的學生狀態產生不同的影響。文獻[87]則將時差信息集成到BKT 模型中。
(1)DKT 模型及其擴展模型
BKT 模型一方面需要領域專家事先定義知識點因此引入了一定的主觀性,另一方面假設學生對知識點的掌握程度為掌握或未掌握的二元狀態過于簡化。為了彌補BKT 模型的不足,學者們開始嘗試利用近年來流行的深度學習框架設計題目相對難度的預測模型。文獻[89]首次利用深度神經網絡對學生學習過程進行建模,提出了深度知識追蹤模型(deep knowledge tracing,DKT)。
DKT 模型架構圖如圖6 所示。其以學生每一個時間步(1,2,…,)的歷史答題數據序列{,,…,x}為輸入,并利用LSTM 的隱藏狀態向量{,,…,h}表征學生不同時刻的知識狀態水平,進而預測學生在不同時刻正確回答每一道題的概率{,,…,y}(即題目對于學生的相對難度)。
圖6 DKT 模型架構Fig.6 Architecture of DKT model
由于DKT 模型無法建模學生對于各個知識點的掌握程度,且隱藏狀態向量的可解釋性差,DKT 模型的可解釋性也不強。除了考慮學生的歷史答題數據序列,DKT 模型沒有將影響題目絕對難度的學生和題目方面的因素(例如學生的學習率、遺忘因素、題目的文本和絕對難度等)引入模型。針對上述不足,學者們一方面嘗試利用項目反應理論和注意力機制等理論或技術對DKT 模型可解釋性不強的問題進行優化,另一方面通過向DKT 模型中融入學生或題目方面的影響因素對DKT 模型進行了改進。表5 對DKT 的擴展模型進行了總結和對比。下面對代表性的DKT 擴展模型進行介紹。
表5 DKT 模型的擴展模型Table 5 Extended models of DKT model
由于DKT 模型的輸入僅考慮學生的答題交互序列而忽略了其他學生方面的特征,部分研究工作考慮加入學生方面的多種特征以提升DKT 模型評估學生知識狀態水平的準確度。例如,文獻[90]利用特征工程將學生方面的豐富特征(例如學生答題次數、請求提示的次數)作為標準DKT 模型的一部分輸入,提出了一個新的深度知識追蹤模型,本文將其命名為DKT-FE(deep knowledge tracing of rich features)模型。文獻[100]則考慮導致學生遺忘行為的兩大類因素:學生距離上一次答題的時間和過去對一個題目的答題次數,通過將學生遺忘行為有關的多種特征向量化,然后將向量化后的特征拼接到RNN 模型的輸入和輸出空間。文獻[95]則考慮了不同學生的學習能力的差異性。
此外,一些研究工作考慮加入題目方面的多種特征對DKT 模型進行擴展以提升評估學生知識狀態水平的準確度。例如,文獻[101]考慮題目所包含知識點之間的相似性關系,將知識點之間的相似性關系轉化為題目關系圖,其中節點表示題目,邊表示兩道題之間存在相似性,并將題目關系圖向量化后和向量化后的答題序列一起作為模型的輸入。文獻[107]同樣考慮了題目之間的相似性,并提出一種圖拉普拉斯正則化方法作為正則化損失函數來擴充原始的損失函數,從而將題目相似度整合到了DKT 模型中。文獻[96]則將知識點之間的先決關系整合到DKT 模型中。文獻[99]利用了題目和知識點之間的關系,將其和學生答題交互序列一起作為DKT 模型的部分輸入。文獻[109]則同時將題目方面的知識點、題目語義和題目絕對難度信息和答題序列一起作為DKT 模型的輸入。
部分研究工作在利用題目方面的特征來加強知識跟蹤方法的有效性之外,還將神經網絡中的注意力機制整合到DKT 模型中以期進一步提高模型評估學生知識狀態水平的準確率。例如,文獻[94]提出了一個能夠利用題目的文本信息的深度知識追蹤框架,命名為EERNN(exercise-enhanced recurrent neural network)。EERNN 模型需要獲得完整的題目文本信息以提取題目之間的相關性,但由于知識產權和隱私保護等原因,通常很難獲取到完整的題目文本。為了應對該局限性,文獻[108]提出可以基于題目的知識點信息來提取題目之間的相似性繼而提出了一種基于注意力機制的深層知識追蹤模型。此外,還有文獻或利用異構信息網絡或基于圖卷積神經網絡來擴展DKT 模型。
為同時利用學生方面和題目方面的多種特征,文獻[91]使用分類與回歸樹(classification and regression trees,CART)對學生方面和題目方面的特征(例如答題時間、題目文本)進行特征處理。文獻[93]拓展了文獻[91]的工作,使用其他的分類樹模型進行特征處理。
此外,部分研究工作還提出將DKT 模型與BKT模型以及教育心理學領域中的理論模型(例如項目反應模型)進行整合。例如,文獻[103]綜合了貝葉斯神經網絡與DKT 模型,不僅可以對學生與題目的交互行為進行建模,還有效地防止過擬合,提高了模型的泛化能力。文獻[110]則將多維項目反應理論的參數集成到一個改進的RNN 模型中。
DKT 的擴展模型除了上述提及的考慮學生方面、題目方面或者同時考慮上述兩方面的豐富特征外,還有部分研究工作或對DKT 模型的損失函數進行優化,或利用機器學習技術對DKT 進行擴展。例如,文獻[97]利用數據可視化技術發現DKT 模型存在的兩個問題:第一是DKT 模型無法重構輸入信息(即學生在某道題上回答錯誤,與該題相關的知識點的掌握程度卻在上升);第二是DKT 模型所預測的學生對知識點的掌握程度并不是隨著時間的推移逐漸過渡變化的。因此,作者提出了DKT+模型用于解決上述問題,定義了“重構錯誤”(reconstruction error)和“波動準則”(waviness measures)作為正則化損失函數來擴充原始的DKT 模型中的損失函數。文獻[98]則將題目與知識點之間的關系看作一個二元嵌入矩陣,提出了一個用于學習該矩陣的模型,然后將學習到的嵌入矩陣應用于DKT 模型的輸入空間中,并對模型的損失函數進行了改進。DKT 的擴展模型還有很多,在此不一一贅述,感興趣的讀者可參看表5 給出的信息。
(2)DKVMN 模型及其擴展模型
DKT 模型將學生對所有知識點的掌握程度都歸納為一個隱藏狀態,導致DKT無法輸出學生對于具體知識點的掌握程度情況,因而模型的可解釋性較差。鑒于此,文獻[111]利用記憶增強神經網絡(memoryaugmented neural networks,MANN)的思想提出了動態鍵值記憶網絡(dynamic key-value memory networks,DKVMN)模型。
表6 DKVMN 模型的擴展模型Table 6 Extended models of DKVMN model
圖7 DKVMN 模型架構Fig.7 Architecture of DKVMN model
部分學者提出可以將更多能捕獲的學生方面的特征加入標準的DKVMN 模型對其進行擴展,以期提高預測準確率。例如,以DKVMN 模型的基本框架作為出發點,文獻[113]將學生申請答題提示的行為數據也作為模型輸入的一部分,并將預測學生在接下來的答題階段是否申請答題提示作為知識追蹤的子任務,從而提出了一個多任務知識追蹤模型。又如,文獻[118]將學生豐富的答題行為特征(例如學生回答某道題的嘗試次數、學生答題的響應時間)和學生答題交互序列一起作為模型的輸入。文獻[40]則考慮了影響學生知識遺忘問題的四個因素:學生重復學習知識點的間隔時間、重復學習知識點的次數、順序學習的間隔時間以及學生對知識點的掌握程度。
部分學者提出可以同時利用學生方面和題目方面的豐富特征優化DKVMN 模型。例如,文獻[117]一方面將題目絕對難度信息、學生所處的學習階段(例如預習階段、上課階段、家庭作業階段)和答題時間信息作為模型的輸入,另一方面引入題目與其涉及的知識點之間的關系權重。
此外,不少學者將DKVMN 模型與各種模型進行結合。例如,針對DKT 模型可解釋性差的問題,文獻[119]綜合具有一定可解釋性的DKVMN 模型和可解釋性較強的IRT 模型提出了一種新穎的深度知識追蹤模型Deep-IRT。Deep-IRT 模型使用DKVMN 模型對學生和題目間的交互進行建模,從而得到題目絕對難度值和學生的能力值,隨后輸入IRT 模型以估計題目相對難度。文獻[115]在DKVMN 模型和DKTDSC 模型(一種改進的DKT 模型)的基礎上提出了一個命名為DSCMN 的知識追蹤模型。該模型通過所捕捉的學生長期學習過程中的每個時間間隔內的學習能力信息來優化現有的知識追蹤方法。文獻[114]則整合了DKVMN 模型和EERNN 模型(一種改進的DKT 模型)提出了知識追蹤模型EKT。該模型使用雙向LSTM 提取題目文本的語義特征,并將該特征與學生答題交互序列組合作為模型的輸入。文獻[116]則綜合了DKT 模型的循環建模能力和DKVMN 的記憶能力,提出了新的深度知識追蹤模型。在意識到對于給定的一道題并非所有的學生答題數據都有助于預測該題的相對難度,文獻[116]因此通過在DKVMN模型中引入一個Hop-LSTM 模型,從而使得新模型能夠跳過答題序列中與目標題目不相關的題目,繼而獲得更高效、準確的模型預測性能。
(3)基于Transformers的模型
部分學者將自然語言處理領域的Transformers 模型應用在知識追蹤領域。文獻[121]首次基于Transformers模型的簡化版對學生答題交互序列進行建模,繼而提出了一種完全基于注意力機制的知識追蹤模型SAKT(self-attentive knowledge tracing)。SAKT 模型的架構圖如圖8 所示。圖中,SAKT 模型首先對輸入的學生答題歷史交互序列{,,…,x}進行嵌入編碼;然后利用位置編碼機制對序列的位置進行編碼;其后的多頭注意力機制旨在確定學生當前作答題目與其歷史作答題目之間的相關性;在經過一個前饋神經網絡后,模型的預測層使用全連接網絡來預測題目對于學生的相對難度值。
圖8 SAKT 模型架構Fig.8 Architecture of SAKT model
SAKT 模型被提出之后,文獻[122]提出分別使用不同的多頭注意力機制層對學生答題交互序列中的題目序列和答題結果序列分別進行處理,并將處理得到的結果作為另一個多頭注意力機制層的輸入,以期更好地捕獲題目和答題結果間的復雜關系。文獻[123]則改進了Transformers 模型的結構,使得改進后的模型(本文將其命名為DKTT 模型)不但能夠自動識別題目涉及的知識點,還可以處理學生答題交互序列的時間戳。表7 總結了各個基于Transformers的知識追蹤模型的優點和局限性。
表7 基于Transformers的知識追蹤模型總結Table 7 Summary of knowledge tracking models based on Transformers
(4)其他的深度學習模型
除了運用LSTM、RNN、MANN 和Transformers模型對學生的答題交互序列進行建模,部分學者還嘗試運用深度學習中的其他模型建模學生的答題交互序列。例如,文獻[124]提出了一種基于圖神經網絡的知識跟蹤模型GKT(如圖9 所示),通過將題目知識點間的關系轉換為圖,進而將題目相對難度預測任務轉化為圖神經網絡中的隨時間變化的節點分類任務。文獻[125]考慮了學生的個性化特性(如不同學生具有不同的先驗知識和學習率),并利用卷積神經網絡模型實現題目相對難度的預測,其模型框架CKT如圖10 所示。還有學者提出了基于其他深度學習框架的題目相對難度預測模型,涉及聯邦學習、可微神經計算機和推薦領域中的DeepFM模型。
圖9 GKT 模型架構Fig.9 Architecture of GKT model
圖10 CKT 模型架構Fig.10 Architecture of CKT model
(5)基于深度學習的知識追蹤模型的對比
深度知識追蹤模型是當下題目相對難度評估領域的研究熱點,因此本小節首先分析對比了當下典型的深度知識追蹤模型,包括DKT、DKVMN、SAKT、GKT和CKT,詳見表8 所示。
表8 DKT、DKVMN、SAKT、GKT 和CKT 模型對比Table 8 Comparison of DKT,DKVMN,SAKT,GKT and CKT model
為了幫助讀者加深對已有深度知識追蹤模型的理解,現對目前代碼已開源的DKT、DKVMN、GKT和CKT 模型進行實驗比較和分析。雖然提出這幾個模型的文獻都給出了各自模型基于ASSISTments2009(https://sites.google.com/site/assistmentsdata/home/assistment-2009-2010-data/skill-builder-data-2009-2010)這個公開數據集得到的實驗數據。然而,這些文獻中給出的實驗數據仍不能作為橫向比較這些模型的依據,原因如下:(1)不同文獻所使用的ASSISTments2009數據集版本可能存在差異,因為ASSISTments2009 數據集版本曾被多次更新。(2)即使所采用的ASSISTments2009 數據集的版本相同,不同文獻對數據集的預處理方法也不相同(例如提出DKVMN 模型的文獻[111]與提出GKT 模型的文獻[124]中的數據預處理方法不相同)。(3)即使數據集的預處理結果相同,部分文獻在比較現有模型時所設置的現有模型的參數并非其最優設置(例如DKVMN 模型的來源文獻[111]和CKT 模型的來源文獻[125]中雖然數據預處理后得到的數據一樣,但前者的實驗結論是DKVMN比DKT 優異,后者的實驗結論卻是DKT 比DKVMN優異,由此可推斷上述兩篇文獻并未同時使用各個模型的最優參數進行實驗)。鑒于此,本文基于能滿足所有待比較模型數據需求的ASSISTments2009 數據集,統一使用文獻[131]給出的數據集預處理方法,并在模型參數設置方面遵循提出各個模型的文獻中推薦的參數設置,橫向比較了DKT、DKVMN、GKT和CKT 這四種深度知識追蹤模型完成題目相對難度評估任務的AUC 值(area under curve,AUC)和模型的訓練時間。實驗中將模型訓練階段的參數epoch 和batch_size 分別設置為100 和32。實驗所用的硬件環境為8核CPU,64 GB內存,1.5 TB硬盤;軟件環境為64位Ubuntu 20.04 操作系統,模型實現語言為Python 3。此外,ASSISTments2009 數據集預處理后所得到的數據集的基本情況如下:學生數量為3 841,知識點數量為123,學生答題記錄數目為283 103。
表9 給出了ASSISTments2009 數據集上各個模型的AUC 值和模型的訓練時間。觀察表9 可得到如下結論:
(1)DKVMN 模型和CKT 模型的題目相對難度評估準確性優于DKT 模型。作為首個被提出的深度知識追蹤模型,DKT 模型用一個維度固定的隱藏向量表示學生對任意多個知識點的掌握程度,因此隱藏向量的表達能力受限,導致DKT 模型的評估準確性低于DKVMN 模型和CKT 模型。與DKT 模型不同,DKVMN 模型為每個潛在知識點單獨定義了一個狀態向量,獲得了較大的外部存儲能力,不但增強了模型的可解釋性,還有效提高了模型的評估準確性。表9 還展示出CKT 模型略優于DKVMN 模型,得益于其在建模時考慮了學生個性化的先驗知識和學習率。此外,基于CNN 構建的CKT 模型在實驗中取得了最優的評估性能也說明了CNN 模型適用于對知識追蹤問題進行建模。
表9 重要深度知識追蹤模型實驗對比Table 9 Experimental comparison of important deep knowledge tracking models
(2)ASSISTments2009 數據集上GKT 模型的題目相對難度評估準確性最低。這是因為GKT 模型的預測精度受學生歷史答題交互序列長度的影響:序列長度較長時(GKT 模型原文實驗使用的數據集的序列長度限制為不小于10),其模型預測性能優于DKVMN 模型;而當序列長度較短時(本文實驗使用的數據集的序列長度限制只為不小于3),其模型預測性能則顯著低于DKVMN 模型??梢?,GKT 模型對學生歷史答題交互序列較長的數據集更為友好,更能發揮其優越性。
(3)CKT 模型的模型訓練時間最短,GKT 模型的訓練時間最長。這是因為CKT 模型使用CNN 模型對學生答題交互序列進行建模,所以與其他模型相比需要最少的模型訓練時間。GKT 模型由于引入了圖結構,在追蹤學生的知識狀態變化時,需要執行基于圖結構的推演計算,導致其模型的訓練時間顯著高于其他模型。
近十年提出的題目相對難度預測方法主要利用動態認知診斷中貝葉斯網絡方法和基于深度學習方法構建,但仍有學者提出了其他的解決思路。例如,為了對學習過程的動態因素進行建模,文獻[130]引入時間維度,將二維空間的矩陣分解擴展至三維空間的張量分解從而更好地實現對題目相對難度信息的預測。為了考慮時間因素,文獻[66]將學生的答題得分記錄表示為學生得分張量,并將記憶和遺忘曲線綜合到概率矩陣分解模型中提出了KPT(knowledge proficiency tracing)模型。為了解決某些學生答題數據較稀疏的問題,文獻[132]在KPT 模型的基礎上考慮了題目之間的關系并提出了EKPT(exercisecorrelated knowledge proficiency tracing)模型。文獻[133]則利用回歸模型對題目相對難度進行預測,并利用因子分解機解決特征組合問題,提出了知識追蹤模型(knowledge tracing machines,KTM)。KTM模型并不考慮學生答題過程中的時間因素,屬于靜態認知診斷模型。為此,文獻[15]在KTM 模型的基礎上考慮了學生隨著時間變化的學習率、遺忘等因素提出了一個動態的知識追蹤模型。
本節將收集到的近十年的題目相對難度預測相關文獻進行整理分析后分為兩類:一類是靜態認知診斷(論文占比約7%);另一類是動態認知診斷(論文占比約93%)??梢?,動態認知診斷相關的論文更為豐富,可被進一步分為基于貝葉斯網絡方法(論文占比約26%)、基于深度學習方法(論文占比約68%)和其他方法的動態認知診斷(論文占比約6%)。由統計的數據可知基于深度學習的方法是目前題目相對難度預測的主流方法。
本章對題目難度預測相關的數據集、題目難度預測模型常用的評價指標、訓練模型所用的題目真實難度標簽來源以及深度題目難度預測模型中典型的信息提取方法進行介紹和總結。
題目的絕對難度通常是以題目本身的屬性為出發點實現評估量化的。不同學科的題目在題型和內容上均有所區別,導致對不同學科的題目所提取的特征存在較大差異。鑒于此,題目絕對難度評估方面的研究工作一般都是針對特定學科的特定題型進行討論的。因此是否擁有相應學科和題型的數據集以及所擁有的數據集是否具備一定規模決定了研究是否能順利進行以及某些模型方法是否能夠得以運用。目前,題目絕對難度評估研究領域的相關文獻所使用的較大規模的題目數據集大都來自大型公司,往往是不開源的。例如文獻[58]所用的英語閱讀理解題數據集和文獻[12]所用的數學題數據集均來自科大訊飛股份有限公司;文獻[2]所用的兩個數據集(分別對應帶圖片的數學選擇題和醫學選擇題)來自視源(CVTE)旗下的希沃(Seewo)公司和??漆t療(Xicco)公司;文獻[22]所用的醫學題數據集則由騰訊醫療AI 實驗室提供。若無法獲得公司提供的數據集,學者們則通過自主開發的教學服務平臺/系統收集數據或者在課堂上手動收集數據,但是這些方式所收集到的數據集的規模有限。因此,如何獲取到高質量、大規模、包含題目數據以及學生答題數據的數據集從而支撐題目絕對難度評估方面的研究仍是一個需要解決的難題。
對于題目的相對難度評估方法而言,認知診斷和知識追蹤都是近年來熱門的題目相對難度預測方法。標準的認知診斷和知識追蹤模型的輸入較為簡單,即學生的答題交互序列數據,因此對特定的學科和題型不具依賴性。另外某些學者提出利用題目文本信息特征擴展標準的模型以提高預測的準確率,使得其所需要的數據集具有一定的特殊性。
表10 總結了目前開源的、被用于支撐題目相對難度評估研究工作的學生交互序列數據集。
表10 學生交互序列公開數據集Table 10 Public datasets of student interaction sequences
根據模型預測結果的不同,題目絕對難度預測模型分為分類模型和回歸模型兩種。如果模型預測得到的是題目難度的類別(例如可分為簡單、中等和困難三類),則該模型為分類問題。反之,如果題目絕對難度預測模型得到的是一個題目難度的預測值,那么該模型為回歸模型。對于題目絕對難度預測的分類模型,其常用的評價指標為準確率(accuracy,ACC),表示模型預測的分類是正確分類的情況占總樣本數的百分比,如式(1)所示。題目絕對難度預測的回歸模型常用的評價指標有均方根誤差(root mean square error,RMSE)和平均絕對誤差(mean absolute error,MAE),兩者都用于表示模型預測的題目絕對難度值和真實題目難度值之間的差距,具體計算公式分別如式(2)和式(3)所示。
其中,表示題目總數,表示模型預測正確的題目數量,該評價指標值越高越好。
對于題目相對難度的預測模型,也常從回歸或者分類的角度對模型的效用進行評估。常用的分類評價指標包括AUC(如式(4)所示)和ACC,常用的回歸評價指標則為RMSE 和MAE。
AUC 表示模型預測的正例排在負例前面的概率,其中為正例的數量,為負例的數量。
題目真實難度作為題目難度預測模型的訓練標簽,對于訓練題目難度預測模型具有重要作用。經統計,如表11 所示,根據題目真實難度標簽來源的不同可將題目絕對難度預測模型中的真實難度標簽分為兩大類:專家評估法和基于學生答題數據統計法。前者需要邀請領域專家(如任課教師、課程助教等)對題目的絕對難度進行評估并給出評估結果。后者以一定規模的學生答題數據為輸入并利用統計學公式計算得到題目的真實難度。常用的統計學公式為題目通過率計算公式和項目反應理論涉及的公式。而題目相對難度預測模型則使用學生在題目上的真實答題結果作為訓練標簽。
表11 題目真實難度標簽的來源Table 11 Sources of true difficulty lables of questions
為了讓讀者更加了解題目難度預測的研究思路,現對基于深度學習的題目難度預測模型中典型的信息提取方法進行分析和總結。
題目絕對難度方面,由于題目絕對難度主要基于題目本身的特性得到,近年來,學者們開始利用神經網絡模型從題目文本中獲取題目絕對難度,該種方法首先利用詞向量模型(如word2vec、BERT)對題目文本進行向量化,隨后輸入神經網絡中提取語義信息、邏輯信息等。例如,文獻[12]和文獻[58]均利用word2vec 技術將題目文本向量化,隨后利用神經網絡(如CNN、LSTM)提取文本中的語義信息或者邏輯信息。使用神經網絡對題目中的信息進行提取,無需手動定義特征和特征提取,但需要大量的題目文本數據和訓練標簽,因此,該信息提取方法只適用于數據量較大的數據集。
題目相對難度方面,除了利用學生的答題交互序列,部分文獻還將題目方面(如題目文本、題目和知識點之間的關系)和學生方面(如學生答題的嘗試次數、學生答題的時間間隔)的豐富信息也作為輸入。題目方面的信息提取方法主要可以分為兩大類:第一類是專家標注,例如,文獻[99]中專家手動標注矩陣,從而得到題目和知識點之間的包含關系,文獻[96]中專家手動標注矩陣、知識點間先決依賴關系的矩陣,文獻[117]中需要專家手動標注題目絕對難度標簽。專家標注得到的題目信息準確率較高,但該方法是勞動密集性的,耗時耗力,只適用于學生答題交互序列涉及的題目數據量較少的場景。另一類則利用機器學習的方法對題目方面的信息進行提取。例如,文獻[94]設計了一個雙向的LSTM 模型,從而可以從題目文本中學習每個題目的語義表示,文獻[104]利用異構信息網絡對題目和其屬性之間的復雜信息進行提取,文獻[105]利用圖卷積神經網絡捕捉題目和知識點之間的高級關系。該類型的信息提取方法能自動提取題目方面信息,無需具備專業知識的人進行標注,可適用于具有大量數據的智能教育線上場景,該類方法除了需要大量的數據集以外,不同的神經網絡方法存在差異,例如文獻[104]中使用異構信息網絡提取題目和題目屬性之間的關系,而異構信息網絡需要依賴適當的元路徑,而元路徑的定義需要領域知識且具有一定的主觀性。文獻[94]需要數據集中包含較為完整的題目文本,而開源的學生交互數據集中鮮少有數據集會提供完整的題目文本。而學生方面的典型信息提取方式可分為兩大類:第一類依賴于系統的設計,且占據了學生方面相關的大部分信息(如學生答題的時間間隔、學生獲取答題提示),利用系統獲得的學生信息準確直觀且經過簡單處理后可直接作為題目相對難度預測模型的一部分輸入,但該類型的信息獲取需要專業人員提前進行定義,且依賴于開發人員提前對智能教學系統進行設計,當系統不具備提取特定信息的功能時,無法獲得該類型的學生信息。第二類學生方面的信息無法通過系統直接得到,需要綜合系統收集的多種學生信息。例如文獻[40]中學生的遺忘行為需要綜合系統收集到的多個學生方面的信息(包括學生距離上次學習相同知識點的時間間隔、距離上次學習的時間間隔、重復學習知識點的次數和學生原本對于該知識點的掌握程度)。文獻[100]合并與遺忘相關的多種類型的學生信息來考慮遺忘。
題目難度評估是教育領域需要解決的重要問題,近年來學者們提出了不少題目難度評估的新方法。本文將題目難度評估分為題目絕對難度評估和題目相對難度評估兩部分,并分別進行分析總結。
(1)題目絕對難度評估方面。題目絕對難度評估的主要依據是題目自身的特性。不同學科下的題目特性存在差異,導致大部分題目絕對難度的評估方法的泛化能力有限,甚至只能解決面向特定學科和特定題型的難度評估問題。此外,大部分工作的研究對象集中為題目文本信息較為豐富或者答案唯一的題目,從而便于問題的建模和求解。數據集方面,大部分用于評估題目絕對難度評估模型的數據集是自主收集的且規模不大。由于缺少公開的大規模數據集,近十年發表的基于機器學習的題目絕對難度預測工作大部分是基于傳統機器學習方法設計的。近年來一些學者和大公司合作,在大公司提供的較大規模的數據集上利用深度學習框架成功提升了題目絕對難度的預測精度。
(2)題目相對難度評估方面。認知診斷和知識追蹤都是近年來學者們用于解決題目相對難度評估的熱點方法。尤其是基于深度學習框架設計的知識追蹤模型更是成為了題目相對難度評估的主流策略,代表性模型包括DKT 模型、DKVMN 模型和基于Transformers 的知識追蹤模型等。標準的DKT 模型和DKVMN 模型的輸入較為簡單,因此不少學者利用學生方面和題目方面的豐富特征來增強這些模型的輸入,從而有效提升了模型預測的準確率。此外,部分學者還嘗試利用神經網絡中的注意力機制和教育心理學的相關理論來解決深度知識追蹤模型的模型可解釋性不強的問題。支撐題目相對難度研究的公開數據集資源較為豐富,部分公開數據集的數據規模也比較大,為基于深度學習框架的題目相對難度預測模型的設計和評估提供了保障。
雖然題目難度評估研究領域近年來有不少研究工作在國內外高水平的會議或期刊上發表,但該研究領域仍存在以下問題亟待解決。
(1)缺乏支撐題目絕對難度評估研究的公開數據集(尤其是大規模數據集)。由于直接發布題目信息(例如題目題干和選項)可能會增加試題泄露的風險,目前鮮有支撐題目絕對難度評估的公開數據集(尤其是大規模的公開數據集)。因此亟待研究題目數據的安全開源方法,從而更好地支撐基于深度學習框架的題目難度預測模型的設計與評估。
(2)題目中提取的信息不夠豐富。目前大部分題目絕對難度的評估方法僅針對題目的文本進行語義提取或邏輯提取,而這些題目信息提取策略并不適用于那些文本信息較少的題目,例如編程題和開放式簡答題等。因此,除上述提及的題目信息提取角度之外,如何從更多的題目信息提取角度出發,設計面向文本信息較少的題目的信息提取方法也是需要解決的問題。例如英語學科的語法填空題,該類型的題目更側重于語法結構,因此可考慮提取句子中的語法結構信息。此外,對于具有大量代碼的編程題,可考慮從該類型題目的答案(即代碼)中提取信息,如將代碼轉換為抽象語法樹,利用卷積神經網絡等提取樹中提取代碼的邏輯結構信息。
(3)需要應用其他深度學習框架進一步提升題目難度評估的準確性。不論是在題目絕對難度評估領域還是題目相對難度評估研究領域,近年研究已表明基于深度學習框架的模型方法能夠進一步提升傳統機器學習模型的準確性。因此,如何運用更多的深度學習框架(例如生成對抗網絡、多任務學習網絡等)來改進教育領域的題目難度評估問題也是亟待研究的重要問題。
(4)沒有充分利用知識點間的先決依賴關系來提升題目難度評估的準確性。大量研究工作表明,增加題目難度評估模型的輸入信息種類能進一步提高現有模型的評估準確性。鑒于題目考查的知識點之間往往存在著先決依賴關系,而現有的題目難度評估模型大都忽略了該信息。例如,數據庫的三個知識點“第一范式”、“第二范式”和“第三范式”之間存在先決依賴關系,掌握前面兩個知識點是掌握第三個知識點的先決條件。那么易知,在題目絕對難度方面,涉及知識點“第三范式”的題目的絕對難度大于涉及知識點“第二范式”和“第一范式”的題目,而該信息可用于求精題目絕對難度的評估結果。在題目相對難度方面,如果某個學生在知識點“第三范式”的相關題目上表現良好,卻在知識點“第一范式”或者“第二范式”的相關題目上表現較差,則意味該學生很可能是猜對了“第三范式”的相關題目,即該題相對于該學生的相對難度評估值應該進行修正。因此,如何利用知識點之間存在的先決依賴信息從而進一步提升現有題目難度評估模型的準確性是需要研究的重要問題。
(5)部分題目相對難度評估模型缺乏教育層面的可解釋性。部分新提出的題目相對難度評估模型(例如基于深度學習框架的知識追蹤模型)雖然有效提高了題目難度預測的準確性,卻存在模型在教育層面可解釋性不強的問題。因此可以考慮將題目相對難度評估模型的設計和各種教育心理學理論(例如自我決定理論和Bloom 教學理論)相結合,從而讓題目相對難度評估過程更符合教育過程的自然規律和學生心理發展規律,進一步提高現有模型的可解釋性。
(6)缺乏基于教學反饋的題目難度評估方法改進策略的研究。題目難度評估往往僅是解決教學領域具體問題(例如個性化題目推薦問題和考試組卷問題)的前置條件。因而,如何充分利用題目難度評估方法所量化的題目難度信息來改進教學過程并基于教學過程的反饋信息來針對性地進一步改進現有題目難度評估方法也是值得實踐和研究的問題。