王根生,袁紅林,黃學堅,閔 潞
1(江西財經(jīng)大學 國際經(jīng)貿(mào)學院,南昌 330013)
2(江西財經(jīng)大學 計算機實踐教學中心,南昌 330013)
3(江西財經(jīng)大學 人文學院,南昌 330013)
隨著互聯(lián)網(wǎng)的普及,各種在線網(wǎng)絡(luò)學習平臺迅速發(fā)為用展,戶提供了豐富的學習資源.面對海量的學習資源如何根據(jù)用戶的學習興趣、習慣、能力實現(xiàn)個性化資源推薦是網(wǎng)絡(luò)學習平臺的發(fā)展趨勢.個性化推薦在電子商業(yè)領(lǐng)域運用非常廣泛,針對個性化網(wǎng)絡(luò)學習資源推薦研究方面,國內(nèi)外學者進行了相關(guān)研究探索.陳潔敏[1]對目前學習資源個性化推薦算法進行歸納,總結(jié)出主要有基于內(nèi)容過濾、基于關(guān)聯(lián)規(guī)則、基于協(xié)同過濾和基于混合模式,梁婷婷[2]通過內(nèi)容向量空間濾波建立學習資源過濾模型;丁繼紅[3]在大數(shù)據(jù)的環(huán)境下對學習者、資源、情景等進行多維關(guān)聯(lián)分析,實現(xiàn)資源和學習者之間的個性匹配;沈苗[4]設(shè)計一種以學生屬性分類為基礎(chǔ)的協(xié)同過濾算法,實現(xiàn)學生選課系統(tǒng)的智能化、個性化資源推薦;Lei W[5]先通過數(shù)據(jù)挖掘得到關(guān)聯(lián)規(guī)則建立偏好矩陣,再和協(xié)同過濾算法混合進行個性化推薦.
基于內(nèi)容過濾推薦算法需要建立資源特征表示[6],而網(wǎng)絡(luò)學習資源形式多樣化,很難建立統(tǒng)一的特征表示;關(guān)聯(lián)規(guī)則推薦算法需要海量的樣本數(shù)據(jù)支撐,并且個性化程度偏低[7];資源和用戶進行特征表示在協(xié)同過濾推薦算法可以省略[8],通過對資源建立用戶興趣相似度模型,根據(jù)興趣相似用戶的偏好對資源進行偏好預測,是目前運用于網(wǎng)絡(luò)學習資源個性化推薦中最流行的算法.但傳統(tǒng)的協(xié)同過濾算法面臨冷啟動和矩陣稀疏問題[9],針對這兩個問題不少學者也提出相關(guān)改進方法,管水城[10]提出一種在矩陣分解技術(shù)的基礎(chǔ)上同時考慮社交網(wǎng)絡(luò)推薦的新方法,幫助用戶在海量的線上異構(gòu)數(shù)據(jù)中快速發(fā)現(xiàn)其感興趣的內(nèi)容;顧寰[11]提出一種融合社區(qū)結(jié)構(gòu)和個人興趣的協(xié)同過濾推薦算法,有效緩解了推薦系統(tǒng)數(shù)據(jù)稀疏性的問題;高玉凱[12]提出一種基于協(xié)同矩陣分解的用戶冷啟動推薦算法,在多個維度上得到用戶的潛在特征,緩解冷啟動問題;Shulong C[13]在利用用戶-項目評價顯式信息的基礎(chǔ)上,加入其他的隱式信息填充用戶-項目評價矩陣,從而緩解評價矩陣稀疏問題;付芬[14]提出一種基于隱式評分和相似度傳遞的學習資源推薦算法,改進協(xié)同過濾推薦算法的相似度計算;丁永剛[15]提出一種改進協(xié)同過濾推薦算法,該算發(fā)融合學習者社交網(wǎng)絡(luò)信息,根據(jù)社交網(wǎng)絡(luò)中學習者之間的信任度預測缺失評分,緩解了協(xié)同過濾方法的矩陣稀疏問題;Wang X[16]提出一種改進協(xié)同過濾推薦算法,該算法的核心是學生在線學習行為序列數(shù)據(jù),算法性能相對傳統(tǒng)算發(fā)得到了改善.通過研究發(fā)現(xiàn),挖掘用戶其他潛在特征、添加用戶-項目間的隱式信息是目前解決協(xié)同過濾冷啟動和矩陣稀疏問題的主要思路.
針對網(wǎng)絡(luò)學習資源推薦這個特定領(lǐng)域,本文引入用戶對資源的學習行為日志(分享、收藏、瀏覽、下載等)緩解評分矩陣稀疏問題,添加用戶的學習能力、學習專業(yè)、學歷、興趣等潛在特征緩解用戶冷啟動問題,通過該改進的協(xié)同過濾算法來實現(xiàn)更加精準的個性化網(wǎng)絡(luò)學習資源推薦.
協(xié)同過濾推薦算法通常分為兩類:一類是基于用戶的協(xié)同過濾(User-based CF),另一類基于項目的協(xié)同過濾(Item-based CF)[17].User-based CF根據(jù)用戶對資源的歷史興趣建立用戶相似度模型[18],通過興趣相似的用戶預測評分,把預測評分高的資源推薦給用戶[19];Item-based CF根據(jù)用戶對資源的歷史評價建立資源相似度模型,計算資源間的相似度,然后把和用戶歷史偏好相近的資源推薦給用戶[20].相似度計算是推薦算法的核心部分[21],主要有余弦相似度、皮爾遜相似度、Jaccard相似度、對數(shù)似然相似度[22].余弦相似度是一種比較常用的相似度計算方法,將用戶對資源的歷史評價表示為向量,用戶興趣的相似度通過評價向量的余弦值來衡量,計算如公式(1)所示.
(1)
(2)
本文使用基于用戶的協(xié)同過濾推薦算法建立網(wǎng)絡(luò)學習資源的個性化推薦系統(tǒng),針對協(xié)同過濾推薦算法的矩陣稀疏和冷啟動問題,引入學習行為日志和用戶初始化標簽進行算法改進,具體算法如下:
算法1.改進型用戶協(xié)同過濾推薦算法
Step 1.根據(jù)用戶歷史資源評價,生成用戶資源評價矩陣;
Step 2.根據(jù)用戶資源學習行為,生成用戶資源行為矩陣;
Step 3.基于用戶資源行為矩陣,調(diào)整用戶資源評價矩陣,生成用戶-資源矩陣;
Step 4.根據(jù)用戶能力、專業(yè)、興趣和學歷標簽,生成用戶初始化標簽;
Step 5.根據(jù)用戶-資源矩陣和用戶初始化標簽,計算用戶相似度;
Step 6.產(chǎn)生推薦結(jié)果.
算法1的具體算法模型架構(gòu)如圖1所示.
圖1 算法1改進型用戶協(xié)同過濾推薦算法模型架構(gòu)
將用戶對資源的歷史評價轉(zhuǎn)換成分值矩陣,形成M×N的矩陣,如圖2所示.
圖2 用戶資源評價矩陣
Uk為第k個用戶,ij為第j個資源,rkj為用戶k對資源j的評分,取值范圍為0-10,沒有評價過的資源默認為0,當資源數(shù)比較多時,用戶評價的資源可能只有很少的一部分,所以整個矩陣中大部分的值為0,導致整個矩陣稀疏.
用戶對網(wǎng)絡(luò)資源的操作不僅僅只是直接的獲取與評價,中間也會進行分享、收藏、瀏覽、下載等學習行為.這些操作行為也側(cè)面反映了用戶對資源的學習興趣,所以通過收集用戶學習行為日志,分析其學習行為軌跡,建立行為軌跡與資源評價的關(guān)系,從而挖掘用戶的相似度,一定程度上可以改善協(xié)同過濾算法的矩陣稀疏問題.把用戶對資源的相關(guān)學習行為轉(zhuǎn)換成對應的興趣評分,分值通過調(diào)查問卷方式獲取,問卷給定15種學習行為,被調(diào)查者根據(jù)自己以往的經(jīng)驗給與不同的評分,例如對某個學習資源只是點擊瀏覽了一下,說明用戶對該資源評價可能不高,而用戶對資源進行了瀏覽+收藏+下載+分享,說明用戶對該資源評價應該挺高.問卷一共發(fā)放了500份給在校學生,有效回收了421份,統(tǒng)計每種行為的平均分,再規(guī)約為0.5的倍數(shù),最終得出的分值如表1所示.
表1 學習行為資源評分
分析用戶學習行為日志,構(gòu)建用戶資源行為矩陣,如圖3所示.
圖3 用戶資源行為矩陣
Uk為第k個用戶,ij為第j個資源,skj為用戶k對資源j的學習行為,取值范圍如表1所示.
依據(jù)用戶資源行為矩陣對圖2中的用戶資源評價矩陣進行調(diào)整.如果用戶沒有對某個資源進行評價過,則分析是否對該資源進行過相關(guān)學習行為操作,并根據(jù)表1計算相應的分值.經(jīng)過這一處理,得出用戶-資源矩陣,該矩陣的稠密度明顯高于用戶資源評價矩陣的稠密性.
用戶的學習能力、學習專業(yè)、學歷、興趣等特征是對用戶的直接描述,當一個新用戶加入系統(tǒng)時,我們無法根據(jù)用戶資源評價向量的相似度來查找其興趣相似的用戶,但如果有了這些用戶的初始化標簽,我們就可以根據(jù)這些標記進行用戶的相似度計算,從而解決新用戶的冷啟動問題.用戶的標簽表示如公式(3)所示.
Tu=[tua,tum,tur,tui]
(3)
tua、tum、tur、tui分別代表用戶u的學習能力、專業(yè)、學歷、興趣.
1)學習能力:分為4個層次,分別為差、中、良、優(yōu),用1-4表示.用戶u和v學習能力相似度計算如公式(4)所示.
(4)
2)學習專業(yè):依據(jù)教育部的專業(yè)分類,共13個學科,92個專業(yè)類,630個專業(yè).用戶u和v學習專業(yè)的相似度計算如公式(5)所示.
(5)
3)學歷:分中等和高等教育,中等教育分普通中專、高中,分別用1、2表示;高等教育分??啤⒈究?、碩士研究生、博士研究生,分別用3-6表示.用戶u和v學歷的相似度計算如公式(6)所示.
(6)
4)興趣:主要是對那些專業(yè)感興趣,可以多選,但限定不超過5個.用戶興趣的相似度計算如公式(7)所示.
(7)
其中Iu和Iv分別代表用戶u和v感興趣的專業(yè)集合,m和n分別代表Iu和Iv兩個集合的大小.sim(tua,tvb)的計算見公式(5).
把這四者的相似度進行融合,得到用戶初始化標簽的整體相似度,計算如公式(8)所示.
simt(u,v)=αsim(tua,tva)+βsim(tum,tvm)+
γsim(tur,tvr)+δsim(tui,tvi)
(8)
在公式(8)中,α+β+γ+δ=1,分別代表對應相似度所占權(quán)重,sim(tua,tva)、sim(tum,tvm)、sim(tur,tvr)和sim(tui,tvi)的計算分別為公式(4)-公式(7).
用戶相似度采用線性加權(quán)方式融合用戶資源評分相似度和用戶初始化標簽相似度,其計算如公式(9)所示.
sim(u,v)=φsimi(u,v)+(1-φ)sim_t(u,v)
(9)
在公式(9)中,φ為融合權(quán)重因子,取值范圍為[0,1];sim_i(u,v)為用戶資源評分相似度,計算見公式(2),其用戶評價數(shù)據(jù)來源用戶-資源矩陣;sim_t(u,v)為用戶初始化標簽相似度,計算見公式(8).
得出用戶的相似度后,按大小進行排序,選擇前k個鄰近用戶作為目標用戶u的相似用戶集Su={su1,su2,su3,…,suk}.在相似用戶集Su中找出所有目標用戶u沒有評價過的資源,并預測目標用戶u對該資源的評分,具體計算如公式(10)所示.
(10)
通過公式(10)的計算,給用戶u推薦預測評分最高的Top-N個資源.
實驗數(shù)據(jù)使用JXUFE大學網(wǎng)絡(luò)教學平臺的后臺管理數(shù)據(jù),平臺中包括1215門課程,42452名學生用戶,從中隨機抽取出3000用戶、500門課程作為實驗數(shù)據(jù).實驗數(shù)據(jù)中包含學生對課程的評分和瀏覽、收藏、下載、分享等行為記錄,以及學生之間的評論和轉(zhuǎn)發(fā)記錄.由于平臺設(shè)計之初沒有考慮用戶的初始化標簽,所以后臺數(shù)據(jù)沒有關(guān)于用戶學習能力、學習專業(yè)、學歷、興趣的標簽記錄,但可以通過教務管理系統(tǒng)中的數(shù)據(jù),分析出相關(guān)的標簽值,具體如下:
·學習能力值:根據(jù)教務系統(tǒng)中記錄的學生考試成績,得到其學習能力;
·學習專業(yè):根據(jù)教務系統(tǒng)數(shù)據(jù)可以得出其專業(yè);
·學歷:根據(jù)教務系統(tǒng)數(shù)據(jù)得到,目前平臺只用本科、碩士、博士3種學歷;
·興趣:選擇用戶評分最高的10門課程所屬專業(yè)作為其興趣專業(yè).
實驗使用預測評分與實際用戶評分的均方根誤差(RMSE)進行衡量,RMSE計算如公式(11)所示.
(11)
實驗步驟如下:
Step 1.根據(jù)用戶對資源的歷史評分得到用戶資源評分向量;
Step 2.分析用戶對資源的學習行為并轉(zhuǎn)化成資源評分向量;
Step 3.融合Step 1和Step 2的向量,得到最終用戶資源評分向量;
Step 4.聯(lián)合教務管理系統(tǒng)得出用戶的學習能力、專業(yè)、學歷、興趣標簽值;
Step 5.根據(jù)公式(2)計算用戶資源評分相似度;
Step 6.根據(jù)公式(8)計算用戶初始化標簽相似度,其中α、β、γ、δ,4個權(quán)重取值設(shè)為1/4;
Step 7.根據(jù)公式(9)計算最終用戶的相似度;
Step 8.根據(jù)Step 7的結(jié)果,尋找與目標用戶u相似最高的前k個用戶;
Step 9.計算目標用戶u對資源的預測評分,計算見公式(10);
Step 10.計算預測評分和實際評分的均方根誤差(RMSE).
試驗步驟Step 1得到的原始用戶資源評分向量的稀疏程度為84%,稀疏程度具體計算如公式(12)所示.
(12)
在公式(12)中,EvalNum表示為用戶對課程資源的評價數(shù)量,UserNum、ResUum分別為用戶總數(shù)和課程資源總數(shù).通過Step3融合學習行為資源評分,得到最終的用戶資源評分向量的稀疏程度為61%,緩解了矩陣稀疏程度.
4.3.1 不同鄰近用戶個數(shù)k值的實驗對比
實驗過程中,設(shè)定公式(9)中的融合權(quán)重因子φ為0.7.鄰近用戶個數(shù)k的取值從10逐步增加到50,每次增加步長為5,共9組實驗,分別統(tǒng)計每組實驗的RMSE值,實驗結(jié)果如圖4所示.
圖4 不同k值下RMSE結(jié)果
從實驗結(jié)果可以看出,在該實驗設(shè)定的參數(shù)下,鄰近用戶個數(shù)k為30時RMSE值最小.
4.3.2 不同融合權(quán)重因子φ值的實驗對比
融合權(quán)重因子φ是公式(9)的一個關(guān)鍵因子,它決定了公式(9)中用戶資源評分相似度simi(u,v)和用戶初始化標簽相似度sim_t(u,v)的權(quán)重.為了選取合適的φ值,進行了11組試驗對比,φ的取值范圍是{0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1}.鄰近用戶個數(shù)k設(shè)定為30,實驗結(jié)果如圖5所示.
圖5 不同φ值下RMSE結(jié)果
通過實驗發(fā)現(xiàn),在設(shè)定參數(shù)下,融合權(quán)重因子φ為0.7時RMSE值最小.
4.3.3 新用戶推薦效果實驗
為了驗證改進算法對用戶冷啟動問題的緩解效果,進行新用戶的推薦效果驗證實驗,隨機抽取出150個用戶作為測試數(shù)據(jù).為了模仿新用戶,在查找其相似用戶時,去除其資源評分相似度,只保留用戶初始化標簽相似度,實驗參數(shù)φ取0.7.推薦效果使用平均精準率(precision)和平均召回率(recall)進行衡量,計算如公式(13)和公式(14)所示.
(13)
(14)
表2 新用戶推薦實驗結(jié)果
通過實驗可以看出,本文算法對新用戶的推薦也有較好的效果,避免了協(xié)同過濾算法因新用戶冷啟動而無法推薦的問題.
4.3.4 與傳統(tǒng)協(xié)同過濾算法對比實驗
為了驗證本文改進算法的性能,將本文提出的算法與另外4類算法進行對比實驗,5類算法如表3所示.
表3 5類協(xié)同過濾推薦算法
5類算法的最鄰近個數(shù)都設(shè)定為30,IT_UCF的融合權(quán)重因子φ設(shè)定為0.7,使用RMSE進行衡量,實驗結(jié)果如圖6所示.
圖6 與傳統(tǒng)協(xié)同過濾算法對比實驗結(jié)果
通過對比實驗發(fā)現(xiàn),I_UCF和T_UCF都比UCF和ICF兩種傳統(tǒng)協(xié)同過濾推薦算法的RMSE值要小,說明引入用戶學習行為日志或用戶初始化標簽相似度確實能改進傳統(tǒng)協(xié)同過濾推薦算法;IT_UCF算法比I_UCF和T_UCF兩種算法的RMSE值要小,說明同時引入用戶學習行為日志和用戶初始化標簽比單獨只引入其中一種的效果要好.
4.3.5 與其他改進算法對比實驗
為了進一步驗證文本改進算法的性能,將本文算法(T_UCF)和基于隱式評分和相似度傳遞的學習資源推薦算法(CF-IRST)[14]、融合學習者社交網(wǎng)絡(luò)的協(xié)同過濾學習資源推薦算法(Social-CF)[15]和基于在線學習行為序列的學習資源推薦算法(OLSB-UCF)[16]做實驗對比.T_UCF融合權(quán)重因子φ設(shè)定為0.7,CF-IRST的傳遞路徑閾值設(shè)定2,Social-CF信任度計算權(quán)重參數(shù)α設(shè)定為0.4,OLSB-UCF聚類k設(shè)定為5,鄰近用戶個數(shù)k的取值從10逐步增加到50,每次增加步長為5,共9組實驗,把RMSE值作為實驗對比結(jié)果,結(jié)果如圖7所示.
圖7 與其他改進算法對比實驗結(jié)果
通過對比發(fā)現(xiàn),T_UCF,CF-IRST和Social-CF這3種算法隨著鄰近用戶個數(shù)k的變化RMSE值具有較大的波動,而OLSB-UCF算法波動較小,這可能是因為OLSB-UCF算法是在聚類的基礎(chǔ)上進行的協(xié)同過濾,在各自所屬的聚類中挑選鄰近用戶,從而減少了鄰近用戶個數(shù)k的影響.T_UCF相比其他兩種改進的算法CF-IRST和Social-CF在不同的鄰近用戶個數(shù)下始終能保持較小的RMSE值,在鄰近用戶個數(shù)k為30左右時RMSE值小于OLSB-UCF算法的最小RMSE值,進一步證明了本文算法的有效性.
智慧網(wǎng)絡(luò)教育面對海量的在線學習資源使用個性化學習資源推薦是其發(fā)展的趨勢.針對基于傳統(tǒng)協(xié)同過濾推薦算法中典型問題—冷啟動和矩陣稀疏,提出了引入用戶學習行為日志和用戶初始化標簽的改進型用戶協(xié)同過濾網(wǎng)絡(luò)學習資源個性化推薦算法.該算法將用戶對資源的操作行為和用戶初始化標簽添加到用戶的相似度計算中.并且通過實驗對比證明了該算法的有效性.但本文算法也存在一定不足,一方面是算法存在一定的局限性,在很多其他應用領(lǐng)域用戶對資源的操作日志與用戶初始化標簽不好獲?。涣硪环矫?,隨著時間的推移,用戶的學習興趣、習慣、能力等可能會發(fā)生變化,歷史數(shù)據(jù)存在時效性,這種用戶興趣漂移現(xiàn)象本文提出的算法沒有考慮.針對這些問題還需進一步研究.