李華群
(河南理工大學圖書館 河南 焦作 454003)
隨著智慧圖書館的發展和建設,用戶的知識需求和服務需求不斷提高,如何提高圖書館的服務質量,是圖書館行業需要認真思考和研究的問題。圖書館讀者數據日益增加,面對龐大、不完全、冗余的數據,應從中挖掘找出隱藏的規律,來指導圖書館業務發展。近年來,眾多學者將數據挖掘技術應用于圖書館中,尤其是關聯規則挖掘技術,通過對流通借閱數據進行關聯規則分析,發現可以從中找出不同讀者的個性化借閱特征,有助于我們了解讀者的閱讀習慣和知識興趣需求,不僅可以為圖書館的館藏建設、采訪決策、學科建設提供參考依據,還可以有針對性地對讀者提供個性化的圖書資源推薦,提高圖書館整體服務水平。因此有必要對關聯規則在圖書館的應用進行進一步的研究和探析,本文將利用文獻計量學方法,借助VOSviewer可視化分析工具,將現有的國內有關關聯規則在圖書館應用的文獻進行梳理分析,厘清并總結出目前研究主題、研究方向,得出未來研究方向的啟示,為后續的關聯規則應用于圖書館相關研究提供參考。
本次研究以中國知網(CNKI)為數據源分兩次檢索,分別是主題=圖書館And主題=關聯規則,和主題=圖書館 And 主題=Apriori,共檢索出568篇期刊文章(檢索日期為2021/4/15),通過手工篩選,剔除168篇關聯性不大的文章,共保留400篇有效期刊文章進行分析。由于VOSviewer在聚類技術、圖譜繪制等方面有獨特的優勢,本文使用該工具對400篇文章從發表時間和關鍵詞分布上進行著重分析,通過目前已研究的態勢來分析得出未來研究的方向和趨勢,為今后的研究提供參考。
將關聯規則在圖書館中的應用研究文獻發文量依照時間分析見圖1,從下圖可知相關研究從2003年開始,第1年只有1篇,2005年上升至8篇,關聯規則應用到圖書館領域被更多的學者認可和關注,2006年開始急劇上升,到2012年發表了48篇,經過近10年的研究對關聯規則在圖書館的應用研究熱度達到頂峰,研究更加深入和廣泛,并一直持續到現在。雖然最近這10年整體相關發文量有下降趨勢,但一直保持20篇左右的發文量,熱度依然不減,說明此相關研究對圖書館工作仍具有積極的實踐意義。

圖1 歷年來關聯規則在圖書館中應用研究文獻時間分布
關鍵詞是作者從論文中提取出反映文章主要內容的詞,在較大程度上代表了文章的研究熱點,將通過可視化軟件工具來分析得出集中的研究主題。從CNKI中導出文獻信息選擇Refworks格式導出txt文件,由于不同作者對意思相同或相近的關鍵詞表述不一致,先將同義詞進行手動合并處理,如數據挖掘、數據挖掘技術合并為數據挖掘,個性化服務、個性化信息服務、個性化合并為個性化服務,Apriori、Apriori算法合并為Apriori算法。
再打開可視化分析軟件Vosviewer,將處理后txt文件直接導入到該軟件,選擇關鍵詞的共詞聚類分析,將出現頻次3次以上(含3次)的關鍵詞生成聚類標簽圖譜,以Network Visualization視圖表示出來見圖2。節點與字體的大小取決于該節點的權重,節點間的連線表示節點之間的共現關系。從圖2可知,“數據挖掘”“圖書館”“關聯規則”“Apriori算法”“個性化服務”等關鍵詞出現次數較多,完全是與關聯規則應用到圖書館中相關研究內容相符。該圖中依照節點不同顏色、節點連線不同顏色將整個知識圖譜分成10個聚類,每個顏色代表一個類別。通過整理、去除一些邊緣數據,研究主題主要列為5大類,見表1。

圖2 關聯規則相關研究關鍵詞聚類可視化圖譜

