999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Web日志的個性化搜索引擎模型的發現

2009-01-01 00:00:00
計算機應用研究 2009年5期

(華東師范大學 軟件學院 上海 200062)

摘 要:個性化搜索是指同樣的關鍵字對不同的人返回其感興趣的搜索結果。對于不同的用戶個體,同樣的關鍵字可能有不同含義,如關鍵字“apple”被愛好音樂的人士理解為Apple iPod,但也會被健康飲食的人士理解為apple fruit。每次用戶搜索關鍵字的過程,都會被記錄在網站服務器的后臺日志中。通過若干挖掘算法,將Web原始日志信息進行用戶識別,會話分組后,提取單一用戶多次會話中的搜索關鍵字關聯規則,為實現個性化搜索引擎提供參考。

關鍵詞:Web日志;個性化搜索;單用戶搜索關鍵字關聯規則發現算法

中圖分類號:TP311文獻標志碼:A

文章編號:1001-3695(2009)05-1806-04

Discover personalized search engine model by mining Web logs

BAO Yu

(Software Engineering Institute East China Normal University Shanghai 200062 China)

Abstract:The Web site visitors’ search keywords was recorded in the Web server log files. Analyzing and exploring associations in the search keywords of single Web user could provide the personal search results.This paper discovered the single user search keywords association rule by using algorithm SUSKARD.

Key words:Web logs; personal Web search;SUSKARD algorithm

1 數據預處理

原始Web日志雖然包含了大量訪問者的瀏覽信息,但有些日志是隨鑲嵌在網頁中的圖片和腳本產生的;網絡搜索引擎使用的Web蜘蛛、軟機器人或智能代理也會產生訪問日志。這些日志對分析用戶的訪問情況都是無用的,應該過濾掉。大多數情況,只有日志中HTML或ASP文件與用戶會話相關。一般不會顯示請求頁面上的圖形文件,它們是根據HTML的超文本引用標志自動下載的,這些日志與分析用戶的行為模式也沒有任何關系,所以通過檢查URL的后綴,將日志中文件的后綴名為GIF、JPEG、JPG、gif、jpeg、jpg和map的項刪除。除了刪除上面列出的無關項外,還應當刪除露宿者數據。所謂的露宿者是偶爾訪問站點且逗留時間極短的用戶,這些數據對挖掘過程沒有什么貢獻,所以在數據凈化階段也要刪除露宿者Web log中一般至少包括如下字段:每個訪問者的IP地址和域名;訪問的日期和時間;訪問的頁面名稱;訪問請求是否成功;下載文件的大小;引導訪問者來到本站點的URL;訪問者使用的瀏覽器和操作系統,等等。

當然對于不同的Web server,其Web log的格式也有所不同。例如Microsoft IIS 4.0(Microsoft’s Internet information server version 4)的W3C格式如下:

#Fields: date time cip csusername scomputername sip csmethod

csuristem csuriquery scstatus scbytes csbytes

timetaken cs(UserAgent) cs(Cookie) cs(Referer)

對于搜索類網站,具體一條日志記錄表示如下:

20071128 00:05:23 W3SVC87 www.website.com GET /ajax/search.aspx keyword=apple 80  220.171.120.51

Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322) 200 0 0

上面一條日志信息表示IP地址為220.171.120.51的用戶,在時間20071128 00:05:23對網站www.website.com提出了關鍵字為“apple”的搜索請求。

在原始網站服務器后臺日志中,所有用戶的訪問日志會零星摻插在一起,必須對日志按照用戶進行分組,這便是用戶識別。同一用戶對Web站點會有很多次的訪問,又需要在同一用戶的所有訪問日志上進行會話分組,并提取出一次會話中,用戶進行搜索的所有關鍵字集合 。經過會話識別后的一條條記錄,稱之為單用戶搜索關鍵字會話集(single user search keywords session dataset,SUSKSD)。

2 用戶識別方法比較

由于本地緩存、公司防火墻和代理服務器的存在,要識別出每一個用戶變得很復雜。依賴用戶的合作是最好的解決辦法,但是由于涉及到隱私,這種解決辦法往往難以進行。表1歸納了目前常用的為精確確定用戶及其行為所使用的方法及其優缺點。

