趙力衡 陳虹君
摘要:隨著機器學習技術(shù)的不斷發(fā)展,機器學習在社會各個鄰域的應(yīng)用也越來越廣泛。在校園圖書館中使用機器學習的方法來實現(xiàn)對學生借閱方面的畫像,把握學生閱讀規(guī)律,精確地向不同的學生推薦其感興趣的書籍,從而提升學生的學習興趣就越發(fā)顯得重要。鑒于此,提出使用機器學習中Apriori模型的方法來分析不同學生的閱讀興趣,并推薦其可能感興趣的書籍。實驗結(jié)果表明,所提方法能較準確地分析出學生的借閱興趣,可作為圖書館書籍推薦分析的有效依據(jù)。
關(guān)鍵詞:大數(shù)據(jù);機器學習;Apriori;推薦;圖書
中圖分類號: TP391 文獻標識碼:A 文章編號:1009-3044(2018)12-0211-02
Abstract: With the development of machine learning technology, it is more and more widely used in every neighborhood of society. It is more and more important to recommend books of interest to different students to promote their interest in learning. Therefore, a method of using Apriori model in machine learning to analyze the reading interest of different students is proposed. The experimental results show that the proposed method can accurately analyze the students' interest in borrowing books and can be considerate as an effective basis for library books recommendation analysis.
Key words: big data; machine leaning; Apriori; recommend; books
學校的圖書館通常藏書眾多,書籍種類非常豐富。圖書館藏書的借閱對象也以不同專業(yè)的老師和學生居多,這就造成了不同的借閱對象對不同書籍的興趣差異常常非常明顯。這種差異不但出現(xiàn)在不同的學科之間,也出現(xiàn)在不同的年級和年齡段之間。如果再進一步細致分析,還可以發(fā)現(xiàn)即使是相同的專業(yè)、相似的年級和年齡的不同的借閱對象對書籍的興趣也可能出現(xiàn)明顯的差異。那么如何有效的分析出興趣迥異的不同的借閱對象的興趣點,并向該借閱對象推薦其可能感興趣的某一本書對圖書館就顯得很有價值了。
本文采用某高校學生的圖書借閱數(shù)據(jù)進行分析。該數(shù)據(jù)記錄了學生學號(user_id)和借閱的圖書編號(book_id),經(jīng)過脫敏后數(shù)據(jù)格式如下所示:
本文根據(jù)學生學號(user_id)和借閱的圖書編號(book_id)對該學生的借閱情況進行畫像,分析出學生的閱讀規(guī)律,從而有效地向不同的學生推薦其感興趣的書籍。分析采用Apriori算法,依據(jù)關(guān)聯(lián)規(guī)則進行分析。即假如借閱對象A借閱了書籍[1,2,3,4,5],借閱對象B借閱了書籍[2,3,4,6],那A和B借閱書籍中有3本是相同的,可以認為A和B興趣相似,A感興趣的書籍B也可能感興趣,因此可以將書籍1和5推薦給借閱對象B;同樣,也可以將書籍6推薦給借閱對象A。
通過這種方式,可以有效根據(jù)每一個用戶的個性化需求實現(xiàn)為該用戶推薦其可能感興趣的書籍。
1 模型分析
1.1 數(shù)據(jù)預(yù)處理
提出的方法依據(jù)借閱對象及其借閱過的書籍進行分析,因此需要所有借閱記錄都包括學生學號(user_id)和借閱的圖書編號(book_id)。若記錄中缺失其中任意一個信息,則該記錄就無法反映出一次有效的借閱行為,因此該記錄為不可用記錄,需要過濾掉,以此保證記錄的完整性。此時,數(shù)據(jù)為具有完整借閱信息的全部記錄。
分析需要統(tǒng)計出每一個借閱對象借閱過的書籍,而此時的數(shù)據(jù)僅是借閱流水記錄,不能反映出同一個借閱對象所借閱過的書籍的共同特性。因此需要將數(shù)據(jù)按照學生學號(user_id)統(tǒng)計出該學號借閱過的全部書籍。統(tǒng)計后,數(shù)據(jù)格式轉(zhuǎn)換如下圖所示:
圖中,行號表示用戶id,列名表示書籍編號。若用戶id借閱過該書,則用戶id號與書籍對應(yīng)信息記為T,否則該位置記錄為F,表示該用戶沒有借閱過這本書。通過上圖,能清晰地看到一個user_id借閱過的書籍,即該借閱對象對哪些書感興趣。
1.2 數(shù)據(jù)建模
通過數(shù)據(jù)預(yù)處理后形成的表格,實際上已經(jīng)為每一個借閱對象建立了其閱覽書籍的關(guān)聯(lián)信息,通過這些信息,我們可以進一步分析出每一個借閱對象借書的興趣點,從而向具有相似興趣點的借閱對象推薦其可能感興趣的書籍。
提出的方法使用Apriori算法建模分析借閱對象的共同興趣點,指定全部圖書編號同時為關(guān)聯(lián)規(guī)則的前項(Antecedents)和后項(Consequents)來尋找連帶借閱的書籍,如下圖所示:
但在建模過程中發(fā)現(xiàn)有兩個圖書編號沒有被借閱過,如下圖所示:
如果一本書沒有被借閱過,那么該書籍就無法與其他書籍達成關(guān)聯(lián),也就不能在Apriori模型中被推薦,因此需要在建模前過濾掉沒有被借閱過的兩本書。由于圖書館書籍數(shù)量眾多,采集的數(shù)據(jù)也時間有限,因此采集的數(shù)據(jù)反應(yīng)的書籍被借閱的次數(shù)偏少,這就需要設(shè)置較低的最低條件支持度(Minimum antecedent support)和最小規(guī)則置信度(Minimum rule confidence),設(shè)置模型如下圖所示:
通過降低最低條件支持度和最小規(guī)則置信度,即使書籍被借閱次數(shù)較少,也能根據(jù)較低的關(guān)聯(lián)次數(shù)生成關(guān)聯(lián)規(guī)則。模型執(zhí)行結(jié)果如下:
結(jié)果以表格形式列出模型計算所得的99個關(guān)聯(lián)規(guī)則,這些規(guī)則展示了借閱對象借閱一本書后有較大的可能會借閱另一本特定的書籍。比如第一條規(guī)則展示了借閱165號書籍的借閱對象有62.706%的可能會借閱188號書籍,該規(guī)則的支持度是1.24%。因此,當圖書館發(fā)現(xiàn)有借閱對象在借閱165號書籍時就可以將188號書籍推薦給該借閱對象了。
2 結(jié)束語
從結(jié)果來看,方法所提出的模型能較準確地分析出借閱書籍之間的關(guān)聯(lián)規(guī)則,能有效地發(fā)現(xiàn)不同的用戶的借閱關(guān)注點,從而向其推薦可能感興趣的書籍,實現(xiàn)圖書借閱的精確推薦。當采集的數(shù)據(jù)增加時,借閱對象和借閱書籍之間的關(guān)聯(lián)也會隨之增加,這樣就能更精確地發(fā)現(xiàn)不同用戶的借閱關(guān)注點,從而更精確地實現(xiàn)個性化的推薦服務(wù)。
實驗結(jié)果表明,所提方法能較準確地反映出借閱對象的借閱興趣點,可作為圖書精確推薦的有效依據(jù)。
參考文獻:
[1] 劉華婷,郭仁祥,姜浩. 關(guān)聯(lián)規(guī)則挖掘Apriori算法的研究與改進[J]. 計算機應(yīng)用與軟件, 2009(6).
[2] 郝曉飛; 譚躍生; 王靜宇. Hadoop平臺上Apriori算法并行化研究與實現(xiàn)[J]. 計算機與現(xiàn)代化, 2013(5) .
[3] 陳麗芳. 基于Apriori算法的購物籃分析[J]. 重慶工商大學學報(自然科學版), 2014(5) .
[4] 黃文漢. 基于Web的在線圖書管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 電腦知識與技術(shù), 2017(9).
[5] 姜浙煒. 高校移動圖書館管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 電腦知識與技術(shù), 2016(8).