• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種結(jié)合深度知識追蹤的個性化習(xí)題推薦方法

      2020-05-14 07:44:54馬驍睿朱群雄
      關(guān)鍵詞:習(xí)題向量個性化

      馬驍睿,徐 圓,朱群雄

      (北京化工大學(xué) 信息科學(xué)與技術(shù)學(xué)院,北京 100029)

      Email:mxrui1995@163.com

      1 引 言

      隨著信息化時代的到來,各行各業(yè)都受到了信息時代的影響.在教育領(lǐng)域,在線教育和智能教育產(chǎn)業(yè)規(guī)模這幾年得到了快速增長,在線教育平臺為學(xué)生提供了大量的習(xí)題和教育資源,吸引了大量的學(xué)習(xí)者來到在線平臺進(jìn)行學(xué)習(xí).然而,隨著教育資源規(guī)模的日漸龐大,學(xué)生往往陷入學(xué)習(xí)資源的選擇困難.這既是因?yàn)橘Y源數(shù)量太過龐大,出現(xiàn)了信息過載的問題,也是因?yàn)樵诰€教育方式相比傳統(tǒng)教學(xué)方式不能實(shí)時地對學(xué)生提供指導(dǎo),無法提供個性化的學(xué)習(xí)推薦.因此,如何在海量的習(xí)題資源中為學(xué)生精準(zhǔn)地推薦合適的習(xí)題就成了一個值得關(guān)注的研究課題.

      這幾年來,推薦系統(tǒng)的技術(shù)逐漸被研究者們應(yīng)用在習(xí)題推薦中,學(xué)者們將習(xí)題看作商業(yè)系統(tǒng)中的商品,學(xué)生看作用戶,以學(xué)生在習(xí)題上的成績作為用戶對商品的評分,學(xué)生的習(xí)題得分預(yù)測就可以轉(zhuǎn)化為用戶的商品評分預(yù)測,從而對學(xué)生進(jìn)行推薦.現(xiàn)有習(xí)題推薦方法主要分為基于協(xié)同過濾的方法和基于知識建模的方法,其中基于協(xié)同過濾的習(xí)題推薦方法研究現(xiàn)狀如下:Walker等通過用戶提交有關(guān)教育資源的評論和訪問搜索他人評價(jià)來產(chǎn)生個性化推薦以及尋找具有相似興趣的其他用戶[1];Hsu等使用協(xié)同過濾和數(shù)據(jù)挖掘技術(shù)分析學(xué)生的閱讀數(shù)據(jù)并生成推薦分?jǐn)?shù),幫助學(xué)生選擇合適的課程[2];Segal等提出了學(xué)生個性化排序算法EduRank,使用協(xié)同過濾找到目標(biāo)學(xué)生的相似學(xué)生,通過匯總相似學(xué)生的排名來構(gòu)建對目標(biāo)學(xué)生的問題難度排名,可以被用來輔助教師為學(xué)生量身定制習(xí)題集和考試[3];Milicevic等提出了一個編程輔導(dǎo)系統(tǒng)的推薦模塊Protus,通過AprioriAll算法挖掘頻繁序列分析相似學(xué)生的習(xí)慣和興趣,并根據(jù)對這些頻繁序列的評級完成個性化推薦,可以自動適應(yīng)學(xué)生的興趣和知識水平[4];Wu等提出了一種基于模糊樹匹配的學(xué)習(xí)資料推薦方法[5];Toledo等使用協(xié)同過濾方法實(shí)現(xiàn)學(xué)生在線編程平臺的推薦系統(tǒng)[6].基于協(xié)同過濾的習(xí)題推薦方法結(jié)構(gòu)簡單、可解釋,但往往忽略了學(xué)生對知識的掌握狀態(tài)信息,在推薦的精準(zhǔn)性方面有所欠缺.

      基于知識建模的習(xí)題推薦方法研究現(xiàn)狀如下:Dwivedi等通過考慮學(xué)習(xí)者的學(xué)習(xí)方式、目標(biāo)、知識水平、學(xué)習(xí)路徑等提供個性化推薦[7];Ye等提出了一種基于異構(gòu)信息網(wǎng)絡(luò)的學(xué)習(xí)資源推薦方法,通過貝葉斯知識追蹤對學(xué)生知識建模,并計(jì)算學(xué)生與學(xué)習(xí)資源之間的語義相似度進(jìn)行排名推薦[8];Halawa等基于邁爾斯-布里格斯類型指標(biāo)(MBTI)理論識別學(xué)生個性和學(xué)習(xí)方式,并以此來推薦學(xué)習(xí)課程[9];Zhu等提出將認(rèn)知診斷模型與概率矩陣分解結(jié)合進(jìn)行推薦[10];Jiang等提出了一種基于知識點(diǎn)層次圖的個性化習(xí)題推薦算法,通過構(gòu)建表征知識點(diǎn)層次關(guān)系的權(quán)重圖,結(jié)合學(xué)生的知識掌握情況,產(chǎn)生個性化習(xí)題推薦[11].基于知識建模的方法能夠考慮學(xué)生的知識狀態(tài),基于個人的知識水平做出推薦,但是沒有將相似學(xué)生的信息加入?yún)⒖迹雎粤藢W(xué)習(xí)的群體性.

      協(xié)同過濾推薦方法和基于知識建模的推薦方法相比,前者忽略了學(xué)生的知識掌握狀態(tài)信息,容易給出過簡單或過難的試題,推薦結(jié)果往往不夠合理;而后者主要針對學(xué)生個人的知識狀態(tài)進(jìn)行建模預(yù)測,在推薦結(jié)果上可能比較單一.

      針對兩種方法各自的缺陷,本文提出一種基于深度知識追蹤的協(xié)同過濾推薦方法DKT-CF,通過二者的結(jié)合,得到更精準(zhǔn)的個性化習(xí)題推薦.本文算法具有以下優(yōu)點(diǎn):1)結(jié)合深度知識追蹤模型:DKT-CF結(jié)合深度知識追蹤模型和協(xié)同過濾算法進(jìn)行個性化習(xí)題推薦,它從學(xué)生知識掌握程度出發(fā),對學(xué)生進(jìn)行建模,具備更好的模型精度;2)使用近鄰信息:DKT-CF結(jié)合學(xué)生自身和其相似學(xué)生的知識水平進(jìn)行推薦,考慮了學(xué)生之間的群體性和學(xué)生自身的學(xué)習(xí)情況,提高了推薦結(jié)果的可靠性;3)不同難度的推薦:通過引入難度范圍參數(shù),可推薦不同難度范圍的題目,提高了推薦結(jié)果的拓展性和可解釋性.

      文章第2節(jié)概述深度知識追蹤模型;第3節(jié)介紹提出的方法框架和內(nèi)容;第4節(jié)通過實(shí)驗(yàn)驗(yàn)證DKT-CF的有效性;最后,在第5節(jié)進(jìn)行總結(jié)和展望.

      2 深度知識追蹤概述

      知識追蹤模型最早起源于1972年,其任務(wù)可以描述為:給定一個學(xué)生的練習(xí)序列x0,…,xT,預(yù)測下次的表現(xiàn)xt+1.Corbett等在1995年提出了貝葉斯知識追蹤(Bayesian Knowledge Tracing,BKT),BKT將學(xué)習(xí)者的潛在知識狀態(tài)建模為一組二元變量,每個二元變量代表表對單個概念的理解或不理解,使用隱式馬爾科夫模型,通過對每個知識點(diǎn)迭代更新猜測率,學(xué)習(xí)率,失誤率和學(xué)習(xí)初始概率,得出學(xué)生的知識點(diǎn)掌握水平[12].BKT提出后成為了評估學(xué)生知識最常用的方法之一,許多研究者對其提出了改進(jìn)方法:Baker等使用機(jī)器學(xué)習(xí)的方法對學(xué)生猜測和失誤的概率進(jìn)行上下文估計(jì),降低了模型退化的風(fēng)險(xiǎn)[13];Yudelson等將學(xué)生學(xué)習(xí)速度參數(shù)引入BKT,增加了BKT的準(zhǔn)確率,并用在智能輔導(dǎo)系統(tǒng)中輔導(dǎo)學(xué)生學(xué)習(xí)[14];深度知識追蹤(Deep Knowledge Tracing,DKT)由Chris 等在2015年提出,通過訓(xùn)練遞歸神經(jīng)網(wǎng)絡(luò)RNN對學(xué)生的知識掌握狀態(tài)建模,在不需要對訓(xùn)練數(shù)據(jù)集進(jìn)行人工標(biāo)注的情況下得到了比BKT更好的效果[15].

      DKT的簡單結(jié)構(gòu)如圖1,其中x1…xT為模型輸入,代表學(xué)生的提交序列;y1…yT為模型輸出,代表每個練習(xí)正確的概率向量;h0…h(huán)T為隱含層狀態(tài).ht,yt表達(dá)公式如公式(1),其中Whx,Whh分別為隱含層與輸入層,隱含層與隱含層之間的權(quán)值矩陣,Wyh為隱含層與輸出層之間的權(quán)值矩陣.模型損失函數(shù)loss如公式(2),其中qt+1,at+1分別為訓(xùn)練樣本下一次練習(xí)的問題編號和答案.

      (1)

      (2)

      近年來,許多學(xué)者對DKT進(jìn)行了應(yīng)用和改進(jìn)研究:Zhang等提出引入更多的特征進(jìn)行學(xué)習(xí),并加入自動編碼器層對輸入降維,提升模型的表現(xiàn)[16];Yu等采用雙向LSTM對問題的文本表述信息進(jìn)行訓(xùn)練,再在對知識狀態(tài)建模的過程中引入注意力機(jī)制,通過兩個模型結(jié)合提高知識追蹤的準(zhǔn)確度[17];Yeung等通過重構(gòu)DKT模型的損失函數(shù),并加入3個正則項(xiàng)參數(shù),提高模型的穩(wěn)定性和準(zhǔn)確度[18];Wang等將學(xué)生的編程提交記錄編碼輸入DKT中,對模型進(jìn)行訓(xùn)練并預(yù)測學(xué)生在后續(xù)的編程測試中的表現(xiàn)[19].

      3 結(jié)合深度知識追蹤的個性化習(xí)題推薦方法

      針對目前應(yīng)用協(xié)同過濾方法和知識建模方法產(chǎn)生個性化習(xí)題推薦各自的不足,提出了一種結(jié)合深度知識追蹤模型和協(xié)同過濾方法的個性化習(xí)題推薦方法DKT-CF.該方法通過深度知識追蹤模型對學(xué)生知識狀態(tài)建模,再結(jié)合相似學(xué)生信息進(jìn)行協(xié)同過濾推薦,使推薦結(jié)果既考慮學(xué)生個人的知識狀態(tài)也考慮群體學(xué)生學(xué)習(xí)的共性,提高了推薦結(jié)果的可解釋性和精確度.

      3.1 DKT-CF方法整體框架

      本節(jié)介紹了本文提出的DKT-CF的方法框架,推薦方法分為3個步驟:

      1)輸入:學(xué)生的做題序列xt={qt,at},其中qt代表在時間t學(xué)生練習(xí)的習(xí)題q,at代表在時間t學(xué)生回答的成績.

      2)知識追蹤(第1步):使用DKT模型對學(xué)生的知識水平進(jìn)行建模,獲得學(xué)生的知識掌握程度,得到學(xué)生的知識水平向量矩陣U.

      3)學(xué)生得分預(yù)測(第2步):結(jié)合協(xié)同過濾算法,通過計(jì)算知識水平向量余弦相似度得到目標(biāo)學(xué)生的相似學(xué)生,和學(xué)生自身知識水平向量結(jié)合得出學(xué)生最終的預(yù)測習(xí)題得分向量f.

      4)輸出(第3步):根據(jù)具體情況設(shè)置合適的難度范圍[β1,β2],選出預(yù)測作答的概率在范圍內(nèi)的習(xí)題,產(chǎn)生對學(xué)生的個性化習(xí)題推薦.

      3.2節(jié)將分別介紹DKT-CF的具體做法.

      3.2 DKT-CF具體做法

      3.2.1 知識追蹤

      在第一步中使用m個學(xué)生做習(xí)題練習(xí)的時間序列S={X1,X2,…,Xm},其中每個學(xué)生的聯(lián)系序列Xi={xi1,xi2,…,xit}輸入到循環(huán)神經(jīng)網(wǎng)絡(luò)中.將輸入序列進(jìn)行獨(dú)熱編碼表示,如輸入數(shù)據(jù)涉及k個習(xí)題,每道題分別由0,1來表示答錯和答對,對應(yīng)輸入的長度為2k.如若學(xué)生答錯了第i個問題,則輸入中第i個位置的數(shù)值為1,其余位置為0,否則輸入中第i+1位為1,其余為0.將數(shù)據(jù)編碼后輸入深度神經(jīng)網(wǎng)絡(luò)模型中,模型的輸出序列yt建立在對前t時刻的學(xué)生習(xí)題練習(xí)序列的訓(xùn)練上,長度為問題總量n,每一位代表了每一個對應(yīng)題目的答對概率.通過訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)模型,對每個學(xué)生計(jì)算其知識水平向量,得到全體學(xué)生的知識水平向量矩陣U(m×n).

      3.2.2 學(xué)生得分預(yù)測

      對知識水平向量矩陣U,以余弦相似度的來判斷向量Ui和Uj的相似程度.假設(shè)Ui={a1,a2,…,an},Uj={b1,b2,…,bn},則Ui和Uj的余弦相似度如公式(3):

      (3)

      通過余弦相似度的排名選擇大于一定閾值(實(shí)驗(yàn)中為0.95)的學(xué)生作為相似用戶,對于目標(biāo)學(xué)生i,預(yù)測其最終的習(xí)題得分向量由公式(4)得到:

      fi=ρ·Ui+(1-ρ)·average(Ni)

      (4)

      其中,Ui為學(xué)生的知識水平向量,average(Ni)為其相似學(xué)生的知識水平向量的平均值,學(xué)生個人的知識水平和學(xué)生之間共性的知識水平在使用fi進(jìn)行預(yù)測時的比例由參數(shù)ρ調(diào)節(jié),ρ的取值范圍為[0, 1].隨著ρ的增大,由學(xué)生個人知識水平產(chǎn)生的影響增大,特別的,當(dāng)ρ=0,fi為其近鄰學(xué)生的知識水平的平均,不包括學(xué)生個人的狀態(tài);當(dāng)ρ=1,fi完全為DKT模型輸出的個人知識水平向量.

      3.2.3 輸出

      在這一步中,產(chǎn)生對學(xué)生的推薦結(jié)果.在產(chǎn)生習(xí)題推薦時,確定一個適當(dāng)?shù)碾y度范圍[β1,β2](β2>β1)作為習(xí)題的難度區(qū)間,則可以根據(jù)學(xué)生的習(xí)題得分向量fi,向?qū)W生推薦正確概率在β1到β2的習(xí)題.例如將β1設(shè)置為0.6,β2設(shè)置為0.8,則會根據(jù)預(yù)測的習(xí)題得分向量向?qū)W生推薦正確回答概率在0.6到0.8的習(xí)題.

      DKT-CF方法在產(chǎn)生習(xí)題推薦時在考慮學(xué)生個人的知識掌握水平的同時加入了學(xué)生之間相似群體的學(xué)習(xí)情況,其推薦的習(xí)題能夠體現(xiàn)學(xué)生真實(shí)的知識水平,做到為學(xué)生推薦有一定難度的個性化習(xí)題.

      算法1.基于深度知識追蹤的協(xié)同過濾推薦方法DKT-CF

      輸入:學(xué)生歷史答題提交序列S;目標(biāo)難度范圍[β1,β2];個性比例參數(shù)ρ;推薦習(xí)題數(shù)K

      輸出:推薦習(xí)題集合R

      Begin:

      1. s=onehot(S) //將輸入進(jìn)行onehot編碼

      2. U(m×n)=train_DKT(s) //訓(xùn)練深度知識追蹤模型,輸出知識水平向量矩陣U

      3. for Ui∈ U //關(guān)于學(xué)生i

      4. for Uj∈ U//遍歷所有的知識水平向量

      5. Simi,j=cosine_sim(Ui,Uj) //計(jì)算Ui,Uj的余弦相似度Simi,j

      6. Ni=sim_rank(Simi) //根據(jù)相似度排名得到相似學(xué)生Ni

      7. fi=ρ*Ui+(1-ρ)*average(Ni) //計(jì)算最終的習(xí)題得分向量

      8. Ri=recommend(fi,K,β1,β2) //產(chǎn)生對學(xué)生i的推薦Ri

      9. return R //推薦習(xí)題集合R

      End

      4 實(shí) 驗(yàn)

      4.1 數(shù)據(jù)集介紹

      實(shí)驗(yàn)采用了2組數(shù)據(jù)集,第1組數(shù)據(jù)為assistments2009公開數(shù)據(jù)集,assistments是一個公開在線教育平臺,可以同時在線教授和評估學(xué)生學(xué)習(xí),數(shù)據(jù)集包含了超過50萬條小學(xué)數(shù)學(xué)習(xí)題提交數(shù)據(jù).第2組數(shù)據(jù)集是從某高校在線編程平臺(online judge)上爬取的學(xué)生提交歷史紀(jì)錄,兩組數(shù)據(jù)集的相關(guān)信息如表1.

      表1 數(shù)據(jù)集統(tǒng)計(jì)信息

      Table 1 Dataset statistics

      4.2 實(shí)驗(yàn)評價(jià)指標(biāo)

      4.2.1 精確率、召回率和f1值

      為衡量本文提出的DKT-CF方法向?qū)W生產(chǎn)生個性化習(xí)題推薦的有效性,本文首先采用精確率(precision)、召回率(recall)和f1值的指標(biāo)來評價(jià)DKT-CF的推薦效果,并和對比方法進(jìn)行對比.評價(jià)指標(biāo)的計(jì)算公式如公式(5)所示:

      (5)

      其中,TP代表推薦習(xí)題中學(xué)生正確回答的個數(shù),F(xiàn)P代表推薦習(xí)題中學(xué)生錯誤回答的個數(shù),F(xiàn)N代表其他待推薦習(xí)題中學(xué)生正確回答的個數(shù).

      4.2.2 正確回答率

      精確率,召回率和f1值適合檢驗(yàn)推薦中較簡單的題目,但是個性化推薦的目標(biāo)不是向?qū)W生推薦最容易完成的習(xí)題,雖然這三個指標(biāo)可以從側(cè)面反映出推薦系統(tǒng)的精確性,但是不能保證在推薦有一定難度的習(xí)題時,學(xué)生的表現(xiàn)依舊能夠符合模型的預(yù)測.

      為檢驗(yàn)DKT-CF在一定難度閾值范圍內(nèi)進(jìn)行個性化推薦時的有效性和可解釋性,以答題的正確率SR作為評價(jià)指標(biāo)評價(jià)其表現(xiàn).SR的公式如公式(6):

      (6)

      其中right為推薦題目中學(xué)生回答正確的習(xí)題數(shù),total為推薦題目總數(shù).通過使用SR作為評價(jià)指標(biāo)可以反映出學(xué)生在推薦習(xí)題上的總體表現(xiàn),當(dāng)難度的范圍[β1,β2]發(fā)生變化時,SR也應(yīng)該隨之變化,并落入對應(yīng)的區(qū)間中.

      4.3 對比實(shí)驗(yàn)方法

      為驗(yàn)證DKT-CF方法效果,選擇以下幾種方法進(jìn)行對比:

      1)DKT:根據(jù)DKT模型輸出的學(xué)生知識水平向量,進(jìn)行排名并推薦正確作答概率最高的習(xí)題.

      2)DKT+:DKT+是文獻(xiàn)[18]中提出的對DKT模型的改進(jìn),通過重構(gòu)損失函數(shù),引入正則項(xiàng)r,w1,w2,提高模型的穩(wěn)定性和平均精度.r,w1,w2和修改后的損失函數(shù)如公式(7)、公式(8)和公式(9),其中l(wèi)oss表示原DKT的損失函數(shù),λr,λw1和λw2分別為3個正則項(xiàng)對應(yīng)的參數(shù).

      (7)

      (8)

      loss′ =loss+λrr+λw1w1+λw2w2

      (9)

      3)UserCF:使用學(xué)生-習(xí)題得分矩陣進(jìn)行基于用戶的協(xié)同過濾推薦,計(jì)算學(xué)生之間余弦相似度尋找相似學(xué)生,再根據(jù)相似學(xué)生的成績預(yù)測目標(biāo)學(xué)生的成績,根據(jù)不同習(xí)題預(yù)測成績的排名進(jìn)行推薦.

      4)KS-CF:使用學(xué)生知識水平向量矩陣U進(jìn)行基于用戶的協(xié)同過濾推薦,計(jì)算學(xué)生之間的余弦相似度,以相似學(xué)生的平均得分概率作為目標(biāo)學(xué)生的得分概率,進(jìn)而根據(jù)概率高低進(jìn)行排名推薦.

      4.4 實(shí)驗(yàn)及結(jié)果分析

      4.4.1 實(shí)驗(yàn)環(huán)境

      實(shí)驗(yàn)環(huán)境操作系統(tǒng)為windows10 64位,語言為python3.6,采用tensoflow gpu 1.13版本,顯卡為NVIDIA GTX1080-8G,內(nèi)存16G.

      4.4.2 模型參數(shù)

      在DKT模型訓(xùn)練階段,隱含層采用200個LSTM節(jié)點(diǎn),keep_prob設(shè)為0.5,學(xué)習(xí)率learning_rate設(shè)為0.01,訓(xùn)練輪數(shù)max_epoch設(shè)為200,每批數(shù)據(jù)大小batch_size設(shè)為32.

      4.4.3 習(xí)題推薦對比實(shí)驗(yàn)

      在習(xí)題推薦的對比實(shí)驗(yàn)中,實(shí)驗(yàn)將本文提出的DKT-CF對比4.3節(jié)中描述的四種方法,以精確度,召回率,f1值的指標(biāo)來評價(jià)五種方法的效果.在兩個數(shù)據(jù)集中,均隨機(jī)劃分80%的學(xué)生用于訓(xùn)練,其余20%的學(xué)生用于測試推薦方法.在進(jìn)行測試時,選取測試集中每位學(xué)生70%的提交數(shù)據(jù)來產(chǎn)生推薦結(jié)果,對每個學(xué)生推薦5道題目,將推薦習(xí)題和后續(xù)的提交結(jié)果進(jìn)行對比來檢驗(yàn)推薦的精確性.

      在實(shí)驗(yàn)中,根據(jù)實(shí)驗(yàn)設(shè)定學(xué)生個人因素的占比參數(shù)ρ=0.4(在后續(xù)的實(shí)驗(yàn)中會驗(yàn)證不同ρ取值的表現(xiàn)).

      實(shí)驗(yàn)結(jié)果如表2、表3,從中可以得到以下信息:

      1)在對兩個數(shù)據(jù)集的實(shí)驗(yàn)中,提出的DKT-CF算法習(xí)題推薦效果均優(yōu)于其他算法,精確度,召回率和f1值均為最高.說明DKT-CF方法相比其他方法能產(chǎn)生更精準(zhǔn)的推薦結(jié)果,比其他方法更加有效.

      表2 Assistments數(shù)據(jù)集實(shí)驗(yàn)結(jié)果

      Table 2 Result of assistments dataset

      DKTDKT+UserCFKS-CFDKT-CFprecision0.9570.9550.8850.9540.977recall0.2560.2810.2760.2380.287f10.4040.4340.4210.3800.444

      2)在實(shí)驗(yàn)中,使用傳統(tǒng)協(xié)同過濾算法的UserCF算法準(zhǔn)確率相比較低,在融入了學(xué)生的知識狀態(tài)后,得到了較好的效果(KS-CF方法),精確度的漲幅分別達(dá)到7.7%和6.4%,說明引入知識狀態(tài)的信息來提高傳統(tǒng)協(xié)同過濾的精確度的方法是有效的.

      3)本文提出的DKT-CF是DKT方法和KS-CF方法的結(jié)合,達(dá)到了最優(yōu)的效果,說明習(xí)題推薦中既考慮學(xué)生的個性又考慮學(xué)生學(xué)習(xí)的群體性的方法能夠給出最有效的個性化習(xí)題推薦.

      表3 OJ數(shù)據(jù)集實(shí)驗(yàn)結(jié)果

      Table 3 Result of OJ dataset

      DKTDKT+UserCFKS-CFDKT-CFprecision0.8490.8530.7950.8460.855recall0.3130.3140.2630.3050.318f10.4570.4590.3950.4480.463

      4.4.4 習(xí)題難度范圍實(shí)驗(yàn)

      在本文提出的推薦方法步驟中,可以設(shè)置推薦習(xí)題對應(yīng)的難度范圍.為驗(yàn)證對于指定的難度范圍[β1,β2],DKT-CF方法給出的推薦習(xí)題能否滿足對應(yīng)習(xí)題難度的要求,進(jìn)行不同難度范圍下對應(yīng)學(xué)生的正確作答率SR變化情況的實(shí)驗(yàn).

      本文根據(jù)難度范圍從0到1劃分為5個區(qū)間,每個區(qū)間的難度跨度為0.2.在不同難度區(qū)間下,根據(jù)算法得出的學(xué)生正確做答概率,選擇在難度區(qū)間內(nèi)的習(xí)題作為推薦習(xí)題集,計(jì)算測試集中學(xué)生的回答正確比例.實(shí)驗(yàn)結(jié)果如表4、表5.

      表4 assistments數(shù)據(jù)集正確率對比

      Table 4 Comparison of SR in assistments dataset

      β1-β20-0.20.2-0.40.4-0.60.6-0.80.8-1SR0.1700.3700.5820.7410.930

      從實(shí)驗(yàn)結(jié)果可以看出,隨著難度的逐漸降低,學(xué)生的正確作答率不斷提高,例如,在[β1,β2]設(shè)置為[0.2,0.4]時,學(xué)生在兩個數(shù)據(jù)集上的正確作答率分別為0.37 和 0.35左右,當(dāng)[β1,β2]設(shè)置為[0.4,0.6]時,學(xué)生的正確作答率分別提高到0.58和0.50左右.實(shí)驗(yàn)說明,本文提出的DKT-CF方法可以根據(jù)不同的難度范圍向?qū)W生推薦合適的難度的習(xí)題,從而使推薦效果有更好的實(shí)際意義和可解釋性.

      表5 OJ數(shù)據(jù)集正確率對比

      Table 5 Comparison of SR in OJ dataset

      β1-β20-0.20.2-0.40.4-0.60.6-0.80.8-1SR0.2280.3480.4990.6190.926

      4.4.5 參數(shù)ρ的設(shè)置實(shí)驗(yàn)

      在所提出的DKT-CF方法中,參數(shù)ρ的作用是調(diào)節(jié)學(xué)生個人知識水平和學(xué)生群體共性的知識水平對推薦結(jié)果影響的比例.ρ的取值范圍為[0,1],當(dāng)ρ越大,代表預(yù)測的習(xí)題得分向量更靠近學(xué)生個人的知識狀態(tài);當(dāng)ρ越小,代表預(yù)測的習(xí)題得分向量更靠近與目標(biāo)學(xué)生相似的學(xué)生群體知識狀態(tài).特別的,當(dāng)ρ=1,方法退化為DKT方法;當(dāng)ρ=0,方法退化為KS-CF方法.

      圖2 assistments數(shù)據(jù)集f1值變化

      圖2、圖3顯示了DKT-CF方法分別在兩個數(shù)據(jù)集下以不同的ρ來進(jìn)行推薦時,參數(shù)f1值與ρ之間的變化關(guān)系.從實(shí)驗(yàn)結(jié)果可以看出,ρ的取值對推薦效果有明顯影響,并且對于兩個數(shù)據(jù)集,ρ=0.4時均達(dá)到了最高的f1值.雖然在圖3中ρ=0.2和0.6時與最高值相差不大,但是在圖2中差距比較明顯,說明ρ=0.2和ρ=0.6時穩(wěn)定性可能不如ρ=0.4的情況.綜合考慮算法的表現(xiàn)和穩(wěn)定性后,決定選取ρ=0.4作為進(jìn)行其他實(shí)驗(yàn)時的算法參數(shù).

      圖3 OJ數(shù)據(jù)集f1值變化

      4.4.6 結(jié)果討論

      從上述實(shí)驗(yàn)結(jié)果可以看出,本文提出的基于深度知識追蹤的個性化習(xí)題推薦方法DKT-CF不論是較簡單題的習(xí)題推薦效果,還是推薦有一定難度習(xí)題時,預(yù)期難度與選擇習(xí)題的難度的貼合度上,均有較好的表現(xiàn).這是因?yàn)镈KT-CF方法既考慮學(xué)生個人的知識掌握水平(DKT模型),又考慮了學(xué)習(xí)的群體性,加入了相似學(xué)生之間的信息(協(xié)同過濾方法).相比于傳統(tǒng)的協(xié)同過濾方法,該方法有更好的精確度和可解釋性,相比于基于知識狀態(tài)建模的方法,該方法具有更好的可靠性和拓展性.

      5 結(jié)論和展望

      針對傳統(tǒng)協(xié)同過濾推薦方法沒有考慮學(xué)生的知識掌握水平和基于知識建模的推薦方法忽略了學(xué)生之間學(xué)習(xí)的群體性的缺點(diǎn),本文提出了一種基于深度知識追蹤的個性化習(xí)題推薦方法DKT-CF.該方法以學(xué)生的歷史答題提交序列作為輸入,方法的第1步為結(jié)合深度知識追蹤模型對學(xué)生的知識掌握水平進(jìn)行建模;第2步將學(xué)生的知識水平向量作為計(jì)算相似學(xué)生的參考得出相似用戶,并結(jié)合個人的知識水平向量得出預(yù)測的目標(biāo)得分向量,在考慮學(xué)生個人狀態(tài)信息的同時加入了相似學(xué)生的群體信息;在第3步中,根據(jù)一定的難度范圍[β1,β2],選擇正確作答概率在范圍內(nèi)的習(xí)題對學(xué)生進(jìn)行推薦;最后通過實(shí)驗(yàn)證明了本文提出的DKT-CF方法的有效性和合理性.

      在后續(xù)的研究中,從模型出發(fā),可以考慮對深度知識追蹤模型進(jìn)行改進(jìn),加入更多個性化特征進(jìn)行學(xué)習(xí);從推薦方法出發(fā),可以考慮結(jié)合其他的推薦算法產(chǎn)生推薦;從推薦的場景出發(fā),在不同場景下的推薦策略也是一個值得探討的問題,比如根據(jù)難度不同區(qū)分出用于拓展提高的推薦題目和用于復(fù)習(xí)鞏固的推薦題目等,可以更有針對性地進(jìn)行個性化習(xí)題推薦.

      猜你喜歡
      習(xí)題向量個性化
      從一道課本習(xí)題說開去
      向量的分解
      一道課本習(xí)題及其拓展的應(yīng)用
      抓住習(xí)題深探索
      聚焦“向量與三角”創(chuàng)新題
      堅(jiān)持個性化的寫作
      文苑(2020年4期)2020-05-30 12:35:12
      精心設(shè)計(jì)習(xí)題 構(gòu)建高效課堂
      新聞的個性化寫作
      新聞傳播(2018年12期)2018-09-19 06:27:10
      上汽大通:C2B個性化定制未來
      向量垂直在解析幾何中的應(yīng)用
      白银市| 基隆市| 庆阳市| 黄骅市| 白水县| 白玉县| 乐安县| 虹口区| 肇州县| 中宁县| 连州市| 沛县| 宜宾县| 波密县| 清流县| 山东| 延津县| 张北县| 怀集县| 通道| 岳阳县| 西乌| 建昌县| 曲阜市| 新和县| 潜山县| 蕉岭县| 调兵山市| 馆陶县| 建平县| 眉山市| 津南区| 偃师市| 古丈县| 雷州市| 沅陵县| 宾阳县| 宁远县| 晋江市| 福安市| 兰考县|