李建廷,郭 曄,湯志軍
(1.西安財經學院 信息學院,陜西 西安710100;2.西安市人事考試中心,陜西 西安710065)
在用戶通過互聯網進行信息檢索的過程中,依據用戶的實際興趣為用戶返回個性化的檢索結果是提高信息檢索查全率以及查準率的主要途徑之一,同時也是目前個性化搜索引擎的主要研究內容之一。
當前,用戶興趣的獲取一般有兩種方式:一種是通過顯式的方法在信息檢索之前通過用戶對自己興趣程度的標注,實現用戶興趣的獲取。這種方式一般能夠獲得較為準確的用戶興趣表現,但在現實的應用過程中,用戶經常并不愿意直接參與對頁面的興趣標注,直接進行用戶的興趣標注一方面很容易造成一部分用戶隱私數據的泄露,也不可避免的影響了用戶的正常瀏覽過程,同時,即使用戶標注了自己感興趣的程度,也未必能夠準確地反映用戶的實際興趣。第二種方式是通過利用數據挖掘技術從用戶實際瀏覽行為中挖掘、提取用戶的興趣表現來估算興趣度,這種方法不需用戶直接參與,同時用戶實際瀏覽行為也正是用戶當前實際興趣的表現,這種方法已成為目前獲取用戶興趣模型的主流方法之一[1-2]。
用戶在實際頁面瀏覽過程中的行為多種多樣,既有用戶對頁面本身所采取的操作,又有用戶對鼠標和鍵盤的操作,還有用戶的生理、情緒變化等。利用用戶的瀏覽行為估算用戶的興趣愛好,其關鍵問題之一是在收集用戶的瀏覽行為之前,需要確定哪些瀏覽行為能真正的反映用戶興趣;其次,對于收集來的用戶實際瀏覽行為如何進行量化,最終合理的表示用戶的實際興趣也是應用的關鍵問題之一。
大量研究指出,用戶對網頁的興趣度與其在該網頁上的瀏覽行為密切相關。用戶的很多瀏覽行為暗示出用戶的喜好與興趣,如查詢、瀏覽頁面、標記書簽、反饋信息、點擊鼠標、拖動滾動條、前進、后退等。用戶訪問頁面時的停留時間、訪問次數、保存、編輯、修改等動作同樣表現用戶興趣[3-5]。
根據瀏覽行為反映用戶興趣的方式,可以將用戶的瀏覽行為分為生理行為、顯著行為和間接行為3類。生理行為指反映用戶在瀏覽過程中思想和情緒波動的瀏覽行為,生理心理學研究表明,當人發現自己感興趣的事物時,在生理上會發生一系列反應,如用戶眼睛的移動,心跳的變化,皮膚溫度的變化和用戶的表情等。
顯著行為指可以直接反映用戶興趣的瀏覽行為,主要包括保存頁面、打印頁面、頁面加入收藏夾、頻繁訪問同一頁面等。顯著行為一旦發生,可以確定用戶對頁面感興趣的程度很高。
間接行為指間接反映用戶興趣的瀏覽行為,主要包括在頁面上駐留的時間,瀏覽頁面時拖動滾動條,移動或點擊鼠標,按 UP/Down鍵滾動頁面,按Pageup/PageDown鍵翻頁等。間接行為本身并不能確定用戶是否對頁面感興趣,但間接行為發生的次數和持續時間可以反映用戶的興趣度。
在用戶的瀏覽行為中,生理行為因為技術上的限制暫時不能用于用戶興趣度計算,顯著行為和間接行為均可以用于用戶的興趣度計算。一些研究指出,用戶興趣度計算的最小瀏覽行為組合可以為以下5種:保存頁面、打印頁面、將頁面加入收藏夾、訪問同一頁面的次數、在頁面上的瀏覽時間[6]。
分析上面的5種最小瀏覽行為的關系,可以明顯的發現,如果保存頁面、打印頁面和收藏頁面這些行為一旦發生,表明用戶對頁面的興趣度較高,而打印頁面在平常的瀏覽行為中出現的幾率很小,保存頁面與將頁面加入收藏夾這兩種行為可以看成一種類型的行為。除此之外,在頁面瀏覽時的某些瀏覽動作比如:對頁面內容的復制、粘貼、剪切等,這些瀏覽動作一旦發生也同樣反映用戶對當前頁面有著較強的興趣。
用戶的各種瀏覽行為之間既互相聯系,又互相獨立,而用戶本身的瀏覽習慣也千差萬別。利用瀏覽行為分析用戶的興趣如果選擇的瀏覽行為太少,則很容易造成描述用戶興趣的精度不高;如果為提高用戶興趣描述的精度,盲目選擇過多的瀏覽行為,又會造成興趣計算方法復雜、各種瀏覽行為之間難以量化的問題,因此,選擇哪些瀏覽行為以及如何量化這些瀏覽行為也就顯得非常重要。
綜合考慮用戶的瀏覽行為,確定從3個方面估算用戶的興趣程度:用戶的實際瀏覽動作、對頁面的訪問次數、在頁面上的瀏覽時間。
設用戶在某時間段內共按照順序依次瀏覽了多個頁面,同時,用戶也可能多次訪問同一個頁面,由于用戶建模關注的是用戶對各不相同的頁面的興趣度,記用戶在此時間段內瀏覽的各不相同的頁面為w1,w2,…,wn。
分析用戶瀏覽行為時,用戶的瀏覽動作 (包括保存頁面、收藏頁面,打印頁面以及對頁面內容的復制、粘貼等操作),對頁面的訪問次數和在頁面上的瀏覽時間這3類典型的瀏覽行為可以近似地代替所有典型的瀏覽行為,從而用戶對頁面的興趣度可以看成是上述3類行為的函數。
令Interest(w)為用戶對頁面w的興趣度,則Interest(w)可以表示為

