洪怡琳
(寧波圖書館 浙江寧波 315000)
圖書館擁有海量的館藏圖書資源和數(shù)字信息資源,能夠為各種類型的讀者提供完整、全面的圖書借閱、信息咨詢等文獻信息服務。而目前大多數(shù)圖書館管理系統(tǒng)只提供查詢、統(tǒng)計等基礎功能,對于讀者各類需求很難進行有效預測及把握。正因如此,在沒有確定目標的情況下,讀者往往需要花費大量的時間去檢索、查找自己需要的圖書,過濾掉大量價值不高、自己不感興趣的圖書。精準地捕捉到不同讀者的需求,為其提供高質(zhì)量的、有針對性的個性化圖書推薦服務的重要性不言而喻。
大數(shù)據(jù)技術在近些年來不斷發(fā)展完善,從數(shù)據(jù)的儲存采集到數(shù)據(jù)的分析運算,都實現(xiàn)了技術提升。在圖書館的系統(tǒng)中,存儲著大量的用戶數(shù)據(jù),這些數(shù)據(jù)的種類、數(shù)量、增長速度都與大數(shù)據(jù)的特征相符。關聯(lián)規(guī)則(Association Rule)在數(shù)據(jù)挖掘技術中扮演著重要的角色,其目的在于發(fā)現(xiàn)數(shù)據(jù)項之間相互依賴的關系規(guī)則或關聯(lián)的知識[1]。利用該技術對圖書館數(shù)據(jù)庫中的海量借閱信息進行挖掘,可找到其中隱藏的關聯(lián)規(guī)則,發(fā)現(xiàn)其中有價值的內(nèi)容,以提高圖書館的服務質(zhì)量,更好地服務于讀者。
數(shù)據(jù)庫中存放著大量的數(shù)據(jù),而數(shù)據(jù)與數(shù)據(jù)之間是存在著某種聯(lián)系的,這種隱含的聯(lián)系可以通過一定的方法和技術發(fā)現(xiàn)。這種數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系是領域研究中的一個重要的知識,也是數(shù)據(jù)挖掘的對象,即關聯(lián)規(guī)則挖掘[2]。
關聯(lián)規(guī)則是指形如X?Y的式子,其中X?I,Y?I且X∩Y=?,X便是關聯(lián)規(guī)則的前項,Y是后項,這一關聯(lián)規(guī)則表示若項集X屬于某一個事務集,那么Y也一定屬于該事務集,且同時滿足了最小支持度(Support)以及最小置信度(Confidence)。
支持度是指事務數(shù)據(jù)庫中同時包含了事務X和事務Y的百分比,用公式表示為:
支持度是對關聯(lián)規(guī)則重要性的衡量,它表明這條規(guī)則在所有事務中所具有的代表性,顯然支持度越高,關聯(lián)規(guī)則越重要;支持度低,說明該規(guī)則重要性就低,實際當中出現(xiàn)的機會很小。
置信度是指在事務數(shù)據(jù)庫中包含了事務X的前提下又包含了事務Y的百分比,可表示為:
通常在進行數(shù)據(jù)挖掘時,會預先設定一個最小支持度閾值(min_sup)和最小置信度閾值(min_conf)。對于挖掘得到的滿足最小支持度閾值和最小置信度閾值的關聯(lián)規(guī)則稱為強關聯(lián)規(guī)則。
在關聯(lián)規(guī)則挖掘中,還有一個很重要的數(shù)據(jù)指標:提升度。它可以更進一步篩選關聯(lián)規(guī)則。提升度的計算公式為:
規(guī)則提升度由支持度等數(shù)據(jù)計算得出,當Lift大于1時,說明在關聯(lián)規(guī)則X?Y中X的出現(xiàn)促進了Y的出現(xiàn);相反的,當Lift小于1時,就說明X的出現(xiàn)抑制Y的出現(xiàn)。因此可知,只有提升度大于1時,規(guī)則具有實際意義。
在關聯(lián)規(guī)則挖掘的過程中,頻繁項集的挖掘算法決定整個挖掘工作是否快速有效。在眾多挖掘算法中,Apriori算法以其創(chuàng)新性的支持度剪枝,來控制候選頻繁項集的指數(shù)級增長而被更多地應用[3]。Apriori算法是由Agrawal等人提出的[4],基本思想是使用一種逐層搜索的迭代算法,主要有兩個步驟:①發(fā)現(xiàn)頻繁項目集。一個頻繁項目集是一個支持度大于最小支持度(min_sup)的項目集。②從頻繁項目集中生成關聯(lián)規(guī)則。在最大頻繁項目集中,一個強關聯(lián)規(guī)則(Confident Association)是置信度大于最小置信度(min_conf)的規(guī)則。關聯(lián)挖掘的基本模型如圖1所示。
圖1 關聯(lián)挖掘流程圖
Apriori算法的基本思想是:首先掃描事務數(shù)據(jù)庫,計算各個項目出現(xiàn)的次數(shù),產(chǎn)生頻繁1-項集L1,再由L1*L1進行連接運算生成候選2-項集C2,然后掃描事物數(shù)據(jù)庫統(tǒng)計各個候選2-項集出現(xiàn)的次數(shù),確定其中的頻繁2-項集L2。再由L2進行連接運算產(chǎn)生候選3-項集C3,繼續(xù)這個過程生成頻繁k-項集Lk,直到無法再生成頻繁項集為止[2]。Apriori算法利用Apriori性質(zhì)(任一頻繁項集的所有非空子集都必須是頻繁的)有效地對項集進行剪枝,盡可能不生成和不計算那些不可能是頻繁項集的候選項集,從而生成較小的候選項集的集合[2]。
本文數(shù)據(jù)源選取浙江工商大學下沙校區(qū)圖書館的圖書流通系統(tǒng)中的數(shù)據(jù),具體內(nèi)容系該高校2018年1月1日至2018年12月31日間發(fā)生的圖書借閱記錄信息,圖書借閱數(shù)據(jù)表中含238 709條記錄,包括學號、索書號、圖書名稱等字段,以2018年的借閱情況為基礎,對所有借閱數(shù)據(jù)進行Apriori關聯(lián)規(guī)則建模處理,分析用戶借閱習慣,研究如何提高借閱效率問題,分析工具使用IBM公司的SPSS Modeler。
對于收集到的原始數(shù)據(jù),由于可能存在缺失值或者噪聲,不能直接用來建模,需要對數(shù)據(jù)進行預處理。通過數(shù)據(jù)的清理,減少人工輸入數(shù)據(jù)的失誤或數(shù)據(jù)收集時出現(xiàn)的漏洞、填充缺失,使數(shù)據(jù)的完整性和一致性得以保證。數(shù)據(jù)清理是提高數(shù)據(jù)質(zhì)量和挖掘效率的關鍵環(huán)節(jié)。清理的數(shù)據(jù)主要包括了缺失數(shù)據(jù)、冗余數(shù)據(jù)和噪聲數(shù)據(jù)。
(1)數(shù)據(jù)清理。在借閱數(shù)據(jù)表中可能存在空缺值,需要通過相關的數(shù)據(jù)表填充空值數(shù)據(jù)。例如,在圖書借閱表中,圖書索書號有空值出現(xiàn),則需要根據(jù)相關信息將此空值填充完整。同時,還要對數(shù)據(jù)出現(xiàn)的隨機錯誤或偏差進行有效干預。
(2)數(shù)據(jù)集成。在對挖掘數(shù)據(jù)進行空值和噪聲處理之后,將多個數(shù)據(jù)源中的數(shù)據(jù)進行整合。例如,將讀者借閱信息和圖書信息結合,得到適合數(shù)據(jù)挖掘的有效數(shù)據(jù)。
(3)數(shù)據(jù)選擇。選擇挖掘所需的數(shù)據(jù),可以大幅提高挖掘效率。例如,在圖書借閱信息表中,可能存在同一讀者多次借閱同一本圖書的情況,這樣的數(shù)據(jù)記錄有效的僅僅是一條,其余記錄無法提供任何有價值的信息,一般將重復無意義的數(shù)據(jù)進行刪除,只保留一條借閱記錄從而提高挖掘效率。數(shù)據(jù)預處理后如表1所示。
表1 用戶借閱信息表(部分)
運用SPSS Modeler軟件對圖書借閱數(shù)據(jù)表進行數(shù)據(jù)預處理后,還需要剔除全年只有一次借閱記錄的信息,這部分數(shù)據(jù)有1 373條,剔除后剩余210 498條數(shù)據(jù)記錄。通過關鍵字合并“選擇”節(jié)點與“區(qū)分”節(jié)點后,過濾掉“索書號”與“Booktype2”字段,選擇“使用事務處理格式”,以“ReaderID”字段為ID,以“Booktype1”字段為內(nèi)容建立Apriori模型。經(jīng)調(diào)試模型選項卡中“最低條件支持度”和“最小規(guī)則置信度”,最終確定設置最低條件支持度閾值為10%,最小規(guī)則置信度的閾值為75%,最大前項數(shù)為5項。具體流程圖見圖2;模型運行結果見表2。
圖2 流程圖
從上面得到的關聯(lián)規(guī)則看出,后項是I文學類圖書,規(guī)則支持度最高的三項為:借閱B哲學宗教類圖書的讀者會借閱文學類圖書的可能性為76.763%,借閱K歷史地理類圖書的讀者會借閱文學類圖書的可能性為79.573%,借閱H語言文字類圖書和F經(jīng)濟類圖書的讀者會借閱文學類圖書的可能性為75.108%。以上關聯(lián)規(guī)則的提升度均大于1,說明前項和后項正相關,即這些規(guī)則都具有實際指導意義。第14關聯(lián)規(guī)則提升度最大,在所有有借閱歷史的讀者中,有1 709人借過B哲學宗教類圖書和C語言文字類圖書,占總數(shù)的11.478%,其中有1 286人同時借閱了F經(jīng)濟類圖書。同時借閱哲學宗教類圖書、語言文字類圖書和經(jīng)濟類圖書的讀者占總讀者數(shù)的8.637%。借閱哲學宗教類圖書和語言文字類圖書的讀者同時借閱經(jīng)濟類圖書的概率是隨機讀者借閱經(jīng)濟類圖書的1.578倍,提升度越高關聯(lián)強度越大。
表2 ReaderID & Booktype1建模結果
由于“ReaderID”和“索書號”兩個字段的離散程度極高,所以在以其為基礎建立關聯(lián)規(guī)則模型時,只有把支持度和置信度閾值都設置得極低才能得到關聯(lián)規(guī)則,且該情況下的規(guī)則提升度都不是很高。我們希望得到更細致的關聯(lián)規(guī)則的同時,也能保證其支持度和置信度,故選擇研究小類圖書間的關聯(lián)規(guī)則,即基于ReaderID&Booktype2的關聯(lián)規(guī)則。經(jīng)多次調(diào)試,最終確定設置最低條件支持度閾值為10%,最小規(guī)則置信度的閾值為70%,最大前項數(shù)為5項;運行前需要在“工具—流屬性—選項”中將最大集大小調(diào)整至300。執(zhí)行流后得到用Apriori算法建立的以ReaderID&Booktype2為基礎的關聯(lián)規(guī)則挖掘模型,其輸出的關聯(lián)規(guī)則見表3。
這9條規(guī)則中,前項主要是I3各國文學、I5歐洲文學和H3常用外國語圖書,后項為I2中國文學類圖書。規(guī)則中最高的置信度是第1條規(guī)則:82.857%,其含義為借閱I3各國文學類圖書和I5歐洲文學類圖書的讀者則會同時借閱I2中國文學類圖書,所有樣本中借閱各國文學和歐洲文學小類圖書的讀者有1 505位,意味著向同時借閱I3各國文學類圖書和I5歐洲文學類圖書的讀者推薦I2中國文學類圖書的成功率是沒有規(guī)則指導下推薦成功率的1.765倍。同時,還可以結合相應類別的熱門書目進行推薦,提高推薦成功率。所有關聯(lián)規(guī)則的提升度均大于1,具有實際指導意義。
在圖書館藏分布方面,如將I2、I3、I5類圖書放在一起,方便讀者進行選擇,同時也提升了書籍的使用率,有利于將未被使用的書籍推向讀者,在一定程度上也降低了文化資源的浪費。從規(guī)則中發(fā)現(xiàn),I2類圖書在各個規(guī)則中都有出現(xiàn),說明I2類圖書的借閱率很高,可以增加該類圖書的館藏資源,指導圖書采購工作,同時做好預留圖書架位的工作,避免頻繁倒架,提高工作效率。
在讀者服務工作方面,比如向借閱了I3類圖書的讀者推薦I2類型的圖書,實現(xiàn)個性化推薦服務,對于借書頻率較低的讀者則可以推薦熱門的I2類圖書以增加其閱讀興趣,進而優(yōu)化圖書館的服務質(zhì)量。
本文研究了Apriori算法在圖書館圖書借閱數(shù)據(jù)中的應用,發(fā)現(xiàn)將關聯(lián)規(guī)則應用在圖書館借閱系統(tǒng)有著重要的參考價值:①以讀者為中心,提升讀者的閱讀體驗。圖書館可以通過對讀者的歷史借閱情況進行統(tǒng)計分析,發(fā)現(xiàn)其中有意義的關聯(lián)規(guī)則,使得讀者喜愛的書目能夠快速被讀者找到,滿足不同讀者個性化需求,從而幫讀者節(jié)省大量時間和精力。在當下快節(jié)奏的工作生活中,提高借閱效率,意味著讀者會有更多的時間專注于閱讀,而不是費盡心思尋找合適自己的書目,這無疑會提升讀者的閱讀體驗,體現(xiàn)了以讀者為中心的理念。②扭轉(zhuǎn)圖書館的被動式服務理念。有效運用數(shù)據(jù)挖掘技術,分析讀者的信息行為,從而了解不同讀者的閱讀需求和借閱行為,主動將現(xiàn)有的服務推送給讀者,扭轉(zhuǎn)傳統(tǒng)的被動式服務理念。讀者可以通過圖書館主動的閱讀推送,獲得貼心的閱讀書目推送,這種方式可以將圖書館與讀者之間的距離拉得更近,從而提升圖書館的服務質(zhì)量。③圖書管理決策智能化。由Apriori算法得到的關聯(lián)規(guī)則能夠給圖書管理提供有利的數(shù)據(jù)支撐,圖書館員在管理過程中,可以依據(jù)實際情況進行圖書上架的精細化管理,出于方便讀者借閱的目的,把關聯(lián)度較高的圖書類型擺放在一起[5]。并且記錄下各個區(qū)塊圖書借閱的相關數(shù)據(jù),做好數(shù)據(jù)處理,以發(fā)現(xiàn)圖書擺放之間的相關性。最后將相關圖書信息進行處理分析,轉(zhuǎn)化為隨時可用的決策知識,防止將來因信息不足而造成圖書管理的決策錯誤。
表3 ReaderID & Booktype2建模結果