◆李常福
(鄭州市中心醫(yī)院 河南 450000)
基于Web數(shù)據(jù)挖掘技術(shù)的個性化推薦系統(tǒng)研究
◆李常福
(鄭州市中心醫(yī)院 河南 450000)
考慮目前電子商務(wù)網(wǎng)站快速發(fā)展及應(yīng)用趨勢,結(jié)合水果網(wǎng)絡(luò)購買平臺實例。基于Web數(shù)據(jù)挖掘技術(shù)構(gòu)建個性化推薦系統(tǒng),整個個性化推薦系統(tǒng)的實現(xiàn)及設(shè)計過程可為Web數(shù)據(jù)挖掘技術(shù)在電子商務(wù)中的應(yīng)用提供參考。
Web數(shù)據(jù)挖掘;個性化;推薦系統(tǒng)
基于Web的數(shù)據(jù)挖掘技術(shù)就是數(shù)據(jù)挖掘技術(shù)的一個分支,離不開數(shù)據(jù)挖掘的基本理念、原理及方法。只是將數(shù)據(jù)挖掘的應(yīng)用領(lǐng)域縮小到了Web數(shù)據(jù)這一范疇之內(nèi),通過對Web相關(guān)數(shù)據(jù)的統(tǒng)計,發(fā)現(xiàn)其核心信息,目前已在電子商務(wù)得到了深入的應(yīng)用。在購物網(wǎng)站中,有效運(yùn)用Web數(shù)據(jù)挖掘,提取Web日志中的有用信息,找出用戶感興趣的商品及所需的服務(wù),構(gòu)建個性化推薦系統(tǒng),進(jìn)而為用戶提供個性化的商品推薦服務(wù),這種基于Web數(shù)據(jù)挖掘技術(shù)的個性化推薦系統(tǒng)不僅在一定程度上提高購物網(wǎng)站的銷售業(yè)績,同時也促進(jìn)了Web數(shù)據(jù)挖掘技術(shù)的應(yīng)用。因此,以Web數(shù)據(jù)挖掘技術(shù)為背景,研究個性化推薦系統(tǒng),具有重要的意義。為了充分說明Web數(shù)據(jù)挖掘個性化推薦系統(tǒng)的構(gòu)建、實現(xiàn)與應(yīng)用過程,文章主要以某水果網(wǎng)絡(luò)購買平臺的設(shè)計與實現(xiàn)為例進(jìn)行分析。
在網(wǎng)絡(luò)購物平臺的應(yīng)用過程中,Web數(shù)據(jù)挖掘的主要研究對象是用戶與網(wǎng)站交互時服務(wù)器段所產(chǎn)生的日志記錄文件。它主要包括Web服務(wù)器用戶訪問日志、代理服務(wù)器日志、客戶端日志等。文章主要針對服務(wù)器段產(chǎn)生的用戶訪問日志進(jìn)行數(shù)據(jù)挖掘處理?;赪eb數(shù)據(jù)挖掘的水果網(wǎng)絡(luò)購買平臺充分考慮了數(shù)據(jù)挖掘與分析的需要,系統(tǒng)架構(gòu)設(shè)計采用MVC架構(gòu),綜合利用SpringMVC、Spring、Hibernate等開源框架。采取Model View Controller分層思想進(jìn)行系統(tǒng)架構(gòu)的構(gòu)建,并通過搭建MySQL數(shù)據(jù)集群完成系統(tǒng)內(nèi)數(shù)據(jù)的存儲。
水果網(wǎng)絡(luò)購買平臺是一個具備各項功能的電子商務(wù)系統(tǒng),不僅需要為相關(guān)用戶提供登陸服務(wù)、水果選擇服務(wù),還需要為系統(tǒng)的管理者提供客戶訂單處理、相關(guān)公告發(fā)布以及網(wǎng)站正常運(yùn)行等服務(wù)。為了實現(xiàn)這些服務(wù)功能,該系統(tǒng)的總體設(shè)計如下。
2.1 推薦系統(tǒng)總體設(shè)計
基于水果網(wǎng)絡(luò)購買平臺的實際需求結(jié)合Web數(shù)據(jù)挖掘技術(shù)本身的特點(diǎn),采用Web日志挖掘技術(shù)對系統(tǒng)中用戶訪問日志記錄文件進(jìn)行Web數(shù)據(jù)挖掘,借助Hadoop平臺對系統(tǒng)中的用戶訪問日志記錄文件進(jìn)行統(tǒng)計分析,找到瀏覽用戶的行為模式,挖掘用戶可能感興趣的商品,并作出合理的推薦,對統(tǒng)計分析結(jié)果匯總,為系統(tǒng)決策者決策提供理論依據(jù)。為了完成上述過程,水果網(wǎng)絡(luò)購買平臺Web日志挖掘推薦系統(tǒng)功能模塊主要包括Web日志數(shù)據(jù)預(yù)處理、數(shù)據(jù)匯總展示、個性化商品推薦三個組成部分,詳細(xì)設(shè)計內(nèi)容以下進(jìn)一步闡述。
2.2 推薦系統(tǒng)詳細(xì)設(shè)計
2.2.1 數(shù)據(jù)預(yù)處理模塊設(shè)計
數(shù)據(jù)預(yù)處理是進(jìn)行數(shù)據(jù)挖掘的基礎(chǔ),特別是基于Web的數(shù)據(jù)挖掘,數(shù)據(jù)預(yù)處理則是重中之重。Web日志文件廣泛的存在于各類Web應(yīng)用中,只要用戶與Web應(yīng)用產(chǎn)生交互,在服務(wù)器后臺就會生成日志文件。然而在這些海量的日志記錄中存在著很多無用記錄和錯誤記錄。在數(shù)據(jù)預(yù)處理的數(shù)據(jù)清洗階段就要將這些無用、錯誤記錄刪除,提供低緯度、低冗余的數(shù)據(jù)源供其它階段使用,如圖3所示。通過初步的數(shù)據(jù)清洗,得到的日志記錄數(shù)據(jù)維度已大量減少,可應(yīng)用到下階段的工作中去。已清洗日志記錄包括請求用戶IP、請求時間戳、請求方法、請求文檔URL、被請求文檔URL、HTTP版本信息、請求返回碼和代理服務(wù)器信息,已清洗的日志記錄將會保存在系統(tǒng)數(shù)據(jù)庫visit_log表中,這個過程就是圖1的屬性提取過程,是針對本系統(tǒng)的特殊設(shè)計。
圖1 數(shù)據(jù)預(yù)處理流程
2.2.2 數(shù)據(jù)匯總展示模塊設(shè)計
數(shù)據(jù)統(tǒng)計匯總模塊主要是將數(shù)據(jù)庫中visit_log統(tǒng)計分析匯總,然后展現(xiàn)給系統(tǒng)管理人員,以供決策需要,流程如圖2所示。首先從MySql數(shù)據(jù)庫集群中讀取visit_log中的日志記錄,然后通過調(diào)用相應(yīng)的MapReduce任務(wù)處理日志記錄。通過對visit_log中的日志記錄進(jìn)行統(tǒng)計便可得到PV頁面訪問量,IP統(tǒng)計是針對訪問過該系統(tǒng)所有IP地址進(jìn)行的統(tǒng)計匯總。
圖2 數(shù)據(jù)匯總流程
2.2.3 個性化商品推薦模塊設(shè)計
個性化商品推薦模塊負(fù)責(zé)根據(jù)用戶的瀏覽記錄推薦該用戶可能感興趣的商品。當(dāng)用戶向網(wǎng)站系統(tǒng)發(fā)起請求時,服務(wù)器接收用戶請求得到用戶IP地址,然后根據(jù)IP地址去數(shù)據(jù)庫集群中進(jìn)行匹配,如果匹配到某條記錄,通過獲取該記錄中的請求URL值,根據(jù)請求URL值可以判斷出該用戶瀏覽過哪件商品。如果匹配到多條記錄說明數(shù)據(jù)庫中保存了多次用戶瀏覽記錄,根據(jù)請求URL可以判斷出該用戶瀏覽過哪些商品,根據(jù)這些商品信息可以構(gòu)建出該用戶的商品偏好矩陣,同理可以通過MapReduce任務(wù)得到當(dāng)前系統(tǒng)所有瀏覽用戶的商品偏好矩陣。得到這兩個矩陣以后便可以將這兩個矩陣作為協(xié)同過濾Mapreduce任務(wù)的出入,作業(yè)執(zhí)行完畢時即可輸出該用戶的推薦信息列表,選取排名靠前的商品推薦給用戶即可,進(jìn)而完成整個個性化推薦過程,該模塊的詳細(xì)流程設(shè)計如圖3所示。
圖3 個性化推薦模塊流程
從上述分析可以看出,基于Web數(shù)據(jù)挖掘技術(shù)的個性化推薦系統(tǒng)整體實現(xiàn)思路和過程并不是很復(fù)雜,但有些關(guān)鍵技術(shù)需要進(jìn)行深入研究和不斷深化;一是Web日志文件用戶識別方法,主要是為了杜絕誤識別現(xiàn)象的發(fā)生;二是協(xié)同過濾推薦算法,通過對推薦算法的優(yōu)化可提高推薦效果;三是Web服務(wù)器的性能,可通過構(gòu)建可擴(kuò)展的Web服務(wù)器集群來解決單機(jī)性能的限制,這些將是個性化推薦系統(tǒng)構(gòu)建和應(yīng)用過程中需要進(jìn)一步細(xì)化、深入研究的關(guān)鍵問題。
[1]李彬,劉莉莉.基于MapReduce的Web日志挖掘[J].計算機(jī)工程與應(yīng)用,2012.