定義用戶興趣度的取值范圍為0~1,即Interest(w)∈[0,1]。其中,InterestActive(w)、InterestFreq(w)、InterestTime(w)分別為用戶網頁瀏覽動作、訪問同一頁面的次數、在頁面上的瀏覽時間這3類行為的興趣度計算函數。
利用用戶對頁面進行瀏覽時所發生的瀏覽動作進行興趣度計算,選擇保存頁面、打印頁面、收藏頁面以及對頁面內容的復制操作4個瀏覽動作作為計算基礎,即將瀏覽器菜單中的 “另存為”、“打印”、“收藏”、“復制”4個菜單命令及相應的命令按鈕進入瀏覽行為的統計數據。從而得到基于瀏覽動作的用戶興趣度計算函數

同樣定義基于瀏覽動作的用戶興趣度取值范圍為0~1,即InterestActive(w)[0,1]。其中,Save(w)、Keep(w)、Print(w)和Copy(w)分別為保存頁面、收藏頁面、打印頁面、對頁面內容的進行復制和粘貼操作這4個瀏覽動作的函數。分析這4個瀏覽動作可以看出,這4種動作的產生只有發生或不發生兩個狀態,不存在計算幅度問題。同時如果這4種動作一旦發生,則很明顯的表明用戶對該頁面具有很高的興趣度。此時再分析用戶對頁面的訪問次數和在頁面上的瀏覽時間也就沒有太多的意義。因此,定義以上4種行為一旦發生,設置InterestActive(w)為最大興趣度取值l。
基于用戶瀏覽動作的興趣度InterestActive(w)表示為一個二值函數

在實際的用戶瀏覽行為中,保存頁面、收藏頁面和打印頁面行為很少發生。大部分頁面的興趣度需要通過用戶的訪問次數和在頁面上的瀏覽時間來估計。對于訪問頁面的次數和在頁面上瀏覽的時間這兩個行為存在幅度上的變化,幅度的不同意味著用戶不同的興趣度。例如兩個頁面w1和w2,若在同一時間段內,用戶訪問w1的次數是1次,訪問w2的次數是10次,那么明顯用戶對頁面w2的興趣度要高于對頁面w1的興趣度,頁面瀏覽時間具有相同的特點。因此,這兩種瀏覽行為的量化成為計算用戶興趣度的關鍵指標。
如果用戶訪問了某一頁面,就可以認為其對該頁面感興趣。用戶感興趣的程度即興趣度的計算依賴于用戶對頁面的訪問頻度。定義用戶在某一時間段內瀏覽的同一頁面的次數為Freq(w),則Freq(w)越大,用戶興趣Interest(w)越大。基于訪問次數的用戶興趣度可描述為[7-8]

式中:W——某一時間段內用戶訪問的所有頁面的集合。
需要注意的是,該方法是一種定量測度用戶興趣的方法。隨著時間的積累,用戶對某個網頁的點擊次數同樣會逐漸積累到很多,而這些歷史的積累并不一定能夠準確的反應用戶當前的興趣。因此,合理的定義統計瀏覽次數的時間段,同時設置相應的更新機制就顯得尤為關鍵。實際使用中,設置周為統計周期,每隔一周,則進行瀏覽次數的更新。
更新方法:設置Freqold(w)和Freqnew(w)分別為某一頁面上一統計周期和當前統計周期的瀏覽次數,p為該頁面瀏覽次數的更新比例,定義

