蔡 寅
江蘇經貿職業技術學院,江蘇南京 211168
圖書館日常的讀者借閱活動中,讀者的借閱行為在圖書館信息管理系統中積累了大量的數據。但是,這些事務性的數據并沒有發揮其應有的價值。這些數據的功能現階段只是停留在簡單的讀者借閱歷史查詢上,沒有經過加工、整理及應用。除此之外,讀者在使用圖書檢索系統的過程中,有著大量的檢索行為,這些檢索行為也產生了大量的數據。如何利用這些海量的數據為讀者提供更優質的服務就成了我們研究的重點之一。
本文的研究重點是基于圖書館日常的讀者服務數據,通過使用數據挖掘的手段,分析讀者的信息使用情況,最后提出一個可以為讀者個性化信息推送提供參考的具體方案,借以有效提高高校圖書館的讀者服務質量,提高圖書館的讀者服務水平。鑒于系統整體比較龐大,因此本文只是討論系統的總體結構設計,以為將來系統的詳細設計做好準備。
在圖書館提供信息服務的過程中,涉及的讀者類型豐富,涉及的館藏資源龐雜。系統的設計目標是為圖書館為讀者提供個性化的信息推送服務提供輔助支撐。因此,系統的設計主要以“向特定的讀者,推送特定的信息”為最終目標。
信息推送的過程中,涉及到的信息很多。系統的設計過程中不可能做到面面俱到,因此,本系統的設計目標主要完成以下特定目標:
1)獲取讀者信息,提供讀者服務。根據讀者的條碼號,找出讀者的類型和使用習慣。利用數據挖掘的技術手段向讀者提供特定的有效信息。當讀者用自己的證件號登陸書目查詢系統、數據庫檢索系統時,可以判定讀者身份,根據讀者身份及讀者信息使用習慣向讀者推送相關信息資源,包括圖書資源、期刊資源、電子數據庫資源等;
2)分析入藏資源,制定推送計劃。對于新入藏的信息資源,根據信息資源的特點,向特定的讀者群提供信息推送服務。比如,當圖書館新到一批圖書時,將新書書目中的部分圖書推送給特定的讀者群;
3)收集檢索歷史,優化資源配置。根據用戶的書目檢索歷史記錄,用戶的數字資源檢索記錄等讀者利用圖書館信息資源的情況,結合本館的信息資源配置情況,調整圖書館的資源配置,如藏書配置、資源購置分配。專業信息建設計劃等,擴大圖書館信息服務的滿意度。
根據前文所述系統目標,系統的核心是利用相關館藏數據及讀者使用文獻情況數據來服務讀者信息推送工作。根據系統的輸入和輸出,將系統劃分成數據接口模塊、數據預處理模塊、數據挖掘模塊、用戶接口模塊共四個模塊,每一層模塊為上一層模塊提供數據支持。
在圖書館的實際應用中,伴隨著圖書館的文獻資源建設和圖書館的讀者信息服務,會產生相當多的數據。但是,這些數據種類繁多。從數據的分布上,數據分布在不同服務器,不同平臺,不同的數據庫中;從數據的存儲結構看,數據類型,數據庫中相關數據的分布也不盡相同。因此,系統首先通過數據連接模塊將這些數據進行整合,然后通過數據預處理手段,將數據規范化,解決異構問題,將數據統一到信息推送數據庫中。最后,通過數據挖掘的手段,使用關聯規則算法,得到相關的關聯規則。用戶接口模塊利用這些規則,完成系統的既定目標。各模塊的功能具體如下:
1)數據接口模塊
作為最底層的模塊,數據連接模塊的功能,是對上層的預處理模塊屏蔽底層數據庫的連接細節,使得上層模塊在進行數據庫讀寫操作時,可以使用統一的接口和語法。目的是將上層模塊從繁瑣的數據連接中解脫出來,從而可以把精力放在具體的事務處理上,簡化了數據預處理模塊的結構,同時提高了系統的可維護性和擴展性,擴充新的數據源類型時,只要修改數據連接模塊就可以了。
數據接口模塊,向下,通過.net框架中的類,使用OleDbConnection,SQL connection等連接Oracle、SQL Server等數據庫,向上,為數據預處理模塊提供統一的接口。
2)數據預處理模塊
高質量的決策必然依賴于高質量的數據。數據預處理模塊的功能是,在實施數據挖掘以前,利用數據連接層提供的數據,及時檢測數據異常,盡早調整數據并規約待分析數據。為下面的數據挖掘工作提供干凈、準確、簡潔的數據。數據預處理模塊通過對數據的清洗、集成、變換、簡化操作后,將處理完成的數據導入讀者信息推送服務數據庫中,為數據挖掘工作做好準備。其基本流程如下:
(1)數據預處理模塊首先利用數據連接模塊從相關的數據庫中抽取讀者信息服務可以使用的數據表。因為各個數據庫中的數據表有很多,但是可以為讀者信息推送服務的數據表的數量是有限的,因此,數據預處理的第一步,就是將這些數據表從各個數據庫中抽取出來,準備處理;
(2)從各個數據庫中抽取出的工作表是各種結構雜亂的源數據。對于這些結構雜亂的源數據首先進行清洗,數據清洗的目的是除去源數據中的噪聲數據和無關數據,處理遺漏數據和清洗臟數據,去除空白數據域的知識背景上的噪聲,考慮時間順序和數據變化等。主要包括處理噪聲數據、處理空值、糾正不一致數據、更正明顯的輸入錯誤數據等;
(3)經過清洗的各種數據仍然是各個不同數據環境中的異構數據。數據預處理的工作接下來是對這些數據的合并處理,將多個數據源中的數據結合起來存放在一個一致的數據存儲中。同時,在數據集成的過程中除去冗余數據;
(4)用于數據挖掘的各種數據在經過數據集成之后,需要將數據變換或統一成適合挖掘的形式。經過系統集成后的數據雖然在構造上是統一的,但是如果需要為數據挖掘提供數據支持,很多數據是不合適的。比如高度離散化的數據,必須通過重新分類離散的方式,將離散度降低。為后面的數據挖掘做好準備;
(5)經過變換的數據基本可以滿足數據挖掘的需求,但是在使用這些數據進行數據挖掘之前,還需要對這些數據進行簡化。數據簡化的過程是在對發現任務和數據本身內容理解的基礎上,尋找依賴于發現目標的表達數據的有用特征,以縮減數據規模,從而在盡可能保持原貌的前提下最大限度的精簡數據量。
3)數據挖掘模塊
數據挖掘模塊的功能是利用經過預處理的數據,使用關聯規則的Apriori算法,找出數據中關聯規則。
數據挖掘使用的數據源是經過處理的數據,即信息推送數據庫。根據給定的最小支持度和最小置信度給出相關的關聯規則。為用戶接口模塊中的信息推送提供參考標準。
數據挖掘模塊的過程主要是:
(1)掃描信息推送數據庫,得到1-候選項目集C1;
(2)根據項目集的支持度的闕值,得到1-頻繁項目集L1;
(3)根據L1得到2-候選項目集C2;
(4)根據2-候選項目集C2和最小支持度得到2-頻繁項目集;
(5)重復第三、第四步,直到候選項目集為空集;
(6)根據得到的頻繁項目集,得到大于最小置信度的規則集合;
(7)對挖掘的結果進行評價和展望。
4)用戶接口模塊
用戶接口模塊主要功能是根據用戶的輸入及用戶需求,參照數據挖掘的結構以及相關的數據環境,為用戶輸出目標數據。
根據系統的設計目標,用戶接口模塊主要包括三個部分:
(1)根據讀者信息,輸出文獻信息推送單
當系統接收到讀者信息時,首先從相關數據庫中檢測讀者信息。然后根據讀者信息,根據關聯規則,找出滿足系統設定置信度的關聯規則。最后,根據關聯規則從相關文獻數據庫中向讀者推送文獻。
(2)根據文獻信息,輸出推送讀者列表
當系統接收到文獻信息時,從文獻信息數據庫中查詢文獻的特征信息,然后根據系統設定的置信度和相應的關聯規則,查詢滿足關聯規則的讀者信息列表,最終提交欲推送的讀者列表。
(3)根據限定時間的讀者文獻使用情況,輸出館藏建設意見單
館藏資源建設在圖書館建設中占有重要的地位。圖書館為了更好的滿足讀者需求,更好的契合讀者的信息需求就必須及時的調整自己的館藏資源建設。但是,在傳統的館藏資源建設過程中,絕大多數時候忽略了讀者的重要性[27]。圖書館人更多的時候是根據自身主觀的行為和特征去完善館藏。因此,本模塊的目的就是根據數據挖掘的結果和館藏文獻信息資源的情況給出館藏的建設意見,為館藏資源建設的決策提供支持。
系統首先根據用戶設定的時間段,對該時間段的讀者使用圖書館資源的情況進行統計分析,然后利用數據挖掘的結果,即相關的關聯規則,得到館藏應有的資源配置分布。再跟館藏資源的實際情況進行對比,得到最終的建設意見的結果。
本文進行了系統結構的設計。首先根據分析了系統的設計目標,然后根據系統的設計目標對系統的總體結構進行了設計。系統的總體結構劃分成數據接口模塊、數據預處理模塊、數據挖掘模塊和用戶接口模塊4個模塊。最后,對系統的各個模塊的工作原理和工作流程進行了設計,為下一步系統各個模塊的詳細設計做好了基礎保證工作。
[1]Fayyad,U.,From Data Mining to Knowledge Discovery: An overview,In advances in Knowledge Discovery and Data Mining,p471-493.
[2]戴穩勝,張阿蘭,謝邦昌.數據挖掘的方法、流程及應用[J].中國統計,2004(07):53-54.
[3]周群.論數字圖書館數據挖掘系統模型研究[J].情報雜志,2006(11):97-99.
[4]R.D.Lawrence,G.S.Almasi,V.Kotlyar,M.S.Viveros, Personalization of Supermarket Product Recommendations,Data Mining and Knowledge Discovery,vol.511-32,JAN-APR 2001.