根據IP和代理識別用戶是最簡單易行的,不過誤差也較大,因為存在多人共有一臺電腦的可能。嵌入SessionID技術一般在電子商務記錄用戶購物籃內物品時最常用,對每一次用戶訪問都嵌入一個SessionID,也就是把一段時間內同一用戶的請求都標記上相同的SessionID號。但是,嵌入SessionID只在動態網站上適用,而且是以時間間隔來判別當前SessionID是否有效,因此沒有考慮短時間內重復訪問的情況。注冊的方法只有在用戶登錄進站后才能跟蹤用戶訪問行為,方法準確性稍高一些,但是并不是所有的用戶都愿意注冊且每一次訪問時都愿意登錄,其可操作性不強。在客戶端寫入Cookie標志,可以跟蹤用戶的重復訪問情況,精確性較高,但是如果用戶不打開瀏覽器Cookie開關,就無法實施。利用代理軟件,精確性最高,可以得到用戶精確的訪問情況,但是可操作性差,用戶可能認為侵犯了個人隱私,拒絕使用代理軟件。本系統中采用根據IP地址識別用戶的方法。

表1 用戶識別方法比較

方法優點缺點

IP地址和代理不需要特殊附加技術,最容易實施不能保證用戶與IP和代理一一對應

嵌入SessionID容易實行,與IP無關未考慮短時間內用戶重復訪問的情況,僅動態網站下適用

注冊可以精確跟蹤一個用戶的訪問情況并非所有的用戶都愿意注冊,且每一次訪問時都愿意登錄

Cookie可以跟蹤重復訪問用戶如果禁用Cookie選項就無法收集信息

代理軟件可以得到精確訪問情況有時會遭到用戶的拒絕甚至投訴

3 單用戶搜索關鍵字會話集發現算法

在跨越時間區段較大的Web服務器日志中,用戶有可能多次訪問了該站點。會話識別的目的就是將用戶的訪問記錄分為單個的會話(session)。最簡單的方法是利用超時,如果兩個頁面間請求時間的差值超過一定的界限就認為用戶開始了一個新的會話。許多商業產品將缺省超時值確定為30 min,超時的界限可以根據站點的使用統計反饋結果進行調節,直到可以準確地識別會話。為方便起見,在本文中也使用30 min作為會話的超時界限。通過會話識別,可以將雜亂無章的Web日志信息歸結為一條條的單用戶搜索關鍵字會話記錄,并采用單用戶搜索關鍵字會話集發現算法(discover single user search keywords session dataset,DSUSKSD),產生如表2所示的單用戶搜索關鍵字會話集。

表2 單用戶搜索關鍵字會話集

IPIDSIDkey words

1000000110001K1、K2、K3

1000000110002K1

1000000110003K3、K4、K5

1000000110004K1、K2、K3

1000000110005K1、K2、K3、K5

表2中IPID=10000001 SID=10001的記錄,表示某IPID=10000001單個用戶在這次會話中,搜索了K1、K2和K3這三個關鍵字。

L:the set of input logs

L={L1,L2,L3,…,Li,…,L|L| } ,i≤|L|

|L|:the number of input logs

Li={IPi,TIMEi,METHODi,URLi,PROTi,CODEi,BYTESi}

S:the set of sessions

S={S1,S2,S3,…,Si,…,S|S|},i≤|S|

|S|:the number of sessions

Si={IPi,KEYWORDSi}

KEYWORDSi={ KEYWORD1,KEYWORD2,…,KEYWORDm,…,KEYWORD|KWSi|},m≤|KWSi|

|KWSi|:the number of KEYWORDSi in Session_i

//input: L |L|,Δt

//output:S,|S|

Function DSUSKSD (|L|,L,Δt)

for each Li of L

if Methodi is ‘GET’ AND Urli is ‘SEARCH WEBPAGE’

if S2k∈Open_Sessions_Set with IPk=IPi then

if((TimeiEND_TIME(Sk))<Δt)then

//Δt:會話超時界限設為30 min