若p<0.5,即用戶在上一統計周期和當前統計周期中對某一頁面瀏覽次數的變化程度不足,則認為用戶對該頁面的興趣隨著時間的推移并未有較大的轉移,置

若p≥0.5,即用戶在上一統計周期和當前統計周期中對某一頁面瀏覽次數的變化程度較大,則認為用戶對該頁面的興趣已經隨著時間的推移有了較大的改變,置

用戶訪問當前頁面時花費的瀏覽時間越長,則從一定程度上可以表明用戶對該頁面的興趣度較高。當然,從另一方面來說,用戶訪問頁面的瀏覽時間與用戶的操作習慣、操作速度以及頁面大小等因素密切相關,為更好的綜合各種因素,將瀏覽時間和用戶當前的瀏覽速度相對應。使用基于瀏覽速度來計算網頁的興趣度,不僅考慮用戶在頁面的駐留時間,而且還需考慮頁面大小的影響[9-10]。
定義用戶訪問頁面w的瀏覽速度Speed(w)為

式中:Size(w)——當前所訪問頁面的大小,Time(w)——當前所訪問頁面的瀏覽時間。
當前頁面的瀏覽時間Time(w)與很多因素有關,如用戶的操作速度、用戶的瀏覽速度、當前網絡的傳輸延遲、服務器的相應延遲等,綜合考慮各種因素,將Time(w)定義為訪問兩次頁面的時間差,即:Time(wi)=T(wj)-T(wi),其中j=i+1,wj為緊跟頁面wi的下一個頁面,T(wi)為頁面wi的請求時間。
瀏覽速度表示了單位時間內當前用戶瀏覽的字節數,對于每個頁面w來說,該用戶瀏覽速度越快,即Speed(w)越大,表明用戶對頁面w越不感興趣,也就是說,用戶對網頁的興趣度Interest(w)和用戶的瀏覽速度Speed(w)存在反比關系,也就與用戶的頁面瀏覽時間成正比,與頁面大小成反比。進而得到用戶對網頁的興趣度計算公式

在網絡的實際瀏覽過程中,不同用戶的瀏覽行為存在相當大的差異,用戶的瀏覽速度也相差很大,因此,對瀏覽速度采用非線性歸一化,用戶對頁面w的興趣度可以通過下式得到

顯然,0≤InterestTime(w)≤1。
實際應用中,用戶本身的瀏覽狀態及瀏覽環境非常復雜,經常會出現異常的駐留時間。例如用戶打開某個頁面后離開了,但并沒有關閉頁面,再如用戶通過頁面觀看在線視頻時,這些情況都會導致用戶在該頁面上的駐留時間遠遠大于正常駐留時間,從而導致用戶的興趣度接近于0,從而無法很好區分正常的興趣度[11]。
為了排除用戶的異常瀏覽行為對用戶興趣度計算的影響,設置處理異常的駐留時間的處理策略如下:當用戶在頁面上的駐留時間超過了某個預先設定的閾值時,就將其設定為某個最大駐留時間,對于小于閾值的駐留時間,保持其原值。處理的過程中,閾值大小的選擇是關鍵。如果閾值設置過大,大部分頁面的興趣度都將接近0,失去了使用閾值的意義;反之如果閾值設置過小,則大部分頁面的興趣度都將接近1,不利于區分頁面的興趣度。T2,……Tm為當前統計周期內所瀏覽頁面的瀏覽時間。當用戶的瀏覽時間超過該閾值時,取Time(w)=Tmax。

另外,用戶在瀏覽網頁的過程中,還經常會存在一些用戶根本不感興趣的廣告、消息等非正常頁面,這些頁面造成瀏覽時間很短或者干脆直接被一些工具軟件關閉掉。這部分對用戶瀏覽行為的統計數據影響較大,但又無實際意義或者無法正確判斷,同樣需要將這部分網頁排除在統計范圍之外。
設置最小瀏覽時間Tmin和網頁窗口類型判斷策略,如果用戶瀏覽該網頁的時間小于設定Tmin或者彈出的網頁窗口沒有菜單欄及工具按鈕欄,則可以判斷該網頁為可以清除的網頁。即網頁瀏覽時間的最終取值范圍為

