吳 昊,徐行健,孟繁軍
內(nèi)蒙古師范大學(xué) 計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,呼和浩特011500
2020年4月28號中國互聯(lián)網(wǎng)信息中心(CNNIC)發(fā)布的第45次《中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》顯示,截止2020年3月,我國在線教育的用戶規(guī)模已經(jīng)達(dá)到4.23億,較2018年底增長約110.2%,占整體網(wǎng)民人數(shù)的46.8%,尤其是在2020年初的新冠肺炎疫情期間,在各種在線教育應(yīng)用平臺的日活躍用戶更是達(dá)到千萬以上[1]。
在線教育爆發(fā)式增長改變了傳統(tǒng)的教學(xué)模式,使人們隨時(shí)隨地學(xué)習(xí)成為現(xiàn)實(shí)。但是,伴隨著大數(shù)據(jù)時(shí)代的到來,在線教育平臺的課程數(shù)量龐大,學(xué)習(xí)方向繁多,課程類型應(yīng)有盡有,對學(xué)習(xí)者也產(chǎn)生了很多弊端。一是學(xué)習(xí)者很難短時(shí)間內(nèi)找到適合自己的課程;二是學(xué)習(xí)者個(gè)人所感興趣的學(xué)習(xí)路線復(fù)雜,而學(xué)校的培養(yǎng)方案里的課程又趨于單一化和重復(fù)化,學(xué)習(xí)者滿意度低,無法達(dá)到預(yù)期的教學(xué)效果[2];三是大多數(shù)在線教育平臺不像傳統(tǒng)教育那樣對學(xué)習(xí)者提供有效的學(xué)習(xí)指導(dǎo)、課程規(guī)劃,學(xué)習(xí)者自身缺少對總體知識結(jié)構(gòu)的深入理解互聯(lián)網(wǎng)學(xué)習(xí)資源數(shù)量冗雜,導(dǎo)致學(xué)習(xí)者陷入大量的課程選擇中,從而造成了信息過載,甚至出現(xiàn)了課程的通過率較低的狀況[3],最后,傳統(tǒng)教育模式難以及時(shí)有效地發(fā)現(xiàn)學(xué)習(xí)者的學(xué)習(xí)目標(biāo)。針對上述問題,一些在線教育平臺通過課程搜索和熱門課程推薦等方法也未能較好的解決。然而,由于知識圖譜作為輔助信息的推薦算法得到充分的關(guān)注和研究,使得基于知識圖譜的課程推薦算法進(jìn)一步地提升推薦效果成為可能[4]。
個(gè)性化推薦技術(shù)現(xiàn)在已經(jīng)廣泛運(yùn)用到各大領(lǐng)域,如電子商務(wù)、在線視頻、新聞?lì)^條、自媒體短視頻等領(lǐng)域,有效地解決了各大領(lǐng)域的信息過載問題。對于教育領(lǐng)域方面存在的問題,國內(nèi)外諸多在線教育團(tuán)隊(duì)也紛紛在探討和研究,近年來取得的研究成果往往都是通過學(xué)生選擇課程的歷史和熱門課程大數(shù)據(jù)分析進(jìn)行推薦,雖然推薦結(jié)果也較為實(shí)用,但缺乏對學(xué)習(xí)者整個(gè)學(xué)習(xí)過程的支持和結(jié)合學(xué)校的培養(yǎng)方案進(jìn)行推薦,并且現(xiàn)有算法對課程推薦方面的數(shù)據(jù)稀疏和冷啟動(dòng)問題也沒有很好的方法。
本文基于edX公開的課程數(shù)據(jù)集構(gòu)建現(xiàn)有課程結(jié)構(gòu)關(guān)系的知識圖譜[5],利用多任務(wù)特征學(xué)習(xí)方法模型,提出一個(gè)多任務(wù)課程推薦算法(Multi-Layer Knowledge graph Recommendation,MLKR),并且與基于內(nèi)容的協(xié)同過濾推薦算法對比,以表征算法性能。
課程個(gè)性化推薦技術(shù)是在線教育與教育大數(shù)據(jù)領(lǐng)域的研究熱點(diǎn)之一,國內(nèi)外眾多研究團(tuán)隊(duì)紛紛提出個(gè)性化網(wǎng)絡(luò)教育的概念、研究個(gè)性化課程推薦算法,目的是降低在線學(xué)習(xí)的輟學(xué)率,激發(fā)和調(diào)動(dòng)學(xué)習(xí)者主動(dòng)學(xué)習(xí)的積極性,充分發(fā)揮不同學(xué)習(xí)者的學(xué)習(xí)個(gè)性。
國內(nèi)學(xué)者在心理學(xué)層面研究得出[6]:每個(gè)學(xué)習(xí)個(gè)體客觀存在的個(gè)體差異使得個(gè)性化課程規(guī)劃對于學(xué)習(xí)有積極的意義。雖然我國在個(gè)性化課程推薦算法起步較晚,但在推薦算法的優(yōu)化和改進(jìn)方面有許多成果。王忠華等通過學(xué)習(xí)資源的協(xié)同預(yù)測方法,基本緩解協(xié)同推薦算法中的擴(kuò)展性計(jì)算和松散型計(jì)算等問題[7]。李星雨等利用師生之間的交流,改進(jìn)基于物品的協(xié)同過濾算法,對學(xué)生的特征進(jìn)行分析,提出適合學(xué)生的個(gè)性化推薦算法,進(jìn)而緩解推薦結(jié)果與學(xué)習(xí)者貼合度低的問題[8]。檀曉紅等對在線學(xué)習(xí)者在學(xué)習(xí)的過程中的動(dòng)態(tài)數(shù)據(jù)獲取并分析,提取了學(xué)習(xí)者個(gè)性化學(xué)習(xí)的需求,再通過專業(yè)教師對課程進(jìn)行整體規(guī)劃,最后使用遺傳分層推薦算法為學(xué)習(xí)者推薦課程,顯著提高課程推薦精準(zhǔn)度[9]。
國外學(xué)者在2008年開始對課程推薦算法進(jìn)行研究,Jose等通過分析選課系統(tǒng)和電商平臺的差異性和相似性,通過生物啟發(fā)算法改進(jìn)知識和發(fā)現(xiàn)關(guān)聯(lián)規(guī)則[10],而近年來的研究大多利用在探討學(xué)習(xí)者的行為特點(diǎn)來表示學(xué)習(xí)者的特征,從而產(chǎn)生推薦結(jié)果。Pang等把每個(gè)學(xué)習(xí)者行為特征提取并轉(zhuǎn)換成相同維度的向量,將其分散放在包含相似用戶之中,這些學(xué)習(xí)者具有更多共同的課程,提出了多層存儲推薦算法(Multi-Layer Bucketing Recommendation,MLBR)和MapReduce技術(shù)擴(kuò)展,使傳統(tǒng)的協(xié)同推薦算法性能得到提升[11]。郭清菊等根據(jù)學(xué)習(xí)者的行為和偏好進(jìn)行學(xué)習(xí)者瀏覽日志的挖掘,采用AprioriAll算法提出的混合推薦策略,實(shí)現(xiàn)了對學(xué)習(xí)者個(gè)性化推薦[12]。
目前,現(xiàn)有應(yīng)用研究主要集中在采用協(xié)同推薦或數(shù)據(jù)挖掘方法,提高課程推薦準(zhǔn)確率,但上述方法常涉及到推薦算法冷啟動(dòng)的問題,無法建立性能較好的推薦模型以及在沒有初始數(shù)據(jù)時(shí),無法精準(zhǔn)推薦[13]。
(1)推薦課程準(zhǔn)確度問題。使用精確程度高的推薦算法可以為學(xué)習(xí)者提供更加適合自己的課程,增強(qiáng)滿意度。推薦結(jié)果的準(zhǔn)確性是一個(gè)推薦算法的重要指標(biāo)。假如一個(gè)推薦算法產(chǎn)生的推薦結(jié)果不會(huì)產(chǎn)生良好的推薦結(jié)果,推薦結(jié)果將不會(huì)有存在意義[14]。
(2)數(shù)據(jù)稀疏問題。利用傳統(tǒng)協(xié)同過濾方法時(shí)的相似度計(jì)算主要依靠學(xué)習(xí)者對課程的評分矩陣,實(shí)際過程中對課程的評分很少,有些情況僅僅為2%[15]。使得課程評分矩陣過于稀疏,課程與學(xué)習(xí)者找到相似的鄰居成為困難,造成了課程推薦的質(zhì)量變低。
(3)冷啟動(dòng)問題?,F(xiàn)在課程平臺會(huì)隨著新的學(xué)習(xí)者和課程需求不斷更新內(nèi)容,但是在更新之前沒有任何新加入的學(xué)習(xí)者或者新的課程內(nèi)容的記錄,造成了推薦算法無法進(jìn)行及時(shí)有效的推薦。
對于現(xiàn)有數(shù)據(jù)集中學(xué)習(xí)者和課程之間交互的信息稀疏甚至缺少的問題而導(dǎo)致的冷啟動(dòng)問題,可以通過在推薦算法中引入其他的信息,即輔助信息(Side Information)來緩解。在電影、商品等常見的推薦中引入的輔助信息有:社交網(wǎng)絡(luò)(Social networks)、用戶或者商品屬性特征(User/Item attributes)、多媒體信息(Multimedia)、上下文信息(Contexts)等[16]。在本文采用的輔助信息是知識圖譜,用三元組(c1,r,c2)來表示,課程的知識圖譜為G:
其中,c1和c2∈C,C為edX數(shù)據(jù)集的所有課程,r∈R,R中構(gòu)造了5個(gè)關(guān)系:same.instructor(擁有同一個(gè)教師)、same.subject(屬于同一種學(xué)科)、hour.low(課程交互時(shí)間≤30 h)、hour.mid(30 h<課程交互時(shí)間≤100 h)、hour.high(課程交互時(shí)間>100 h),如圖1所示。當(dāng)一個(gè)學(xué)習(xí)者與四門課程有過交互:Java程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)網(wǎng)絡(luò)、操作系統(tǒng),在知識圖譜中就可以將三門課程關(guān)聯(lián)到其他的事件中,并連接到其他眾多non-item實(shí)體上,再從這些non-item實(shí)體又連接到課程實(shí)體上,如最右邊的無線網(wǎng)絡(luò)技術(shù)、網(wǎng)絡(luò)信息安全、J2EE架構(gòu)與應(yīng)用、編譯原理。
圖1 課程知識圖譜三元組Fig.1 Three tuples of curriculum knowledge map
傳統(tǒng)協(xié)同過濾算法就是將中間non-item實(shí)體部分替換為其他學(xué)習(xí)者,其他學(xué)習(xí)者通過歷史學(xué)習(xí)記錄等交互過程得到連接,構(gòu)造的知識圖譜實(shí)質(zhì)是建立一個(gè)從學(xué)習(xí)者已經(jīng)交互過的課程到未交互過的課程的連接,這些連接不是由其他學(xué)習(xí)者的交互歷史記錄得來,而是通過non-item實(shí)體進(jìn)行連接。構(gòu)造知識圖譜的方法提供額外的在課程之間連接的信息來源以及算法中item相似度更準(zhǔn)確的計(jì)算方式,從而提高推薦課程的精確度[15]。
為了緩解傳統(tǒng)課程推薦算法的局限性,提出了基于端對端通用深度推薦框架的MLKR算法,其采用知識圖譜嵌入任務(wù)作為輔助推薦任務(wù),其中兩個(gè)任務(wù)不是相互獨(dú)立的,具有較高相關(guān)性。主要是由于在推薦算法中的單個(gè)課程(item)可能與知識圖譜中單個(gè)或者多個(gè)實(shí)體(entity)相互關(guān)聯(lián),所以單個(gè)item和其所對應(yīng)的實(shí)體在推薦算法以及知識圖譜中可能存在相似結(jié)構(gòu),在初始階段非任務(wù)特征的潛在空間中也存在相似特征。為了對item和entity之間的共享特征進(jìn)行建模,在MLKR算法中加入交叉壓縮單元(Cross&Compress)[17],交叉壓縮單元確定了item和entity特征之間的高階交互,并自動(dòng)控制兩個(gè)任務(wù)的交叉知識轉(zhuǎn)移。使用交叉壓縮單元后,item和entity的表征可以相互補(bǔ)充,避免兩個(gè)任務(wù)產(chǎn)生過擬合和噪聲,并提高泛化能力[18]。整體框架通過交替優(yōu)化兩個(gè)任務(wù)的不同頻率進(jìn)行訓(xùn)練,以提高M(jìn)LKR算法在真實(shí)環(huán)境中的靈活性和適應(yīng)性。
MLKR算法框架如圖2所示,主要包括三個(gè)模塊:推薦模塊、知識圖譜嵌入模塊與交叉壓縮單元。
圖2 MLKR推薦算法框架Fig.2 MLKR algorithm framework
推薦模塊的輸入為學(xué)習(xí)者向量U與課程向量Cr,輸出為學(xué)習(xí)者對于課程的選課率p。
模塊分為low-level(低階)和high-level(高階)兩部分,其中l(wèi)ow-level部分使用多層感知器MLP(Multi-Lay Perceptron)處理學(xué)習(xí)者的特征UL,課程部分使用交叉壓縮單元來進(jìn)行處理,返回一門課程的特征CrL,最后將UL與CrL拼接,通過推薦算法中的函數(shù)fRS,輸出選課預(yù)測值。對于給定學(xué)習(xí)者的初始特征向量U,使用L階的MLP提取其特征:
知識圖譜嵌入模塊就是將實(shí)體和關(guān)系嵌入到一個(gè)向量空間中,同時(shí)保留結(jié)構(gòu),對于知識圖譜嵌入模型,現(xiàn)有的研究提出了一個(gè)深度語義匹配架構(gòu)[18],與推薦模塊類似,給定知識圖譜G以及三元組(h,r,t),其中分別通過交叉壓縮單元與非線性層處理三元組頭部h和關(guān)系r的初始特征向量[19]。之后將潛在特征關(guān)聯(lián)在一起,最后用K階MLP預(yù)測尾部t:
其中,S(h)為h的關(guān)聯(lián)項(xiàng)集合,t?為根據(jù)尾部t得出的預(yù)測向量。
最后加入交叉單元是為了模擬item和entity之間的特征交互,其只存在于MLKR算法的初始階層中,由于課程推薦算法中的課程和知識圖譜嵌入模塊的中的實(shí)體有著對應(yīng)關(guān)系,并且有著對同一item的描述,其中的embedding(嵌入)是相似度極高的,即可以被連接,于是中間每一層都使用交叉壓縮單元作為連接的結(jié)合。如圖3所示,L層的輸入為課程item的embeddingCrL和實(shí)體的embeddingeL,下一層的輸出為embedding,交叉壓縮單元模塊分為兩部分:Cross(交叉)和Compress(壓縮),其中Cross將CrLCrL,eL進(jìn)行一次交叉,CrL為d×1的向量,eL為1×d的向量,矩陣計(jì)算后獲得d×d的矩陣CL。Compress將交叉后的矩陣CL重新壓縮回Embeddingspace(嵌入空間),并通過參數(shù)WL壓縮輸出CrL+1、eL+1[20]。
圖3 交叉壓縮單元Fig.3 Cross and Compress unit
MLKR算法主要的訓(xùn)練過程如下:構(gòu)建打分文件和知識圖譜,通過MLKR模型對數(shù)據(jù)進(jìn)行學(xué)習(xí),得出預(yù)測模型,能夠有效地預(yù)測學(xué)習(xí)者U對課程Cr感興趣的概率,由于在打分中的item和知識圖譜中的實(shí)體實(shí)質(zhì)上指向相同的內(nèi)容,其具有高度的重合性和相關(guān)性,采用多任務(wù)學(xué)習(xí)的框架將推薦算法和知識圖譜分別視作兩個(gè)分離任務(wù),同時(shí)兩者可以通過item和entity進(jìn)行相關(guān),從而對兩個(gè)模塊進(jìn)行交替學(xué)習(xí)。
在推薦算法部分中,輸入的是學(xué)習(xí)者和課程的特征表示,輸出為學(xué)習(xí)者對課程的感興趣的概率。
在知識圖譜的模塊中,輸入為三元組的頭結(jié)點(diǎn)和關(guān)系,輸出為預(yù)測的尾結(jié)點(diǎn)。利用項(xiàng)目和實(shí)體的相似性,設(shè)計(jì)交叉壓縮單元連接兩個(gè)模塊。
通過交叉壓縮單元,兩個(gè)模塊間可以共享信息,彌補(bǔ)自身的信息不足。在交替學(xué)習(xí)的過程中,分別固定推薦算法模塊的參數(shù)和知識圖譜的參數(shù),同時(shí)訓(xùn)練另一個(gè)模塊的參數(shù),通過來回交替訓(xùn)練的方式,使損失不斷減小。
MLKR算法具體實(shí)現(xiàn)步驟如圖4所示。利用模型進(jìn)行學(xué)習(xí)的過程包括多次迭代,為了將推薦算法的性能盡可能達(dá)到最優(yōu),在每次迭代過程中,交替對課程推薦模塊和知識圖譜模塊進(jìn)行訓(xùn)練。對于每次的迭代中兩個(gè)模塊的訓(xùn)練而言,均是通過以下的幾個(gè)步驟:首先從輸入的數(shù)據(jù)中提取小部分,然后對課程item和課程head提取特征值,利用梯度下降(Gradient Descent)算法更新最終預(yù)測函數(shù)的值,即模型收斂,獲得MLKR算法訓(xùn)練模型。
圖4 MLKR算法訓(xùn)練步驟Fig.4 MLKR algorithm training steps
實(shí)驗(yàn)環(huán)境為Inteli5-10210U CPU@1.60 GHz,8 GB內(nèi)存,Window10操作系統(tǒng)。利用Pycharm中Anaconda3與TensorFlow框架。
實(shí)驗(yàn)采用Kaggle上Online Courses from Harvard and MIT作為數(shù)據(jù)集。其中edX是MITx和HarvardX創(chuàng)建的大規(guī)模開放在線課堂平臺,類似于國內(nèi)的網(wǎng)易公開課、騰訊課堂。該數(shù)據(jù)集的數(shù)據(jù)字段包含23個(gè),數(shù)據(jù)信息290個(gè),文件大小64 KB左右。實(shí)驗(yàn)中,隨機(jī)選取60%作為訓(xùn)練集,20%作為驗(yàn)證集,20%作為測試集。根據(jù)推薦算法需求,抽取實(shí)驗(yàn)所使用到數(shù)據(jù)集中的7個(gè)屬性:課程名、教師、學(xué)科、總交互時(shí)長、播放視頻時(shí)間占比、發(fā)帖占比、高于零分占比。抽取后數(shù)據(jù)集部分片段如表1所示。
表1 課程推薦所需edX數(shù)據(jù)集片段Table 1 Recommended edX dataset fragments for course
最后利用neo4j構(gòu)建知識圖譜,并做鏈路預(yù)測的任務(wù),通過頭部實(shí)體、關(guān)系來預(yù)測尾實(shí)體,使用有監(jiān)督訓(xùn)練來得到更好的item向量表示。
使用準(zhǔn)確率(ACC)、精確率(Presicion)、召回率(Recall)、F1值(F1-Score)作為評價(jià)指標(biāo),用以衡量各個(gè)算法的性能,實(shí)現(xiàn)MKLR算法數(shù)值表征,具體計(jì)算見式(7)~(10)。在固定訓(xùn)練集情況下,模型ACC、Presicion、Recall和F1計(jì)算越高,表明推薦模型更加高效[21]。
其中,TP(True Positive)表示真陽性,即課程的樣本被正確推薦給學(xué)習(xí)者的數(shù)量;TN(True Negative)表示真陰性,即不屬于正確推薦課程的樣本被正確推薦給學(xué)習(xí)者以外的其他課程的數(shù)量;FP(False Positive)表示假陽性,即不屬于正確推薦課程的樣本被錯(cuò)誤推薦給學(xué)習(xí)者的數(shù)量;FN(False Negative)表示假陰性,即屬于正確推薦課程的樣本被錯(cuò)誤推薦給學(xué)習(xí)者以外的其他課程的數(shù)量[22]。
首先,系統(tǒng)運(yùn)行數(shù)據(jù)處理模塊preprocess.py,將知識圖譜文件kg.txt和構(gòu)造的學(xué)習(xí)者打分文件user_mooc.dat轉(zhuǎn)化成數(shù)值文件,構(gòu)造打分文件的部分?jǐn)?shù)據(jù)如表2所示,UserID為構(gòu)造的學(xué)習(xí)者ID,ArtistID為課程ID。然后,根據(jù)對應(yīng)權(quán)重得到和構(gòu)造學(xué)習(xí)者模型打分權(quán)重Wg,計(jì)算如下:
表2 根據(jù)edX數(shù)據(jù)集構(gòu)造的打分?jǐn)?shù)據(jù)片段Table 2 Scoring data fragment constructed from edX dataset
其中,Play為播放視頻時(shí)間占比取整,Post為發(fā)帖占比取整、Grade則為高于零分占比的取整。
得到構(gòu)造打分文件后生成ratings_final.npy以及kg_final.txt,接著將上述文件作為模型的輸入,main.py文件作為模型訓(xùn)練和超參數(shù)調(diào)整文件,對課程數(shù)據(jù)集超參數(shù)進(jìn)行調(diào)整[23]。由于打分預(yù)測的實(shí)現(xiàn)存在困難,為了保證實(shí)驗(yàn)結(jié)果的可信程度,同時(shí)也為了降低模型訓(xùn)練耗時(shí)、增加模型參數(shù)調(diào)整精度,本實(shí)驗(yàn)中超參數(shù)學(xué)習(xí)率Ir_rs選取0.001、Ir_kge選取0.002。由圖5可以看出,當(dāng)超參數(shù)Batchsize為2 048、AUC、ACC、Presicion、Recall和F1評價(jià)指標(biāo)表現(xiàn)較好。當(dāng)Batchsize大于2 048時(shí),Presicion、Recall和F1降低,是由于模型訓(xùn)練出現(xiàn)過擬合。當(dāng)大于4 096時(shí),盡管由于評價(jià)指標(biāo)Presicion、Recall和F1數(shù)值提高,但是會(huì)造成訓(xùn)練時(shí)間過長。結(jié)合數(shù)據(jù)集中word出現(xiàn)次數(shù)和圖6可以看出,embedding維度選取32時(shí),模型評價(jià)指標(biāo)表現(xiàn)較好。最后設(shè)置Batchsize為2 048,embedding維度為32,圖7結(jié)果也驗(yàn)證了Ir_rs選取0.001、Ir_kge選取0.002時(shí),模型性能表現(xiàn)較好。
圖5 調(diào)整超參數(shù)BatchsizeFig.5 Adjust hyperparameter Batchsize
圖6 調(diào)整embedding維度Fig.6 Adjusting embedding dimension
圖7 當(dāng)固定Batchsize=2 048,Dim=32時(shí)調(diào)整IrFig.7 When fixed batchsize=2 048,dim=32,adjust Ir
在固定模型超參數(shù)條件下對比不同算法之間的性能表現(xiàn),表3為MLKR推薦算法與協(xié)同過濾算法以及排序?qū)W習(xí)算法代價(jià)對比,包括訓(xùn)練和預(yù)測時(shí)間對比,結(jié)果表明,在訓(xùn)練速度方面,ItemCF速度最快,訓(xùn)練時(shí)間最短,由于MLKR算法采用深度學(xué)習(xí)的多任務(wù)處理,時(shí)間復(fù)雜度O(n)較高,與協(xié)同過濾算法相比訓(xùn)練時(shí)間較長。但比排序?qū)W習(xí)推薦算法(LR)速度快。對比不同算法性能,實(shí)驗(yàn)結(jié)果如表4所示,MLKR算法對于UserCF算法和LR排序?qū)W習(xí)模型相比有著更好的準(zhǔn)確性。
表3 MLKR推薦算法與協(xié)同過濾算法代價(jià)比較Table 3 Cost comparison of MLKR algorithm and collaborative filtering algorithm
表4 MLKR推薦算法與協(xié)同過濾算法比較Table 4 Comparison of MLKR algorithm and collaborative filtering algorithm
由于構(gòu)建的輔助信息是根據(jù)高校的學(xué)生培養(yǎng)方向所定制學(xué)習(xí)的課程學(xué)習(xí)路線,有些必修的課程無法滿足所有學(xué)習(xí)者的興趣,所以與ItemCF算法相比Recall值較低,并且相比與傳統(tǒng)協(xié)同過濾推薦算法,MLKR算法需要通過相應(yīng)本體構(gòu)建知識圖譜進(jìn)行推薦,需要相應(yīng)的構(gòu)建過程代價(jià),而協(xié)同過濾算法更適用于數(shù)據(jù)量多、偏向于多數(shù)用戶喜愛的推薦環(huán)境[23]。最終實(shí)驗(yàn)結(jié)果表明MLKR算法更符合實(shí)際課程推薦的環(huán)境,且性能優(yōu)于傳統(tǒng)推薦算法。
面向課程資源的融合知識圖譜與多任務(wù)特征推薦算法MLKR通過推薦模塊和知識圖譜嵌入模塊提取課程資源的相關(guān)特征,使用交叉壓縮單元學(xué)習(xí)實(shí)體之間的高階交互,并在兩個(gè)任務(wù)之間傳遞,解決了推薦算法中數(shù)據(jù)稀疏和冷啟動(dòng)的問題。與傳統(tǒng)基于用戶的協(xié)同過濾算法和多層存儲推薦算法相比,提出的MLKR算法可以更加精準(zhǔn)、高效地實(shí)現(xiàn)課程資源推薦。