徐 蕾,孔 偉
(南京信息工程大學(xué) 圖書館,江蘇 南京 210044)
2018 年10 月,中國圖書館學(xué)會舉辦智慧圖書館建設(shè)與服務(wù)研討會,明確提出掌握智慧圖書館發(fā)展現(xiàn)狀、交流智慧圖書館建設(shè)經(jīng)驗、培養(yǎng)智慧圖書館建設(shè)專業(yè)人才,從而推動我國圖書館事業(yè)走向世界前列。不難看出,學(xué)界和業(yè)界已經(jīng)把智慧圖書館作為未來圖書館發(fā)展和建設(shè)的方向。我國自2005 年開始智慧圖書館的實踐和研究,多位專家對其概念做出了詳細的定義。嚴棟[1]認為智慧圖書館只是通過新的技術(shù)來改變?nèi)撕蛨D書館的信息交互方式,并且提出了“智慧圖書館=圖書館+物聯(lián)網(wǎng)+云計算+智慧化設(shè)備”這一等式,但筆者認為智慧圖書館并不單純是一個建筑加上技術(shù)的硬件結(jié)合體。筆者比較贊同王世偉[2-3]對于智慧圖書館的定義,“智慧圖書館是以數(shù)字化、網(wǎng)絡(luò)化和智能化技術(shù)為支撐,而以人為本,為讀者提供更為方便的服務(wù)才是智慧圖書館的核心”。因此,本研究擬在該概念上進行擴展:智慧圖書館的服務(wù)對象不僅僅是讀者,也包括管理人員和服務(wù)人員。
在當前大數(shù)據(jù)的背景下,智慧圖書館的建設(shè)應(yīng)當秉承其收集、整理、收藏圖書資料以供人閱覽、參考的基本理念[4]。大數(shù)據(jù)是指在社會生產(chǎn)實踐中所產(chǎn)生的數(shù)量極大的、形式多樣的數(shù)據(jù)集合[5-6]。托勒夫早在1983 年就預(yù)言到“大數(shù)據(jù)”時代的到來并稱贊其為“第三次浪潮中的華彩樂章”[7],在當今社會下主動擁抱大數(shù)據(jù)成為各個行業(yè)發(fā)展的基本方向。如今,讀者、管理人員和服務(wù)人員與智慧圖書館的交互形式多樣,既發(fā)生在實在環(huán)境,又發(fā)生在擬態(tài)環(huán)境,其含義早已不僅僅是簡單的借書、還書、整理書,更多是人與智慧圖書館在網(wǎng)絡(luò)空間中基于數(shù)據(jù)的交互。智慧圖書館快速有效收集、處理、分析、應(yīng)用數(shù)據(jù)的能力能夠極大提高讀者的滿意度,降低管理人員的決策難度,增強服務(wù)人員的工作效率。
由于當前圖書館在數(shù)字化時代累積了龐大且不斷增加的數(shù)據(jù)資源(包括館藏數(shù)據(jù)資源、用戶數(shù)據(jù)、工作數(shù)據(jù)等)[8],以及讀者群體數(shù)量和對于圖書資源的多元化需求快速增長,增加數(shù)據(jù)中心設(shè)備的傳統(tǒng)模式難以為繼。當前圖書館首先應(yīng)該在了解讀者的共性要求和個性需求的基礎(chǔ)上拓展服務(wù)對象,其次在分析讀者的差異性閱讀愛好基礎(chǔ)上創(chuàng)新個性化服務(wù),最后在獲取可靠數(shù)據(jù)的基礎(chǔ)上精確化圖書館的決策管理。但與之矛盾的是,當前圖書館處理數(shù)據(jù)能力的相對落后使得大量的讀者閱讀的實時數(shù)據(jù)、館員工作的實時數(shù)據(jù)等沒有被收集和處理;圖書館資源不是基于對讀者的閱讀需求的深入理解[9],并且館員主動提供優(yōu)質(zhì)服務(wù)的能力不足[10];數(shù)據(jù)資源應(yīng)用能力較低,不能為決策提供有效的輔助。因此,提高當前圖書館數(shù)據(jù)處理、個性化推薦和決策輔助能力成為建設(shè)智慧圖書館的關(guān)鍵。
數(shù)據(jù)處理是大數(shù)據(jù)的基礎(chǔ),是信息的收集、存儲、檢索、加工及轉(zhuǎn)換等過程[11],簡單來說就是收集和操作數(shù)據(jù)項來產(chǎn)生有意義的信息。但是傳統(tǒng)的圖書館面對大量的讀者的實時訪問和閱讀信息、館員的實時工作信息等卻達不到充分收集和處理的標準。而圖書館對于數(shù)據(jù)的實時采集和處理能力,將為下一步的數(shù)據(jù)分析提供基礎(chǔ)支持。
在圖書館數(shù)據(jù)處理方面,2017 年柳益君等[12]使用一個開源的分布式海量日志收集系統(tǒng)Flume,將用戶訪問的數(shù)據(jù)日志定期地收集和存儲在分布式存儲中。同年,白林林等[13]使用Drupal 框架來采集數(shù)據(jù)。但是這些研究只考慮了從外部信息平臺獲取圖書館數(shù)據(jù),沒有考慮圖書館本身也有大量的內(nèi)部數(shù)據(jù)產(chǎn)生。2018年,劉景亮等[14]、曹健等[15]、陳臣[16]側(cè)重使用基于Hadoop 框架來構(gòu)建智慧圖書館內(nèi)外部數(shù)據(jù)的收集和處理,但是由于“Hadoop + MapReduce”框架在面對海量的實時數(shù)據(jù)時是基于磁盤進行分布式批量處理,因此存在較大的延遲,不能對實時性要求高的圖書館數(shù)據(jù)處理任務(wù)做出及時的響應(yīng)。
個性化推薦服務(wù)是智慧圖書館的核心,是圖書館從被動式提供文獻查閱向主動為用戶提供內(nèi)容閱讀服務(wù)轉(zhuǎn)變的技術(shù)保障。這要求在新的時期下,圖書館能夠利用大數(shù)據(jù)中的推薦技術(shù),繼承和創(chuàng)新圖書館的服務(wù)模式,完善個性化推送服務(wù)。
在圖書館個性化推薦服務(wù)方面,柳益君等[17]、李欣[18]通過使用有關(guān)用戶閱讀習(xí)慣等關(guān)聯(lián)性來制定一種廣泛性的信息集聯(lián)和篩選規(guī)則,但是其關(guān)聯(lián)性規(guī)則需要人工制定、修改、刪除,館員工作量巨大且規(guī)則更新緩慢。左素素[19]、黃宇[20]等使用基于內(nèi)容過濾的推薦算法,通過建立用戶需求向量和文本資源向量的相似度比較來對讀者進行內(nèi)容的個性化推薦。但上述方案側(cè)重于文本內(nèi)容的特征提取,面對智慧圖書館中的多媒體資料不能有效反映其內(nèi)容的特征向量,兩者準確度相差較大。
智慧圖書館相關(guān)決策的制定包括圖書館書籍或者電子資源的采購、館員人數(shù)的分配等。目前傳統(tǒng)圖書館在制定采購計劃時容易受到主觀因素和個人因素的影響,導(dǎo)致計劃缺乏全面性和繼承性。在新時代信息化的背景下,圖書館采購資源時應(yīng)該主動依靠大數(shù)據(jù)的相關(guān)技術(shù),為讀者提供更具吸引力的閱讀體驗。
在圖書館決策輔助方面,嚴建援[21]提出使用層次分析法來進行圖書館的決策輔助,通過將人們的主觀判斷和客觀標準結(jié)合起來,將若干種圖書種類按照其適合程度進行排序,但是方法評價指標的權(quán)值依賴個人和專家,具有相當大的主觀性和不確定性。田磊等[22]、遲春佳等[23]通過分類的方法找出利用率不同的圖書的類別,使用聚類的方法對利用率較高的圖書種類進行分析,制定出相對精確的采購書目。但是上述方案對非線性決策邊界處理的性能較差,且需要圖書館管理員設(shè)定集群的數(shù)量。
綜上所述,國內(nèi)外研究學(xué)者對智慧圖書館數(shù)據(jù)處理、個性化推薦和決策輔助已做了大量的研究,但現(xiàn)有的研究還存在以下問題:
(1)現(xiàn)有圖書館數(shù)據(jù)處理的方法,如“Hadoop+MapReduce”大數(shù)據(jù)采集和處理框架,一是沒有考慮當前圖書館處理實時數(shù)據(jù)的任務(wù)量較大,二是面對海量數(shù)據(jù)的處理延遲較大。
(2)圖書館個性化推薦現(xiàn)有的研究成果在對數(shù)據(jù)進行分析時,缺乏自動化的關(guān)聯(lián)規(guī)則制定和可拓展的非文本的數(shù)據(jù)資源處理方法。
(3)現(xiàn)有的圖書館決策輔助機制研究尚未成熟,主要還是依靠個人經(jīng)驗和專家指導(dǎo)來采購圖書館資源,主觀性和不確定性相對較大;同時數(shù)據(jù)挖掘算法如分類和聚類具有只解決特定問題的局限性。
為了解決上述問題,本文從智慧圖書館建設(shè)的實際出發(fā),以服務(wù)讀者為中心,構(gòu)建了基于大數(shù)據(jù)的智慧圖書館系統(tǒng)框架(見圖1 所示)。將智慧圖書館分為物理層資源、數(shù)據(jù)處理層、數(shù)據(jù)分析層和數(shù)據(jù)應(yīng)用層。
圖1 基于大數(shù)據(jù)的智慧圖書館系統(tǒng)框架圖
(1)物理層資源。這是由硬件存儲器存儲的數(shù)據(jù)、傳感器和內(nèi)部網(wǎng)絡(luò)收集的讀者閱讀數(shù)據(jù)、外部互聯(lián)網(wǎng)中收集的有關(guān)圖書館或者圖書更新的數(shù)據(jù)組成,并且通過較成熟的RFID、WiFi、ZigBee 和NFC 等數(shù)據(jù)傳輸協(xié)議將圖書館收集的數(shù)據(jù)傳送到數(shù)據(jù)處理層。
(2)數(shù)據(jù)處理層。基于Spark 大數(shù)據(jù)處理技術(shù)實時地收集和處理相關(guān)的業(yè)務(wù)數(shù)據(jù),并且將雜亂異構(gòu)的數(shù)據(jù)抽取和轉(zhuǎn)換成有特定含義的、符合特定需求的、有意義的數(shù)據(jù)。
(3)數(shù)據(jù)分析層。根據(jù)不同的需求,基于處理后的數(shù)據(jù)使用混合型的協(xié)同過濾算法來進行個性化的推薦。
(4)數(shù)據(jù)應(yīng)用層。在數(shù)據(jù)應(yīng)用層針對決策輔助這一特定的應(yīng)用環(huán)境,通過方差分析模型來輔助采購的決策,減少圖書采購環(huán)節(jié)主觀性大且片面的缺陷。
讀者對于圖書館能夠?qū)崿F(xiàn)廣泛互聯(lián)、資源共享[24]的呼聲越來越高,這就意味著圖書館的數(shù)據(jù)庫資源和業(yè)務(wù)數(shù)據(jù)會空前地增加。傳統(tǒng)的Hadoop MapReduce框架會把大量的數(shù)據(jù)交由網(wǎng)絡(luò)上的各個節(jié)點處理,最后返回處理結(jié)果,但是由于數(shù)據(jù)處理過程中需要不斷地進行磁盤IO 操作,延時較高。Spark 框架將執(zhí)行模型變?yōu)橛邢驘o環(huán)圖執(zhí)行計劃(DAG),將中間的運算結(jié)果寫入內(nèi)存當中,大大提高了理論上的處理速度,在內(nèi)存中Spark 能比Hadoop MapReduce 快約100 倍,在硬盤中則要快10 倍左右。
基于Spark 框架的圖書館大數(shù)據(jù)能夠處理實時性要求高、來源多樣的異構(gòu)化數(shù)據(jù)。圖2 為基于Spark并且結(jié)合智慧圖書館的特點設(shè)計的框架。數(shù)據(jù)接收部分中,通過使用一個可監(jiān)控大型分布式系統(tǒng)的分布式數(shù)據(jù)收集系統(tǒng)Chukwa 和一個Hadoop 與傳統(tǒng)數(shù)據(jù)庫間進行數(shù)據(jù)傳遞的開源工具Sqoop,分別把收集的圖書館內(nèi)部產(chǎn)生的數(shù)據(jù)和外部網(wǎng)頁上產(chǎn)生的數(shù)據(jù)寫入到Kafka 消息系統(tǒng)中。通過Kafka 把數(shù)據(jù)分為兩類來處理:(1)可以設(shè)定一個長時間段(一天或者是一周)
進行數(shù)據(jù)收集并寫入Kafka 系統(tǒng)中,然后進行離線處理;(2)可以收集每一分鐘的數(shù)據(jù)或者是收集確定大小的文件,之后進行實時處理。最后,將保存在Kafka消息系統(tǒng)中的不同的日志數(shù)據(jù)按照其不同的需求轉(zhuǎn)發(fā)給Spark Streaming 進行處理。同時,作為處理系統(tǒng)中的核心模塊,Spark Streaming 可以接收實時的輸入數(shù)據(jù)流,將數(shù)據(jù)按照一定的時間窗口拆分成多個批數(shù)據(jù),最后進行數(shù)據(jù)處理。
圖2 基于Spard 框架的數(shù)據(jù)處理圖
為了實現(xiàn)大數(shù)據(jù)而“大數(shù)據(jù)化”的思路是無法建設(shè)好智慧圖書館的[25-26]。傳統(tǒng)圖書館大量的數(shù)據(jù)資源閑置,并不是它們的內(nèi)容不夠豐富,而是特定的資源不能被有需求的讀者所發(fā)現(xiàn)。個性化推薦的過程就是為了實現(xiàn)“為書找人”的目標,挖掘出讀者的現(xiàn)實需求和隱含需求,從而提高圖書館資源的利用率。本研究利用基于用戶、項目和模型的三種協(xié)同過濾算法,提高推送的準確度。
如圖3 所示,當數(shù)據(jù)經(jīng)過處理后,會存儲在硬盤HDFS、內(nèi)存Hbase 或者關(guān)系型數(shù)據(jù)庫MySQL 中,可以對其中的數(shù)據(jù)進行特定分析。首先,協(xié)同過濾分為在線協(xié)同和離線過濾兩個部分,在線協(xié)同是指系統(tǒng)通過內(nèi)部收集的數(shù)據(jù)判斷讀者可能更感興趣的資源,離線過濾是指系統(tǒng)會過濾和篩選出可能對于讀者不值得推薦的資源。而按其類型則分為基于用戶的協(xié)同過濾(user collaborative filtering,Vser CF)、基于物品的協(xié)同過濾(item collaborative filtering,Item CF)和基于模型的協(xié)同過濾(model-based collaborative filtering,Model-based CF),但是每種分類方法都有特定的應(yīng)用場景。User CF 算法以用戶和用戶之間的相似度作為推薦的依據(jù),通過皮爾遜相關(guān)系數(shù)的計算來獲得用戶間的相似度關(guān)系,找到相似讀者喜歡的物品來推薦。該模型可以幫助用戶發(fā)現(xiàn)新的類別的感興趣的圖書館資源,但是在圖書館中通過類似興趣的人閱覽的書來推薦具有相當?shù)牟淮_定和不穩(wěn)定性。類似的是,Item CF 算法則按照物品和物品的相似度來進行推薦,若某讀者閱覽了一本JAVA 語言的書,那么智慧圖書館便會推送相關(guān)開發(fā)的資源。但是其缺點也是顯而易見的:無法主動挖掘讀者隱藏的興趣而只能被動推薦。若是面對若干讀者和圖書館資源,而僅僅只有部分讀者對部分圖書館資源是有評分的,以上兩種方法都不是最好的選擇,因為推薦的精度會嚴重下降。因此,對于個性化推薦的方案中分為兩種情況:一若是圖書館與讀者互動良好、讀者對于館內(nèi)資源評分評價豐富,在計算兩個讀者相似度時將讀者對于圖書館資源的評價嵌入其中,采用Item CF 與User CF 的混合推薦算法;二若是不存在大量評價,采用Model-based CF 通過已有的稀疏矩陣來預(yù)測出讀者對于其他空白圖書館資源的評分,從而給讀者推薦評分最高的資源。
圖3 基于混合型協(xié)同過濾算法的個性化推薦
高質(zhì)量的圖書館資源采購是建設(shè)智慧圖書館的保障,如何在有限的資金下滿足讀者各個方向和層面上的閱讀需求,是智慧圖書館建設(shè)的重點研究方向。本研究提出智慧圖書館可在大數(shù)據(jù)背景下,利用多因素方差分析的方法來提升采購質(zhì)量。
在基于Spark 框架的實時數(shù)據(jù)處理系統(tǒng)下,能夠快速得到圖書館資源借閱和訪問的總量、某一類圖書館資源借閱和訪問量。從這兩種數(shù)據(jù)出發(fā),可以通過方差分析法得到增加或者減少某一類圖書館資源的采購對于圖書館借閱和訪問總量的影響。因為影響圖書館資源借閱和訪問總量的因素不僅僅只有資源采購,也有很多其他的因素包括考試的時間、專業(yè)的增加或者減少等,所以選用多因素方差分析法。其基本理念是將圖書館借閱和訪問這一因變量的變換總量分解成由各個因素(圖書館不同種類資源的采購)及其交互作用的影響部分和隨機誤差的影響部分,來判斷不同因素的不同水平對于因變量的顯著性影響,并且能夠分析出各個因素之間的相互作用對于因變量的影響。
首先,基于多因素方差分析方法設(shè)計從多個影響因素得到?jīng)Q定性因素的快速算法,部分如式(1)所示:
式中,?是因子影響總平方和,N代表影響因子的數(shù)量,e代表平均誤差和,M是樣本偏差,p是觀測總數(shù)。其次,若將某一類書的采購數(shù)量記作因素A,可以通過給定的顯著性水平查出相應(yīng)的分布分位數(shù),若是M高于分布分位數(shù),那么可以斷定因素A在同水平下和其他因素對于因變量的影響是顯著的。最后,通過多因素的方差分析法,能夠確定某類資源的采購或者某幾類資源的組合采購對于圖書館資源的借閱和訪問的影響較顯著,從而輔助采購決策,滿足讀者的多元化閱讀需求。
(1)在數(shù)據(jù)處理的實踐中,本研究采用 Spark Streaming 流式處理框架結(jié)合Chukwa 分布式收集系統(tǒng)和Kafka 消息系統(tǒng),比傳統(tǒng)的Hadoop 具有更高的效率、更高的容錯性和更好的通用性。下一步計劃在更大規(guī)模的數(shù)據(jù)集上進行測試,并在實際的建設(shè)中應(yīng)用,通過測試和維護系統(tǒng)的穩(wěn)定性和可靠性,來保證基于大數(shù)據(jù)的智慧圖書館滿足用戶對高效、高精度和高智慧化的服務(wù)需求。
(2)智慧圖書館通過使用混合型協(xié)同過濾算法來實現(xiàn)對讀者愛好的分析,本研究將用戶、項目之間的關(guān)聯(lián)性和稀疏矩陣的方法針對不同的場景使用,有效地提高了個性化推薦的效率。但值得注意的,在進行數(shù)據(jù)分析或發(fā)生黑客攻擊時,大量讀者的隱私閱讀數(shù)據(jù)將會暴露給分析人員或惡意的攻擊者。因此,目前智慧圖書館存在十分嚴重的隱私泄露的風(fēng)險。筆者建議在數(shù)據(jù)分析系統(tǒng)建立之前就要詳細地考慮如何保護讀者的閱讀數(shù)據(jù)隱私,通過賬號的匿名化、訪問權(quán)限設(shè)置和隱私數(shù)據(jù)的加密存儲等來保護讀者的隱私。
(3)在智慧圖書館的決策方面,本研究采用多因素方差分析來輔助管理人員的采購決策,通過觀測不同類圖書采購對于圖書館資源的閱讀量產(chǎn)生的顯著性影響和多種因素的相互影響來選擇最優(yōu)的采購組合。不難看出,大數(shù)據(jù)在智慧圖書館的決策中處于輔助地位,真正處于決策地位的是管理人員。因此,為了保證決策的正確,高素質(zhì)的人才必不可少。在智慧圖書館的建設(shè)中,應(yīng)該堅持人才引進和長期培訓(xùn)相結(jié)合,加強人才隊伍建設(shè)和人才資源儲備,提升館員的整體素質(zhì),為智慧圖書館的發(fā)展提供正確的決策方案。