馮旭光 張峰
關(guān)鍵詞:習(xí)題路徑推薦;個(gè)性化;全局最優(yōu)路徑;局部迭代路徑;推薦算法
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A
1引言(Introduction)
在線題庫和在線判題系統(tǒng)[如“力扣”(leetcode),為全球程序員提供IT技術(shù)職業(yè)化提升的平臺(tái)]因?qū)W習(xí)資源多且用戶基數(shù)大,采用人工方式無法為每位平臺(tái)的學(xué)習(xí)者提供個(gè)性化指導(dǎo)。個(gè)性化習(xí)題路徑推薦旨在根據(jù)學(xué)習(xí)者的學(xué)習(xí)能力、知識(shí)背景等個(gè)性化特征,自動(dòng)從題庫中選取適合該學(xué)習(xí)者的習(xí)題,并以合理的順序推薦習(xí)題。本文對(duì)近年來開展的個(gè)性化習(xí)題路徑研究工作進(jìn)行了梳理,首先按照推薦形式的不同,將現(xiàn)有工作分為全局最優(yōu)路徑推薦和局部迭代路徑推薦兩種類型,并對(duì)其實(shí)現(xiàn)方法和優(yōu)點(diǎn)、缺點(diǎn)進(jìn)行了介紹;然后對(duì)常用的五種個(gè)性化習(xí)題路徑推薦工作中常用的五種核心算法及使用這些算法的代表性工作進(jìn)行了總結(jié)和歸納;最后從個(gè)性化特征的挖掘和習(xí)題路徑的合理性兩個(gè)角度闡述了當(dāng)前該領(lǐng)域研究工作的難點(diǎn)及展望了未來的研究方向。
2個(gè)性化習(xí)題路徑推薦類型(Types of personalizedexercise path recommendation methods)
個(gè)性化習(xí)題路徑推薦的主要任務(wù)是根據(jù)學(xué)習(xí)者的知識(shí)水平、學(xué)習(xí)風(fēng)格、學(xué)習(xí)習(xí)慣等個(gè)性化特征,從在線題庫中選擇適合學(xué)習(xí)者的題目,并按照習(xí)題特點(diǎn)和學(xué)習(xí)者的學(xué)習(xí)偏好對(duì)推薦的習(xí)題進(jìn)行排序,最終以習(xí)題序列的形式推薦給學(xué)習(xí)者,個(gè)性化習(xí)題路徑推薦流程如圖1所示。
不同的個(gè)性化習(xí)題路徑推薦工作的實(shí)現(xiàn)方法和推薦目標(biāo)各不相同。本文梳理了以往的個(gè)性化習(xí)題路徑推薦研究工作,借鑒云岳等[1]對(duì)個(gè)性化學(xué)習(xí)路徑推薦的研究思路,將現(xiàn)有的推薦方法按推薦形式分為注重完整推薦內(nèi)容的全局最優(yōu)路徑推薦和注重學(xué)習(xí)者學(xué)習(xí)過程的局部迭代路徑推薦兩種類型。本節(jié)將分別介紹兩類推薦方法及其優(yōu)點(diǎn)和缺點(diǎn)。
2.1 全局最優(yōu)路徑推薦
全局最優(yōu)路徑推薦工作是從推薦內(nèi)容的完整性出發(fā),在一次推薦中為學(xué)習(xí)者呈現(xiàn)能夠滿足其學(xué)習(xí)目標(biāo)的完整習(xí)題路徑,如圖2所示。該類方法能夠?yàn)閷W(xué)習(xí)者展示整個(gè)練習(xí)流程,方便學(xué)習(xí)者對(duì)將要練習(xí)的題目建立完整的認(rèn)識(shí)和清晰的規(guī)劃。此外,全局最優(yōu)路徑推薦中,每個(gè)推薦任務(wù)僅需運(yùn)算一次,具有推薦速度快、運(yùn)行效率高的特點(diǎn)。
在全局最優(yōu)路徑推薦工作中,XIA等[2]首先將學(xué)習(xí)者答題結(jié)果劃分為六種類型,用于計(jì)算習(xí)題難度。然后將學(xué)習(xí)者已經(jīng)完成的習(xí)題作為當(dāng)前狀態(tài),通過馬爾可夫模型計(jì)算出的轉(zhuǎn)移矩陣,得到后續(xù)每個(gè)習(xí)題的出現(xiàn)概率。最后根據(jù)轉(zhuǎn)移矩陣、習(xí)題難度和學(xué)習(xí)者需求,為學(xué)習(xí)者推薦流行路徑、挑戰(zhàn)路徑和漸進(jìn)路徑。SEGAL等[3]提出了個(gè)性化習(xí)題難度排序算法(EduRank),用來為學(xué)習(xí)者生成個(gè)性化習(xí)題難度遞增序列。本研究根據(jù)相似學(xué)習(xí)者的已知難度排名,通過協(xié)同過濾投票機(jī)制,在不通過預(yù)測成績的情況下,直接為不同的學(xué)習(xí)者生成個(gè)性化的習(xí)題難度排序。XIA等[4]將習(xí)題路徑的練習(xí)范圍能夠覆蓋到所有指定的知識(shí)點(diǎn)作為推薦目標(biāo)。本文首先定義了知識(shí)概念圖,用于表示知識(shí)點(diǎn)之間的關(guān)系;然后根據(jù)知識(shí)概念圖篩選出與目標(biāo)知識(shí)點(diǎn)相關(guān)的所有題目;最后考慮習(xí)題難度,為學(xué)習(xí)者推薦符合知識(shí)點(diǎn)學(xué)習(xí)順序且難度適宜的習(xí)題路徑。
全局最優(yōu)路徑推薦方法能夠?yàn)閷W(xué)習(xí)者提供完整習(xí)題路徑,但忽略了學(xué)習(xí)者在題目練習(xí)過程中知識(shí)水平等個(gè)性化特征的變化,導(dǎo)致路徑的后段推薦精度降低。
2.2 局部迭代路徑推薦
局部迭代路徑推薦方法考慮到學(xué)習(xí)者在學(xué)習(xí)過程中個(gè)性化特征的變化,在一個(gè)推薦任務(wù)當(dāng)中,每次向?qū)W習(xí)者推薦部分習(xí)題,并收集學(xué)習(xí)者的練習(xí)得分、知識(shí)水平變化等信息,然后根據(jù)這些信息推薦后續(xù)習(xí)題,如此反復(fù)迭代,直到完成學(xué)習(xí)目標(biāo),如圖3所示。局部迭代路徑推薦以更細(xì)的粒度為學(xué)習(xí)者規(guī)劃習(xí)題路徑。通過追蹤學(xué)習(xí)者個(gè)性化特征的變化情況,局部迭代路徑推薦能夠?qū)崿F(xiàn)更高的推薦精度。
針對(duì)局部迭代路徑推薦方法,SAI TO等[ 5 ]將學(xué)習(xí)者的當(dāng)前能力和目標(biāo)能力用圖表進(jìn)行統(tǒng)計(jì),并根據(jù)歷史學(xué)習(xí)者答題記錄使用長短期記憶神經(jīng)網(wǎng)絡(luò)模型(Long Short-TermMemory,LSTM)推薦下一道適合學(xué)習(xí)者的習(xí)題。YERA等[6]使用協(xié)同過濾的方法,為學(xué)習(xí)者推薦下一道習(xí)題。本研究根據(jù)題庫中每道習(xí)題的回答狀態(tài),將每位歷史學(xué)習(xí)者的學(xué)習(xí)記錄建模為學(xué)習(xí)者矩陣,對(duì)于每道沒有被當(dāng)前學(xué)習(xí)者解決的習(xí)題,根據(jù)前k 個(gè)相似的用戶計(jì)算出推薦分?jǐn)?shù),并在每次推薦中推薦得分最高的習(xí)題。DIAO等[7]首先根據(jù)知識(shí)點(diǎn)的先決、包含和平行關(guān)系構(gòu)造知識(shí)樹;然后將學(xué)習(xí)目標(biāo)表示為知識(shí)點(diǎn)集合,根據(jù)知識(shí)樹表示的知識(shí)點(diǎn)之間的關(guān)系以及知識(shí)點(diǎn)掌握程度,為學(xué)習(xí)者逐步推薦未完全掌握知識(shí)點(diǎn)的相關(guān)習(xí)題。當(dāng)學(xué)習(xí)者完成這些習(xí)題,則開始判斷學(xué)習(xí)者對(duì)知識(shí)點(diǎn)是否掌握,如果掌握,就推薦下一個(gè)知識(shí)點(diǎn)的習(xí)題,否則繼續(xù)推薦與該知識(shí)點(diǎn)相關(guān)的習(xí)題,直到學(xué)習(xí)者掌握最終目標(biāo)知識(shí)點(diǎn)。
局部迭代路徑推薦方法考慮了學(xué)習(xí)者在練習(xí)過程中個(gè)性化特征發(fā)生的變化,但是由于習(xí)題路徑在學(xué)習(xí)過程中不斷生成,導(dǎo)致學(xué)習(xí)者難以把握學(xué)習(xí)任務(wù)的整體內(nèi)容,也很難做到對(duì)學(xué)習(xí)進(jìn)度的控制。此外,由于需要在一個(gè)任務(wù)中進(jìn)行多次計(jì)算和推薦,所以增大了推薦系統(tǒng)的運(yùn)行壓力。
3個(gè)性化習(xí)題路徑推薦所使用的核心算法(Themain algorithm used for personalized exercisepath recommendation)
推薦算法是一個(gè)推薦系統(tǒng)的核心,不同的推薦算法適用于不同的推薦目標(biāo)和推薦場景。本節(jié)將介紹個(gè)性化習(xí)題路徑推薦工作使用最多的五類核心算法,即協(xié)同過濾、認(rèn)知診斷、知識(shí)追蹤、深度學(xué)習(xí)和強(qiáng)化學(xué)習(xí),并對(duì)使用各類算法的主要工作進(jìn)行梳理和總結(jié)。
3.1基于協(xié)同過濾的方法
協(xié)同過濾根據(jù)其他用戶的偏好向目標(biāo)用戶推薦,它首先找出一組與目標(biāo)用戶偏好一致的鄰居用戶,然后分析該鄰居用戶,把鄰居用戶喜歡的項(xiàng)目推薦給目標(biāo)用戶[8]。在基于協(xié)同過濾的習(xí)題路徑推薦工作中,LABAJ等[9]發(fā)現(xiàn)當(dāng)學(xué)習(xí)者在沒有推薦的情況下自由選擇習(xí)題時(shí),會(huì)選擇目前對(duì)他們來說比較容易和比較難的習(xí)題。為解決這個(gè)問題,本研究提出了一種基于相似學(xué)習(xí)者的難度反饋,為目標(biāo)學(xué)習(xí)者推薦適當(dāng)難度習(xí)題的推薦方法。TOLEDO等[10]將模糊技術(shù)應(yīng)用于與協(xié)同過濾方法結(jié)合,根據(jù)其他用戶的歷史答題信息為當(dāng)前用戶推薦習(xí)題路徑。本研究還提出了一種數(shù)據(jù)預(yù)處理方法,用于去除歷史信息中可能影響推薦的異常行為,進(jìn)一步提高推薦精度。
3.2基于認(rèn)知診斷的方法
認(rèn)知診斷的目標(biāo)是通過一批學(xué)習(xí)者在一批題目上的作答情況,分析每一位學(xué)習(xí)者對(duì)知識(shí)點(diǎn)的掌握程度。
在基于認(rèn)知診斷的研究工作中,朱天宇等[11]首先使用認(rèn)知診斷模型對(duì)學(xué)習(xí)者對(duì)知識(shí)點(diǎn)的掌握程度進(jìn)行建模,然后結(jié)合概率矩陣分解方法預(yù)測學(xué)習(xí)者正確回答習(xí)題的概率pi,最后根據(jù)實(shí)際需求,設(shè)置推薦習(xí)題的難度范圍,即[β1,β2],并通過pi計(jì)算該習(xí)題對(duì)學(xué)習(xí)者的相對(duì)難度,篩選相對(duì)難度在推薦難度范圍內(nèi)的試題,從而向每一位學(xué)習(xí)者進(jìn)行個(gè)性化習(xí)題序列推薦。LI等[12]根據(jù)學(xué)習(xí)者選擇的知識(shí)點(diǎn)目標(biāo)和期望的分?jǐn)?shù)范圍,為學(xué)習(xí)者推薦與知識(shí)點(diǎn)目標(biāo)高度契合的習(xí)題。首先,通過認(rèn)知診斷判斷學(xué)習(xí)者對(duì)知識(shí)的掌握程度,并為每一位學(xué)習(xí)者對(duì)每個(gè)知識(shí)點(diǎn)的掌握程度標(biāo)定等級(jí)。然后,通過歷史學(xué)習(xí)者的做題情況統(tǒng)計(jì)每道練習(xí)對(duì)它所包含的每個(gè)知識(shí)點(diǎn)的掌握程度的要求,并據(jù)此向?qū)W習(xí)者推薦習(xí)題。
3.3基于知識(shí)追蹤的方法
知識(shí)追蹤(Knowledge Tracing,KT)旨在建立學(xué)習(xí)者知識(shí)狀態(tài)隨時(shí)間變化的模型,以判斷學(xué)習(xí)者對(duì)知識(shí)的掌握程度。知識(shí)追蹤和認(rèn)知診斷一樣,其目的都是為了獲得學(xué)習(xí)者對(duì)知識(shí)點(diǎn)的掌握度;它們區(qū)別在于認(rèn)知診斷需要一批學(xué)習(xí)者的一批答題記錄,知識(shí)追蹤則只需要一個(gè)學(xué)習(xí)者對(duì)應(yīng)的答題序列,并動(dòng)態(tài)更新學(xué)習(xí)者的實(shí)時(shí)知識(shí)點(diǎn)掌握度[13]。
在基于知識(shí)追蹤的工作當(dāng)中,WU等[ 1 4 ]從知識(shí)點(diǎn)覆蓋度、知識(shí)點(diǎn)掌握程度、習(xí)題多樣性三個(gè)角度為學(xué)習(xí)者規(guī)劃習(xí)題路徑。首先,本研究使用向量表示每道題目的知識(shí)點(diǎn)覆蓋情況。然后,基于RNN神經(jīng)網(wǎng)絡(luò),根據(jù)學(xué)習(xí)者從開始學(xué)習(xí)到現(xiàn)在所完成的練習(xí),預(yù)測下一次出現(xiàn)的練習(xí)應(yīng)該包括哪些知識(shí)點(diǎn),并使用深度知識(shí)追蹤(Deep Knowledge Tracing,DKT)預(yù)測學(xué)習(xí)者對(duì)這些知識(shí)點(diǎn)掌握程度。最后,通過學(xué)習(xí)者對(duì)不同知識(shí)點(diǎn)的掌握程度,為學(xué)習(xí)者推薦練習(xí)范圍能夠覆蓋到掌握程度不足的所有知識(shí)點(diǎn),且習(xí)題具有適當(dāng)難度的習(xí)題路徑。為保證推薦的習(xí)題路徑具有新穎性和多樣性,本研究還加入了兩個(gè)過濾層用來過濾重復(fù)和相似的習(xí)題。DAVID等[15]考慮到單一的知識(shí)追蹤模型并不適合所有的學(xué)習(xí)場景,于是設(shè)計(jì)了一種多模型選擇算法,根據(jù)被推薦者過去的做題情況,從訓(xùn)練好的多個(gè)模型中選擇最優(yōu)模型,然后根據(jù)這個(gè)模型預(yù)測的知識(shí)點(diǎn)掌握程度和分?jǐn)?shù),為每一道待推薦的習(xí)題進(jìn)行打分,每次向?qū)W習(xí)者推薦得分最高的習(xí)題。
3.4 基于深度學(xué)習(xí)的方法
近年來,深度學(xué)習(xí)被廣泛應(yīng)用于教育推薦領(lǐng)域。各類深度學(xué)習(xí)算法的訓(xùn)練本質(zhì)上都是對(duì)自然界復(fù)雜映射關(guān)系進(jìn)行抽象與擬合,而學(xué)習(xí)者與習(xí)題路徑之間正對(duì)應(yīng)一種復(fù)雜的映射關(guān)系,其中的規(guī)律從理論上可由深度神經(jīng)網(wǎng)絡(luò)進(jìn)行表示和學(xué)習(xí)。
在基于深度學(xué)習(xí)方法的研究工作中,WANG等[16]首先使用深度學(xué)習(xí)訓(xùn)練和生成學(xué)習(xí)者和練習(xí)習(xí)題的初始特征表示,然后使用因果推理干預(yù)算法對(duì)這些特征進(jìn)行微調(diào),最后再次使用深度學(xué)習(xí)預(yù)測學(xué)習(xí)者做習(xí)題的得分情況,并從中挑選難度適宜的習(xí)題推薦給相應(yīng)的學(xué)習(xí)者。FANTOZZI等[17]基于自動(dòng)編碼神經(jīng)網(wǎng)絡(luò)(Auto-encoder Neural Network,ANN)構(gòu)造了一種推薦方法,能夠逐步為學(xué)習(xí)者推薦難度遞增的習(xí)題序列。HUO等[18]認(rèn)為目前的知識(shí)追蹤方法不足以對(duì)學(xué)習(xí)者的知識(shí)狀態(tài)進(jìn)行個(gè)性化建模,并提出了一種個(gè)性化的建模方法,通過LSTM網(wǎng)絡(luò)為每一位學(xué)習(xí)者估計(jì)和維護(hù)一個(gè)獨(dú)立的知識(shí)狀態(tài)向量,并由此構(gòu)造了一種新的個(gè)性化習(xí)題推薦模型,其具有個(gè)性化機(jī)制的長短期記憶神經(jīng)網(wǎng)絡(luò)模型(LSTMCQP)。實(shí)驗(yàn)證明,該模型推薦不同練習(xí)的能力優(yōu)于現(xiàn)有方法。
3.5基于強(qiáng)化學(xué)習(xí)的方法
強(qiáng)化學(xué)習(xí)(Reinforcement Learning,RL)是一個(gè)用于目標(biāo)導(dǎo)向?qū)W習(xí)和順序決策建模和自動(dòng)化的計(jì)算框架。RL特別適用于涉及代理人需要學(xué)習(xí)在不同情況下做什么的策略——即如何將狀態(tài)映射到行動(dòng)上,以使長期利益最大化的設(shè)置。
在基于強(qiáng)化學(xué)習(xí)方法的研究工作中,HUANG等[19]將學(xué)習(xí)者的做題過程抽象成一個(gè)馬爾科夫過程,并使用深度強(qiáng)化學(xué)習(xí)推薦下一步的最優(yōu)習(xí)題。在該過程中,作者設(shè)計(jì)了三個(gè)獎(jiǎng)勵(lì)函數(shù)用于同時(shí)優(yōu)化三個(gè)推薦目標(biāo)。CAI等[20]將學(xué)習(xí)者的習(xí)題練習(xí)過程表示為馬爾可夫決策過程,并使用深度知識(shí)追蹤技術(shù)從學(xué)習(xí)者練習(xí)習(xí)題的過程中動(dòng)態(tài)檢索學(xué)習(xí)者的知識(shí)水平,并將其作為學(xué)習(xí)狀態(tài),在此基礎(chǔ)上使用強(qiáng)化學(xué)習(xí)技術(shù)為學(xué)習(xí)者推薦最優(yōu)的習(xí)題。
4研究難點(diǎn)與未來發(fā)展方向(Research difficultiesand future development direction)
根據(jù)對(duì)個(gè)性化習(xí)題路徑推薦領(lǐng)域的分析和研究,其研究難點(diǎn)及未來的發(fā)展方向主要體現(xiàn)在以下兩個(gè)方面。
(1)個(gè)性化特征的挖掘。在個(gè)性化習(xí)題路徑推薦方法中,一個(gè)關(guān)鍵步驟是根據(jù)學(xué)習(xí)者的個(gè)性化特征對(duì)其進(jìn)行建模。然而,不同學(xué)習(xí)者進(jìn)行習(xí)題練習(xí)的場景和目的各不相同,如何根據(jù)不同的推薦場景和學(xué)習(xí)目標(biāo)挖掘具有代表性的個(gè)性化特征,成為能否成功推薦個(gè)性化習(xí)題路徑的關(guān)鍵,這也是個(gè)性化習(xí)題路徑推薦領(lǐng)域目前研究的難點(diǎn)之一。
(2)習(xí)題路徑的合理性。隨著信息技術(shù)與傳統(tǒng)教育方法的融合,許多優(yōu)秀的教育理論被應(yīng)用在電子學(xué)習(xí)之中。針對(duì)個(gè)性化習(xí)題路徑推薦領(lǐng)域,如何將更為科學(xué)的教育理論應(yīng)用到推薦技術(shù)當(dāng)中,使習(xí)題路徑在滿足學(xué)習(xí)者個(gè)性化要求的基礎(chǔ)上符合教育規(guī)律,是目前面臨的主要困難和未來重要研究方向。
6結(jié)論(Conclusion)
個(gè)性化習(xí)題路徑推薦作為在線學(xué)習(xí)的一個(gè)研究領(lǐng)域,有很多需要深入研究的問題。本文對(duì)近年來針對(duì)個(gè)性化習(xí)題路徑推薦的相關(guān)研究工作,從推薦形式和核心方法兩個(gè)角度對(duì)其進(jìn)行了分類和整理,并對(duì)當(dāng)前的研究難點(diǎn)和未來的研究方向進(jìn)行了闡述。希望能夠?yàn)閭€(gè)性化習(xí)題路徑推薦研究領(lǐng)域構(gòu)建一個(gè)較為完整的全景圖,為相關(guān)研究人員提供參考和借鑒。
作者簡介:
馮旭光(1997-),男,碩士生.研究領(lǐng)域:教育數(shù)據(jù)挖掘.張 峰(1981-),男,博士,副教授.研究領(lǐng)域:教育數(shù)據(jù)挖掘,軟件工程.本文通信作者.