喬秀珍
(榆林學(xué)院 圖書館, 榆林 719000)
在推薦系統(tǒng)中,協(xié)同過濾技術(shù)的應(yīng)用最為普遍。該技術(shù)的原理是:基于一組興趣相同的用戶對物品或者信息的偏好評價,發(fā)掘用戶、物品或者信息之間的關(guān)聯(lián)程度,并過濾篩選出其中的有用信息,以此向目標用戶進行推薦。因此,協(xié)同過濾技術(shù)適用于向特定用戶推薦可能感興趣的內(nèi)容,并且具有快速及健壯性等優(yōu)點。對于圖書館管理系統(tǒng)而言,若引入?yún)f(xié)同過濾技術(shù),就能夠通過用戶借閱圖書的歷史信息向讀者用戶更準確地推薦其可能感興趣的圖書,從而實現(xiàn)個性化服務(wù)?;谏鲜鲇^點,本文提出一種基于協(xié)同過濾技術(shù)的圖書館管理系統(tǒng)的設(shè)計方案。
圖書館管理系統(tǒng)由查詢借閱、書籍管理等主要業(yè)務(wù)模塊構(gòu)成,因此本文分別對其業(yè)務(wù)流程進行具體分析:
現(xiàn)有的圖書館管理系統(tǒng)中,查詢借閱的具體流程為:讀者根據(jù)自身實際需要,首先通過在百度等互聯(lián)網(wǎng)搜索引擎中輸入關(guān)鍵詞來查找出相關(guān)書籍的名稱,然后在圖書館管理系統(tǒng)中輸入書籍的名稱來進行查詢,在查找到目標書籍后完成實體書籍借閱及記錄等流程。
分析上述流程,發(fā)現(xiàn)其中存在的主要問題有3點:
第一,圖書館內(nèi)的藏書資源并非完美無缺,因此可能出現(xiàn)圖書館藏書中缺少用戶所需書籍的情況;
第二,用戶通過百度等互聯(lián)網(wǎng)搜索引擎所查找到的結(jié)果,通常包含了搜索條件范圍內(nèi)的若干本書籍,而現(xiàn)有的流程中缺少書籍推薦環(huán)節(jié),無法幫助用戶明確具體的目標;
第三,性別、年齡、受教育程度、興趣等諸多方面相近的用戶,對書籍的需求具有較高的相似度,但現(xiàn)有的流程中沒有對用戶進行分類,無法實現(xiàn)協(xié)同推薦功能。
現(xiàn)有的圖書館管理系統(tǒng)中,書籍管理的具體流程為:圖書館根據(jù)與出版社之間商定的協(xié)議,結(jié)合近期熱點及用戶申請情況來進行書籍采購;然后由管理人員通知提交申請的用戶,并根據(jù)圖書索書號完成書籍的上架擺放;對于破損、過期的書籍,選擇性地將其歸檔或者銷毀。
分析上述流程可以發(fā)現(xiàn):在實際情況中,許多用戶并不會主動提交書籍采購申請,因此書籍的采購存在盲目性的問題;根據(jù)圖書索書號進行擺放的方式,會導(dǎo)致有關(guān)聯(lián)的書籍?dāng)[放過遠的問題。
綜上所述,現(xiàn)有的圖書館管理系統(tǒng)在各功能方面都已形成了一套較為成熟的流程,但其中也存在著一些問題。此外,事物都在不斷的發(fā)展變化當(dāng)中,用戶對系統(tǒng)功能的要求在提升,而管理人員對管理效率的要求也同樣在提升。因此,現(xiàn)有的流程必然需要作出相應(yīng)的改進,才能夠滿足用戶不斷發(fā)展變化的需求。
本文從系統(tǒng)參與者的角度,對圖書館管理系統(tǒng)應(yīng)當(dāng)具備的功能進行分析,具體包括讀者用戶、圖書館管理人員以及系統(tǒng)管理員。
讀者用戶是圖書館管理系統(tǒng)的核心參與者,對圖書館管理系統(tǒng)的主要功能需求是:通過該系統(tǒng),能夠查找并獲取自身所需求的藏書資源信息,然后完成書籍實體的借閱及歸還,同時還能夠在整個過程中獲得良好的個性化服務(wù)體驗。讀者用戶的用例圖,如圖1所示。
圖1 讀者用戶用例圖
圖書館管理人員的核心業(yè)務(wù)工作包括書籍管理以及讀者用戶管理,對圖書館管理系統(tǒng)的主要功能需求是:通過該系統(tǒng),能夠?qū)M行全生命周期的管理,包括采購、登記、上架、下架等,并且能夠?qū)ψx者用戶進行分類管理。圖書館管理人員的用例圖,如圖2所示。
圖2 圖書館管理人員用例圖
系統(tǒng)管理員的核心工作是對圖書館管理系統(tǒng)進行維護管理,對圖書館管理系統(tǒng)的主要功能需求是:能夠通過該系統(tǒng),實現(xiàn)用戶管理、數(shù)據(jù)庫管理、系統(tǒng)參數(shù)設(shè)置等。系統(tǒng)管理員的用例圖,如圖3所示。
圖3 系統(tǒng)管理員用例圖
基于系統(tǒng)業(yè)務(wù)流程以及系統(tǒng)功能需求的分析結(jié)果,本文對圖書館管理系統(tǒng)的總體架構(gòu)進行設(shè)計,具體包括功能架構(gòu)、邏輯架構(gòu)、數(shù)據(jù)架構(gòu)三個方面。
根據(jù)系統(tǒng)功能需求分析結(jié)果,本文針對讀者用戶、圖書館管理人員以及系統(tǒng)管理員等不同用戶的實際需求,對圖書館管理系統(tǒng)的主要功能模塊進行設(shè)計,如圖4所示。
圖4 系統(tǒng)功能架構(gòu)
B/S模式具有開發(fā)簡單、易實現(xiàn)、維護方便、擴展性良好、管理成本低等優(yōu)點,并且其分布性特征能夠有效保障系統(tǒng)的穩(wěn)定運行。因此,本文所設(shè)計的圖書管理系統(tǒng)采用B/S模式進行架構(gòu),由用戶界面層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層組成,如圖5所示。
圖5 系統(tǒng)邏輯架構(gòu)
本文所提出的圖書館管理系統(tǒng)設(shè)計方案的主要目標是實現(xiàn)智能推薦功能,因此必須高效合理地對歷史數(shù)據(jù)進行處理。根據(jù)上述要求,本文對圖書館管理系統(tǒng)進行數(shù)據(jù)架構(gòu)設(shè)計,基于關(guān)系數(shù)據(jù)庫建立讀者信息表、圖書信息表、預(yù)約圖書信息表等數(shù)據(jù)表格,以此來存儲歷史數(shù)據(jù),為進一步的數(shù)據(jù)處理及挖掘工作提供支持。以書籍信息數(shù)據(jù)表為例,具體如表1所示。
表1 書籍信息數(shù)據(jù)表
在本文所設(shè)計的圖書館管理系統(tǒng)中,協(xié)同過濾算法的主要作用是基于讀者用戶的書籍借閱、書籍評分以及資源檢索等歷史信息,通過對這些單維數(shù)據(jù)進行分析處理,最終預(yù)測讀者用戶的偏好,以此實現(xiàn)書籍推薦功能。具體來說,書籍推薦功能的實現(xiàn)過程可分為兩個階段:首先,歸納統(tǒng)計讀者用戶借閱書籍后的歷史評分信息,以此建立用戶-圖書評價矩陣,作為協(xié)同過濾算法的輸入數(shù)據(jù);然后,利用協(xié)同過濾算法進行計算,并根據(jù)所得到的預(yù)測結(jié)果進行推薦。
在利用協(xié)同過濾算法進行推薦預(yù)測這一階段,主要是通過計算相似度、相似近鄰選擇及預(yù)測值,然后對計算結(jié)果進行排序來實現(xiàn)的,具體計算方法如下:
本文選擇了能夠較好地描述變量間線性相關(guān)程度的皮爾森相關(guān)系數(shù),以此對用戶與用戶、書籍與書籍間的相似性進行計算。變量正則表示相關(guān),為0則表示不相關(guān),若為-1則表示完全負相關(guān)。設(shè)兩個讀者用戶a與u都評價過的書籍集合為Ia,u,則這兩個讀者用戶間的相似性的計算式為式(1)。
sim(a,u)=corra,u=
(1)
設(shè)讀者用戶u對書籍i的評分數(shù)據(jù)為Ru,i,對書籍j的評分數(shù)據(jù)為Ru,j,借閱過書籍i和書籍j的讀者用戶集合為Uij,則書籍i和書籍j的相似性的計算公式為:
sim(i,j)=corri,j=
(2)
為了保證相似近鄰具有較高的可信度,本文在選擇過程中僅篩選出相似度大于0的鄰居作為近鄰。設(shè)S(u)為讀者用戶u的相似近鄰集合,則其計算式為式(2)。
S(u)={ua|ua∈T(u),sim(ua,u)>0,ua≠u}
(3)
設(shè)S(i)為書籍i的相似近鄰集合,則其計算式為式(4)。
S(i)={ik|ik∈T(i),sim(ik,i)>0,ik≠i}
(4)
根據(jù)上述計算結(jié)果,進一步計算出讀者用戶u對書籍i的評分預(yù)測為式(5)。
(5)
為了驗證本文所設(shè)計的圖書管理系統(tǒng)的可行性及性能情況,分別對該系統(tǒng)的主要功能模塊及運行性能進行測試。
圖書管理系統(tǒng)主要功能模塊的測試過程為:讀者用戶訪問并登錄本系統(tǒng)后,輸入關(guān)鍵字進行書籍查找操作,然后在查找結(jié)果中選擇目標書籍并完成借閱手續(xù),之后對該書籍進行評分反饋。圖書管理系統(tǒng)會自動記錄讀者用戶的評分信息,并根據(jù)協(xié)同過濾算法來進行預(yù)測,最終向讀者用戶提供圖書推薦功能。圖書管理系統(tǒng)主要功能模塊的測試結(jié)果如下。
(1) 用戶登錄
讀者用戶輸入賬號后完成登錄圖書管理系統(tǒng)的操作,系統(tǒng)登錄界面如圖6所示。
圖6 用戶登錄界面
(2) 書籍檢索
讀者用戶輸入關(guān)鍵詞進行書籍查找操作,書籍檢索結(jié)果如圖7所示。
圖7 圖書檢索界面
(3) 書籍推薦
圖書管理系統(tǒng)通過協(xié)同過濾算法對讀者用戶的歷史評分信息進行計算,向讀者用戶提供書籍推薦結(jié)果,如圖8所示。
圖8 書籍推薦界面
本文所構(gòu)建的系統(tǒng)性能測試環(huán)境為:服務(wù)器采用Intel Core 3.40GHz處理器,安裝Windows Server 操作系統(tǒng);客戶機采用Intel Pentium 1.86GHz處理器,安裝Windows 7操作系統(tǒng);網(wǎng)絡(luò)環(huán)境為100M局域網(wǎng)。
圖書管理系統(tǒng)性能測試的具體過程為:由客戶機所安裝的瀏覽器對圖書管理系統(tǒng)進行訪問,模擬若干個用戶進行系統(tǒng)登錄、書籍借閱、書籍評分以及書籍推薦等操作,對系統(tǒng)運行情況進行測試。
圖書管理系統(tǒng)性能測試的結(jié)果如表2所示。
表2 圖書管理系統(tǒng)性能測試結(jié)果
從表2所示的測試結(jié)果可以看到,本文所設(shè)計的圖書管理系統(tǒng)在不同的負載情況下,均表現(xiàn)出較好的穩(wěn)定性,并且對模擬用戶的各項操作能夠及時響應(yīng),CPU占用率、內(nèi)存占用率、平均響應(yīng)時間等各方面的數(shù)據(jù)都達到了較高水平。
本文所設(shè)計的圖書館管理系統(tǒng),通過引入?yún)f(xié)同過濾技術(shù),能夠根據(jù)讀者用戶的書籍借閱、評分等歷史信息,較為準確地預(yù)測讀者用戶的偏好,從而智能化地向其推薦書籍。該功能的實現(xiàn),能夠提高圖書館管理系統(tǒng)的服務(wù)水平,滿足讀者用戶的個性化需求,具有重要的意義。