陳沖沖+李冰+彭利園+駱玉璞
摘要:以往學(xué)生在選擇自己的導(dǎo)師時(shí)十分盲目,學(xué)生和教師之間的匹配度不高,教育資源不能得到很合理的配置。利用高校教務(wù)系統(tǒng)的學(xué)生評(píng)教數(shù)據(jù),對(duì)教師進(jìn)行聚類(lèi),構(gòu)建學(xué)生-導(dǎo)師矩陣,利用提出的基于協(xié)同過(guò)濾模型的導(dǎo)師推薦算法,為學(xué)生推薦合適的導(dǎo)師。同時(shí)克服常見(jiàn)的數(shù)據(jù)稀疏性的問(wèn)題,經(jīng)過(guò)實(shí)驗(yàn)論證,該算法的推薦結(jié)果比較客觀準(zhǔn)確。
關(guān)鍵詞:協(xié)同過(guò)濾推薦;聚類(lèi);冷啟動(dòng);稀疏性
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)04-0076-00
Mentor Recommended Study based on Collaborative Filtering Algorithm
CHEN Chong-chong, LI Bing, PENG Li-yuan, LUO Yu-pu
(Henan normal university, college of education and sort development, Xinxiang 453007, China)
Abstract: Before students in choosing his mentor is blind, degree of match between students and teachers is not high, education resources can not be very reasonable configuration. Use of data, high educational administration system of student evaluation of teachers to clustering, to build student-teacher matrix, using the proposed teacher recommendation algorithm based on collaborative filtering model, recommend suitable for student. At the same time, to overcome the common data sparseness problem, after the experimental demonstration, the algorithm of the recommended results more objective and accurate.
Key words:Collaborative filtering recommendation;clustering; Cold start; Sparsity
1概述
在高校信息化大潮的裹挾下,網(wǎng)上評(píng)教活動(dòng)變得極其普遍。此外,協(xié)同過(guò)濾是一種廣泛使用的推薦技術(shù),恰好可以利用用戶(hù)的行為數(shù)據(jù),也就是學(xué)生對(duì)老師的評(píng)價(jià)數(shù)據(jù)進(jìn)行分析計(jì)算,且修改后的相似度計(jì)算公式可以有效的克服數(shù)據(jù)稀疏性的問(wèn)題,實(shí)驗(yàn)的推薦結(jié)果也令人比較滿(mǎn)意。
2傳統(tǒng)的協(xié)同過(guò)濾技術(shù)
2.1學(xué)生—導(dǎo)師評(píng)分矩陣
學(xué)生--導(dǎo)師評(píng)分?jǐn)?shù)據(jù)是協(xié)同過(guò)濾算法的基礎(chǔ),評(píng)分分值在[1,5]范圍內(nèi)。評(píng)分?jǐn)?shù)據(jù)如表1所示。(注:u表示學(xué)生,I表示老師,數(shù)字表示某學(xué)生對(duì)某老師的評(píng)分)
2.2 計(jì)算用戶(hù)相似性,找到最近鄰居
Pearson系數(shù)是目前常用的相似性度量方法,設(shè)I(u)、I(v) 分別表示學(xué)生u、v的評(píng)分集合, I(u)?I(v)表示u、v共同評(píng)分的導(dǎo)師集合,則學(xué)生u、v的相似性(Sim(u,v))可用式(1)進(jìn)行計(jì)算。
Sim(u,v)
[ =i∈(I(u)∩I(v))(Ru,i-Ru)i∈(I(u)∩I(v))(Ru,i-Ru)2i∈(I(u)∩I(v))(Rv,i-Rv)2 (1)]
其中,[Ru,i]、[Rv,i]分別表示學(xué)生u和學(xué)生v對(duì)導(dǎo)師i( i∈I(u)?I(v) )的評(píng)分值,[Ru]、[Rv]分別表示學(xué)生u 和學(xué)生 v 的評(píng)分均值。
2.3 產(chǎn)生推薦
本文采用平均加權(quán)法預(yù)測(cè)評(píng)分,設(shè)學(xué)生a 對(duì)未評(píng)分導(dǎo)師 t ( t∈I(U a ) ,I(U a ) 是學(xué)生 a 的近鄰集合U a 的評(píng)分導(dǎo)師集合)的預(yù)測(cè)評(píng)分為[Pa,t],其計(jì)算方法如式(2)所示
[ Pa,t]=[Ra]+[i∈Uasim(a,i)×(Ri,t-Ri)i∈Uasim(a,i)] (2)
其中,[Ra]是目標(biāo)學(xué)生 a 已評(píng)價(jià)導(dǎo)師的平均評(píng)分,[Ri]是學(xué)生 i 的平均評(píng)分。最后取得的興趣度在前 N的導(dǎo)師形成 Top-N推薦集, 為學(xué)生做出導(dǎo)師推薦。
3改進(jìn)過(guò)的協(xié)同過(guò)濾技術(shù)
利用式(1)計(jì)算時(shí),多個(gè)學(xué)生對(duì)同一個(gè)老師的評(píng)價(jià)集合必須存在,但隨著數(shù)據(jù)量的不斷增大,學(xué)生評(píng)分?jǐn)?shù)據(jù)極端稀疏的情況就可能出現(xiàn),此時(shí),運(yùn)用式(1)進(jìn)行學(xué)生相似性計(jì)算得不到準(zhǔn)確的答案。據(jù)此,本文基于學(xué)生興趣類(lèi)別的活躍度來(lái)構(gòu)建三維矩陣。算法一是擴(kuò)充了學(xué)生—學(xué)生活躍度評(píng)分矩陣,二是使用加權(quán)平均數(shù)和最大函數(shù)。
3.1基于學(xué)生興趣的相似性計(jì)算
將學(xué)生 u 的活躍度設(shè)定為學(xué)生評(píng)分的總導(dǎo)師數(shù)與總導(dǎo)師數(shù)的比值,在計(jì)算學(xué)生活躍度時(shí),根據(jù)領(lǐng)域知識(shí)確定導(dǎo)師所屬類(lèi)別,然后基于不同的導(dǎo)師類(lèi)別確定學(xué)生活躍度。設(shè)[Gu,i]、[Gv,i]表示學(xué)生 u 、 v 對(duì)導(dǎo)師類(lèi)別 i(i=1,2,...,C I ) 中導(dǎo)師的評(píng)分?jǐn)?shù)量,則[Gu,i] /[NCi]( NC i 表示導(dǎo)師類(lèi)別 i中導(dǎo)師數(shù))可以表示基于興趣類(lèi)別的學(xué)生活躍度。則兩個(gè)學(xué)生活躍度的差異可以用式(3)表示。
dif(u,v)=[i=1CIGu,i-Gv,ii=1CI(Gu,i+Gv,i)] (3)
引入學(xué)生活躍度,對(duì)式(1)進(jìn)行改進(jìn),如式(4)。
Sim(u,v)=[αsimu,v+(1-α)(1-dif(u,v))] (4)
其中,sim(u,v) 是根據(jù)式(1)計(jì)算的學(xué)生u、v的相似性,α∈[0,1] 是調(diào)整參數(shù),調(diào)整學(xué)生相似性和學(xué)生興趣活躍度的權(quán)重。
3.2基于學(xué)生興趣類(lèi)別的活躍度擴(kuò)展評(píng)分矩陣
利用基于興趣類(lèi)別的學(xué)生活躍度對(duì)學(xué)生-導(dǎo)師評(píng)分矩陣進(jìn)行擴(kuò)充,即在原矩陣上增加[Ci]列,每列對(duì)應(yīng)的數(shù)據(jù)等于[Gu,i] /[NCi]。例如:若學(xué)生-導(dǎo)師評(píng)分矩陣數(shù)據(jù)如表1所示,學(xué)生評(píng)分值在1-5之間。假設(shè)導(dǎo)師集 I={I1,I2,I3,I4,I5,I6}可以劃分到sort1、sort2類(lèi)別中,其中sort1包含I1、I2、I3,sort2包含I4、I5、I6,則將表1擴(kuò)展為表2所示的數(shù)據(jù)形式,將其稱(chēng)之為學(xué)生-導(dǎo)師—學(xué)生興趣活躍度矩陣。
3.3 基于學(xué)生興趣改進(jìn)的協(xié)同過(guò)濾算法具體算法步驟描述如下:
用下面的方法去測(cè)量?jī)蓚€(gè)導(dǎo)師[ik與ij]間的相似度。
[ simEucliean]([ik,ij])=-[w=1w(ikw-ijw)2] (5)
[ simCosine]([ik,ij])=-[ik ? ijik?ij] (6)
[ simJaccard]([ik,ij])=[ik∩ijik∪ij] (7)
[ simDice]([ik,ij])=[2 ?ik∩ijik+ij] (8)
在這里,||[?]||代表向量的長(zhǎng)度,同時(shí),|.|表示被視作元素集合的向量的基數(shù)。我們用加權(quán)平均和最大函數(shù)這兩種方法去測(cè)量基于標(biāo)簽和學(xué)生的向量[ik ij]上的導(dǎo)師間的相似度分?jǐn)?shù)。
正式地,測(cè)量方法如下:
[WMSik,ij=α?simu(ik,ij)+β?simh(ik,ij)(α+β)] (9)
其中,[simu(ik,ij)]是導(dǎo)師學(xué)生矩陣中兩個(gè)導(dǎo)師間的相似度,[simh(ik,ij)]是導(dǎo)師標(biāo)簽矩陣中兩個(gè)導(dǎo)師間的相似度。且α和β是我們給通過(guò)測(cè)試得到的兩個(gè)相似度分?jǐn)?shù)的權(quán)重。我們也使用最大函數(shù)MAXS([ik,ij])來(lái)輸出[simu(ik,ij)]和[simh(ik,ij)]的最大值。
MAXS(iK,ij)=max{ [simu(ik,ij)],[simh(ik,ij)]} (10)
結(jié)合從導(dǎo)師-學(xué)生和導(dǎo)師-學(xué)生興趣活躍度兩個(gè)矩陣中生成的相似分?jǐn)?shù)之后,通過(guò)一個(gè)導(dǎo)師-導(dǎo)師的協(xié)同過(guò)濾方法,我們發(fā)現(xiàn)了這個(gè)預(yù)測(cè)分?jǐn)?shù)rk,l(去給學(xué)生)。特別地,與學(xué)生已經(jīng)發(fā)布的導(dǎo)師的前N個(gè)類(lèi)似導(dǎo)師通過(guò)降序排列被排名,并且被插入一個(gè)叫Lk,l的列。為了預(yù)測(cè)分?jǐn)?shù)rk,l,一個(gè)方法是在列表Lk,l中取導(dǎo)師相似度iK的平均或最大值。如果這個(gè)預(yù)測(cè)分?jǐn)?shù)超過(guò)一個(gè)臨界值,我們就把導(dǎo)師推薦給學(xué)生。
4實(shí)驗(yàn)及分析
本文的實(shí)驗(yàn)數(shù)據(jù)來(lái)源于河南師范大學(xué)教育與教師發(fā)展學(xué)院2015屆的評(píng)教系統(tǒng)數(shù)據(jù)庫(kù)。本文采用MAE來(lái)評(píng)價(jià)協(xié)同的推薦質(zhì)量。 MAE越小, 推薦結(jié)果就越合理。設(shè)預(yù)測(cè)的學(xué)生評(píng)分集合表示為{[p1] ,[p2] , …,[pn] }, 對(duì)應(yīng)的實(shí)際學(xué)生評(píng)分集合為{[r1] ,[r2] , …,[rn] }, 平均絕對(duì)誤差 MAE表示為
[ MAE=i=1npi-ri∕n] (11)
實(shí)驗(yàn)結(jié)果如圖1所示。
據(jù)圖1可知,隨著鄰居數(shù)目增加,基于協(xié)同過(guò)濾的導(dǎo)師推薦算法的精度也有所提高。數(shù)據(jù)量很小時(shí),MAE也很小。
為了得到更為準(zhǔn)確的實(shí)驗(yàn)結(jié)果,對(duì)50名在校學(xué)生作了實(shí)際的調(diào)查, 根據(jù)學(xué)生對(duì)導(dǎo)師的評(píng)價(jià)為每位學(xué)生推薦 5人導(dǎo)師, 使用查準(zhǔn)率和誤判率來(lái)評(píng)價(jià)實(shí)驗(yàn)效果。實(shí)驗(yàn)結(jié)果見(jiàn)表3。
[precision=推薦成功的導(dǎo)師推薦導(dǎo)師數(shù)目](14)[ fallout=推薦失敗的導(dǎo)師推薦導(dǎo)師數(shù)目] (15)
從表 3可以看出,當(dāng)學(xué)生數(shù)一定時(shí),評(píng)價(jià)的導(dǎo)師數(shù)越多,推薦的查準(zhǔn)率越高,誤判率越低,推薦效果越佳。
5結(jié)束語(yǔ)
本文就協(xié)同推薦時(shí)數(shù)據(jù)的稀疏性問(wèn)題,提出了一種解決方案。一是擴(kuò)充了學(xué)生—學(xué)生活躍度評(píng)分矩陣,二是我們使用加權(quán)平均數(shù)和最大函數(shù)的方法結(jié)合基于學(xué)生和學(xué)生興趣類(lèi)別的活躍度之間的相似度來(lái)預(yù)測(cè)學(xué)生對(duì)于每個(gè)導(dǎo)師的偏好得分。從而針對(duì)學(xué)生的興趣愛(ài)好及專(zhuān)業(yè)特點(diǎn)提供個(gè)性化的導(dǎo)師推薦。經(jīng)相關(guān)實(shí)驗(yàn)證明,該系統(tǒng)可以有效地提高導(dǎo)師和學(xué)生間的匹配率,從而使教育資源的到更加合理的配置,該算法也可在其他領(lǐng)域進(jìn)行推廣。
參考文獻(xiàn):
[1] 檀潤(rùn)華.創(chuàng)新設(shè)計(jì)[M].北京:機(jī)械工業(yè)出版社,2002.
[2] 郭煒強(qiáng),文軍,文貴華. 基于貝葉斯模型的專(zhuān)利分類(lèi)[J].計(jì)算機(jī)工程與設(shè)計(jì),2005,26(8).
[3] 張國(guó)明.一種專(zhuān)利文本自動(dòng)分析的系統(tǒng)及方法[P].中國(guó),CNl01539906A.2009-09-03.
[4] 郭艷紅, 鄧貴仕.協(xié)同過(guò)濾的一種個(gè)性化推薦算法研究[J] .計(jì)算機(jī)應(yīng)用研究, 2008,25(1).