現有的研究表明,一篇文章的閱讀時間小于3~5s則無法放映用戶的實際興趣[13-14],再考慮網絡的傳輸延遲、服務器的相應延遲、用戶反應速度等因素,因此,將Tmin值定位為6s,以處理這些異常頁面。
在計算用戶興趣度時,首先判斷InterestActive(w)的取值,若InterestActive(w)=1,則置Interest(w)=1,即單前頁面w具有最高興趣度。
若InterestActive(w)=0,為得到更合理的頁面興趣度,綜合考慮用戶頁面訪問次數和訪問速度下的用戶興趣度取值,利用BP神經網絡進行二者的融合。BP神經網絡由輸入層、輸出層和若干隱含層構成。隱含層的數量可以為1層或多層,隱含層層數越多,神經網絡結構越復雜,所需要的訓練時間越長。通常情況下,三層網絡結構即可滿足應用要求,本文選擇三層為網絡層的層數。
首先將用戶瀏覽動作、用戶頁面訪問次數和訪問速度這3類瀏覽行為下的用戶興趣度作為神經網絡的輸入數據,輸出數據為融合后的最終用戶興趣度。根據神經網絡的輸入數據和輸出數據,確定神經網絡的輸入層包含2個節點,輸出層包含1各節點,隱含層節點數為6個,BP神經網絡結構如圖1所示。利用Matlab軟件中神經網絡工具箱,實現該神經網絡。同時,合理選擇訓練樣本數據,對神經網絡進行訓練,最終利用訓練好的神經網絡進行用戶興趣度的數據融合。
為了實現利用BP神經網絡進行興趣度融合,需要大量的訓練樣本數據。為了驗證本文興趣度算法的合理性,同樣需要大量的實驗數據。在具體實驗中,為了獲得原始實驗數據,利取在IE瀏覽器內嵌入瀏覽器幫助程序對象(BHO)與Windows鉤子函數捕獲網頁及用戶瀏覽行為。BHO能夠在瀏覽器打開的同時自動加載,主要負責掛接鉤子函數并捕獲網頁的打開、關閉、文檔開始下載以及文檔下載完成、URL改變、狀態變化等內容,鉤子函數主要負責準確捕獲如:瀏覽時間、菜單命令、鼠標動作、鍵盤操作、頁面滾動等的用戶的有效瀏覽動作[15-16]。

圖1 BP神經網絡結構
通過采集、清洗特定用戶群在1個月內瀏覽http://www.qq.com網站中300余張網頁的瀏覽日志,通過 Web日志挖掘獲得原始瀏覽行為數據3183條,對這些瀏覽行為分別計算基于瀏覽動作、基于瀏覽次數與基于瀏覽速度下的用戶興趣度,將獲得的結果數據作為訓練樣本數據,對BP神經網絡進行訓練。
在原始記錄數據中選擇不同主題下具有代表性的頁面100張,再次通過Web日志挖掘對這100張網頁進行瀏覽行為數據采集,計算基于瀏覽動作、基于瀏覽次數與基于瀏覽速度下的興趣度,并利用訓練好的神經網絡進行興趣度融合,得到網頁最終的興趣度。同時通過對特定用戶群進行統計調查,讓用戶自己評價對網頁的興趣度,將用戶主觀的評價結果與根據計算得到的網頁興趣度進行比較,表1描述了部分典型數據的比較結果。

