李大偉,杜洪波,周孝林,岳 賽,齊 飛
(沈陽工業大學 理學院,遼寧 沈陽 110870)
隨著移動互聯網的發展,手機App呈現出爆炸式增長[1],逐漸改變著人們的生活習慣,App閱讀逐漸代替傳統的紙質讀物,導致網民通過手機看書的比例逐年上升。與此同時產生網名盲目閱讀書籍,閱讀消極書籍等問題。鑒于現存問題,形成一個新的服務——圖書推薦[2]。通過用戶平時的閱讀習慣進行數據挖掘,為用戶推薦合適有價值的書籍,號召全民讀書。
(1)館藏資源:功能包含書目檢索、熱門排行、分類瀏覽、新書通報、圖書推薦。圖書推薦功能是通過分析用戶歷史數據將用戶感興趣或者有價值的書籍推薦給用戶。
(2)個人中心:構建讀者個人中心模塊,具體功能包含用戶信息、閱讀管理(包括閱讀歷史)、個性書單、我的書評、我的通知。個性書單模塊是根據某些書共同的特性將自己喜愛的書籍進行分類,同時可以向其他用戶分享優質的書單。“我的書評”模塊可以將用戶讀后感進行上傳,與其他人進行共享。
(3)互動平臺:包括好友推薦,群組討論、參與論壇、查看他人書評、與管理員進行溝通等。好友推薦是通過運用“用戶畫像”技術,分析用戶,為用戶推薦有相同愛好的好友,使得好友之間交流讀書心得,提高用戶閱讀興趣。
“用戶畫像”是基于推薦算法實現的。在掌握用戶的信息和行為后,主動為用戶推薦相關的信息。推薦算法的基本原理:(1)輸入基本數據,包括用戶信息(性別,年齡等)、用戶對書籍的評價、書籍的信息等;(2)通過數據源與推薦算法結合為用戶推薦相關書籍。推薦算法不同的數據源所用的算法不同,本文使用協同過濾推薦算法實現圖書推薦。
協同過濾推薦[3](Collaborative Filtering recommendation,簡稱CF),通過分析用戶興趣,在數據中尋找與該用戶興趣相似的用戶,綜合每個用戶對該物品的評價,形成該物品的“得分”既用戶對該物品的喜歡程度。基本步驟:(1)根據用戶的基本資料了解用戶的喜好;(2)構造用戶之間的相識度;(3)為用戶進行推薦[3-4]。
相似度計算[7]:
(1)歐幾里得相似性

(2)皮爾遜相似性

取值在[-1,1]之間
(3)Cosine相似度

協同過濾推薦分為基于用戶和基于物品[4]的,本文考慮到用戶的數量遠遠小于書籍的數量,于是使用基于用戶的協同過濾推薦算法描述:(1)計算相似度:將用戶對所有書籍的喜歡程度作為一個向量來計算用戶之間的相似度;(2)預測用戶可能喜歡的書籍:找到K鄰居后,根據鄰居相似度權重和他們對書籍的偏好進行預測;(3)根據權重對書籍列表進行排序,進行推薦,如圖1所示。

圖1 協同過濾推薦算法Fig.1 Collab orative filtering recommendation algorithm
基于“用戶畫像”挖掘的圖書推薦 App[8]不僅在算法上進行研究,同時對界面進行詳細設計,設計出善于操作的界面,下面就部分界面進行介紹。
圖書推薦:通過“用戶畫像”算法進行后臺分析,推薦符合讀者的書籍。通過使用 ImageButton控件將推薦書籍的封面進行展示。將所有的 image-Button,統一放入 ScrollView中實現滑動。點擊imageButton彈出對應圖書的介紹,如圖2所示。
互動平臺:如圖3所示,展示用戶對書的感受,上端是用ImageView控件制作的動態切換頁面,實時進行新聞動態更新。中間是用itemlist控件將用戶發布的題目,時間,作者名,瀏覽量等信息顯式出來。最下端使用了 tabhost來選擇不同的板塊,包括互動平臺,圖書推薦,如圖4所示。個人中心:如圖5所示,用listView控件顯式個人可操作的功能,點擊查看各種信息。包括個性書單,如圖6所示,我的書評,如圖7所示,薦購歷史,如圖8所示等。

圖2 圖書推薦Fig.2 Book recommended

圖3 互動平臺Fig.3 I nteractive platform

圖4 圖書推薦Fig.4 Lib rary resource

圖5 個人中心Fig.5 Personal center

圖6 個性書單Fig.6 Personality book

圖7 我的書評Fig.7 Individual review
21世紀正處于信息化時代,互聯網+給人類帶來的便利有目共睹。十八大之后“提倡全名閱讀”的口號多次被國務院提出,全名閱讀已被列為國家戰略[5]。本文通過協同過濾推薦算法,對用戶的行為信息進行分析,為用戶個性化推薦書籍,有效地滿足用戶個性薦購需要和提高全民讀書[6],實現互聯網+[11]文化。
[1] 葉剛峰. 基于APP數據的標簽提取與整合[D]. 浙江大學,2017.
[2] 田丹. 我國移動圖書館APP應用現狀分析[J]. 國家圖書館學刊, 2015, 24(5): 74-80.
[3] IT獨白者. 基于用戶的協同過濾算法和基于物品的協同過濾算法之java實現[EB/OL]. http://blog.csdn.net/sun_wangdong/article/details/54728909. 2017-01-25
[4] Flying_sfeng. 基于物品的協同過濾算法itemCF原理及python代碼實現[EB/OL]. https://blog.csdn.net/Flying_sfeng/article/details/56280872. 2017-02-21
[5] 常馨月. 公共移動圖書館個性化薦讀服務模型構建[D].吉林大學, 2017.
[6] 唐小新, 李高虎, 唐秋鴻, 曹紅兵, 高嵩. 高校圖書館個性化電子圖書薦購系統的設計和實現[J]. 現代圖書情報技術, 2012(3): 83-88.
[7] 榮輝桂, 火生旭, 胡春華, 莫進俠. 基于用戶相似度的協同過濾推薦算法[J]. 通信學報, 2014, 35(2): 16-24.
[8] 胡媛, 毛寧. 基于用戶畫像的數字圖書館知識社區用戶模型構建[J]. 圖書館理論與實踐, 2017(4): 82-85+97.
[9] 陳慧香, 邵波. 國外圖書館領域用戶畫像的研究現狀及啟示[J]. 圖書館學研究, 2017(20): 16-20.
[10] 張興旺, 李晨暉. “互聯網+圖書館”頂層設計相關問題研究[J]. 圖書與情報, 2015(5): 33-40.
[11] 劉芳. “互聯網+公共圖書館”: 服務創新與轉型發展[J].圖書館雜志, 2016, 35(8): 42-48.