陳新+張楠+王洪信
摘 要:分析了基于用戶的協(xié)同過濾系統(tǒng)的原理和優(yōu)缺點(diǎn),針對圖書館系統(tǒng)的特殊性,采取對圖書進(jìn)行分類和對讀者進(jìn)行分類想結(jié)合的方法,尋找用戶的相似最近鄰居,可有效克服協(xié)同過濾系統(tǒng)的稀疏性、可擴(kuò)展性問題。
關(guān)鍵詞:協(xié)同過濾;個性化推薦;稀疏性;分類
Abstract:This paper analyzes the principle and advantages and disadvantages of user-based collaborative filtering system. According to the particularity of the library system, the method of classifying the books and classifying the readers to find the similar neighbors of the users can effectively overcome the collaborative filtering system Sparsity and scalability issues.
Key words:Collaborative filtering; Personalized recommendations; Sparseness; classification
1 引言
在社會科技發(fā)展變化的驅(qū)動下,為了適應(yīng)時代發(fā)展,圖書館從最初的紙質(zhì)圖書收藏地,不斷地發(fā)展進(jìn)化。過去,圖書館是人們獲取知識、資源的的最主要途徑,而如今網(wǎng)絡(luò)技術(shù)迅猛發(fā)展,信息呈爆炸式增長,人們正在傾向從網(wǎng)絡(luò)獲取知識,圖書館的作用正在不斷弱化。
面對大數(shù)據(jù)時代的挑戰(zhàn),圖書館領(lǐng)域需要變革,改變傳統(tǒng)圖書館的被動式服務(wù)方式,采取更加積極的主動式服務(wù)方式[1],以提高圖書館利用率,強(qiáng)化圖書館的作用和職能。其中對讀者進(jìn)行個性化推薦就是主動服務(wù)的一種。
個性化推薦技術(shù),是對用戶的個人信息和瀏覽歷史進(jìn)行分析,從而找到用戶的興趣偏好,對用戶進(jìn)行針對性的個性化推薦服務(wù)。
目前主流的推算算法主要有:協(xié)同過濾推薦算法、基于內(nèi)容的推薦算法、基于知識的推薦算法、混合推薦算法等[2]。其中協(xié)同過濾推薦算法是應(yīng)用最廣泛的一種算法。
2 基于用戶的協(xié)同過濾推薦系統(tǒng)
2.1 基于用戶的協(xié)同過濾系統(tǒng)基本原理
基于用戶的協(xié)同過濾推薦系統(tǒng)的基本原理是,根據(jù)所有用戶對物品或者信息的偏好,找出與當(dāng)前用戶有相似興趣或偏好的“鄰居”用戶群,記為“K鄰居”,然后基于這K個鄰居用戶的興趣偏好信息,對當(dāng)前用戶進(jìn)行推薦[4]。
圖1為基于用戶的協(xié)同推薦系統(tǒng)的基本原理,用戶A喜歡物品1和物品3,用戶B喜歡物品2,用戶C喜歡物品1、物品3和物品4,可以看出用戶A和用戶C共同喜歡物品1和物品3,可判斷用戶A與用戶C有相似的興趣,那么用戶C喜歡物品4,用戶A可能也會對物品4感興趣,于是把物品4推薦用戶A。
如果把A看做當(dāng)前用戶,那么C便是A的相似K鄰居用戶?;谟脩舻膮f(xié)同過濾的基礎(chǔ)是評價數(shù)據(jù)庫[3],
2.2 計(jì)算過程。
基于用戶的協(xié)同過濾的關(guān)鍵問題,是如何找到與當(dāng)前用戶相似度高的“K-鄰居”用戶。余弦距離相似性是應(yīng)用廣泛的方法[5]。
公式(1)通過計(jì)算向量、夾角的余弦作用衡量用戶a與用戶b的相似度。如果兩個向量方向一致,夾角接近零,那么這兩個向量就相近。
例如:經(jīng)過計(jì)算,用戶A與用戶B的夾角余弦接近1時,則可以認(rèn)為用戶A與用戶B是相似的。
2.3 協(xié)同過濾算法的缺點(diǎn)
協(xié)同過濾算法能夠過濾難以進(jìn)行機(jī)器自動基于內(nèi)容分析的信息,能夠?qū)τ谝恍?fù)雜的、難以表述的概念進(jìn)行過濾,但是也存在一些缺點(diǎn)和不足[6]。
1)稀疏性問題。當(dāng)系統(tǒng)中數(shù)據(jù)量大的情況下,用戶對商品的評價非常稀疏,通過評分矩陣,難以找出用戶之間的相似性。
2)冷啟動問題。當(dāng)資源進(jìn)入系統(tǒng)中時,資源的評分為空,系統(tǒng)就無法進(jìn)行推薦。
3)可擴(kuò)展性問題。當(dāng)數(shù)據(jù)庫中資源不斷增長,用戶不斷增多,評分矩陣會變得十分復(fù)雜,計(jì)算效率下降。
3 基于分類的協(xié)同過濾圖書館個性化推薦系統(tǒng)
3.1 以圖書分類號為基礎(chǔ)進(jìn)行分類。
對于圖書館系統(tǒng)來說,讀者的興趣相對固定,尤其是高校圖書館,學(xué)生除了對一些比較熱門的社會學(xué)書籍感興趣外,就只對自己本專業(yè)的書籍資料有興趣,跨專業(yè)借閱圖書的現(xiàn)象極少出現(xiàn)。而圖書館系統(tǒng)中的圖書都有明確的分類,以中文圖書為例,依據(jù)中圖分類法,圖書可分為5大部類,22個大類,大量的小類。對于圖書推薦系統(tǒng)的協(xié)同過濾,在相同的圖書分類內(nèi)查找有相同興趣的用戶,成功幾率會有較大的提升。
3.2 以讀者特征進(jìn)行分類
對于讀者也可以進(jìn)行分類,高校圖書館讀者信息完善,有明確的院系分類,在同學(xué)院、同專業(yè)中尋找最近鄰,成功幾率可以提升很多。此方法可以有效解決算法的稀疏性問題和可擴(kuò)展性問題。對于公共圖書館,可以采用平均值聚類算法對讀者進(jìn)行聚類劃分。
3.3 算法流程
以圖書分類號為基礎(chǔ)進(jìn)行分類為例,流程如下:
1)通過讀者的歷史評分記錄,建立讀者在不同圖書分類下的評分矩陣,表2是一個評分矩陣的例子。
2)對讀者進(jìn)行分類,降低矩陣維度。
表2 中讀者d對H31、X5兩個分類的圖書進(jìn)行了評分,表明d對這兩個分類的圖書感興趣,從表2中可以看出,只有讀者b、c、e同d存在交集,這樣就可以把縮小矩陣的維度,提高計(jì)算效率。
可以看出b、e與d的交集是H31,而H31是英語類,屬于工具學(xué)科,在高校中,是絕大多數(shù)學(xué)生都會學(xué)習(xí)的,有廣泛通用性,在推薦系統(tǒng)中,可以看做是一個干擾項(xiàng),去掉H31這個干擾項(xiàng),就只有c與d有交集,從而將矩陣維度進(jìn)一步降低。
3)計(jì)算推薦結(jié)果
使用公式(1)的余弦距離相似性算法,找到最近鄰,得出推薦結(jié)果。
4 結(jié)語
協(xié)同過濾推薦系統(tǒng)在電子商務(wù)領(lǐng)域應(yīng)用廣泛,在圖書館領(lǐng)域,需要根據(jù)圖書館的特點(diǎn),設(shè)計(jì)更加優(yōu)秀的算法,克服稀疏性、可擴(kuò)展性的問題,使圖書館個性化推薦系統(tǒng)達(dá)到更好的推薦效果,更好地為讀者服務(wù)。
參考文獻(xiàn)
[1]黃紅梅.數(shù)字圖書館主動服務(wù)模式優(yōu)化研究[J].圖書館學(xué)刊,2009,26(9):61-63.
[2]陳潔敏.個性化推薦算法研究[J].華南師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,46(5):8-15.
[3]黃創(chuàng)光.不確定近鄰的協(xié)同過濾推薦算法[J].計(jì)算機(jī)學(xué)報(bào),2010,33(8):1369-1377.
[4]馬宏偉.協(xié)同過濾推薦算法綜述[J].小型微型計(jì)算機(jī)系統(tǒng),2009,30(7):1282-1288.
[5]基于用戶相似度的協(xié)同過濾推薦算法[J].通信學(xué)報(bào),2014,35(2):16-24.
[6]基于用戶興趣分類的協(xié)同過濾推薦算法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2011,20(5):55-59.