黃瑛+楊維偉
摘要:近年來(lái),隨著國(guó)家對(duì)教育的重視,圖書館圖書呈線性增長(zhǎng),借閱者很難從海量的圖書資源中選取有用的信息?;趥€(gè)性化的協(xié)同過(guò)濾推薦算法有效地解決了這個(gè)問(wèn)題,為了提高推薦的準(zhǔn)確度,引入相似度影響因子,充分考慮不同因素對(duì)推薦結(jié)果影響力的大小。
關(guān)鍵詞:推薦系統(tǒng);系統(tǒng)過(guò)濾;用戶相似性;影響因子
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)28-0088-02
1 背景
協(xié)同過(guò)濾算法給我們的生活帶來(lái)了極大的便利,特別是當(dāng)我們?cè)诰W(wǎng)上購(gòu)物時(shí),網(wǎng)站總是能推送我們需要的商品,簡(jiǎn)化了購(gòu)物過(guò)程,方便了我們的生活。協(xié)同過(guò)濾算法可以根據(jù)用戶偏好和其他特征為用戶推薦相似物品,面對(duì)海量的圖書館圖書資源,如果可以將協(xié)同推薦算法用于圖書館圖書推薦,將能極大地方便學(xué)生的學(xué)習(xí)生活。
2 相關(guān)工作
以前圖書館推薦算法直接依據(jù)圖書評(píng)分?jǐn)?shù)據(jù),按評(píng)分高低向用戶進(jìn)行推薦,沒有考慮到用戶的偏好和需求。隨著技術(shù)的發(fā)展,圖書推薦算法也得到了改進(jìn),目前常用的圖書館推薦算法大致分為三種:
1)基于內(nèi)容的推薦算法:該算法的基本思想是根據(jù)用戶的借閱歷史記錄,分析借閱書籍,提取用戶標(biāo)簽數(shù)據(jù),然后將用戶標(biāo)簽和圖書標(biāo)簽進(jìn)行匹配,觀察匹配程度,選取前N本圖書,生成圖書推薦列表。
2)協(xié)同過(guò)濾推薦算法:該算法在基于內(nèi)容的推薦算法上進(jìn)一步改進(jìn),加入相似度概念,考慮有著相似興趣愛好的讀者對(duì)用戶的影響。我們需要計(jì)算用戶相似度,找到與該用戶最相似的top-N用戶,然后分析用戶對(duì)這些相似用戶已借閱讀書的感興趣程度,得到圖書推薦列表。目前有三種常用方法用于計(jì)算用戶之間的關(guān)聯(lián)度。
歐幾里得距離法:將用戶對(duì)讀書的評(píng)分轉(zhuǎn)換成向量的形式,由此我們得到一個(gè)n維的評(píng)分向量,利用歐幾里得公式計(jì)算兩個(gè)向量之間的距離,距離值越小相似度越高,歐氏公式為:
余弦相似性:將用戶評(píng)分看成一個(gè)n維的向量,利用余弦公式計(jì)算兩個(gè)用戶向量夾角余弦值,值越大兩個(gè)用戶就越相似,余弦公式為:
相關(guān)相似性:利用Pearson相關(guān)系數(shù)計(jì)算兩個(gè)讀者之間的相似程度。
3)基于用戶個(gè)性化協(xié)同過(guò)濾推薦算法:根據(jù)高校的實(shí)際情況和需求,應(yīng)運(yùn)而生了一種基于用戶背景的個(gè)性化推薦方法。一般情況下,用戶多會(huì)借閱本專業(yè)的相關(guān)書籍,所以在進(jìn)行推薦的過(guò)程中可以重點(diǎn)考慮相關(guān)專業(yè)同學(xué)的借閱記錄,將他們借閱過(guò)的書籍進(jìn)行重點(diǎn)推薦。
3 基于個(gè)性化的協(xié)同過(guò)濾推薦算法
3.1 圖書初始評(píng)分
每天圖書館會(huì)有大量的新書上線,這些新書由于之前沒有人借閱,需要為這些圖書人為的劃分類別和設(shè)置評(píng)分初值,根據(jù)《中圖法》可以將圖書劃分成不同的22個(gè)大類。
3.2 計(jì)算用戶對(duì)每一類別圖書的偏好
根據(jù)用戶的借閱歷史和歷史評(píng)分,結(jié)合之前的圖書分類數(shù)據(jù),計(jì)算用戶對(duì)一類書籍的總評(píng)分。用戶借閱不同類別書籍的數(shù)量不同,可以反映用戶對(duì)某類書籍的喜愛程度,為此我們?yōu)橛脩粢言u(píng)價(jià)類別賦予不同的權(quán)重值:。為某類別圖書借閱統(tǒng)計(jì)次數(shù),為所有借閱圖書的總次數(shù)。由此我們可以計(jì)算出用戶對(duì)該類圖書的評(píng)分,評(píng)分公式為:
表示讀者a對(duì)類別書籍的評(píng)分,i屬于類別的圖書,是用戶對(duì)類別圖書的總評(píng)分。
3.3 根據(jù)用戶偏好,計(jì)算用戶相似度
上一步我們得到了用戶對(duì)圖書類別的評(píng)分,根據(jù)這個(gè)評(píng)分,使用皮爾遜相關(guān)系數(shù)算法計(jì)算用戶之間的相似度,找出用戶的近鄰集合U。皮爾遜相關(guān)性公式為:
M為用戶a和b的共同評(píng)分項(xiàng),和分別為用戶a和用戶b的平均評(píng)分,利用圖書類別計(jì)算用戶間的相似度可以大大減少計(jì)算量。根據(jù)上式我們得到用戶之間的相似度,依據(jù)相似度大小進(jìn)行排序,選取前N個(gè)用戶作為用戶a的鄰居集合U。
3.4 預(yù)測(cè)用戶對(duì)其他書籍的評(píng)分產(chǎn)生推薦
我們根據(jù)用戶的近鄰集U可以產(chǎn)生圖書推薦列表,為了使推薦列表更準(zhǔn)確,我們引入讀者相似度的影響因子??紤]到實(shí)際情況,影響因子的主要有用戶專業(yè)、職位和以往評(píng)分準(zhǔn)確度這三個(gè)方面。
1)專業(yè):
眾所周知,相同專業(yè)的學(xué)生對(duì)書的需求是相似的,所有相同專業(yè)學(xué)生的借閱書籍對(duì)推薦影響較大(),影響因子表達(dá)式如下:
2)職位
學(xué)校內(nèi)老師、研究生和大學(xué)生是借書的主力軍。不同職位的人對(duì)圖書好壞的判讀力是不同的,因此老師對(duì)圖書推薦的推薦影響力應(yīng)該最大。下表中的,,呈現(xiàn)逐漸遞減關(guān)系:
3)歷史評(píng)分準(zhǔn)確度
不同用戶有不同的評(píng)分習(xí)慣,對(duì)圖書評(píng)分的標(biāo)準(zhǔn)不同,為了確保推薦的準(zhǔn)確度,我們引入第三個(gè)影響因子。如果用戶評(píng)分越接近平均分則用戶評(píng)分越準(zhǔn)確,影響因子也就越大,影響因子計(jì)算公式為:
其中S為用戶評(píng)分圖書集,為用戶對(duì)圖書i的評(píng)分,為圖書的平均評(píng)分,max和min分別為圖書i獲得評(píng)分的最大值和最小值。
綜上所述,用戶的綜合評(píng)分影響因子表達(dá)式為:
用戶對(duì)某本圖書的預(yù)測(cè)評(píng)分公式為:
n為屬于U集合的用戶數(shù)量,和分別為用戶a和用戶b的平均評(píng)分,為用戶b對(duì)j圖書的評(píng)分。
由用戶對(duì)某本圖書的預(yù)測(cè)評(píng)分公式,我們得到用戶對(duì)推薦列表內(nèi)每本圖書的預(yù)測(cè)評(píng)分,根據(jù)實(shí)際情況,我們選擇前N本圖書進(jìn)行推薦。
4 結(jié)束語(yǔ)
隨著科技的發(fā)展,推薦系統(tǒng)在我國(guó)得到廣泛使用,圖書推薦系統(tǒng)也逐漸進(jìn)入學(xué)生的學(xué)習(xí)生活。根據(jù)高校的實(shí)際情況,我們提出了一種改進(jìn)的圖書推薦系統(tǒng),引入影響因子概念,提高推薦準(zhǔn)確度。使學(xué)生在面對(duì)海量的數(shù)據(jù)時(shí)可用更方便地找到符合自己的學(xué)習(xí)資源。
參考文獻(xiàn):
[1] 劉建國(guó), 周濤, 汪秉宏. 個(gè)性化推薦系統(tǒng)的研究進(jìn)展[J]. 自然科學(xué)研究進(jìn)展, 2009, 19(1): 1-15.
[2] 張怡文, 岳麗華, 張義飛. 基于共同用戶和相似標(biāo)簽的好友推薦方法[J]. 計(jì)算機(jī)應(yīng)用, 2013, 33(8); 2273-2275.
[3] 呂果, 李法運(yùn). 基于改進(jìn)協(xié)同過(guò)濾的移動(dòng)個(gè)性化推薦服務(wù)研究[J]. 情報(bào)探索, 2014(20): 101-105.
[4] 楊濤, 曹樹金. 圖書館用戶的個(gè)性化服務(wù)需求實(shí)證研究[J]. 大學(xué)圖書館學(xué)報(bào), 2011(2): 76-85.
[5] 許文青, 林雙平. 融合熱門度因子基于標(biāo)簽的個(gè)性化圖書推薦算法[J]. 圖書情報(bào)研究,2015(3): 82-86.
[6] Koren Y. Factor in the neighbors: scalable and accurate collaborative filtering[J]. ACM Transactions on Knowledge Discovery from Data, 2010, 4(1): 24.