Sk=(IPk,KEYWORDSk∪KEYWORDSi)

//屬同一會話,合并關鍵字

else

CLOSE_SESSION(Sk)

WRITE_SESSION(Sk)

Si={IPi,KEYWORDSi}

OPEN_SESSION(Si)

end if

else

Si={IPi,KEYWORDSi}

OPEN_SESSION(Si)

end if 

end if 

end for

for each Si of Open_Sessions_Set

CLOSE_SESSION(Si)

WRITE_SESSION(Si)

end for 

end Function

函數END_TIME(Sk)返回會話Sk中最后一個搜索請求日志的記錄時間。 

函數CLOSE_SESSION(Sk)從Open_Sessions_Set中移除Sk。

函數WRITE_SESSION(Sk)將Sk寫入單用戶搜索關鍵字會話集SUSKSD中。

函數OPEN_SESSION(Si)向Open_Sessions_Set中添加Sk。

4 單用戶搜索關鍵字關聯規則發現算法SUSKARD 

關聯分析即發現關聯規則,這些規則展示了屬性—值頻繁地在給定數據集中一起出現的條件。例如:可通過對數據的分析得出啤酒→尿布的關聯規則,即買啤酒的人往往會買尿布。對于這種無序項目集,采用Apriori算法[1]可以生成所有頻集。

4.1 關聯規則理論原理

1)關聯規則 設I={i1,i2,…,im}是二進制文字的集合,其中的元素稱為項(item)。記D為交易(transaction)T的集合,這里交易T是項的集合,并且TI。對應每一個交易有惟一的標志,如交易號,記做TID。設X是一個I中項的集合,如果XT,那么稱交易T包含X。

一個關聯規則是形如XY的蘊涵式,這里XI,YI,并且X∩Y=。 

2)支持度(support)和置信度(confidence) 規則XY在交易數據庫D中的支持度是交易集中包含X和Y的交易數與所有交易數之比,記為support(XY),即

support(XY)=|{T:X∪YT,T∈D}|/|D|

規則XY在交易集中的置信度是指包含X和Y的交易數與包含X的交易數之比,記為confidence(XY),即

confidence(XY)=|{T:X∪YT,T∈D}|/|{T:XT,T∈D}|

給定一個交易集D,挖掘關聯規則問題就是產生支持度和置信度分別大于用戶給定的最小支持度(minsup)和最小置信度(minconf)的關聯規則。

置信度表示規則的強度,支持度表示規則的頻度。最小支持度表示數據項集在統計意義上的最低重要性,最小置信度表示規則的最低可靠性。如果數據項集X的支持度X.sup≥minsup,則X是大數據項集(large itemset)。置信度和支持度大于相應閾值的規則稱為強關聯規則;反之,稱為弱關聯規則。關聯規則挖掘即找出數據庫的強規則。

4.2 單用戶搜索關鍵字關聯規則發現算法

可采用目前國際上眾多學者基于Apriori算法提出的一些改進或擴展方法,如DHP方法[2]、Partition法[3]、頻繁閉項集法[4]、FP2Growth算法[5]、閉包項集格[6]、TBAR算法[7]、動態剪枝[8]等,進行關聯規則的挖掘。本文結合Web日志中搜索關鍵字具體背景,提出一個基于搜索關鍵字的高效頻繁項集生成算法。引入路徑深度M和決策閾值S,單用戶在一次搜索過程中,一般最多提供三個搜索關鍵字,因此只需得到頻繁3項集L3就可以了,即M=3。

SUSKARD算法思想如下:

a)M=3。

b)初始化C1={(ITEMSETi,SUPi)/0<i

c)set m=1 //m為當前路徑深度

d)選擇Cm中SUPi>S的元組(ITEMSETi,SUPi),構成Lm。

e)if m<M then

goto f)

else

exit

end if

f)對于任意兩個不同的{ITEMSETx,SUPx},{ITEMSETy,SUPy}∈Lm,將ITEMSETx和ITEMSETy取并集為ITEMSETz。對于節點個數為m+1的ITEMSETz,掃描其在SUSKSD的KEYWORDS字段中出現的次數SUPz,并將(ITEMSETz,SUPz)插入到Cm+1中。

