白 亮
(吉林建筑大學(xué)城建學(xué)院,吉林長春 130111)
基于Agent技術(shù)的Web個(gè)性化數(shù)據(jù)挖掘研究
白 亮
(吉林建筑大學(xué)城建學(xué)院,吉林長春 130111)
本文討論了基于Web的概念、特性、分類以及相關(guān)技術(shù),并在此基礎(chǔ)上闡述了Web數(shù)據(jù)挖掘結(jié)構(gòu)。然后對Agent技術(shù)進(jìn)行了分析,根據(jù)Agent技術(shù)的智能性、移動(dòng)性等特征,構(gòu)造了一個(gè)關(guān)于Agent的Web個(gè)性化數(shù)據(jù)挖掘模型,設(shè)計(jì)了一個(gè)以J2EE技術(shù)的Web挖掘系統(tǒng)平臺(tái),通過實(shí)驗(yàn)分析結(jié)果和運(yùn)行程序,得出的結(jié)論是基于J2EE平臺(tái),使用先進(jìn)的移動(dòng)Agent技術(shù)的Web挖掘,最終能夠降低挖掘成本、提高挖掘效率。
Agent技術(shù);挖掘;Web;J2EE
數(shù)據(jù)挖掘(Data Mining)是從超大型的數(shù)據(jù)庫、知識庫中獲取有用知識的過程。這些知識可能是一些粗糙的、無結(jié)構(gòu)的、不完整的信息,沒有確定格式、沒有語法對其進(jìn)行描述。隨著網(wǎng)絡(luò)的發(fā)展,Web網(wǎng)頁上還儲(chǔ)存著很多沒有被利用的資源。數(shù)據(jù)挖掘技術(shù)有利于用戶便捷地傳輸、獲取、存儲(chǔ)、處理、分析Web網(wǎng)頁上的大量數(shù)據(jù)。在數(shù)據(jù)挖掘過程中使用的技術(shù)有人工智能技術(shù)、數(shù)據(jù)庫技術(shù)、機(jī)器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)、數(shù)據(jù)分析和決策支持等。除了上述技術(shù),運(yùn)用程序設(shè)計(jì)及網(wǎng)絡(luò)技術(shù)能夠合理地設(shè)計(jì)數(shù)據(jù)挖掘平臺(tái),強(qiáng)化評價(jià)方法和完善內(nèi)容,也起到了關(guān)鍵性的作用。國內(nèi)外一些學(xué)者主要側(cè)重對非結(jié)構(gòu)化數(shù)據(jù)信息化處理以及Web挖掘的理論探討,對實(shí)際應(yīng)用的研究還偏少。JAVA是面向?qū)ο?、平臺(tái)無關(guān)、安全機(jī)制、高可靠性、多線程和內(nèi)嵌的網(wǎng)絡(luò)支持的軟件開發(fā)工具,它是基于多層次構(gòu)架的分布式網(wǎng)絡(luò)環(huán)境下應(yīng)用系統(tǒng)模型。
在傳統(tǒng)的數(shù)據(jù)庫中,數(shù)據(jù)存在都表示為結(jié)構(gòu)化,數(shù)據(jù)量不大,一般的服務(wù)器就可以滿足儲(chǔ)存要求。而現(xiàn)在由于大數(shù)據(jù)的出現(xiàn),數(shù)據(jù)容量規(guī)模都在PB級以上,面對海量、復(fù)雜、變化莫測的數(shù)據(jù),使用原來的挖掘、處理方式顯然是不夠的。一般的數(shù)據(jù)挖掘是指從大型數(shù)據(jù)庫的數(shù)據(jù)中提取人們感興趣的知識,這些知識是隱含的、事先未知的有用信息,數(shù)據(jù)挖掘側(cè)重于從已有的信息中提取規(guī)律性知識,還要解決異構(gòu)數(shù)據(jù)集成的問題。而Web挖掘的研究對象是以半結(jié)構(gòu)化和無結(jié)構(gòu)文檔為中心的Web,這些數(shù)據(jù)沒有統(tǒng)一的模式,數(shù)據(jù)的內(nèi)容和表示互相交織,數(shù)據(jù)內(nèi)容基本上沒有用語義信息來描述,僅僅依靠HTML語法對數(shù)據(jù)進(jìn)行結(jié)構(gòu)上的描述。
1.1 基于Web數(shù)據(jù)挖掘的基本分類
從理論上分析,基于Web數(shù)據(jù)挖掘方法較多,國內(nèi)外學(xué)者對數(shù)據(jù)挖掘過程眾說紛紜??傊鶕?jù)挖掘?qū)ο蟮牟煌?,我們可以把基于Web的數(shù)據(jù)挖掘分為三大類,即Web內(nèi)容挖掘、Web使用挖掘、Web結(jié)構(gòu)挖掘,如如圖1所示。
1.1.1 Web內(nèi)容挖掘
Web上的數(shù)據(jù)類型比較多,有結(jié)構(gòu)化的,也有半結(jié)構(gòu)化的?;赪eb上內(nèi)容挖掘就是將Web上的散列文檔集進(jìn)行遞歸關(guān)聯(lián)比較、分析預(yù)測,挖掘知識和內(nèi)容,其中內(nèi)容涉及多媒體、網(wǎng)頁等。目前的研究主要集中
圖1 Web數(shù)據(jù)挖掘分類
在詞頻統(tǒng)計(jì)、分類算法、模式識別,并從網(wǎng)頁中分離出實(shí)體和屬性。一般的Web信息檢索使用基于詞頻的統(tǒng)計(jì)模型,矢量空間模型是最廣泛采用的模型。在這個(gè)模型里文檔用矢量來表示,而文檔中詞匯的屬性用矢量的分量來表示,其分量值是該屬性的權(quán)重,也就是該屬性出現(xiàn)的頻率。同理,查詢組合也可以用矢量來表示,查詢與文檔的相似度就是兩個(gè)矢量的內(nèi)積,即兩個(gè)矢量夾角的余弦值。
1.1.2 Web結(jié)構(gòu)挖掘
Web結(jié)構(gòu)挖掘主要是從Web本身隱含的以及鏈接過程與結(jié)構(gòu)的數(shù)據(jù)中獲取知識的過程,在通常的搜索引擎中沒有考慮結(jié)構(gòu)的復(fù)雜性,只把Web看作平面文檔的集合。其實(shí),在結(jié)構(gòu)中隱藏著大量有用的信息,用戶在尋找信息的過程中對頁面進(jìn)行聚類和分類關(guān)注,通常用戶只關(guān)注網(wǎng)頁搜索的結(jié)構(gòu)內(nèi)容,如果把頁面信息一起加載到鏈接結(jié)構(gòu)中,能夠獲得更多的數(shù)據(jù)量。最初人們使用PageRank結(jié)構(gòu)挖掘算法,是因?yàn)镻ageRank是評價(jià)網(wǎng)頁權(quán)威性的一種重要工具,搜索引擎Google就是利用該算法與anchor text標(biāo)記、詞頻統(tǒng)計(jì)等因素相結(jié)合的方法對檢索出的大量結(jié)果進(jìn)行相關(guān)度排序,將最權(quán)威的網(wǎng)頁盡量排在前面。
1.2 使用Agent的Web數(shù)據(jù)挖掘
目前大多數(shù)數(shù)據(jù)挖掘都是基于Web的,并且有很多的算法,但是這些算法與挖掘過程都有一定的局限性。大部分都是使用面向?qū)ο蟮恼Z言工具對信息進(jìn)行加工處理,有的使用關(guān)聯(lián)規(guī)則和模式識別,將文檔拆分為段落和語句,把準(zhǔn)備好的段落或語句的語法結(jié)構(gòu)與選中的語言模式結(jié)構(gòu)進(jìn)行匹配,從而獲得所需的語句內(nèi)容,這些內(nèi)容一般通過編程和在數(shù)據(jù)庫中自覺學(xué)習(xí)方式獲得,但是耗費(fèi)很大的學(xué)習(xí)成本和編程的人力資源,而且使運(yùn)行速度明顯變慢。有的人使用Ntology對數(shù)據(jù)自身進(jìn)行數(shù)據(jù)挖掘,但這些方法不能完全滿足數(shù)據(jù)挖掘的根本需要。將人工智能領(lǐng)域知識融入挖掘過程中,大大地提高了挖掘效率,更充分地實(shí)現(xiàn)了數(shù)據(jù)挖掘。Agent是人工智能中的重要分支,它具有智能性、移動(dòng)性、自學(xué)性等特點(diǎn),其應(yīng)用于Web數(shù)據(jù)挖掘更能體現(xiàn)它的優(yōu)越性。Agent挖掘結(jié)構(gòu)由用戶、知識庫、Agent主體、數(shù)據(jù)庫組成,如圖2所示。
圖2 基于智能Agent挖掘模型結(jié)構(gòu)
當(dāng)收到用戶輸入的初始挖掘請求時(shí),系統(tǒng)把所有的請求放在工作日志上,移動(dòng)接口Agent主體訪問知識庫中的領(lǐng)域知識庫和網(wǎng)絡(luò)信息知識庫,然后抽取請求知識庫,通過智能Agent進(jìn)行學(xué)習(xí)訓(xùn)練,尋找分類模式及規(guī)則。
J2EE是由類組成的,運(yùn)行之前首先要定義對象,然后對類進(jìn)行實(shí)例化,根據(jù)對象的動(dòng)態(tài)遷移性傳輸?shù)狡渌脩魴C(jī)或代理服務(wù)器上,這些過程是通過類庫里的方法實(shí)現(xiàn)的。例如,調(diào)用BufferedWriter類庫里的void flush()方法,調(diào)用BorderLayout類中的void layoutContainer(Contatner target)方法可以把對象設(shè)置為容器組件,根據(jù)J2EE技術(shù)與平臺(tái)無關(guān)性的特點(diǎn),如果有新的數(shù)據(jù)加入這個(gè)模式中,注冊表不需修改,直接刷新頁面就可以了,基于J2EE的挖掘過程如圖3所示。
圖3 基于J2EE的挖掘過程
Web 數(shù)據(jù)挖掘過程是由Web服務(wù)器端進(jìn)行的,通過發(fā)送JAVA Applet,SQL申請,將其下載到客戶機(jī)服務(wù)器與RMI/IIOP協(xié)議鏈接上,讓服務(wù)對象注冊引用,SQL查詢封裝為本次申請參數(shù)之一;通過數(shù)據(jù)挖掘算法以及挖掘工具完成整個(gè)運(yùn)行過程,再把計(jì)算結(jié)果反饋給用戶。
此次實(shí)驗(yàn)中,我們選取的指標(biāo)有訪問頁面連接次數(shù)、點(diǎn)擊次數(shù)、預(yù)取頁面數(shù)、選中頁面數(shù)、然后統(tǒng)計(jì)命中率,由式(1)可得到挖掘效率。
.
(1)
隨機(jī)選取一臺(tái)客戶機(jī)的150個(gè)頁面,里面裝有JavaBean和EJB模塊。采用基于Agent的Web移動(dòng)平臺(tái),通過跟蹤、預(yù)測來模擬用戶的行為特征。表1為對頁面點(diǎn)擊得出的數(shù)據(jù)。
確定預(yù)測模型(prediction model)算法程序:
(ⅰ)定義抽象累
{ Data members;
The return value of the data type method(parameters……){}
Abstract The type of return value The method name(parameters……);
}
(ⅱ)定義抽象類派生的子類
Abstract Public name extends class wjuexiaolu {
Double sum; //定義累加器類型
Public void sumber(int m) //定義處理方法
{
For(int x=0;x<=m;x++)
{sum=sum+mtmt[x]; } // 求頁面總和
返回sum的平均值 ; }
}
(ⅲ)抽象類方法的實(shí)現(xiàn)
Class abst
{public static void main(String[] args)
{
abst ss=new abst() ;
ss. sumber (10); }
}
實(shí)驗(yàn)結(jié)果表明,點(diǎn)擊率與用戶的興趣、愛好有很大關(guān)系。經(jīng)過統(tǒng)計(jì)分析和程序的運(yùn)行結(jié)果不難發(fā)現(xiàn), 用戶的點(diǎn)擊率主要取決于自己的興趣,用戶對不感興趣的頁面選中幾率不到10%,用戶對感興趣的頁面選中幾率占50%以上。因此,用戶使用智能數(shù)據(jù)挖掘大大提高了數(shù)據(jù)挖掘效率。
由于數(shù)據(jù)量的不斷增大,數(shù)據(jù)的存儲(chǔ)問題越來越受到人們的關(guān)注,在大數(shù)據(jù)中獲得我們需要的信息是數(shù)據(jù)挖掘的主要任務(wù)。傳統(tǒng)的挖掘技術(shù)已不適合現(xiàn)代挖掘需求,目前專家們正在不斷地?cái)U(kuò)展數(shù)據(jù)挖掘的模式、算法以及數(shù)據(jù)存儲(chǔ)方式等。但實(shí)際上,在設(shè)計(jì)一個(gè)Web數(shù)據(jù)挖掘系統(tǒng)時(shí),要考慮的問題比較多,比如:如何處理各個(gè)用戶之間的交互問題、服務(wù)器之間負(fù)載均衡和瓶頸問題、通信過程的安全問題等,這些仍將是目前乃至今后的Web數(shù)據(jù)挖掘系統(tǒng)研究的主要目標(biāo)和任務(wù)。這里我們使用J2EE作為開發(fā)平臺(tái),以基于Agent技術(shù)的Web信息挖掘系統(tǒng)作為技術(shù)支持,不斷優(yōu)化和完善Web數(shù)據(jù)挖掘模型,從而大大提高挖掘效率。
[1]徐寶文,張衛(wèi)豐.數(shù)據(jù)挖掘技術(shù)在Web預(yù)取中的應(yīng)用研究[J].計(jì)算機(jī)學(xué)報(bào),2011(4):430-436.
[2]陳莉,焦李成.Internet/Web數(shù)據(jù)挖掘研究現(xiàn)狀及最新進(jìn)展[J].西安電子科技大學(xué):自然科學(xué)版,2011(1):114-119.
[3]廖樂健,曹元大,李新穎.基于Ontology的信息抽取[J].計(jì)算機(jī)工程與應(yīng)用,2012(23):110-113.
[4]Paul J. Perrone,et al.J2EE構(gòu)建企業(yè)系統(tǒng)專家級解決方案[M].張志偉,譚郁松,張明杰,譯,北京:清華大學(xué)出版社,2010.
[5]李雪,于書舉.基于J2EE的市場需求預(yù)測支持系統(tǒng)模型的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)與信息技術(shù),2006(7):37-40.
Abstract: This paper discusses the concept, characteristics, classification and related technologies, and expounds the structure of Web data mining.Then the Agent technology is analyzed, based on intelligent, mobility, etc., we construct a personalized Web data mining model and design a system platform based on J2EE.Through the experimental analysis results and running program, we find that the system platform used of advanced mobile Agent,it is able to reduce the mining cost and improves the mining efficiency.
Public digging- efficacy //定義挖掘效率抽象類
The Research of Web Personalized Data Mining Based on the Agent
BAI Liang
(The City College of Jilin Jianzhu University,Changchun Jilin 130111,China)
Agent;mining;Web;J2EE
2015-10-12
白 亮(1984- ),男,吉林榆樹人,吉林建筑大學(xué)城建學(xué)院助教,從事數(shù)據(jù)庫開發(fā)與數(shù)據(jù)挖掘研究。
TP311
A
2095-7602(2015)12-0043-04