〔摘 要〕針對SNS用戶行為存在序列性這個特點(diǎn),文章提出了一種SNS用戶行為分析模型。模型以SNS群體用戶為研究對象,引入序列模式挖掘的方法實(shí)現(xiàn)用戶行為分析,最終獲得用戶的頻繁行為序列模式。文章應(yīng)用實(shí)例對該模型進(jìn)行了可行性驗證,并對未來研究進(jìn)行展望。
〔關(guān)鍵詞〕社交網(wǎng)絡(luò);社群發(fā)現(xiàn);行為分析;序列模式
隨著在Web2.0技術(shù)的迅速發(fā)展,社交網(wǎng)絡(luò)備受關(guān)注,它為廣大用戶提供了一個交流平臺,通過這個社交平臺,用戶可以將現(xiàn)實(shí)交際網(wǎng)絡(luò)化,找到擁有相同興趣愛好的朋友圈。面對不同行業(yè)背景下涌現(xiàn)出的各種社交網(wǎng)絡(luò),掌握用戶的興趣變化和行為趨勢能夠幫助商家制定商業(yè)策略,及時更換適合用戶的新產(chǎn)品,增強(qiáng)商業(yè)競爭力。對社交網(wǎng)絡(luò)用戶行為進(jìn)行分析可以了解用戶的行為特點(diǎn)和興趣變化。目前關(guān)于社交網(wǎng)絡(luò)用戶行為的分析研究,主要集中在3個方面:(1)應(yīng)用馬爾科夫鏈分析預(yù)測用戶行為。Sarukkai運(yùn)用馬爾科夫鏈進(jìn)行訪問路徑分析和鏈接預(yù)測,根據(jù)用戶訪問記錄,計算出網(wǎng)頁間的轉(zhuǎn)移概率,作為分析用戶行為的依據(jù)[1]。王實(shí)等提出了一種基于隱馬爾科夫模型的興趣遷移模式發(fā)現(xiàn)方法,通過分析用戶遷移模式間的關(guān)聯(lián)規(guī)則來發(fā)現(xiàn)用戶行為特征和興趣遷移變化[2]。(2)通過研究影響用戶行為變化的因素,分析用戶行為特征。Anagnostopoulos等通過研究社會影響力,找出了社交網(wǎng)絡(luò)用戶行為的變化原因,并在此基礎(chǔ)上分析用戶行為變化趨勢[3]。Goyal等人通過研究,解決如何從用戶的歷史記錄里學(xué)習(xí)影響的概率,并得到分析預(yù)測結(jié)果[4]。史學(xué)敏通過研究時區(qū)差異對社交網(wǎng)絡(luò)用戶行為的影響,發(fā)現(xiàn)社交網(wǎng)絡(luò)用戶行為呈現(xiàn)時區(qū)特性,以此建立了用戶行為模型[5]。(3)借助統(tǒng)計方法分析用戶行為。從統(tǒng)計學(xué)角度,對日志數(shù)據(jù)項進(jìn)行簡單的統(tǒng)計分析,得到用戶訪問頻率高的網(wǎng)頁。目前絕大多數(shù)商用免費(fèi)分析工具都屬于此類。由于用戶訪問狀態(tài)是動態(tài)時變的,采用固定階數(shù)的Markov鏈模型并不能準(zhǔn)確地對用戶的訪問行為建模;而通過研究影響因素進(jìn)行用戶行為分析,只考慮了外部環(huán)境變化對行為的影響,忽略了社交用戶行為本身所具有的特征,而這種內(nèi)在特征對分析過程具有重要影響。在上述問題的基礎(chǔ)上,本文提出了采用序列模式挖掘的方法實(shí)現(xiàn)社交網(wǎng)絡(luò)用戶行為分析。把握社交網(wǎng)絡(luò)用戶行為呈現(xiàn)序列特征這一重要特點(diǎn),應(yīng)用序列模式挖掘方法提取用戶行為的頻繁序列,分析用戶行為特征。這種方法能夠有效地提取出用戶訪問的序列規(guī)則,使得分析結(jié)果更加準(zhǔn)確,彌補(bǔ)其他分析方法的不足。
1 相關(guān)理論研究
1.1 社交網(wǎng)絡(luò)社交網(wǎng)絡(luò)源于英文SNS(SocialNetworkService),是指人和人之間通過興趣愛好、交易、人際脈絡(luò)等關(guān)系建立起來的社會網(wǎng)絡(luò)結(jié)構(gòu),它能夠反映真實(shí)的社會關(guān)系發(fā)展,并促進(jìn)交往活動的形成,使得人們的活動與網(wǎng)站所提供的功能融為一體。社交網(wǎng)絡(luò)的構(gòu)成要素有節(jié)點(diǎn)、關(guān)系和用戶群。節(jié)點(diǎn)是網(wǎng)絡(luò)中的個體,也稱社交網(wǎng)絡(luò)的參與者;關(guān)系是指節(jié)點(diǎn)與節(jié)點(diǎn)之間的連接,是參與者基于朋友關(guān)系或共同興趣建立起來的;用戶群是指在一部分節(jié)點(diǎn)為了某些共同目的而組成的群落,是關(guān)系的一種部分聚合體。一個社交網(wǎng)絡(luò)用戶隸屬于不同的用戶群,這些群落中的成員有些是該用戶在實(shí)際生活中的朋友,有些則互不相識,由于具有共同興趣和目的隸屬于同一群體,社交網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。社交網(wǎng)絡(luò)使用戶拓展了交際,找到了更多交流對象。
圖1 社交網(wǎng)絡(luò)結(jié)構(gòu)示意圖
2013年3月第33卷第3期現(xiàn)?代?情?報Journal of Modern InformationMar.,2013Vol.33 No.32013年3月第33卷第3期基于序列模式挖掘的社交網(wǎng)絡(luò)用戶行為分析Mar.,2013Vol.33 No.31.2 基于社交群體的用戶行為社交網(wǎng)絡(luò)的核心是“以人為本”,提供各種社交應(yīng)用滿足用戶需求。目前社交網(wǎng)站提供的應(yīng)用包括游戲、搜索、交友、郵件、聊天、電子商務(wù)等。用戶對諸多社交應(yīng)用的使用稱之為社交網(wǎng)絡(luò)用戶行為,如圖2所示。
圖2 社交網(wǎng)絡(luò)用戶行為示意圖 在現(xiàn)實(shí)生活中,人們是以群體生活方式聚集在一起,人們之間的行為習(xí)慣相互影響、相互作用。虛擬世界中,用戶群是社交網(wǎng)絡(luò)的重要組成部分。群體代表了社交網(wǎng)絡(luò)中的社會活動,對群體的深入研究可以了解社交網(wǎng)絡(luò)中知識信息及其組織結(jié)構(gòu)的發(fā)展?fàn)顩r,也有利于商家準(zhǔn)確地找到客戶。將社交網(wǎng)絡(luò)信息以群體的形式組織,為信息查詢分析提供了有效和便捷的途徑。所以本文以社交網(wǎng)絡(luò)群體為研究背景,通過獲得目標(biāo)群體中用戶的行為記錄進(jìn)行分析。
2 社交網(wǎng)絡(luò)用戶行為分析模型調(diào)查分析表明,用戶對社交網(wǎng)站的使用行為具有序列特征。比如,很多用戶在瀏覽視頻后會進(jìn)行視頻評論或發(fā)表日志記錄心得,使用游戲功能的用戶會應(yīng)用電子商務(wù)功能。用戶的這些行為反映了他們的需求和行為規(guī)律,使用戶行為產(chǎn)生明顯的序列特征。所以本文在結(jié)合SNS結(jié)構(gòu)特征的基礎(chǔ)上,提出了基于序列模式挖掘[6-7]的社交網(wǎng)絡(luò)用戶行為分析模型,如圖3所示。該模型主要分為提取事務(wù)集、序列模式挖掘和模式分析3個模塊。其中,提取用戶事務(wù)集模塊是該模型的基礎(chǔ),主要任務(wù)是選取與挖掘目標(biāo)相關(guān)的社交網(wǎng)絡(luò)用戶行為信息,并對其進(jìn)行數(shù)據(jù)預(yù)處理,生成供挖掘使用的行為事務(wù)集;序列模式挖掘模塊的主要任務(wù)是利用序列模式挖掘算法從用戶行為事務(wù)集中提煉出頻繁序列;模式分析模塊的任務(wù)是根據(jù)用戶的行為特點(diǎn)查找到與之匹配的頻繁序列,形成用戶偏好視圖,然后制定出合理的發(fā)展策略。
3 提取用戶事務(wù)集模塊提取事務(wù)集模塊分為兩個階段,數(shù)據(jù)采集和數(shù)據(jù)預(yù)處理。數(shù)據(jù)采集的任務(wù)是通過響應(yīng)方式完成原始數(shù)據(jù)的獲取,而由于原始數(shù)據(jù)具有不完整和不規(guī)則特性,需要通過數(shù)據(jù)預(yù)處理對其進(jìn)行清洗和處理,以便適用于之后的工作。
3.1 數(shù)據(jù)采集目前數(shù)據(jù)采集的主要途徑有兩個:(1)基于服務(wù)器日志的數(shù)據(jù)采集。服務(wù)器日志文件是圖3 SNS用戶行為分析模型圖
用來記錄web服務(wù)器活動的一種重要工具,主要通過Web服務(wù)日志文件中記錄的客戶端HTTP請求的相關(guān)信息,實(shí)現(xiàn)對用戶訪問行為數(shù)據(jù)的統(tǒng)計。服務(wù)器日志文件提供了詳細(xì)的客戶和服務(wù)器的交互活動日志。(2)客戶端數(shù)據(jù)采集方式。這種方法直接從客戶端獲得數(shù)據(jù),能夠獲得大量的難以從服務(wù)器端獲得的用戶行為數(shù)據(jù)??梢岳肑avaApplet技術(shù)、JavaScript技術(shù)和網(wǎng)頁跟蹤幀技術(shù)實(shí)現(xiàn)客戶端數(shù)據(jù)采集。以學(xué)校動漫社交網(wǎng)站為研究背景,選取該社交網(wǎng)站用戶在一個月中的行為數(shù)據(jù)進(jìn)行分析,網(wǎng)站注冊人數(shù)為15300人,當(dāng)月參與人數(shù)約為2150人。首先通過Web日志獲取用戶行為數(shù)據(jù),共采集到6473條記錄。
3.2 數(shù)據(jù)預(yù)處理該階段的主要工作是根據(jù)不同的業(yè)務(wù)和需求,從海量原始數(shù)據(jù)中抽取所需要的數(shù)據(jù),并對不完整的數(shù)據(jù)做相應(yīng)的處理,以適應(yīng)挖掘分析。它包括數(shù)據(jù)清洗、用戶識別、會話識別、事務(wù)識別等幾個步驟[8]。(1)數(shù)據(jù)清洗主要解決原始數(shù)據(jù)中出現(xiàn)的冗余信息,錯誤信息以及與分析不相關(guān)的用戶行為數(shù)據(jù)。由于機(jī)器故障、人工疏忽等導(dǎo)致記錄缺失和輸入錯誤,對于這些數(shù)據(jù)要進(jìn)行刪除。序列模式挖掘的目的是獲得用戶行為的序列模式,對那些沒有顯示請求的文件并不關(guān)心,所以需要檢查URL后綴,刪除不相關(guān)數(shù)據(jù)。當(dāng)用戶請求某一個網(wǎng)頁時,相關(guān)的圖片、視頻等信息會自動下載,并記錄在日志中,這些文件對研究的意義不大,所以要將其刪除。如果一個站點(diǎn)的主要內(nèi)容是圖形信息,那么日志中的圖形文件就可能代表了用戶的顯示請求,所以面對這種情況時就不能刪除圖片文件。除了記錄刪減外,還要對屬性進(jìn)行刪減。例如,我們關(guān)注的信息是:用戶使用了哪些應(yīng)用功能,在網(wǎng)站及不同網(wǎng)頁的駐留時間長度,所以只需要保留與其相關(guān)的日志信息即可,而像用戶年齡、身份、登錄地點(diǎn)等不相關(guān)的屬性信息就可以刪除。(2)用戶識別是指識別出訪問網(wǎng)站的每一個用戶。不同的用戶可以在同一時間段內(nèi)通過一個代理訪問Web服務(wù)器,同一個用戶也可能通過不同的機(jī)器,或不同的瀏覽器訪問Web服務(wù)器;而當(dāng)不同用戶使用同一臺計算機(jī)瀏覽某一站點(diǎn)時也會造成混淆。為此,通常采用以下方法來識別用戶:①以IP地址為區(qū)分標(biāo)識的匿名訪問者。②在用戶允許Cookie的情況下,以CookielD作為用戶表示。③提供注冊功能,通過用戶的注冊ID進(jìn)行識別。(3)用戶會話[9]指的是用戶對服務(wù)器的一次有效訪問。根據(jù)用戶訪問的頁面可以獲得其在網(wǎng)站中的瀏覽行為和瀏覽興趣。日志中不同用戶訪問的頁面屬于不同的會話??梢酝ㄟ^設(shè)置一個時間跨度值將用戶的訪問記錄分成多個會話,如果用戶訪問頁面的時間差超過了這個值,則認(rèn)為用戶開始了一個新的會話。會話識別的目的就是將用戶的訪問記錄分為單個的會話。(4)事務(wù)識別是在用戶會話對于某些挖掘算法而言粒度太粗的情況下進(jìn)行,此時需要利用分割算法將它轉(zhuǎn)化為更小的事務(wù),以適應(yīng)于特定知識的發(fā)現(xiàn)。最常用的事務(wù)識別方法是最大向前引用路徑(MaximalForwardReferencePath)方法[10-11]。根據(jù)上述流程對采集的Web日志數(shù)據(jù)進(jìn)