一種社交網(wǎng)絡用戶動靜興趣挖掘方法
【專利摘要】本發(fā)明公開了一種社交網(wǎng)絡用戶動靜興趣挖掘方法,其步驟如下:從社交媒體采集獲取用戶user的背景信息profile和生成內(nèi)容content;從用戶user的背景信息profile中提取靜態(tài)興趣SI={SI1,SI2,…,SIm},每個興趣點SIi是一個二元組SIi=(kwi,wi),1≤i≤m,其中,kwi為關鍵詞,wi為用戶對kwi的喜好權重;從用戶user的生成內(nèi)容content中提取動DI={DI1,DI2,…,DIn},每個興趣點為一個三元組DIi=(topici,wi,T),1≤i≤n,其中,topici是由多個關鍵詞組成的,wi為用戶對topici的喜好權重,T={t1,t2,…,ts},ti(1≤i≤s)為用戶討論topici的各個時間點,即在不同時間點的分布情況。該方法能更合理的描述社交媒體用戶的興趣特征,更適合社交媒體用戶的興趣特征的后續(xù)深入分析。
【專利說明】
一種社交網(wǎng)絡用戶動靜興趣挖掘方法
技術領域
[0001] 本發(fā)明涉及一種信息挖掘技術,具體地說,涉及一種社交媒體用戶動態(tài)和靜態(tài)興 趣挖掘方法。
【背景技術】
[0002] 社交網(wǎng)絡中的個性化推薦、領域專家的發(fā)現(xiàn)、社區(qū)劃分是當前社會計算的研究熱 點,而有效的挖掘出社交媒體用戶的興趣取向,是此類研究的基礎工作。而已有的研究沒能 區(qū)分社交網(wǎng)絡用戶興趣的動態(tài)和靜態(tài)特性,使用了統(tǒng)一的用戶興趣表示模型,用戶興趣UI ={Inti,Int2,···,Intm},每個興趣點是一個二元組Inti = (topiCi,wi),topiCi為話題,通常 由多個關鍵詞組成;Wi為用戶對topici的喜好權重。
[0003] 在2 0 11年美國出版的會議論文集:2 0 1 1年可視化信息通信-交互會議 (Proceedings of 2011 Vi sual Information Communi cat ion-International Symposium),題目為:社交網(wǎng)絡中基于興趣的朋友發(fā)現(xiàn)和推薦(Sfviz : interest-based friends exploration and recommendation in social networks),作者是:Gou L,You F,Guo J,Wu L,Zhang XL,該文提出了使用用戶的社交標簽作為用戶的興趣。
[0004] 在2014年德國出版的期刊:Social Network Analysis and Mining,,題目為: Exploration of methodologies to improve job recommender systems on social networks,作者是:Diaby M,Viennet E,Launay T,該文研究社交網(wǎng)絡推薦時,考慮的是用 戶的背景信息,對不同的社交媒體,選取了不同的背景信息,主要包括工作、教育、簡歷、標 簽、職位等。
[0005] 在2014年中國出版的期刊:軟件學報,題目為:微博網(wǎng)絡上的重疊社群發(fā)現(xiàn)與全局 表示,作者是:胡云,王崇駿,吳駿,謝俊元,李慧,該文基于微博媒體的用戶和用戶生成的內(nèi) 容將微博網(wǎng)絡表示為用戶-話題的模式,沒有考慮用戶的背景信息。
[0006] 在2016年中國出版的期刊:計算機學報,題目為:微博中特定用戶的相似用戶發(fā)現(xiàn) 方法,作者是:仲兆滿,胡云,李存華,劉宗田,該文在計算微博媒體用戶的相似度時,考慮了 用戶背景和生成內(nèi)容,但生成內(nèi)容沒有考慮到話題在不同時間點的分布情況。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明要解決的技術問題是針對現(xiàn)有技術存在的問題和不足,提供一種新的社交 媒體的用戶動靜興趣挖掘方法,該方法可以更全面的挖掘用戶的興趣,更適合于社交媒體 的用戶興趣分析。
[0008] 發(fā)明人發(fā)現(xiàn)現(xiàn)有技術在社交媒體挖掘用戶興趣時,使用了統(tǒng)一的表示模型,不能 體現(xiàn)社交媒體的動態(tài)特性,所以提出了社交媒體中基于背景的用戶靜態(tài)興趣表示和和挖掘 方法,以及基于內(nèi)容的用戶動態(tài)興趣表示和挖掘方法,能更合理的描述社交媒體用戶的興 趣特征,更適合社交媒體用戶的興趣特征的后續(xù)深入分析,比如用戶相似度計算、用戶推 薦、社區(qū)推薦等等。
[0009]本發(fā)明所要解決的技術問題是通過以下的技術方案來實現(xiàn)的。本發(fā)明是一種社交 網(wǎng)絡用戶動靜興趣挖掘方法,其特點是,其步驟如下:
[00? 0] A、從社交媒體采集獲取用戶user的背景信息prof i le和生成內(nèi)容content;
[0011] B、從用戶user的背景信息profile中提取靜態(tài)興趣SI HSUL·,…{以,每個興 趣點Sli是一個二元組SIi = (kwi,wi),Ki<m,其中,kwi為關鍵詞,Wi為用戶對kwi的喜好權 重;
[0012] C、從用戶user的生成內(nèi)容content中提取動態(tài)興趣DI^DIhDL·,···,DIn},每個興 趣點為一個三元組DIi= (topici,wi,T),Ki<n,其中,topici是由多個關鍵詞組成的,wi為 用戶對topici的喜好權重,T = {ti,t2,…,ts},ti( Ki彡s)為用戶討論topici的各個時間 點,即在不同時間點的分布情況。
[0013]本發(fā)明所述的社交網(wǎng)絡用戶動靜興趣挖掘方法,進一步優(yōu)選的技術方案是,步驟A 中所述的從社交媒體采集獲取用戶user的背景信息prof iile和生成內(nèi)容content,其具體 步驟如下:
[0014] A1、使用采集工具獲取用戶user的背景信息profile= {tag,bi,job},其中tag為 用戶的標簽,tag= {tagi,tag2,···,tage},bi為用戶的簡介,bi = {bii,bi2,···,bif},job為用 戶的職位,j〇b = {jobi,job2,…,jobg};
[0015] A2、使用采集工具獲取用戶user的在時間范圍內(nèi)容生成的內(nèi)容content。
[0016] 本發(fā)明所述的社交網(wǎng)絡用戶動靜興趣挖掘方法,進一步優(yōu)選的技術方案是,步驟B 中所述的從用戶user的背景信息profile中提取靜態(tài)興趣SI = {SIi,Sl2,···,Sim},其具體步 驟如下:
[0017] B1、把采集到的用戶的標簽形成一個庫,在分詞時,將其作為一個整體識別,用戶 user的標簽記為tag= {tagi,tag2,…,tagc};
[0018] B2、對用戶的簡介分詞,因為內(nèi)容較短,不進行詞頻統(tǒng)計,得到用戶user的簡介詞 集為1^ = {13;[1,1312,.",131£};
[0019] B3、對用戶的職位分詞,因為內(nèi)容較短,不進行詞頻統(tǒng)計,得到用戶user的職位詞 集為j〇b={ jobi,job2,···,jobg}。
[0020] B4、統(tǒng)計tag、bi及job中各個詞出現(xiàn)的次數(shù),作為詞的權重,權重參考最大值進行 歸一化,按照權重降序排列,根據(jù)需求選取m個詞作為用戶的靜態(tài)興趣,記為SI = {(kW1,W1), (kW2,W2) , ··· , (kWm,Wm) } 〇
[0021] 本發(fā)明所述的社交網(wǎng)絡用戶動靜興趣挖掘方法,進一步優(yōu)選的技術方案是,上述 步驟C中所述的從用戶user的生成內(nèi)容content中提取動態(tài)興趣DI = {DIi,Dl2,…,DIn},其 具體步驟如下:
[0022] C1、對用戶user的生成內(nèi)容content中的每一條信息Ci (假設content有X條信息, l#i X)進行分詞,從分詞結果中選出頻率大于一定閾值詞作為候選的動態(tài)興趣集合 CDIi;
[0023] C2、對CDL·*相鄰的、且滿足一定共現(xiàn)閾值(2的詞進行合并,得到候選的動態(tài)興趣 集合CDI2;
[0024] C3、計算CDI2中每個候選興趣的上下文鄰接類別來衡量其語用多樣性,選取滿足 一定的上下文鄰接類別閾值ζ3的作為候選的動態(tài)興趣集合cdi3;
[0025] C4、計算CDI3中每個興趣點的重要度W(topiei)
,其中,T = 彡i$S)為用戶討論topiCi的各個時間點,對興趣點的權重參考最大值 進行歸一化,按照興趣點權重降序排列,根據(jù)需求選取η個興趣點作為用戶的最終動態(tài)興 趣,記為DI = { (t〇pici,Wl,Tl),(t〇piC2,W2,T2),…,(t〇piCm,Wm,Tm) } 〇
[0026] 與現(xiàn)有技術相比,本發(fā)明的社交媒體用戶動靜興趣挖掘方法,能更合理的描述社 交媒體用戶的興趣特征,更適合社交媒體用戶的興趣特征的后續(xù)深入分析。
【附圖說明】
[0027] 圖1是本發(fā)明的社交媒體用戶動靜興趣挖掘方法的流程圖;
[0028]圖2是圖1中步驟102所述的從用戶user的背景信息profile中提取靜態(tài)興趣SI = {SlhSIvJIm}的流程圖;
[0029]圖3是圖1中步驟103所述的從用戶user的生成內(nèi)容content中提取動態(tài)興趣DI = {DIiDL·,…,DIn}的流程圖。
【具體實施方式】
[0030] 下面結合附圖和【具體實施方式】對本發(fā)明的實施過程作進一步詳細的描述。
[0031] 參照圖1,本發(fā)明的社交網(wǎng)絡用戶動靜興趣挖掘方法,步驟如下:
[0032] 步驟102、從用戶user的背景信息prof ile中提取靜態(tài)興趣SI = {SI!,SI2,…,SIm}, 每個興趣點Sli是一個二元組SIi = (kwi,wi),Ki<m,其中,kwi為關鍵詞,Wi為用戶對kwi的 喜好權重,參照圖2,其具體步驟如下:
[0033]步驟201、用戶在社會網(wǎng)絡上定義自己的標簽時,既可以在標簽庫中選取,也可以 人工輸入。標簽可以理解為是有意義的字符串,把采集到的用戶標簽形成一個庫,在分詞 時,將其作為一個整體識別,用戶user的標簽記為tag= {tagi,tag2,…,tage};
[0034]步驟202、對用戶的簡介分詞,因為內(nèi)容較短,不進行詞頻統(tǒng)計,得到用戶user的簡 介詞集為1^ = {13;[1,1312,,",131£};
[0035] 步驟203、對用戶的職位分詞,因為內(nèi)容較短,不進行詞頻統(tǒng)計,得到用戶user的職 位詞集為j〇b={ jobi,job2,…,jobg}。
[0036] 步驟204、統(tǒng)計tag、bi及job中各個詞出現(xiàn)的次數(shù),作為詞的權重,權重參考最大值 進行歸一化,按照權重降序排列,根據(jù)需求選取m個詞作為用戶的靜態(tài)興趣,記為SI = {(kwi,Wl) , (kW2,W2) (kWm,Wm)}〇
[0037] 步驟103、從用戶user的生成內(nèi)容content中提取動態(tài)興趣DIiiDIhDIf^DIn}, 參照圖3,其具體步驟如下:
[0038] 步驟301、對用戶user的生成內(nèi)容content中的每一條信息Ci (假設content有x條 信息,l#i X)進行分詞,從分詞結果中選出頻率大于一定閾值ζ:的詞作為候選的動態(tài)興趣 集合CDh。為提取出現(xiàn)頻率不高,但有實際意義的詞,該閾值不宜過大;
[0039]步驟302、對CDh*相鄰的、且滿足一定共現(xiàn)閾值(2的詞進行合并,得到候選的動態(tài) 興趣集合CDI2。該過程需經(jīng)過多次迭代統(tǒng)計,由原先的單個詞,逐漸合并得到越來越長的候 選動態(tài)興趣,直到最終沒有可合并的串為止;
[0040] 步驟303、計算CDI2中每個候選興趣的上下文鄰接類別來衡量其語用多樣性,選取 滿足一定的上下文鄰接類別閾值ζ 3的作為候選的動態(tài)興趣集合CDI3。鄰接類別越大,表明其 使用越靈活,成為有意義串的概率就越大。
[0041] 步驟304、計算CDI3中每個興趣點的重要度W(topiCi), 丁={^山,"_,以,。(1彡<8)為用戶討論topici的各個時間點,對興趣點的權重參考最大 值進行歸一化,按照興趣點權重降序排列,根據(jù)需求選取η個興趣點作為用戶的最終動態(tài)興 趣,記為DI = { (t〇pici,Wl,Tl),(t〇piC2,W2,T2),…,(t〇piCm,Wm,Tm) }。雖然社交網(wǎng)絡包含了 海量用戶,其動態(tài)興趣也涉及現(xiàn)實社會生活各個領域,但從統(tǒng)計學角度看,社交網(wǎng)絡用戶的 動態(tài)興趣符合冪律分布,即少量興趣吸引了大量用戶,而大量興趣只被少數(shù)人關注。因此, 可以提取用戶的核心動態(tài)興趣進行相似度計算,一方面可以解決社交網(wǎng)絡特征稀疏的問 題,另一方面還可以減少計算的工作量。
[0042] 使用三種不同的社交網(wǎng)絡用戶興趣挖掘方法用于相似用戶的計算,比較用戶動靜 興趣挖掘方法的有效性。三種方法如下:
[0043] (1)方法Ι-SU-profile,基于用戶背景挖掘用戶的興趣,使用用戶背景中的簡介、 標簽及職位等信息;
[0044] (2)方法2-SU-content,基于用戶生成的內(nèi)容挖掘用戶的興趣,不考慮用戶興趣的 按時間的動態(tài)分布特性;
[0045] (3)方法3-SU-pc,本發(fā)明提出的方法,分別從用戶背景中挖掘用戶的靜態(tài)興趣,從 用戶生成的內(nèi)容中挖掘用戶的動態(tài)興趣,考慮興趣按時間的動態(tài)分布特性。
[0046]用戶ui,U2的靜態(tài)興趣相似度計算使用Jaccard方式,如式(1)所示:
[0048]用戶m,u2的動態(tài)興趣中的兩個興趣點Inti,Intj的相似度計算如式(6)所示:
[0050] 式(2)既考慮了興趣點內(nèi)容的相似度(余弦距離計算方法),又考慮了興趣點的時 間周期。在計算時間持續(xù)度時,并沒有限定興趣點的時間一致性問題,這是因為即使對同一 個興趣點,不同用戶獲取信息的時間不同,不同用戶的認知能力不同,都可能導致時間的偏 差現(xiàn)象。
[0051] 用戶m和U2的動態(tài)興趣中的η個興趣點的總相似度計算如式(3)所示:
[0053] 對用戶的靜態(tài)興趣相似度1^13加(111.31,112.31)和動態(tài)興趣相似度1]〇13加(11 1.01, u2.DI)進行整合,得到最終的用戶興趣相似度,如式(4)所示:[0054] UISim(ui,U2)=a*USISim(ui.SI,U2.SI) + (l-a)*UDISim(ui.DI,U2.DI) (4)式(8)中a是靜態(tài)興趣和動態(tài)興趣權重的調(diào)節(jié)系數(shù),0<α$1,當a = 0時,只使用用戶的微博內(nèi)容計算興趣相似度;當a = l時,只使用用戶的背景計算興趣相似度。本發(fā)明中經(jīng)過實 驗確定a = 0.6。[0055] 目前,還沒有公開的用于社交網(wǎng)絡用戶興趣挖掘、用戶興趣相似度計算的標準數(shù) 據(jù)集。本發(fā)明以新浪微博為例,選取了時尚、企業(yè)管理、教育、軍事、文化5個領域進行實驗數(shù) 據(jù)的采集、用戶興趣挖掘的分析。
[0056] 在新浪微博搜索框中輸入領域關鍵詞進行檢索,然后點擊"找人"按鈕,最多只能 獲取前50頁用戶,每頁20個,共計1000個用戶。5個領域使用的檢索關鍵詞及獲取的用戶數(shù) 如表1所示。
[0057] 表1 5個領域的關鍵詞及獲取用戶數(shù)
[0058]
[0059]對表1獲取的6684個用戶,進一步采集的信息包括:①對6684個用戶進行1層關注、 粉絲的擴展,新浪微博為防止他人獲取用戶的關注、粉絲進行惡意關注或廣告騷擾,對非本 人的關注、粉絲的訪問量進行了限制,只能獲取前5頁內(nèi)容,每頁20個用戶,關注和粉絲最多 分別能獲取100個用戶,實際采集的用戶總數(shù)為714472個;②采集714472個用戶的背景(簡 介、標簽及職位)、發(fā)表的微博(包括原創(chuàng)、轉發(fā)或評論),由于有些用戶發(fā)表的微博過多,限 制每個用戶微博的發(fā)表時間是2014年1月1日-2014年12月31日,共計采集微博4206751條。 [0060]數(shù)據(jù)集中用戶U1的關注集記為Ui. follower,作為標準答案,通過方法su-profile 計算用戶間的興趣相似度選取出的關注集記為Ui·fο 11 ower-su-profile,令lui.follower =|ui.follower-SU-profile I,方法SU-profile選取的關注的準確率計算如式(5):
[0062]其他2種方法計算獲取關注準確率的方式類似。
[0063] 5個領域的8個檢索關鍵詞,每個隨機選取100個用戶,共計800個用戶,7種方法得 到的平均準確率RUA如表2所示。
[0064] 表2 3種方法得到的平均RUA
[0066] 由表2可見,3種方法得到的平均準確率都不高,主要原因是即使計算出的用戶興 趣相似度較高,但該用戶并不一定成為他的關注對象。方法SU-prof ile要好于方法SU-content的效果,說明從用戶的背景挖掘用戶的靜態(tài)興趣比從用戶生成的內(nèi)容中挖掘用戶 的動態(tài)興趣更有效。主要原因是:一方面微博中用戶產(chǎn)生的文本信息中常常包含大量的口 語、省略語、符號,這些文本的語義信息很難挖掘;另一方面微博上有大量的非活躍用戶,發(fā) 表微博很少。方法SU-pc得到的效果最為理想,驗證了將微博用戶的興趣分為靜態(tài)興趣和動 態(tài)興趣,采用不同的策略分別計算的優(yōu)勢所在。
[0067] 本發(fā)明所述的方法并不限于【具體實施方式】中所述的實施例,本領域技術人員根據(jù) 本發(fā)明的技術方案得出的其它的實施方式,同樣屬于本發(fā)明的技術創(chuàng)新范圍。
【主權項】
1. 一種社交網(wǎng)絡用戶動靜興趣挖掘方法,其特征在于,其步驟如下: A、 從社交媒體采集獲取用戶user的背景信息prof i le和生成內(nèi)容content; B、 從用戶user的背景信息profile中提取靜態(tài)興趣SI = {SIi,Sl2,···,SIm},每個興趣點 Sli是一個二元組化=(kwi,wi),其中,kw功關鍵詞,W功用戶對kwi的喜好權重; C、 從用戶user的生成內(nèi)容content中提取動態(tài)興趣DI = {Dll,0?2,···,0Ιη},每個興趣點 為一個Ξ元組DIi= (topici,wi,T),其中,topici是由多個關鍵詞組成的,wi為用戶 對topici的喜好權重,Τ = {ti,t2,···,ts},ti(l《i《s)為用戶討論topici的各個時間點,即 在不同時間點的分布情況。2. 根據(jù)權利要求1所述的社交網(wǎng)絡用戶動靜興趣挖掘方法,其特征在于,上述步驟A的 具體步驟如下: A1、使用采集工具獲取用戶user的背景信息profile = {tag,bi,job},其中tag為用戶 的標簽,tag= {tagi,tag2,···,tage},bi為用戶的簡介,bi = {bii,bi2,…,bif},job為用戶的 職位,job = {jobi,jobs,...,jobg}; A2、使用采集工具獲取用戶user的在時間范圍內(nèi)容生成的內(nèi)容Content。3. 根據(jù)權利要求1所述的所述的社交網(wǎng)絡用戶動靜興趣挖掘方法,其特征在于,步驟B 的具體步驟如下: B1、把采集到的用戶的標簽形成一個庫,在分詞時,將其作為一個整體識別,用戶user 的標簽記為化邑二{tagi,1:ag2,...,1:age}; B2、對用戶的簡介分詞,因為內(nèi)容較短,不進行詞頻統(tǒng)計,得到用戶user的簡介詞集為 bi = {bii,bi2,---,bif}; B3、對用戶的職位分詞,因為內(nèi)容較短,不進行詞頻統(tǒng)計,得到用戶user的職位詞集為 job={jobi,job2,·..,jobg}; B4、統(tǒng)計tag、bi及job中各個詞出現(xiàn)的次數(shù),作為詞的權重,權重參考最大值進行歸一 化,按照權重降序排列,根據(jù)需求選取m個詞作為用戶的靜態(tài)興趣,記為SI = {(kwi,wi), (kW2,W2),…,(kWm'Wm) } 〇4. 根據(jù)權利要求1所述的所述的社交網(wǎng)絡用戶動靜興趣挖掘方法,其特征在于,上述步 驟C中,所述從用戶user的生成內(nèi)容content中提取動態(tài)興趣DI = {Dll,Dl2,···,DIn}的具體 步驟如下: Cl、對用戶user的生成內(nèi)容content中的每一條信息ci(假設content有X條信息,l#i X) 進行分詞,從分詞結果中選出頻率大于一定闊值ζι的詞作為候選的動態(tài)興趣集合CDIi; C2、對CDIi中相鄰的、且滿足一定共現(xiàn)闊值(2的詞進行合并,得到候選的動態(tài)興趣集合 CDI2; C3、計算CDI2中每個候選興趣的上下文鄰接類別來衡量其語用多樣性,選取滿足一定的 上下文鄰接類別闊值ζ3的作為候選的動態(tài)興趣集合CDI3; C4、計算CDI3中每個興趣點的重要度W(topici)其中,T={ti, t2,為用戶討論toptci的各個時間點,對興趣點的權重參考最大值進行 歸一化,按照興趣點權重降序排列,根據(jù)需求選取η個興趣點作為用戶的最終動態(tài)興趣,記 為DI = {(t〇pici,Wl,Tl),(t〇piC2,W2,T2),...,(t〇piCm,Wm,Tm)}。
【文檔編號】G06Q50/00GK106097113SQ201610453921
【公開日】2016年11月9日
【申請日】2016年6月21日
【發(fā)明人】仲兆滿, 管燕
【申請人】仲兆滿