林國英,汪明艷
(上海工程技術(shù)大學(xué) 管理學(xué)院,上海 201600)
網(wǎng)絡(luò)的普及讓人們接受消息的速度大幅度提升,微博等各大網(wǎng)絡(luò)平臺的出現(xiàn)也給大眾提供了一個(gè)絕佳的討論場所。人們可以在這些平臺上發(fā)表自己對社會相關(guān)事件的看法與觀點(diǎn),同時(shí)還可以和網(wǎng)絡(luò)平臺上的其他人進(jìn)行隔空互動,交流彼此的意見,觀點(diǎn)相似的民眾通過彼此間的互動形成了自己的社區(qū),同一社區(qū)內(nèi)的人們具有相似的看法或觀點(diǎn)且彼此之間關(guān)系緊密。在面對突發(fā)事件網(wǎng)絡(luò)輿情時(shí),觀點(diǎn)相似的用戶在社區(qū)內(nèi)快速傳播輿情相關(guān)信息,這可能會造成用戶間的情感與觀點(diǎn)走向極化。因此如何在海量且復(fù)雜的網(wǎng)絡(luò)輿情信息及輿情用戶中快速發(fā)現(xiàn)用戶社區(qū),了解同社區(qū)內(nèi)用戶特征及用戶關(guān)注重點(diǎn)對于網(wǎng)絡(luò)輿情的引導(dǎo)十分關(guān)鍵。
目前學(xué)者們主要從用戶發(fā)布的博文內(nèi)容及用戶關(guān)系方面對微博社區(qū)進(jìn)行研究。徐建民等[1]借鑒引文分析理論分析微博社區(qū)內(nèi)用戶的交互行為,通過給不同的交互行為進(jìn)行賦權(quán)從而計(jì)算各用戶間相似度,并利用用戶相似度進(jìn)行社區(qū)發(fā)現(xiàn)。田博等[2]利用用戶之間的轉(zhuǎn)發(fā)關(guān)系、評論關(guān)系、點(diǎn)贊關(guān)系以及提及關(guān)系四方面交互行為構(gòu)建加權(quán)的交互網(wǎng)絡(luò),然后以Newman模塊度函數(shù)作為優(yōu)化目標(biāo),得到社區(qū)內(nèi)部節(jié)點(diǎn)聯(lián)系緊密、社區(qū)之間節(jié)點(diǎn)聯(lián)系松散的社區(qū)劃分方法。邱少明等[3]提出一種基于節(jié)點(diǎn)多屬性相似性聚類的社團(tuán)劃分算法SM-CD,其中節(jié)點(diǎn)屬性包括節(jié)點(diǎn)結(jié)構(gòu)屬性與自身屬性。錢蕓蕓等[4]提出一種融合主題相似度權(quán)重的主題社區(qū)發(fā)現(xiàn)模型,該模型首先計(jì)算節(jié)點(diǎn)間主題相似度并將其作為鏈接權(quán)重,然后將該鏈接權(quán)重作為模塊度參數(shù)劃分社區(qū)。張中軍等[5]提出了一種基于鏈路結(jié)構(gòu)和轉(zhuǎn)發(fā)行為的微博社交網(wǎng)絡(luò)重疊社區(qū)劃分方法,該方法通過對用戶間的轉(zhuǎn)發(fā)行為進(jìn)行對比來提高社區(qū)劃分質(zhì)量。何躍等[6]通過對每條微博進(jìn)行情緒識別,定義情緒值并以此進(jìn)行社區(qū)識別,研究不同社區(qū)內(nèi)情緒變化情況。吳小蘭等[7]通過對微博社區(qū)進(jìn)行劃分,從而追蹤典型社區(qū)群體及社區(qū)話題演化發(fā)展。除此之外,有部分學(xué)者從社區(qū)結(jié)構(gòu)出發(fā)對社區(qū)進(jìn)行劃分與識別。Golsefid等[8]提出通過模糊圖聚類來進(jìn)行社區(qū)發(fā)現(xiàn),以可能性C-聚類模型為基礎(chǔ),根據(jù)聚類中心的相似度進(jìn)行節(jié)點(diǎn)距離計(jì)算,最終完成社區(qū)發(fā)現(xiàn)。Tang等[9]利用數(shù)據(jù)場理論衡量用戶間的聯(lián)系程度,先確定初始聚類,然后采用粗糙集聚類算法進(jìn)行社區(qū)發(fā)現(xiàn)。
綜上所述,目前對于微博社區(qū)劃分的研究主要從社區(qū)結(jié)構(gòu)及微博內(nèi)容出發(fā),通過用戶間的關(guān)注信息、用戶自身屬性及用戶發(fā)布的博文內(nèi)容相似度來進(jìn)行微博社區(qū)識別,對于微博用戶間的交流互動關(guān)系研究較少,無法多維度、深層次地發(fā)現(xiàn)網(wǎng)絡(luò)輿情用戶社區(qū)?;诖耍槍ΜF(xiàn)有研究的不足,本文以微博網(wǎng)絡(luò)輿情用戶為研究對象,結(jié)合用戶交互行為,發(fā)現(xiàn)網(wǎng)絡(luò)輿情用戶社區(qū),同時(shí)對不同社區(qū)內(nèi)用戶特征進(jìn)行分析,不僅能更加準(zhǔn)確地分析社區(qū)用戶之間的交流互動,還能了解不同社區(qū)內(nèi)用戶特征,為引導(dǎo)網(wǎng)絡(luò)輿論提供有價(jià)值的參考。
在微博網(wǎng)絡(luò)中,用戶可以對自己感興趣的內(nèi)容進(jìn)行點(diǎn)贊、評價(jià)與轉(zhuǎn)發(fā)等。通過這些行為,用戶與其他用戶建立聯(lián)系形成關(guān)系網(wǎng)絡(luò)。微博用戶間的交互行為主要有以下6種:轉(zhuǎn)發(fā)、評論、點(diǎn)贊、被@、私信以及收藏,考慮到數(shù)據(jù)收集的方便性,本文只研究點(diǎn)贊、轉(zhuǎn)發(fā)以及評論這3種交互行為。根據(jù)上述描述可知微博網(wǎng)絡(luò)用戶交互行為結(jié)構(gòu)圖如圖1所示,第一層節(jié)點(diǎn)為微博用戶集合,第二層節(jié)點(diǎn)為微博用戶的博文集合,第三層為用戶對博文的交互集合。將上述“用戶-微博-用戶”網(wǎng)絡(luò)中的微博節(jié)點(diǎn)去掉,并將微博節(jié)點(diǎn)與用戶節(jié)點(diǎn)間的關(guān)系疊加到對應(yīng)的用戶節(jié)點(diǎn)關(guān)系上,構(gòu)建“用戶-用戶”行為關(guān)系網(wǎng)絡(luò)[10],從而構(gòu)成了第一類用戶與第二類用戶的交互網(wǎng)絡(luò)。
圖1 微博交互網(wǎng)絡(luò)圖
社區(qū)被稱為節(jié)點(diǎn)的局部密集連通子圖或聚類[11],社區(qū)發(fā)現(xiàn)則是指以相似特征為基礎(chǔ)的聚類[12]。傳統(tǒng)社區(qū)發(fā)現(xiàn)算法主要包括圖分割法[13-14]、標(biāo)簽傳播算法[15-18]、CPM算法[19]等。除此之外還有一類基于模塊度最大化的算法,其中以GN社區(qū)發(fā)現(xiàn)算法[20]和Louvain社區(qū)發(fā)現(xiàn)算法[21]為代表。
本文以新浪微博為數(shù)據(jù)采集平臺,通過分析用戶交互行為,計(jì)算用戶間的交互度,并以此作為權(quán)重進(jìn)行微博社區(qū)的發(fā)現(xiàn)。
用戶間的交互次數(shù)體現(xiàn)了用戶間關(guān)聯(lián)的緊密程度,用戶交互聯(lián)系越頻繁與緊密,彼此之間就越有可能進(jìn)行信息傳遞,被劃分到同一社區(qū)的可能性也就越大。基于此,本文根據(jù)用戶間交互次數(shù)計(jì)算兩用戶交互度。計(jì)算公式如下所示:
其中,Int(A,B)表示用戶A與用戶B之間的交互度;Like(A,B)表示用戶A與用戶B之間的點(diǎn)贊次數(shù);Share(A,B)表示用戶A與用戶B之間的轉(zhuǎn)發(fā)次數(shù);Comment(A,B)表示用戶A與用戶B之間的評論次數(shù)。
微博用戶間的交互行為可以分為兩類,一類是直接交互,另一類是間接交互。所謂直接交互是指用戶對另一用戶發(fā)布的博文進(jìn)行直接的點(diǎn)贊、轉(zhuǎn)發(fā)以及評論等行為。而間接交互則是指兩用戶對同一條博文進(jìn)行點(diǎn)贊、轉(zhuǎn)發(fā)以及評論等交互行為。式(1)只考慮了用戶間的直接交互忽略了間接交互,基于此本文對上述公式進(jìn)行修改,融合用戶間的間接交互度,修改后的公式如下所示:
其中,Interaction(A,B)表示加入了間接交互的用戶A與用戶B的交互度;Int′(A,B)表示用戶A與用戶B之間的間接交互度;Like(A→O,B→O)表示用戶A與用戶B對用戶O的共同點(diǎn)贊次數(shù);Share(A→O,B→O)表示用戶A與用戶B對用戶O的共同轉(zhuǎn)發(fā)次 數(shù);Comment(A→O,B→O)表 示 用 戶A與 用 戶B對用戶O的共同評論次數(shù);α為權(quán)重系數(shù),其值根據(jù)經(jīng)驗(yàn)設(shè)定為0.7。
根據(jù)上述公式可得用戶n×n的對稱交互度矩陣,該交互度矩陣中的每一個(gè)值均刻畫了該網(wǎng)絡(luò)中的某個(gè)節(jié)點(diǎn)與其他節(jié)點(diǎn)的交互程度,如式(4)所示:
Louvain算法是Blondel等人[21]在2008年提出的一種基于模塊度的社區(qū)發(fā)現(xiàn)算法,該算法通過重復(fù)合并模塊度增量最大的用戶節(jié)點(diǎn)從而最大化整個(gè)社區(qū)網(wǎng)絡(luò)的模塊度,實(shí)現(xiàn)社區(qū)優(yōu)化。模塊度公式如下:
其中,Aij表示節(jié)點(diǎn)i和節(jié)點(diǎn)j之間的權(quán)重;表示所有與節(jié)點(diǎn)i相連的邊的權(quán)重之和;cj表示節(jié)點(diǎn)i所屬社區(qū);表示所有邊的權(quán)重之和[22]。
基于上述模型方法,根據(jù)式(1)~式(3)計(jì)算用戶交互度,并將該交互度作為兩節(jié)點(diǎn)間邊的權(quán)重,通過Louvain算法進(jìn)行微博突發(fā)事件用戶社區(qū)劃分。本文首先對輸入的數(shù)據(jù)源進(jìn)行預(yù)處理,在預(yù)處理過程中主要包括對用戶交互關(guān)系進(jìn)行提取,根據(jù)提取的用戶關(guān)系計(jì)算用戶交互度,并通過對間接交互與直接交互進(jìn)行加權(quán)得出總的用戶交互度;然后利用兩兩節(jié)點(diǎn)之間的交互構(gòu)建交互度矩陣,將交互度作為兩節(jié)點(diǎn)間邊的權(quán)重,不斷合并和更新交互度最大的社區(qū),直到網(wǎng)絡(luò)模塊度不再增加,模塊度最大的社區(qū)即為最優(yōu)劃分結(jié)果[23]。算法流程如圖2所示。
圖2 算法流程圖
微博具有鮮明的社交網(wǎng)絡(luò)特點(diǎn),吸引了眾多的輿情用戶,對網(wǎng)絡(luò)輿情研究具有重大意義。本文選取公眾關(guān)注的突發(fā)事件——7.20河南暴雨話題作為信息源采集全部數(shù)據(jù),進(jìn)行微博社區(qū)分類。使用Python采集輿情用戶發(fā)布的“河南暴雨”關(guān)鍵詞下的用戶相關(guān)數(shù)據(jù)。具體步驟如下:(1)本文數(shù)據(jù)采集時(shí)間從河南暴雨發(fā)生時(shí)間2021年7月20日開始至2021年8月2日河南省人民政府新聞辦公室新聞發(fā)布會通報(bào)受災(zāi)情況結(jié)束。利用微博高級搜索功能,以“河南暴雨”為關(guān)鍵詞搜索相關(guān)博文。(2)通過Python采集博文相關(guān)信息,包括用戶ID、博文內(nèi)容以及發(fā)布時(shí)間等。(3)記錄每個(gè)用戶ID所發(fā)布的博文下的點(diǎn)贊、轉(zhuǎn)發(fā)及評論名單。(4)統(tǒng)計(jì)每個(gè)ID的直接與間接交互用戶并記錄其與用戶之間的交互類型與交互次數(shù)。數(shù)據(jù)采集結(jié)果如圖3所示。
圖3 數(shù)據(jù)采集結(jié)果
在得到初步數(shù)據(jù)后通過Python和Excel進(jìn)行數(shù)據(jù)處理,包括數(shù)據(jù)清洗、刪除重復(fù)數(shù)據(jù)和無用字段,之后通過Jieba分詞過濾無關(guān)字符以及去停用詞獲得微博文本分詞數(shù)據(jù),最終獲得用戶ID 2 712名,微博博文7 467條以及32 498條交互關(guān)系。
在計(jì)算上述各用戶間交互關(guān)系及交互度的基礎(chǔ)上,通過Louvain算法對微博用戶進(jìn)行社區(qū)劃分,將劃分結(jié)果利用Gephi進(jìn)行可視化。由于最終獲得的社區(qū)數(shù)目較多,本文選擇了節(jié)點(diǎn)數(shù)量前7的社區(qū),社區(qū)劃分結(jié)果如圖4所示。
從圖4可以看出,微博網(wǎng)絡(luò)用戶之間相互聯(lián)系形成不同的社區(qū)結(jié)構(gòu),其中,社區(qū)3、社區(qū)4、社區(qū)5、社區(qū)6、社區(qū)7內(nèi)網(wǎng)絡(luò)密度相對較大,社區(qū)1、社區(qū)2網(wǎng)絡(luò)密度相對較小,社區(qū)成員較為分散。圖中節(jié)點(diǎn)的大小代表了節(jié)點(diǎn)度的大小,節(jié)點(diǎn)越大代表節(jié)點(diǎn)同其他節(jié)點(diǎn)的交互越多?;诖丝梢詮膱D中看出,在社區(qū)內(nèi)存在意見領(lǐng)袖,不同社區(qū)內(nèi)意見領(lǐng)袖個(gè)數(shù)有所不同,社區(qū)內(nèi)其他用戶緊緊圍繞在意見領(lǐng)袖周圍,同意見領(lǐng)袖進(jìn)行交互,即少數(shù)關(guān)鍵用戶擁有大量的交互關(guān)系,普通用戶之間交互較少。
圖4 社區(qū)劃分結(jié)果
通過研究微博用戶社區(qū)可直觀展示出在“河南暴雨”輿情空間下,輿情用戶主題的構(gòu)成和分布情況,確定輿情用戶的主題傾向。將各社區(qū)內(nèi)用戶所發(fā)的河南暴雨相關(guān)博文內(nèi)容匯總,通過Jieba分詞對文本內(nèi)容進(jìn)行分詞,統(tǒng)計(jì)各社區(qū)內(nèi)詞頻數(shù)前10的詞語,結(jié)果如表1所示。
從表1可以看出不同社區(qū)內(nèi)用戶對于此次暴雨事件的關(guān)注重點(diǎn)存在不同之處。在社區(qū)1內(nèi)用戶發(fā)布的暴雨相關(guān)博文主要與救援相關(guān),呼吁人們給予暴雨中的小縣城關(guān)注與救援。社區(qū)2內(nèi)用戶則主要關(guān)注暴雨導(dǎo)致的地鐵21號線乘客被困事件,人們對地鐵內(nèi)被困的人員給予關(guān)注與鼓勵,同時(shí)也強(qiáng)烈要求查明相關(guān)事故原因。社區(qū)3內(nèi)用戶主要關(guān)注救災(zāi)物資捐助以及災(zāi)后受災(zāi)人民的賠償相關(guān)問題,例如#涉河南行程可免費(fèi)退改#、#汽車被淹保險(xiǎn)怎么賠?#等。社區(qū)4內(nèi)用戶主要關(guān)注群眾救援問題,特別是老人等弱勢群體的救援。社區(qū)5和社區(qū)6內(nèi)用戶話題相似,主要包括暴雨信息的求助及物資和救援相關(guān)問題。社區(qū)7內(nèi)用戶則主要關(guān)注暴雨中的感人畫面,將視角聚焦到暴雨下的普通人。盡管各社區(qū)內(nèi)用戶關(guān)注的重點(diǎn)有所不同,但7個(gè)社區(qū)內(nèi)詞頻數(shù)最多的都是“暴雨”與“河南”,這是此次突發(fā)事件的共同主題,除此之外救援、被困、洪水等詞語也同時(shí)出現(xiàn)在不同社區(qū)內(nèi)部,這表明不同社區(qū)內(nèi)存在話題重疊問題。
表1 社區(qū)詞頻統(tǒng)計(jì)
本文從社會網(wǎng)絡(luò)分析的角度出發(fā),分析了微博網(wǎng)絡(luò)上用戶間交互行為及交互網(wǎng)絡(luò),根據(jù)用戶間點(diǎn)贊、轉(zhuǎn)發(fā)及評論等交互行為次數(shù)獲得用戶交互度,結(jié)合Louvain算法完成突發(fā)事件下微博用戶社區(qū)發(fā)現(xiàn)。根據(jù)實(shí)驗(yàn)結(jié)果,該方法能更好地考慮用戶之間的交互行為從而使社區(qū)劃分結(jié)果更加準(zhǔn)確,社區(qū)內(nèi)部聯(lián)系也更加緊密。將社區(qū)發(fā)現(xiàn)結(jié)果與突發(fā)事件下用戶發(fā)布的相關(guān)博文相結(jié)合可知,不同社區(qū)內(nèi)用戶對于同一事件的關(guān)注重點(diǎn)有所不同,同時(shí)不同社區(qū)內(nèi)話題存在重疊現(xiàn)象。本文從用戶間交互行為出發(fā)研究突發(fā)事件下微博用戶社區(qū)特征,可為網(wǎng)絡(luò)輿情引導(dǎo)工作提供更全面的參考。本研究從新浪微博采集數(shù)據(jù),且實(shí)驗(yàn)數(shù)據(jù)是在新浪微博上隨機(jī)獲取的部分?jǐn)?shù)據(jù),權(quán)威性不高,所以在未來的工作中將尋找更加權(quán)威的數(shù)據(jù)進(jìn)一步加強(qiáng)研究的有效性。