g)m=m+1,goto d)。

獲得L1、L2、L3后,根據如下支持度和置信度計算公式,可以求得單用戶搜索關鍵字間的關聯程度:

support(AB)=P(A∪B)=support_count(A∪B)/all_count

confidence(AB)=P(B|A)=

support_count(A∪B )/support_count(A)

SUSKARD算法需要注意,Agrawal等人[9]引入了修剪技術(pruning)來減小Apriori算法候選集Ck的大小,即一個項集是頻集當且僅當它的所有子集都是頻集,這個性質在算法SUSKARD中同樣成立。

在表2的單用戶搜索關鍵字會話集SUSKSD上,執行SUSKARD算法的過程如表3~8所示(這

里M=3,S=2)。

5 實驗數據分析

根據表3~8的頻繁項集,關鍵字K1、K2間的關聯程度:

support(K1K2)=support_count(K1∪K2)/all_count=3/5=60%

confidence(K1K2)=support_count(K1∪K2)/support_count(K1)=3/4=75%

關鍵字K2、K1間的關聯程度:

support(K2K1)=support_count(K2∪K1)/all_count=3/5=60%

confidence(K2K1)=support_count(K2∪K1)/

support_count(K2)=3/3=100%

關鍵字K1、K3間的關聯程度:

support(K1K3)=support_count(K1∪K3)/all_count=3/5=60%

confidence(K1K3)=support_count(K1∪K3)/support_count(K1)=3/4=75%

關鍵字K3、K1間的關聯程度:

support(K3K1)=support_count(K3∪K1)/all_count=3/5=60%

confidence(K3K1)=support_count(K3∪K1)/support_count(K3)=3/4=75%

關鍵字K2、K3間的關聯程度:

support(K2K3)=support_count(K2∪K3)/all_count=3/5=60%

confidence(K2K3)=support_count(K2∪K3)/support_count(K2)=3/3=100%

關鍵字K3、K2間的關聯程度:

support(K3K2)=support_count(K3∪K2)/all_count=3/5=60%

confidence(K3K2)=support_count(K3∪K2)/support_count(K3)=3/4=75%

關鍵字K1、K2K3間的關聯程度:

support(K1K2K3)=support_count(K1∪K2∪K3)/all_count=3/5=60%

confidence(K1K2K3)=support_count(K1∪K2∪K3)/

support_count(K1)=3/4 =75%

關鍵字K2、K1K3間的關聯程度:

support(K2K1K3)=support_count(K2∪K1∪K3)/all_count=3/5=60%

confidence(K2K1K3)=support_count(K2∪K1∪K3)/support_count(K2)=3/3=100%

關鍵字K3、K1K2間的關聯程度:

support(K3K1K2)=support_count(K3∪K1∪K2)/all_count=3/5=60%

confidence(K3K1K2)=support_count(K3∪K1∪K2)/support_count(K3)=3/4=75%

本文假設最小支持度(minsup)為20%,最小置信度(minconf)為70%,因此以上規則均為強關聯規則。當分析出某單個用戶的搜索關鍵字關聯規則后,此用戶在日后提交關鍵字K1的搜索請求時,根據上文得到如下強關聯規則:

K1K2

K1K3

K1K2K3

6 結束語 

本文通過若干挖掘算法,將Web原始日志信息進行用戶識別,會話分組后,提取單一用戶多次會話中的搜索關鍵字關聯規則,并根據此規則實現了個性化搜索引擎模型。搜索引擎模型可以自動將用戶搜索的關鍵字擴充為與其有強關聯規則的組合關鍵字搜索。聯系到具體實例,就是當用戶再次搜索K1=apple時,搜索引擎返回的是同時含有(K1=apple,K2=ipod,K3=mp3)的搜索記錄,從而實現了單用戶的個性化搜索結果。

參考文獻:

[1]AGRAWAL R,IMIELINSKI T,SWAMI A.Mining association rules between sets of items in large database[C]//Proc of ACM SIGMOD International Conference on Management of Data.Washington DC:[s.n.],1993:207216.

