姚 震,孔 月,牛蘭金
(山東農(nóng)業(yè)大學 圖書館,山東 泰安 271018)
高校圖書館如何構建全面而又富有特色的文獻資源是巨大挑戰(zhàn)?,F(xiàn)行資源采購模式是在現(xiàn)行招投標體制下,由于合同定價較低,因而書商提供的圖書普遍低于合同折扣,意味著對于超過合同折扣的圖書,書商不可能主動提供訂單,而這部分圖書往往是質(zhì)量較高、價值較大的圖書。另外,微觀上采購人員面對海量條目時對影響采訪質(zhì)量的因素認識不準確,宏觀上采訪原則缺乏可操作性、采訪策略缺乏有效性、采訪實踐缺乏可行性等因素,都制約著圖書采購的質(zhì)量和工作效率。設計完成一套方便有效的自動化工具來輔助采購員篩選出適合讀者使用、適應學校專業(yè)設置和教學科研需要圖書是本文所做的一次探索。
該工具的設計首先考慮基于借閱行為記錄的挖掘,找出真正符合本館基本情況,并能揭示本館特點的數(shù)據(jù)和知識。國內(nèi)圖書情報領域?qū)?shù)據(jù)挖掘的研究和應用現(xiàn)狀、研究熱點和重點,多集中在關聯(lián)規(guī)則的數(shù)據(jù)挖掘,另外如決策樹或貝葉斯分類、序列模式挖掘、協(xié)同過濾等算法也是常用方法。后續(xù)研究發(fā)展多以此為基礎,增加諸如語義或情感分析等參考模型。高校圖書館當前主流管理系統(tǒng)沒有數(shù)據(jù)挖掘的功能,且統(tǒng)計分析以借閱次數(shù)為基礎,加以分類號、典藏或借閱日期等數(shù)據(jù)項計算借閱次數(shù),缺乏靈活的數(shù)據(jù)組織方式。借閱行為雖多具有讀者的主觀性,但綜合分析數(shù)據(jù)時更容易總結出隨機性和時間規(guī)律等屬性特點。利用借閱行為所包含的數(shù)據(jù)信息,借鑒網(wǎng)絡行為的量化方法,根據(jù)借閱行為的特點和規(guī)律,設計了借閱行為的量化計算公式。計算借閱行為有效性的值,結合MARC數(shù)據(jù)中的信息,探尋有效的分析模式。最后依據(jù)B/S架構部署該服務,使Browser端實現(xiàn)上傳書單文件,Server端處理完成后將文件以FTP鏈接形式返回給Browser端,采購員可根據(jù)經(jīng)驗調(diào)整書單后確定采購清單。
借助Toad軟件和PowerDesign軟件解構從匯文LIBSYS的Oracle中導出的數(shù)據(jù)庫文件,得到數(shù)據(jù)庫的表結構和各表之間的關系。解構后的數(shù)據(jù)庫可以看到有讀者表、MARC記錄表、財產(chǎn)表等,其中借閱歷史表的部分結構,如圖1所示。
圖1 借閱歷史表結構示例
本次實驗預處理借閱記錄852 874條,每條數(shù)據(jù)包含的信息有讀者證件號、財產(chǎn)號、館藏地、借出時間、還書時間、續(xù)借日期、續(xù)借次數(shù)、索書號等數(shù)據(jù)項。借閱歷史表中包含讀者證件號、財產(chǎn)號、館藏地、借出日期、還書日期、續(xù)借日期、續(xù)借次數(shù)、索書號、借書地、還書地、MARC記錄號等數(shù)據(jù)項。讀者表則包括讀者證件號、總借閱量、讀者類型等數(shù)據(jù)項。財產(chǎn)表中則包括財產(chǎn)號、入藏日期、書刊狀態(tài)代碼、分配館藏地代碼等數(shù)據(jù)項。
對借閱數(shù)據(jù)的挖掘可充分發(fā)現(xiàn)館藏資源的利用情況,分析借閱趨勢和讀者偏好。數(shù)據(jù)預處理是數(shù)據(jù)挖掘的必備步驟,主要工作包括對源數(shù)據(jù)進行再加工、檢查數(shù)據(jù)的完整性和數(shù)據(jù)的一致性(包括排除重復記錄、消除噪聲、數(shù)據(jù)類型轉(zhuǎn)換等)。首先在數(shù)據(jù)抽取時判斷數(shù)據(jù)完整性,將超長時間借出未還的條目作為不完整數(shù)據(jù)剔除。然后進行冗余處理,因借閱歷史中的數(shù)據(jù)冗余多以重復借閱的情形出現(xiàn),所以將同一讀者ID在一定時間范圍(如30d)內(nèi)對同一種圖書的多次借閱只保留最后一次。然后處理符合要求的借閱數(shù)據(jù)的被借閱圖書的索書號字段,截取對應索書號的首字符判斷大類,再根據(jù)中圖法子類分散情況截取對應后續(xù)字母的若干位,直到確定分類號。
在數(shù)據(jù)集成的過程中,對每條借閱歷史記錄的借出時間和歸還時間分別與該種書的最初使用時間和最后使用時間進行比較,保留最小的借出時間和最大的歸還時間。未歸還圖書的最后還書時間設置為做數(shù)據(jù)集成時的時間。如此便可在數(shù)據(jù)集成后計算出該書的生命周期。
另外,借閱數(shù)據(jù)集成時還需針對每條借閱記錄讀取讀者ID,將該第N次借閱記錄的圖書MarcID和借閱時間寫入“讀者借閱行為表”中的“LendHistN”字段中?!敖栝啔v史表”遍歷完成后還將對“讀者行為表”中的借閱記錄字段內(nèi)容按時間排序。
為了定量計算出每條借閱記錄的有效性,設計了基于借閱圖書持有時長的量化計算方法:根據(jù)流通工作中的經(jīng)驗,可總結出超短期借閱行為,代表著讀者判斷該書不符合閱讀習慣或知識所求,應賦予低有效性;另一方面,超期時間越長,也代表讀者所借閱的圖書越?jīng)]有被充分利用(如果是高效利用圖書,讀者會在借期內(nèi)歸還并重新借閱),也應賦予低有效性。因此,總結算法為:①有續(xù)借操作則有效性值置為1;②沒有續(xù)借操作且沒有超期,則有效性置為1;③沒有續(xù)借且超期時先求超期天數(shù)x,當x≥60(d)時置有效性為0,否則按照1-x/60求有效性值。此處60d是本館完整借期,該參數(shù)可按照各館實際情況設置。
探索性數(shù)據(jù)分析(ExploratoryDataAnalysis,EDA)是數(shù)據(jù)科學過程的第一步,有助于了解數(shù)據(jù)集、檢查數(shù)據(jù)集特征等。本次實驗預處理借閱記錄852 874條,其中有效借閱記錄791 325條,涉及圖書129 965種,涉及作者99 402位、出版商1 424家,平均每種書被借閱6.6次,低于平均有效借閱次數(shù)的圖書有95 269種,占出借圖書的73.3%(其中有38 014和20 923種書分別僅有1次和2次有效借閱),另外有1 503種書被借閱超過50次。圖書有效借閱次數(shù)最多503次,是三毛的著作《傾城》,其次是王小波的《黃金時代》,出借283次,第三是東野圭吾的《信》,出借273次。借閱有效值累計>200的圖書共15種,其中有11種是I大類,兩種K大類(當年明月所著《明朝那些事兒》的前兩卷,該系列圖書屬于I或K類一般依采編經(jīng)驗判斷),R和H各一種。
以作者(作者數(shù)據(jù)中包含部分重復,如由于翻譯不同造成的“褚威格”與“茨威格”,“某某著”與“某某編”,或是“孔子”與“孔丘”造成的不同。這種情況復雜多變,多因MARC記錄編輯不規(guī)范和個人編輯習慣的差別造成,因此需另外的數(shù)據(jù)格式規(guī)范統(tǒng)一處理。本次實驗過程中合并處理了一百多位知名作者信息)為單位計算該作者所著圖書的總有效被借次數(shù),以此為依據(jù)制作了作者文字云(見圖2),大小和頻次正比于有效借閱值的和,可見文學社科類的暢銷作者為圖書館讀者所追捧。因此,需考慮學科與分類對圖書借閱的影響,在資源建設規(guī)劃時也應對該方面的影響深入研并究綜合衡量。
圖2 推薦作者文字云
另一方面,按照最早借出時間和最后還回時間計算出某種書的實際流通生命周期。圖書流通生命周期按天統(tǒng)計,不足1d則為0,最長的有8 153d,平均生命周期為489.9d,中位數(shù)為380d,標準差為451.4。在文獻生命周期<30d的圖書中,有1 472種是當天借閱并歸還,且1 373種僅有這一次的借閱。將流通生命周期統(tǒng)計總結為表1。這些數(shù)據(jù)有力揭示了圖書文獻的利用情況。
表1 流通時長與圖書種數(shù)對照
數(shù)據(jù)清洗后可得到讀者的借閱行為,表2是“讀者借閱行為表”的結構示例。令集合I={i1,i2,…,in}是所有被借閱圖書的集合,T={t1,t2,…,tm}是所有借閱行為的集合。每個借閱行為ti包含的項集都是I的子集。因此截取字符串中的MarcID子串,遍歷借閱數(shù)據(jù)后可得頻繁項集,這些是高利用率圖書。標記時間的子字符串可用于關聯(lián)時間規(guī)則的挖掘。
表2 讀者借閱行為表示例
另外,令支持度S(X→Y)=δ(X∪Y)/N,置信度C(X→Y)=δ(X∪Y)/δ(X),則可得圖書之間的關聯(lián)規(guī)則。將計算結果記錄到對應MarcID的圖書表中。完成后還可以依據(jù)As=∑piSi,Ac=∑piCi,其中集合Si為和Ci某作者的圖書集合的方式更新著者對應的支持度和置信度值,是該種圖書對應某次借閱的有效性(根據(jù)讀者ID、MarcID和借閱時間查找對應借閱記錄及有效性的值)。同理計算出版社的支持度和置信度的值。
利用頻繁項集中各分類的占比、各出版社的占比、支持度和可信度計算出版商的推薦度。表3展示了是根據(jù)實驗結果測算的前30名出版社及其推薦度,值越高越受推薦。例如清華大學出版的TP類的圖書、中國林業(yè)出版的S7類或中信出版的I類圖書會得到較高推薦值。
表3 出版社推薦度示例
利用網(wǎng)絡爬蟲爬取豆瓣圖書中對某書的評分作為圖書推薦的補充方法。利用Python的爬蟲,可快速實現(xiàn)爬蟲功能。設置爬蟲URL,首先爬取豆瓣圖書的檢索頁面,檢索項設置為ISBN。利用Beautiful Soup(Python的第三方插件用來提取HTML中的數(shù)據(jù))解析該頁面,獲取檢索結果(精確找到了該書頁面)的鏈接并再次爬取該頁面,然后利用文本解析找到頁面中的“豆瓣評分”及后面排列的數(shù)值(此為該書評分),取評分的1/2(豆瓣評分以10為滿分)作為網(wǎng)絡推薦值。讀取書單后借助該爬蟲獲取評分,每讀一條ISBN記錄執(zhí)行一次,而數(shù)據(jù)挖掘部分則是提前計算完成的,只需調(diào)用結果。
為了保障各學科圖書采購的均衡與覆蓋率,仍然需要采購參數(shù)以達到一些既定目標,例如設置各大類圖書選購種數(shù)或比例、熱門書的最大副本數(shù)、校區(qū)或館藏地數(shù)量等。利用B/S架構,設計Browser頁面實現(xiàn)文件上傳,并做好格式和數(shù)據(jù)規(guī)范說明等。書單上傳到部署算法的Server端,算法讀取文件,讀取出版社、ISBN等字段。設出版社推薦度的80%加網(wǎng)站爬取分值的20%作為整體推薦值。另外,還可以依據(jù)推薦度來給出推薦副本數(shù),此處算法需配合采購參數(shù)來確保推薦副本數(shù)符合要求。
完成推薦值計算后輸出到文件,最后頁面跳轉(zhuǎn)到該文件的FTP地址,供用戶下載。按照推薦度排序的書單經(jīng)本館具有豐富采編和流通工作經(jīng)驗的老師審校后,認為書單質(zhì)量可靠性極高。
該工具的實現(xiàn)對優(yōu)化資源建設有較大幫助,使新采購的圖書更具實效。該系統(tǒng)的使用提高了圖書館采購新書的可用性和利用率,采購員也在數(shù)量巨大的書單中極大提高了選書效率,從往常巨大工作量中解放出來,轉(zhuǎn)而進行專業(yè)資源建設或特色館藏建設,提高了文獻資源保障力度,補強了特色館藏。新書典藏后利用率的提高,也證明了資源更符合本館讀者需求。另外,推薦度還可為流通工作提供參考,保留受歡迎圖書,排架時也參照受歡迎著者預留更多空間,提高了流通工作效率。