表1 研究主題及對應的關鍵詞
數據挖掘,又稱為數據庫中知識發現,它是從隨機的、有噪聲的、模糊的大規模數據集合中抽取出潛在的、有價值的、新穎的知識。整個數據挖掘過程包括數據選擇、數據預處理、數據轉換、數據挖掘等主要步驟,數據挖掘技術包含關聯規則、聚類分析、分類分析、預測、時序模式等技術。圖書館中存在著大量的讀者借閱書籍信息及讀者行為數據,但這些數據本身不能反映出讀者的借閱傾向,而這些數據挖掘技術可以對圖書館的讀者借閱信息數據給出相應的分析模式,可以挖掘出有用的、有意義的、潛在的隱藏數據來指導圖書館的工作。
劉軍[1]對圖書館文獻系統中相關的流通信息表、讀者信息表、文獻信息表進行數據預處理,利用數據挖掘中關聯規則和決策樹分類方法量化、挖掘、識別讀者需求,為個性化的讀者決策采購提供了科學化過程。張鈺莎[2]對圖書館借閱信息進行數據清理、數據轉換、數據集成等預處理后,應用關聯規則和序列模式進行數據挖掘,得出優化圖書館人力資源配置的方法,且給出了圖書布局和新書購買的參考意見。王蕾[3]利用K-means算法對流通數據進行聚類分析,依照借閱圖書類別進行聚類成九類,并對聚類結果進行行為分析,不僅提供了館藏空間改造的建議,為讀者提供差異化、多樣化服務,還為決策者提供情報信息。
關聯規則作為數據挖掘領域里的一個重要組成部分,就是根據已經發生的事務數據庫去尋找數據項A和數據項B同時發生的概率,從而判斷數據項A和數據項B之間的關聯關系,獲取他們之間潛在的聯系。在數據挖掘中,通常依據兩個技術指標對滿足要求的關聯規則進行篩選:一是支持度Support(X),表示數據項X在所有事務中包含的比例;二是置信度Confidence(X=>Y),表示數據項X和Y同時出現的比例與數據項X單獨出現的比例之比。
關聯規則對圖書館的應用就是對圖書館中讀者的借閱行為數據進行關聯規則分析。通常分析步驟就是先將讀者流通記錄數據庫、讀者個人信息數據庫、館藏書籍數據庫進行信息整合成含有讀者號、讀者屬性、書籍分類號等重要信息的事務數據庫,再刪除一些無用的、殘缺的、空值的數據進行數據清洗,將事務數據庫轉換成各數據挖掘軟件可識別的格式進行關聯規則分析,常用的軟件工具有Weka、SPSS Clementine、SPSS Modeler、Microsoft SQL Server2012中的分析服務工具(SSAS)、Con Exp1.3工具概念格、R語言等,然后在軟件工具里設置參數閾值,包括最小支持度、最小置信度,再運行軟件程序,得出讀者屬性和圖書之間、圖書和圖書之間的強關聯規則,最后對此進行結果分析。如讀者借閱了計算機類、文學類書籍,所借閱的不同的書籍即為事務項,支持度就是借閱了計算機類書占總借閱量的比例,置信度就是借閱了計算機類書同時也借閱了文學類書的比例。關聯規則就是從這些書籍中找出兩本書之間關系或者三本書之間的關系,直到不能生成滿足最小支持度的書籍之間關系為止,然后再依據滿足最小置信度條件提取出強關聯規則[4]。可以根據此關聯關系分析結果確定讀者的閱讀偏好、借閱習慣和閱讀傾向,來幫助圖書館進行館藏布局的優化、圖書剔舊工作的開展、采購圖書的選擇和學科建設的指導,不僅可以提供圖書館的業務優化建議,更重要的是利于對讀者開展個性化資源推薦服務工作。
Apriori算法是關聯規則最經典的算法,是由R.Agrawal和R.Srikan于1994年提出的。Apriori算法的主要步驟是先掃描一次事務數據庫,生成候選1-項集,計算支持度,保留滿足最小支持度的項集,再自連接生成候選2-項集,再次掃描事務數據庫計算支持度,如此重復自連接、掃描,直到無法再生成頻繁項集滿足最小支持度為止。此算法是逐層迭代算法,所以存在許多不足,如多次掃描數據庫、中間產生大量的候選項集、每層都需要自連接操作,不論對時間還是對內存空間都是不少的挑戰。因此許多學者提出了大量的改進算法,例如劃分技術、Hash方法、矩陣方法、事務壓縮技術、頻繁增長樹等方法減少掃描數據庫的次數、減少候選集的產生。
林郎碟[5]等利用分割-整合思想,依照中圖法對圖書進行分類;周玲元[6]等依照學生層次、專業劃分為各個子數據庫;唐吉深[7]對每個圖書類別借閱數據集進行拆分,采用Microsoft聚類分析算法聚成2個簇,將圖書分類拆分為高頻圖書和低頻圖書,都是先依照各自分類對子數據庫進行分析,再進行整合以實現對整個數據庫進行關聯挖掘的目的。楊韻芳[8]提出了MDLG算法,將事務數據庫轉換為布爾矩陣,只需掃描一次事務數據庫,在生成候選項集之前提前壓縮減少頻繁項集的產生。頻繁模式增長算法(FP-tree),是不產生候選集而直接生成頻繁集的頻繁增長算法,文芳[9]通過把大型圖書事務數據庫根據首項的事務,劃分為若干子數據庫,并構建相應的子 FP-tree 結構,直接生成頻繁項集,同時采用實時過濾掉層次樹中不是頻繁項的父項步驟來縮小掃描數據庫空間。
關聯規則對圖書館的借閱歷史數據分析,其分析結果不僅可以幫助圖書館優化館藏結構、給出采購決策方案,還可以得出讀者與圖書之間的關系主動為讀者提供個性化的圖書推薦服務。因此,一些學者會重點研究如何應用關聯規則建立推薦模型增加推薦準確率。
高晟[10]通過關聯規則與貝葉斯網絡的算法對借閱日志進行數據挖掘,先通過關聯規則算法對數據挖掘,并利用貝葉斯網絡對關聯規則挖掘結果進行語義校驗,提高推薦結果的準確性與可靠度。李文華[11]是將關聯規則結果來構建圖書之間的相似性矩陣構成基于關聯分析的協同過濾推薦算法,將讀者年級、專業、學院等讀者屬性信息嵌入到計算相似性矩陣中去,推薦準確率有了較為顯著的提高。張戈一[12]將讀者與書籍的關系融入現有的協同過濾算法中,用來豐富單個讀者與書籍的相關信息,將協同過濾算法產生的推薦評分與關聯規則產生的結果通過耦合公式計算出最終的書籍評分,提高算法的精度。鄺耿力[13]是將基于用戶偏好的協同過濾和利用TF-IDF算法來進行基于內容的過濾的結果應用挖掘技術進行關聯規則的推薦,來完成混合過濾達到提高圖書推薦率的目的。
聚類分析是數據挖掘技術中相對成熟和活躍的方法,是在無監督學習根據聚類算法將數據分類到不同的類或者簇這樣的一個過程,同一個簇的對象相似性較高,不同簇之間區別較大。聚類分析通常與關聯規則結合使用,對圖書館讀者群特征進行細分,得出不同讀者群的借閱特征和閱讀傾向,為讀者提供個性化的精準服務提供依據。
曲佳彬[14]是以讀者的借閱數量、讀者類型、所在院系、借書類型為屬性進行k-means聚類分析,將讀者劃分為若干個屬性相似的群組,再對聚類后的群組進行關聯規則挖掘,進一步挖掘圖書間的關聯性。趙雨薇[15]利用關聯分析挖掘出讀者的群體特征,并通過聚類算法將群體特征與讀者個人屬性有機結合起來,即找出類概念以及這些類概念與讀者屬性的對應關系,從而提出具有針對性的差異化服務策略。康娜[16]對K-means算法進行改進提出K-modes算法,先采用K-modes算法分別對讀者的借閱數量、讀者類型、所在院系和借書類型等進行聚類,迭代分析得出聚類模型,將借閱讀者劃分為若干具有相同屬性的群組,再采用Apriori算法對讀者聚類后的借閱數據進行關聯分析,發現圖書類目之間的強關聯規則,以此給讀者提供精準化的圖書推薦。
Apriori算法主要的步驟就是對事務數據庫掃描獲取候選項集、自連接生成N-項候選項集和計算支持度,現有的算法對其改進主要是對事物數據庫轉換成布爾矩陣、建立hash表、生成頻繁樹等方式,減少掃描龐大事務數據庫,再通過計算支持度的方法提前刪除一些已知的非頻繁項集數據項來減少候選項集的生成。雖然通過以上改進在一定程度上效率和時間都有改善,但還需要進一步深入分析如何從修改庫結構、修建頻繁集策略、優化連接策略3個主要步驟來改進基于矩陣、基于FP-Growth、基于粒子群等方面的Apriori算法。
現有的研究大多集中在單層單維的關聯規則中,即僅僅得出讀者-圖書之間和圖書-圖書之間的關聯關系,事務數據庫中僅有讀者號和單一層次圖書分類號,缺乏讀者多種屬性的添加和圖書多層次的區分,以使得讀者群不能得到很好的細分,而且推薦的圖書大多是中圖分類號中的某一大類,如文學I類,影響推薦精確度。陳淑英[17]雖然從專業、年級多維讀者屬性角度分析出相應的關聯規則結果,但是對分割成若干個不同專業和不同年級子數據庫多次進行了運行,算法效率較低。以后研究重點在建立多維數據模型上,如加入模糊算法、自適應的遺傳算法、構造數據立方體等方法來提高算法效率。
關聯規則最重要的兩個參數是支持度和置信度,通常這兩個參數都是依照經驗人為設置的,缺乏理論依據,另外實際使用中,整個事務數據庫一律采用同一個支持度,一些小于最小支持度但很重要的數據會丟失,如新進的書籍因加入館藏的時間較短,雖然相對來說借閱量高些,但遠遠不及“老”書的高借閱量,若對事務數據庫不進行區分,使用相同的最小支持度,此部分事務項極易被剪枝刪除,更不會出現在強關聯規則里,無法生成推薦信息。同樣對于年限太久的圖書,也會存在同樣的問題,但不會被剪枝,反而會保留下來出現在強關聯規則里,但實際上讀者對太“老”的圖書反而興趣度不大,影響了推薦的效果。因此以后在實際運用過程中,我們要將更多的實際因素考慮進去,依照各自影響因子加入設置不同的支持度,或者通過對項目加權的方式也可以調整相應的支持度以模擬出實際情況,更好地構建出個性化推薦模型實現個性化推薦工作。
單一的關聯規則算法實現的效率和質量都是有限的,往往需要結合其他算法的優點,進行算法的組合操作,才能達到更優的效果。現有的研究是關聯規則與貝葉斯網絡、協同過濾算法、聚類分析、決策樹、遺傳算法等方法的結合使用,在后續的研究中,不僅可以在原有混合算法的基礎上進行改進,還可以融入更多的技術,如時間序列、神經網絡、粗糙集、粒子群、蟻群算法等方法。因大數據時代的到來,海量數據處理往往制約著算法的運算效率,我們還需將hadoop技術運用到關聯規則算法中來,利用MapReduce并行處理計算模型來加快算法的運行,提高運算的速度。
通過對關聯規則在圖書館中的應用相關研究進行可視化分析,發現研究主題主要集中在數據挖掘、關聯規則、Apriori算法、個性化服務和聚類分析5個方面。總的來說,大多研究集中在如何將關聯規則算法及其改進應用到圖書館管理工作和個性化服務中,較少涉及多維多層關聯規則和考慮最小支持度的更復雜化的情況,和其他數據挖掘技術和推薦技術相結合的應用相對較少。在后續研究中應該考慮加入更多的實際工作中出現的一些影響因素進去,結合其他技術的優點,將系統設計貼近實際應用,了解讀者的最新動向,從而更好地實現圖書館個性化資源推薦工作和提升圖書館的服務水平。