李薛劍 劉夢雅 海健強 吳雪揚 余雪莉
1(中國科學(xué)技術(shù)大學(xué)計算機科學(xué)與技術(shù)學(xué)院 安徽 合肥 230026)2(安徽大學(xué)信息保障技術(shù)協(xié)同創(chuàng)新中心 安徽 合肥 230601)3(安徽科技貿(mào)易學(xué)校 安徽 蚌埠 233000)
隨著高校圖書館的不斷發(fā)展,一方面館藏圖書資源日益增加,另一方面又給讀者帶來了信息過載現(xiàn)象。對于傳統(tǒng)的圖書管理系統(tǒng),讀者在手動檢索書名或書號,明確喜歡的書目,享受系統(tǒng)的被動式服務(wù)的同時,優(yōu)質(zhì)卻小眾的書籍得不到關(guān)注,易造成資源浪費。在此背景下,針對圖書資源個性化推薦系統(tǒng)的研究發(fā)展迅速。然而,高校圖書館與一般圖書館不同,同一學(xué)科讀者在不同學(xué)習(xí)階段具有知識背景相似的特點,采用有針對性的個性化推薦是解決讀者個性化閱讀需求和提升系統(tǒng)質(zhì)量的重要方法。本文從理論方法的角度,詳細介紹基于矩陣分解的隱語義模型[1]并融合時間信息實現(xiàn)對高校圖書的個性化推薦,最后通過實驗驗證方法的效果和可行性。
1.1 核心思想
隱語義模型LFM(Latent Factor Model)是協(xié)同過濾的典型代表,通過隱類聯(lián)系用戶興趣和物品;通過矩陣分解技術(shù)建立用戶和隱類之間的關(guān)系、隱類和物品之間的關(guān)系;通過矩陣分解[2]的方法補全用戶物品矩陣[3-4],達到預(yù)測用戶對物品偏好程度的目的。
圖1 隱語義模型示意圖
1.2 形式化定義R矩陣是user-item矩陣,矩陣值Rij表示user i對item j的偏好程度,對于一個確定的用戶,在計算出其對所有項目的興趣度后,就可以進行排序并做出推薦。R矩陣表示為P矩陣和Q矩陣相乘,其中P矩陣是user-class矩陣,矩陣值Pij表示user i對class j的興趣度;Q矩陣是class-item矩陣,矩陣值Qij表示class i對item j的權(quán)重,權(quán)重越高越可以作為此類的代表[5]。LFM模型的興趣度[6]定義如公式所示:
(1)
(2)
(3)
(4)
(5)
(6)
式中:α是學(xué)習(xí)速率,取值需通過反復(fù)實驗獲得。
2.1 Bias-SVD
高校圖書館個性化信息推薦系統(tǒng)中的讀者-圖書矩陣,在和讀者圖書間交互關(guān)系相關(guān)的同時,也與讀者和圖書本身相關(guān),這就是我們所說的偏差或偏置。為了更好地考慮由系統(tǒng)本身,讀者和圖書無關(guān)的固有屬性,以及圖書和讀者無關(guān)的固有屬性[10],我們在原有隱語義模型中嘗試通過偏差解釋讀者和圖書本身的屬性。預(yù)測評分[11]可重新定義:
(7)
式中:μ表示全局平均數(shù),所有讀者-圖書對借閱量的平均數(shù),表示系統(tǒng)本身對借閱行為變化的影響;bu表示用戶偏置,表示不同年級不同專業(yè)讀者的借閱量與圖書無關(guān)的因素;bi表示物品偏置,表示圖書接受的評分中與用戶無關(guān)因素;pu表示讀者-類別矩陣;qi表示圖書-類別矩陣。
2.2 Time-SVD
(8)
式中:t表示用戶進入高校圖書館個性化推薦系統(tǒng)的持續(xù)天數(shù),bt是時間偏置,表示圖書的借出數(shù)目隨時間的變化,比如學(xué)生在期末之前借書較多,在開學(xué)時借書較少;xu和yt分別是隱語義模型中描述每位讀者的借閱數(shù)目隨讀者習(xí)慣變化的用戶矩陣和時間矩陣,用不同年級的學(xué)生的借書率來表示;w表示圖書進入高校圖書館個性化推薦系統(tǒng)的持續(xù)天數(shù),si和zw分別是隱語義模型中描述每種圖書的借閱數(shù)目隨圖書流行程度變化的項目矩陣和時間矩陣,用不同種類圖書的借書率來表示;guf、hif、ltf分別是隱語義模型中描述用戶偏好隨時間變化的用戶矩陣、項目矩陣和時間矩陣,用不同年級學(xué)生的不同種類圖書的借書率來表示。
2.3 冷啟動問題的解決
為了解決冷啟動問題,避免新用戶在無借書行為時推薦結(jié)果的不準確以及新書無人借閱時無法推薦,造成圖書資源浪費的行為。本系統(tǒng)利用用戶注冊信息,提取出學(xué)院和專業(yè)數(shù)據(jù)等,向新用戶推薦其同專業(yè)的學(xué)長學(xué)姐借閱量大的書籍,同時基于所推薦書籍進行基于物品的個性化推薦[13]。若本系統(tǒng)是第一次使用,無歷史信息可供選擇,則根據(jù)專業(yè)向其推選與專業(yè)相似類別的書籍。對于新物品,則根據(jù)物品所屬種類,計算相似度及熱度,根據(jù)用戶的興趣推薦以及以新書的方式進行非個性化的推薦。如果是第一批物品,不存在用戶對其熱度的歷史信息,則計算物品之間的相似度,形成聚類[14],向用戶推薦同一類的書籍。通過以上辦法,提高了推薦結(jié)果的準確性。
3.1 實驗數(shù)據(jù)集本文對算法評估實驗的數(shù)據(jù)集是高校圖書館讀者的借閱記錄,該數(shù)據(jù)集包括用戶名、圖書名、讀者的借閱記錄用來表示評分矩陣,數(shù)據(jù)集詳細信息見表1。實驗過程中將評分數(shù)據(jù)集分為數(shù)據(jù)集(80%)和測試集(20%),隨機劃分為5組,最終實驗以5次實驗驗證得到的MAE平均值和RMSE平均值為最終測試值。
表1 實驗數(shù)據(jù)集說明
3.2 評價指標(1) 平均絕對誤差(MAE)
(9)
(10)
式中:參數(shù)含義和式(9)相同,均方根誤差對評分誤差值做平方處理,加重了對評分預(yù)測不準確而產(chǎn)生誤差評分的懲罰,平均絕對誤差和均方根誤差均是數(shù)值越小推薦結(jié)果越準確[12]。
3.3 實驗參數(shù)
(1) 隱特征維度F特征的F維度代表了保留評分矩陣信息的多少,F(xiàn)越大,保留信息越多,但矩陣處理過程復(fù)雜;F越小,保留信息越少,但易造成推薦結(jié)果的偏差[6]。
(2) 學(xué)習(xí)速率α學(xué)習(xí)速率α代表模型迭代過程參數(shù)變化的快慢,α越大,模型收斂速度越快,易錯過最優(yōu)解;α越小,迭代次數(shù)增加,收斂速度較慢[6]。
(3) 正則項系數(shù)λ正則項系數(shù)λ需根據(jù)具體實驗確定,λ過大,出現(xiàn)欠擬合問題;λ過小,正則化效果不明顯。
3.4 結(jié)果分析
(1) 隱特征維度F對算法性能的影響 為了研究不同的推薦算法中隱特征維度F對算法性能及結(jié)果的影響,我們將進行如下實驗,保持參數(shù)α=0.005、λ=0.02不變,基于所給訓(xùn)練集迭代100次,通過改變F的大小觀察不同模型下預(yù)測誤差MAE 和RMSE的值(通過五次實驗取平均值),根據(jù)結(jié)果分別對不同的推薦算法進行評價,部分數(shù)據(jù)如表2所示,分布曲線如圖2所示。
表2 隱特征維度F在不同隱語義模型下的預(yù)測誤差值
圖2 不同隱語義模型下維度F變化時MAE和RMSE的分布曲線
圖3 模型Base-SVD學(xué)習(xí)速率和迭代次數(shù)的變化曲線
圖5 模型Time-SVD學(xué)習(xí)速率和迭代次數(shù)的變化曲線
由圖2可以看出,模型Base-SVD和模型Bias-SVD在隱特征維度F不斷變化的同時,均方根誤差RMSE和平均絕對誤差MAE波動幅度較大。在維度F小于80時,變化數(shù)量級在10-3左右,在維度F大于80小于1 000時,保持相對平穩(wěn)的狀態(tài),此時維度F的變化對于模型的推薦效果影響不大。且模型Base-SVD在F=500時,模型Bias-SVD在F=400時取得最低值推薦效果最好。模型Time-SVD的RMSE分布曲線接近一條直線,說明此時維度F的變化對推薦效果的影響不大,在參數(shù)選取的過程中可以減少對維度F值得考慮。通過三種模型分布曲線的對比我們可以發(fā)現(xiàn)考慮偏置項和時間信息的Time-SVD模型分布曲線位于最低位置,相同維度F條件下MAE和RMSE取值均最小,驗證了實驗中保持相同參數(shù)設(shè)置的條件下,Time-SVD模型提高了預(yù)測的精度和準確性,提高了推薦結(jié)果的質(zhì)量。(2) 學(xué)習(xí)速率α對算法性能的影響 學(xué)習(xí)速率控制模型迭代過程中參數(shù)變化的快慢,其大小直接關(guān)系到模型最后預(yù)測結(jié)果的準確性。本次實驗采用固定隱特征向量F=100,正則項系數(shù)λ保持不變,通過改變迭代次數(shù)n觀察不同模型下學(xué)習(xí)速率的變化情況,如圖3、圖4、圖5所示。觀察圖3圖4可以看出,模型Base-SVD和模型Bias-SVD在迭代次數(shù)從5到760之間變化時,均方根誤差RMSE和平均絕對誤差MAE均經(jīng)歷取值大幅度減少直到某一確定迭代次數(shù)后取值趨于穩(wěn)定,說明這兩種模型的迭代次數(shù)到達確定值后,預(yù)測誤差和推薦效果也趨于穩(wěn)定,最優(yōu)的學(xué)習(xí)速率較容易尋找。對于模型Bias-SVD,學(xué)習(xí)速率從0.001到0.007變化的過程中,均方根誤差RMSE和平均絕對誤差MAE均保持相對平穩(wěn)的狀態(tài),變化數(shù)量級在10-4左右,說明模型Time-SVD在實驗范圍內(nèi)學(xué)習(xí)速率對預(yù)測誤差的影響不大,對推薦結(jié)果的準確性影響較小,此模型具有很好的健壯性。在迭代次數(shù)和學(xué)習(xí)速率相同的情況下,模型Time-SVD的均方根誤差RMSE和平均絕對誤差MAE均小于其他兩種模型,說明模型Time-SVD的預(yù)測結(jié)果誤差較小,推薦結(jié)果的準確性得到了提高。
本文研究了隱語義模型的改進算法Time-SVD在
高校圖書館圖書個性化推薦中的應(yīng)用,該算法基于矩陣分解的隱語義模型與時間信息的融合,首先運用隨機梯度下降法求解用戶-項目評分矩陣,其次針對冷啟動問題提出一種改進的解決策略。另外本文在和Base-SVD算法、Bias-SVD算法的實驗比較中對隱特征維度和學(xué)習(xí)速率對不同模型的影響也進行了簡要分析。實驗結(jié)果表明,Time-SVD在個性化推薦問題上,較其他算法具有更好的尋優(yōu)性能、更快的收斂速度和更準確的推薦效果。
參 考 文 獻
[1] 朱揚勇,孫婧.推薦系統(tǒng)研究進展[J].計算機科學(xué)與探索,2015,9(5):531-525.
[2] 孟祥武,劉樹棟,張玉潔,等.社會化推薦系統(tǒng)研究[J].軟件學(xué)報,2015,26(6):1356-1372.
[3] 吳雄峰,賈年.基于用戶特征和時間效應(yīng)的協(xié)同過濾算法[J].現(xiàn)代計算機,2016,4(10):21-24.
[4] 周璐璐.融合社會信任關(guān)系的改進推薦系統(tǒng)[J].計算機應(yīng)用與軟件,2014,31(7):31-35.
[5] 項亮.推薦系統(tǒng)實踐[M].北京:人民郵電出版社,2012.
[6] 李琳娜,江雪琴.推薦系統(tǒng)中的隱語義模型研究[J].情報工程,2016,2(4):30-39.
[7] 張玉連,袁偉.隱語義模型下的科技論文推薦[J].計算機應(yīng)用與軟件,2015,32(2):37-40.
[8] 鄧衛(wèi)釗.隨機梯度下降和對偶坐標下降算法的研究與應(yīng)用[D].河北:燕山大學(xué),2016:13-17.
[9] 王升升,趙海燕,陳慶奎,等.個性化推薦中的隱語義模型[J].小型微型計算機系統(tǒng),2016,37(5):881-889.
[10] 魯權(quán),王如龍,張錦,等.融合鄰域模型與隱語義模型的推薦算法[J].計算機工程與應(yīng)用,2013,49(19):100-139.
[11] Xiang L,Yang Q.Time-Dependent Models in Collaborative Filtering Based Recommender System[C]//Ieee/wic/acm International Joint Conferences on Web Intelligence and Intelligent Agent Technologies,2009.Wi-Iat.IEEE,2009:450-457.
[12] 劉恒友.基于時間效應(yīng)的推薦算法研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013:21-34.
[13] 劉建國,周濤,汪秉宏.個性化推薦的研究進展[J].自然科學(xué)進展,2009,19(1):1-15.
[14] 鄭麗姣.個性化推薦技術(shù)在高校數(shù)字圖書館中的應(yīng)用研究[D].湖南:湖南科技大學(xué),2015:27-32.
[15] 胡堰,彭啟民,胡曉惠.一種基于隱語義概率模型的個性化Web服務(wù)推薦方法[J].計算機研究與發(fā)展,2014,51(8):1781-1793.