[2]PARK J S,CHEN M S,YU P S.An effective hash based algorithm for mining association rules[C]//Proc of ACM SIGMOD International Conference on Management of Data.1995:175186.

[3]SAVASERE A OMIECINSKI E NAVATHE S. An efficient algorithm for mining association rules in large database[C]//Proc of the 21th International Conference on Very Large Database.1995:432-443.

[4]PASQUIER N,BASTIDE Y TAOUIL R,et al.Discovering frequent closed item sets for association rules[C]//Proc of the 5th International Conference on Database Theory.1999:398416.

[5]HAN J PEI J YIN Y. Mining frequent patterns without candidate generation[C]//Proc ofACM SIGMOD Internal Conference on Management of Data.Dallas,Texas:ACM Press,2000:112.

[6]PASQUOER N,BASTIDE Y,TAOUIL R.Efficient mining of association rules using closed item set lattices [J].Information System,1999,24(1):2546.

[7]BERZAL F,CUBERO JC,MARIN N,et al.TBAR:an efficient method for association rule mining in relational databases[J].Data Knowledge Engineering,2001,37(1):4764.

[8]皮德常,秦小麟,王寧生.基于動態剪枝的關聯規則挖掘算法[J].小型微型計算機系統,2004 25(10):18501852.

[9]AGRAWAL R,SRIKANT R.Fast algorithms for mining association rules[C]//Proc of International Conference on Very Large Databases.1994:487-499.

主站蜘蛛池模板: 日本不卡在线播放| 亚国产欧美在线人成| 亚洲高清在线天堂精品| 亚洲男女在线| 国产免费观看av大片的网站| 国产丝袜无码一区二区视频| 国产偷倩视频| 伊人网址在线| 久久久久久久蜜桃| 日韩国产亚洲一区二区在线观看| 综合亚洲网| 亚洲精品无码久久毛片波多野吉| 国模在线视频一区二区三区| 99久久精品国产精品亚洲| 狂欢视频在线观看不卡| 国产在线一区二区视频| 丰满人妻一区二区三区视频| Jizz国产色系免费| 亚洲性视频网站| 国产精品美乳| 国产成人资源| 国产精品嫩草影院视频| 日本一本在线视频| 国产成人一区免费观看| 最新国产午夜精品视频成人| 日韩乱码免费一区二区三区| 亚洲人成网站色7777| 亚洲IV视频免费在线光看| 青青青视频蜜桃一区二区| 亚洲美女视频一区| 精品久久高清| 亚洲欧美日韩成人高清在线一区| 亚洲欧美在线精品一区二区| 在线看AV天堂| 无码一区中文字幕| 九色国产在线| 久久五月天国产自| 伊人色综合久久天天| 国产精品免费露脸视频| 国产精品妖精视频| 日韩国产黄色网站| 日韩少妇激情一区二区| 亚洲综合亚洲国产尤物| 71pao成人国产永久免费视频| 国产精品区网红主播在线观看| 成人va亚洲va欧美天堂| 毛片免费在线视频| 97视频在线精品国自产拍| a毛片免费在线观看| 亚洲香蕉伊综合在人在线| av一区二区三区高清久久| 尤物国产在线| 亚洲大学生视频在线播放| 精品夜恋影院亚洲欧洲| 99久久国产综合精品2023| 国产精品福利导航| 国产91九色在线播放| 婷婷成人综合| 亚洲午夜天堂| 热99re99首页精品亚洲五月天| 波多野结衣在线se| 这里只有精品在线| 91精品啪在线观看国产60岁| 国产经典三级在线| 在线无码九区| 精品福利国产| 精品国产免费观看一区| 中文字幕在线免费看| 国产日韩精品欧美一区喷| 五月婷婷导航| 国产黄色视频综合| 亚欧成人无码AV在线播放| 欧美国产日韩在线观看| 制服丝袜在线视频香蕉| 亚洲视频三级| 欧美激情第一欧美在线| 国产美女自慰在线观看| 国产精品永久久久久| 好吊妞欧美视频免费| 国产成人无码综合亚洲日韩不卡| 一级在线毛片| 五月天综合网亚洲综合天堂网|