表1 用戶興趣度計算與用戶自評的比較示例
用戶的瀏覽行為從一定程度上可以反映用戶的實際興趣,針對用戶瀏覽行為及用戶興趣之間的關系,把能反映用戶興趣的典型瀏覽行為歸納為頁面瀏覽動作、頁面瀏覽次數、頁面瀏覽時間3類行為。針對這3類瀏覽行為下的用戶興趣度分別進行計算,并且在分析基于網頁駐留時間和瀏覽次數計算網頁興趣度的算法的基礎上,考慮網頁大小、用戶反應速度、網絡傳輸延遲等影響因素,使用基于瀏覽速度計算網頁興趣度的算法計算用戶興趣度。
在分別計算出不同類型瀏覽行為下的用戶興趣度后,利用BP神經網絡進行興趣度的融合,通過對實驗樣本數據的計算,驗證了所采用算法的有效性及合理性,也為下一步用戶興趣模型的建立打下了基礎。
[1]SHAO Zhifeng.A research on user profile model based on Chinese library classification [J].Computer Applications and Software,2007,24 (8):86-88 (in Chinese). [邵志峰.基于中圖分類法的用戶興趣模型研究 [J].計算機應用與軟件,2007,24 (8):86-88.]
[2]ZHOU Xiaolan.Web data mining user interest model design[J].Journal of Xiangtan Normal University (Natural Science Edition),2009,31 (2):55-58 (in Chinese).[周曉蘭.Web數據挖掘中用戶興趣模型設計 [J].湘潭師范學院學報 (自然科學版),2009,31 (2):55-58.]
[3]Georgakis A,Li H.User behavior modeling and content based speculative Web page prefetching [J].Data & Knowledge Engineering,2006,59 (3):770-788.
[4]WANG Jimin,PENG Bo.User behavior analysis for a largescale search engine [J].Journal of Intelligence,2006,25(2):154-162 (in Chinese).[王繼民,彭波.搜索引擎用戶點擊行為分析 [J].情報學報,2006,25 (2):154-162.]
[5]XU Bo,ZHANG Jiekui,ZHOU Jun.A user interest model based on the analysis of user behaviors [J].Journal of Intelligence,2009,18 (5):166-169 (in Chinese). [許波,張結魁,周軍.基于行為分析的用戶興趣建模 [J].情報學報,2009,18 (5):166-169.]
[6]YIN Chun-hui,DENG Wei.Extracting user interests based on analysis of user behaviors [J].Computer Technology and Development,2008,18 (5):37-39 (in Chinese).[尹春暉,鄧偉.基于用戶瀏覽行為分析的用戶興趣獲取 [J].計算機技術與發展,2008,18 (5):37-39.]
[7]LU Jia.Web user access patterns clustering based on interest degree[J].Computer Engineering and Design,2007,28 (10):2403-2407(in Chinese).[呂佳.基于興趣度的Web用戶訪問模式分析 [J].計算機工程與設計,2007,28 (10):2403-2407.]
[8]DAI Ge.Research and realization of key technologies of Web information system [D].Changsha:Central South University,2008(in Chinese).[戴戈.網絡信息提取系統關鍵技術研究與實現 [D].長沙:中南大學,2008.]
[9]SHAN Rong.New user’s interest model updated based on browsing behaviors[J].Electronic Design Engineering,2010,18 (4):61-62(in Chinese).[單蓉.一種基于用戶瀏覽行為更新的興趣模型[J].電子設計工程,2010,18 (4):61-62.]
[10]YIN Chun-hui.Research and implementation on user interests modeling for personalized information retrieval [D].Suzhou:Suzhou University,2008 (in Chinese). [尹春暉.面向個性化信息檢索的用戶建模研究與實現 [D].蘇州:蘇州大學,2008.]
[11]ZHU Zheng-yu,ZHOU Zhi,LUO Ying,et al.Extraction of user-interested web page based on the browsing action quantitative analysis [J].Journal of Chongqing Institute of Technology (Natural Science),2009,23 (7):79-84 (in Chinese).[朱征宇,周智,羅穎,等.基于瀏覽行為量化分析的興趣網頁提取 [J].重慶工學院學報 (自然科學),2009,23 (7):79-84.]
[12]ZENG Li-fang,ZHU Zheng-yu,CHEN Ye.The calculation of user interest based on web logs and Web page feature contents [J].Microprocessors,2010,31 (4):86-90 (in Chinese).[曾麗芳,朱征宇,陳燁.基于Web日志和網頁特征內容的用戶興趣度計算 [J].微處理機,2010,31 (4):86-90.]
[13]ZHANG Chuan-fu.Research on user interest based on behavior [D].Beijing:Beijing University of Posts and Telecommunications,2008 (in Chinese). [張傳福.基于行為的用戶興趣研究 [D].北京:北京郵電大學,2008.]
[14]LI Youjun.Users’Web browsing behaviors pattern mining and its application in the online teaching system [D].Beijing:North China University of Technology,2009 (in Chinese).[李幼軍.用戶行為模式發掘及其在網絡教學系統中的應用[D].北京:北方工業大學,2009.]
[15]ZHOU Zhi.The analysis of user interest Webpage based on quantitative calculation of browsing behavior [D ].Chongqing:Chongqing University,2009 (in Chinese). [周智.基于瀏覽行為量化計算的用戶興趣網頁分析 [D].重慶:重慶大學,2009.]
[16]CHEN Yu’e.Study and design of user model in personalized service [D].Qingdao:Shandong University of Scienceand Technology,2007 (in Chinese). [陳玉娥.個性化服務中用戶模型的研究與設計 [D].青島:山東科技大學,2007.]