陳淑娟,徐雅斌
1.網(wǎng)絡(luò)文化與數(shù)字傳播北京市重點(diǎn)實(shí)驗(yàn)室,北京100101
2.北京信息科技大學(xué) 計(jì)算機(jī)學(xué)院,北京100101
近年來,F(xiàn)acebook、Twitter、微博等社交網(wǎng)絡(luò)已經(jīng)成為人們溝通交流的重要渠道。每個(gè)社交網(wǎng)絡(luò)都存在著意見領(lǐng)袖,意見領(lǐng)袖在敏感信息、輿情、熱點(diǎn)話題的傳播過程中扮演著關(guān)鍵作用,具有較大的社會(huì)影響力。
分析發(fā)現(xiàn),在每個(gè)社交網(wǎng)絡(luò)中,圍繞著意見領(lǐng)袖自然形成若干個(gè)不同的社團(tuán),而每個(gè)社團(tuán)往往具有一個(gè)或多個(gè)交流和討論的主題。因此,意見領(lǐng)袖的挖掘與主題社團(tuán)是密切相關(guān)的。研究如何面向主題社團(tuán)挖掘意見領(lǐng)袖對(duì)熱點(diǎn)事件傳播,輿情管控具有重要的意義和研究?jī)r(jià)值。
針對(duì)上述分析,本文提出了一種基于主題相似度的多標(biāo)簽均衡社團(tuán)劃分算法和快速意見領(lǐng)袖挖掘算法QMOLA。首先采用I-LDA 計(jì)算主題分布,并籍此計(jì)算出主題相似度。并利用主題相似度排序,確定節(jié)點(diǎn)標(biāo)簽傳播更新的順序,再結(jié)合鄰居節(jié)點(diǎn)間的相似度和社團(tuán)標(biāo)簽信息更新自身的社團(tuán)標(biāo)簽信息,由此劃分出高穩(wěn)定性的主題社團(tuán);然后針對(duì)某一主題社團(tuán),根據(jù)結(jié)構(gòu)特征排除粉絲數(shù)、關(guān)注數(shù)和VIP 等級(jí)較低的用戶,確定候選人集合;最后,根據(jù)候選人的傳播特征和情感特征計(jì)算用戶影響力,挖掘TOP- K 個(gè)意見領(lǐng)袖。整體算法的框架流程圖如圖1所示。
(1)提出了一個(gè)I-LDA 模型,將粉絲類別屬性作用于LDA 模型,由此可抽取出主題表達(dá)能力更強(qiáng)的主題詞,使得主題識(shí)別效果更好。
(2)針對(duì)同一社團(tuán)的用戶經(jīng)常發(fā)布相同或相似主題文本內(nèi)容的特點(diǎn),采用基于主題相似度的多標(biāo)簽均衡社團(tuán)劃分算法劃分主題社團(tuán),相對(duì)已有的社團(tuán)劃分方法,有效提高了社團(tuán)劃分的準(zhǔn)確性。
(3)提出了意見領(lǐng)袖快速挖掘算法QMOLA,不僅可以減少計(jì)算全部用戶影響力的時(shí)間,提高效率,而且還可提高社團(tuán)中意見領(lǐng)袖挖掘的準(zhǔn)確性。
對(duì)于社團(tuán)劃分的研究,姜昊等[1]提出了Fast-Newman算法,不同于傳統(tǒng)的分裂式社團(tuán)劃分算法GN[2],該算法先將每個(gè)用戶初始化一個(gè)單獨(dú)的社團(tuán),再采用貪婪算法合并社團(tuán),實(shí)現(xiàn)復(fù)雜網(wǎng)絡(luò)的快速社團(tuán)劃分。Liu等[3]提出了一種基于局部最優(yōu)擴(kuò)展內(nèi)聚思想的社區(qū)發(fā)現(xiàn)算法,先使用最重要的節(jié)點(diǎn)及其鄰接節(jié)點(diǎn)初始化核心社團(tuán),再通過節(jié)點(diǎn)隸屬度對(duì)核心社團(tuán)進(jìn)行擴(kuò)展。文獻(xiàn)[4-6]提出基于節(jié)點(diǎn)重要性的多標(biāo)簽傳播重疊社團(tuán)發(fā)現(xiàn)算法,先采用LeaderRank 或PageRank 計(jì)算出節(jié)點(diǎn)的影響力,再使用多標(biāo)簽傳播算法劃分社團(tuán)。趙雨露等[7]在采用標(biāo)簽傳播算法劃分社團(tuán)的基礎(chǔ)上,采用最大社區(qū)節(jié)點(diǎn)數(shù)控制社團(tuán)規(guī)模。歐陽(yáng)驥等[8]提出采用主題劃分與鏈接劃分的社團(tuán)發(fā)現(xiàn)算法,先采用隱含狄利克雷分布(Latent Dirichlet Allocation,LDA)模型對(duì)社團(tuán)進(jìn)行主題劃分,再應(yīng)用模塊度社團(tuán)發(fā)現(xiàn)算法對(duì)社團(tuán)進(jìn)行鏈接劃分。翟菊葉等[9]提出一種主題社團(tuán)混合模型(On-line Topic and User Combine Model,OTUCM)模型的網(wǎng)絡(luò)社團(tuán)演化識(shí)別方法,把社團(tuán)識(shí)別轉(zhuǎn)換成主題識(shí)別,并引入時(shí)間因素,實(shí)現(xiàn)動(dòng)態(tài)社團(tuán)劃分。
對(duì)于意見領(lǐng)袖挖掘的研究,文獻(xiàn)[10-12]主要根據(jù)核數(shù)、粉絲數(shù)、接近中心性、轉(zhuǎn)發(fā)數(shù)等節(jié)點(diǎn)的結(jié)構(gòu)特征挖掘意見領(lǐng)袖。郭博等[13]采用層次分析法確定用戶的粉絲數(shù)、關(guān)注數(shù)、活躍度和可信度各個(gè)指標(biāo)的權(quán)重,并基于PageRank算法挖掘意見領(lǐng)袖。Qiu等[14]根據(jù)用戶評(píng)論進(jìn)行文本挖掘,并通過引入時(shí)間特征改進(jìn)PageRank 算法來挖掘意見領(lǐng)袖。陳振春等[15]通過研究用戶的粉絲數(shù)、跨社團(tuán)數(shù)等結(jié)構(gòu)特征和用戶行為特征計(jì)算節(jié)點(diǎn)影響力,并挖掘意見領(lǐng)袖。肖宇等[16]通過分析用戶回帖的情感傾向,采用LeaderRank算法計(jì)算意見領(lǐng)袖排名。徐郡明等[17]根據(jù)用戶的情感傾向和活躍程度改進(jìn)LeaderRank 算法挖掘意見領(lǐng)袖。Duan等[18]先采用聚類算法將用戶聚類,再對(duì)用戶進(jìn)行情感分析,由此挖掘意見領(lǐng)袖。
綜上可以發(fā)現(xiàn),現(xiàn)有的方法采用LDA 主題模型對(duì)文本提取主題并計(jì)算主題相似度,但是提取出的主題詞傾向于選擇高頻詞,而主題表達(dá)能力強(qiáng)的低頻詞被分配到各主題的概率比較低。現(xiàn)有的方法劃分社團(tuán)常采用分裂或聚合的方式將關(guān)系密切的用戶劃分在一個(gè)社團(tuán)內(nèi),將關(guān)系不密切的用戶分離,但是忽略了用戶間的主題相似影響,不能準(zhǔn)確地劃分主題社團(tuán)?,F(xiàn)有的意見領(lǐng)袖挖掘方法計(jì)算結(jié)構(gòu)特征、行為特征或情感特征對(duì)PageRank算法進(jìn)行改進(jìn)計(jì)算影響力,但是并未考慮到用戶在每個(gè)主題社團(tuán)下的影響力是不同的。并且計(jì)算全部用戶的影響力值,并對(duì)其進(jìn)行排序,導(dǎo)致耗時(shí)較長(zhǎng),計(jì)算效率需進(jìn)一步提高。
圖1 整體算法的框架流程圖
LDA 主題模型的基本思想是將多個(gè)不同的主題按照一定的概率分布生成文檔,其中多個(gè)不同的詞按照一定的概率分布生成主題,從而挖掘文檔中隱藏的主題信息。標(biāo)準(zhǔn)的LDA 模型是一種基于文檔-主題-詞語的三層貝葉斯模型,可以得到“文檔-主題”和“主題-詞項(xiàng)”兩個(gè)概率分布。
LDA 模型以離散的詞頻作為輸入,并且語料庫(kù)中單詞的重要程度只有詞頻相關(guān)。由于文檔中公用詞和停用詞幾乎出現(xiàn)在所有主題下,而LDA 模型會(huì)賦予在部分文檔中出現(xiàn)頻率低而在語料庫(kù)的其他文檔中出現(xiàn)頻率高的單詞一個(gè)較高的值,而賦予在整個(gè)語料庫(kù)所有文檔中出現(xiàn)頻率很低的單詞一個(gè)較低的值。因此,當(dāng)使用LDA 模型提取文本中的主題詞時(shí),容易出現(xiàn)向高頻詞傾斜的現(xiàn)象,因而主題表達(dá)能力強(qiáng)的低頻詞分配到各主題中的概率就會(huì)比較低,主題表達(dá)能力弱的高頻詞分配到各主題中的概率往往會(huì)比較高,由此降低了模型的主題識(shí)別效果。為了能抽取到主題表達(dá)能力強(qiáng)的主題詞,使主題識(shí)別效果更好,本文提出了一個(gè)I-LDA模型,如圖2所示。
圖2 I-LDA模型
基于I-LDA 模型的主題挖掘方法的過程:(1)根據(jù)用戶的粉絲博主分布比例作為用戶的興趣屬性矩陣,將其作為I-LDA 模型的輸入文檔之一;(2)對(duì)微博文本進(jìn)行預(yù)處理,包括去短文,分詞,以及去停用詞,形成規(guī)范的文本語料庫(kù),得到詞匯表和文檔-詞匯矩陣,作為ILDA 模型的輸入文檔之一;(3)采用I-LDA 模型對(duì)文本語料進(jìn)行文本表示,在利用Gibbs抽樣過程中,使用興趣屬性矩陣對(duì)文章-主題矩陣以及主題-詞矩陣進(jìn)行加權(quán)迭代,由此得到文章-主題分布矩陣和主題-詞分布矩陣。
在主題數(shù)為K 的情況下,語料庫(kù)中包含M 篇文檔,每篇文檔中包含詞匯Wm,n,每個(gè)用戶包含C 個(gè)興趣屬性。首先,對(duì)于任意一篇文檔m,使用Dirichlet 分布作為主題分布θm的先驗(yàn)分布,其中α 是分布的超參數(shù),θm表示文檔m 屬于K 個(gè)主題的概率。對(duì)于任意一個(gè)主題k,使用Dirichlet分布作為詞分布φk的先驗(yàn)分布,其中β 是分布的超參數(shù),φk表示主題k 對(duì)于N 的詞的概率。
然后,對(duì)于文檔m 中的每個(gè)詞w 進(jìn)行如下操作:根據(jù)每一篇文檔中主題的多項(xiàng)式分布和興趣參數(shù)對(duì)主題詞的加權(quán)處理,不斷調(diào)整主題分布,最終得到這篇文章的主題分布Zm,n。根據(jù)每一個(gè)主題中詞的多項(xiàng)式分布和興趣參數(shù)對(duì)詞項(xiàng)的加權(quán)處理,不斷調(diào)整詞分布,最終得到K 個(gè)主題下的詞分布Wm,n。重復(fù)此過程,遍歷文檔中所有的詞匯,直到生成所有文檔的主題。最后采用快速Gibbs 抽樣對(duì)超參數(shù)α 和β 進(jìn)行迭代估計(jì),得到ILDA的聯(lián)合概率分布如式(1)所示:
迭代循環(huán)最終得到文檔m 的主題分布和主題k 的詞分布的期望公式:
一般可以根據(jù)用戶的標(biāo)簽信息判斷用戶的興趣。但是用戶往往并不及時(shí)更新自己的信息資料,所以以標(biāo)簽信息表示用戶的興趣缺乏時(shí)效性。以微博為例,大V用戶經(jīng)過微博認(rèn)證分類,并且關(guān)注自己感興趣的用戶,所以可根據(jù)粉絲的認(rèn)證博主分類推測(cè)用戶的興趣。博主分類為44種類型,如表1所示。
表1 粉絲博主分類類型
由此,用戶u 的興趣屬性可由interest(u)=[c1(u),c2(u),…,c44(u)]表示。ci(u)表示用戶u 的第i 類粉絲博主的比例,計(jì)算公式如式(5)所示:
其中,fanNum(ui)表示用戶u 的第i 類粉絲博主數(shù)量。
通過I-LDA模型進(jìn)行主題識(shí)別后,得到所有用戶及其主題構(gòu)成的用戶-主題矩陣(User-Topic Matrix,UTM)如式(6)所示:
其中,a 表示用戶的個(gè)數(shù),b 表示主題的個(gè)數(shù)。用戶(u,v)的主題分布可使用VSM表示:topic_rate(u)={t1(u),t2(u),…,tb(u)},topic_rate(v)={t1(v),t2(v),…,tb(v)}。兩用戶(u,v)的主題相似度可采用公式(7)所示:
多標(biāo)簽均衡傳播算法是一種快速劃分社團(tuán)的半監(jiān)督學(xué)習(xí)算法。標(biāo)簽的格式為(c,r),其中c 表示節(jié)點(diǎn)屬于c 社團(tuán),r 表示節(jié)點(diǎn)屬于c 社團(tuán)的從屬系數(shù),每個(gè)節(jié)點(diǎn)可以擁有多個(gè)標(biāo)簽,并且多個(gè)標(biāo)簽的從屬系數(shù)之和為1。均衡傳播指在網(wǎng)絡(luò)中,若存在一些已標(biāo)記節(jié)點(diǎn)和未標(biāo)記節(jié)點(diǎn),將已標(biāo)記節(jié)點(diǎn)的標(biāo)簽信息傳遞給相鄰的未標(biāo)記節(jié)點(diǎn),引入閾值p 判斷未標(biāo)記節(jié)點(diǎn)是否保留傳遞得到的標(biāo)簽,以此更新自身標(biāo)簽信息并轉(zhuǎn)換成已標(biāo)記節(jié)點(diǎn)。但是也存在一些問題:
(1)節(jié)點(diǎn)更新標(biāo)簽的順序是隨機(jī)的,可能會(huì)出現(xiàn)未標(biāo)記節(jié)點(diǎn)預(yù)測(cè)已標(biāo)記節(jié)點(diǎn)的標(biāo)簽信息的現(xiàn)象。
(2)更新節(jié)點(diǎn)標(biāo)簽時(shí),認(rèn)為節(jié)點(diǎn)接收每個(gè)鄰居節(jié)點(diǎn)標(biāo)簽的概率是相同的,忽略了節(jié)點(diǎn)與不同鄰居節(jié)點(diǎn)之間的相似度對(duì)標(biāo)簽傳播的影響。
(3)當(dāng)鄰居節(jié)點(diǎn)擁有多個(gè)從屬系數(shù)最大的標(biāo)簽時(shí),算法采用隨機(jī)的方式保留標(biāo)簽,使得社團(tuán)劃分存在一定的隨機(jī)性,導(dǎo)致劃分的社團(tuán)結(jié)構(gòu)不穩(wěn)定。
為了解決上述三個(gè)問題,提高社團(tuán)劃分的準(zhǔn)確性和保證社團(tuán)結(jié)構(gòu)的穩(wěn)定性,本文對(duì)已有的多標(biāo)簽傳播算法進(jìn)行改進(jìn),提出了一種基于主題相似度的多標(biāo)簽均衡社團(tuán)劃分算法如算法1所示。
算法1 基于主題相似度的多標(biāo)簽均衡社團(tuán)劃分
輸入:用戶節(jié)點(diǎn)集合U ,用戶的主題相似度。
輸出:主題社團(tuán)集合S。
(1)每個(gè)節(jié)點(diǎn)ui設(shè)置一個(gè)各不相同的標(biāo)簽(c,r)。
(2)將主題相似度從大到小排序,確定標(biāo)簽更新的順序,并設(shè)定閾值參數(shù)p。
(3)更新節(jié)點(diǎn)ui的標(biāo)簽時(shí),接收鄰居節(jié)點(diǎn)傳遞的標(biāo)簽。計(jì)算每種標(biāo)簽的社團(tuán)從屬系數(shù)與相似度乘積之和,確定最大值bmax。
(4)節(jié)點(diǎn)ui計(jì)算每種標(biāo)簽的乘積之和與bmax的比值,將比值與閾值p 進(jìn)行比較,保留大于p 的標(biāo)簽。
(5)節(jié)點(diǎn)ui對(duì)標(biāo)簽的社團(tuán)從屬系數(shù)進(jìn)行標(biāo)準(zhǔn)化,使得所有標(biāo)簽從屬系數(shù)之和為1。
(6)如果社團(tuán)中的最少節(jié)點(diǎn)數(shù)不再變化,則算法停止,否則繼續(xù)重復(fù)步驟(3)~(5),對(duì)其余節(jié)點(diǎn)進(jìn)行標(biāo)簽更新操作。
(7)將擁有相同標(biāo)簽的節(jié)點(diǎn)劃分到一個(gè)社團(tuán)中,從而實(shí)現(xiàn)主題社團(tuán)劃分。
通過上述算法即可得到主題社團(tuán)集合S。在算法中,步驟(1)、(2)為準(zhǔn)備階段,完成節(jié)點(diǎn)的標(biāo)簽初始化、確定節(jié)點(diǎn)的標(biāo)簽更新順序和設(shè)置閾值p 三部分。步驟(3)~(6)為標(biāo)簽更新階段,每個(gè)節(jié)點(diǎn)按照更新的規(guī)則迭代更新自己的標(biāo)簽。步驟(7)為收尾階段,統(tǒng)計(jì)和整理節(jié)點(diǎn)的標(biāo)簽,劃分主題社團(tuán)。
主題社團(tuán)形成之后,挖掘主題社團(tuán)中的意見領(lǐng)袖的關(guān)鍵在于綜合分析各個(gè)維度的特征對(duì)用戶影響力的作用結(jié)果?;趯?duì)意見領(lǐng)袖的特征進(jìn)行深層次分析,本文從結(jié)構(gòu)特征、傳播特征和情感特征三個(gè)角度挖掘意見領(lǐng)袖。
結(jié)構(gòu)特征不僅指用戶個(gè)人因素,還指其所處的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)因素,在微博中可由粉絲數(shù)、關(guān)注數(shù)、VIP 等級(jí),接近中心性等屬性表示。但是,由于采集的數(shù)據(jù)集不能準(zhǔn)確再現(xiàn)用戶在微博中的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),對(duì)接近中心性的計(jì)算存在差異。為此,本文主要從粉絲數(shù)、關(guān)注數(shù)和VIP等級(jí)三個(gè)因素計(jì)算用戶的結(jié)構(gòu)特征值INF_S。
其中,followedNum(u) 表示用戶u 的粉絲數(shù),followerNum(u)表示用戶u 的關(guān)注數(shù),vipLevel(u)表示用戶u 的VIP等級(jí),α1~α3表示對(duì)應(yīng)屬性的權(quán)重。
每種屬性數(shù)據(jù)具有不同的量綱,數(shù)據(jù)間差異較大,不能直接參與計(jì)算,因此需要對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理,使得數(shù)據(jù)指標(biāo)之間具有可比性。本文采用min-max 標(biāo)準(zhǔn)化對(duì)數(shù)據(jù)進(jìn)行線性轉(zhuǎn)換,將結(jié)果映射到[0-1]之間,轉(zhuǎn)換函數(shù)如下所示:
通過AHP層次分析法確定每個(gè)屬性的權(quán)重參數(shù)值。
首先,通過對(duì)1 043個(gè)用戶進(jìn)行結(jié)構(gòu)特征分析,可以發(fā)現(xiàn),用戶可以選擇不關(guān)注其他用戶,但不能阻止其他用戶關(guān)注自己,因此粉絲數(shù)相對(duì)于關(guān)注數(shù)稍微重要,另外,VIP 等級(jí)越高,影響力越強(qiáng),因此VIP 等級(jí)相對(duì)于粉絲數(shù)和關(guān)注數(shù)較強(qiáng)重要。然后,根據(jù)兩兩屬性之間的重要程度,得出層次判別矩陣如表2 所示。最后,通過一次性檢驗(yàn)得到各個(gè)屬性權(quán)重如表3 所示。從表中可以看出,VIP 等級(jí)、粉絲數(shù)和關(guān)注數(shù)的比例約為6∶2∶1,符合用戶的結(jié)構(gòu)特征分布。
表2 結(jié)構(gòu)屬性權(quán)重的層次判別矩陣
表3 結(jié)構(gòu)屬性權(quán)重設(shè)置
傳播特征指用戶在一段時(shí)間內(nèi)發(fā)布的微博數(shù)和微博被點(diǎn)贊、被轉(zhuǎn)發(fā)和被評(píng)論的數(shù)量。為了表示時(shí)間對(duì)傳播特征的影響,本文選取用戶在24小時(shí)內(nèi)的發(fā)博數(shù)、被點(diǎn)贊數(shù)、被轉(zhuǎn)發(fā)數(shù)和被評(píng)論數(shù)計(jì)算用戶的傳播特征值INF_P。
其中,weiboNum(u)表示用戶u 發(fā)布的微博數(shù),likeNum(u)表示用戶u 的被點(diǎn)贊數(shù),repostNum(u)表示用戶u 的被轉(zhuǎn)發(fā)數(shù),replyNum(u)表示用戶u 的被評(píng)論數(shù),α1~α4分別表示對(duì)應(yīng)屬性的權(quán)重。
首先,通過式(9)的轉(zhuǎn)換函數(shù)對(duì)數(shù)據(jù)進(jìn)行min-max標(biāo)準(zhǔn)化轉(zhuǎn)換;然后,對(duì)用戶進(jìn)行傳播特征分析,發(fā)布微博越多,其微博有更大概率被轉(zhuǎn)發(fā),因此微博數(shù)相對(duì)于其他三者較強(qiáng)重要,轉(zhuǎn)發(fā)數(shù)越高,則微博更能廣泛傳播,因此轉(zhuǎn)發(fā)數(shù)相對(duì)于點(diǎn)贊數(shù)稍微重要,對(duì)微博進(jìn)行評(píng)論,更能體現(xiàn)對(duì)該條微博的認(rèn)同,因此評(píng)論數(shù)相對(duì)于點(diǎn)贊數(shù)較強(qiáng)重要,相對(duì)于轉(zhuǎn)發(fā)數(shù)稍微重要。其次,通過層次分析法確定每個(gè)屬性的權(quán)重參數(shù)值,得到層次判別矩陣如表4 所示;最后,通過一致性檢驗(yàn)得到各個(gè)屬性的權(quán)重如表5所示。從表中可以看出,微博數(shù)、評(píng)論數(shù)、轉(zhuǎn)發(fā)數(shù)和點(diǎn)贊數(shù)的比例約為7∶4∶2∶1,符合用戶的傳播特征分布。
用戶發(fā)布的微博往往受到粉絲或者路人的評(píng)論,對(duì)用戶發(fā)布微博的正向評(píng)論越多,越能體現(xiàn)其受尊重和受歡迎的程度,越能增加作為意見領(lǐng)袖的概率。反之,反向評(píng)論越多,則說明其不受尊重和不受歡迎的程度,越能降低作為意見領(lǐng)袖的概率。為此,本文以微博評(píng)論的情感極性作為用戶的情感特征,極性判別步驟如下:
表4 傳播屬性權(quán)重的層次判別矩陣
表5 傳播屬性權(quán)重設(shè)置
(1)用SVM模型訓(xùn)練已標(biāo)注好的語料,對(duì)參數(shù)進(jìn)行調(diào)優(yōu)。
(2)預(yù)處理,剔除微博評(píng)論中的特殊字段。例如,“http://www.qzjcj.com”“#話題#”“回復(fù)@用戶名:”“//@用戶名:”“@用戶名”等。
(3)采用jieba 分詞器對(duì)預(yù)處理過的評(píng)論進(jìn)行分詞和加載停用詞表,去除評(píng)論中的停用詞。
(4)用word2vec 模型訓(xùn)練每條評(píng)論,得到每個(gè)詞的高維向量,然后根據(jù)情感詞典選取每條評(píng)論中的特征詞,將特征詞的向量相加后求平均,得到每條評(píng)論的句子向量。
(5)使用訓(xùn)練好的SVM 模型對(duì)句子向量進(jìn)行極性分類。
情感極性分析結(jié)束后,統(tǒng)計(jì)每個(gè)用戶正、負(fù)向評(píng)論的條數(shù),采用公式(11)計(jì)算用戶的情感特征值INF_E。參數(shù)分別取1、-2,能夠明顯區(qū)分用戶正向評(píng)論數(shù)與負(fù)向評(píng)論數(shù)。
通過研究發(fā)現(xiàn),意見領(lǐng)袖一般具有明顯的結(jié)構(gòu)特征,然而具有明顯結(jié)構(gòu)特征的用戶不一定是意見領(lǐng)袖。此外,意見領(lǐng)袖的影響力不僅表現(xiàn)在微博被轉(zhuǎn)發(fā)或評(píng)論的次數(shù),還表現(xiàn)在粉絲對(duì)其微博的支持態(tài)度。為了快速和準(zhǔn)確地挖掘主題社團(tuán)中的意見領(lǐng)袖,本文提出了快速意見領(lǐng)袖挖掘算法QMOLA,先根據(jù)結(jié)構(gòu)特征篩選出候選人,后根據(jù)傳播特征和情感特征計(jì)算影響力,從候選人中選取意見領(lǐng)袖。
本文在網(wǎng)頁(yè)排名算法PageRank 的基礎(chǔ)上,添加用戶的傳播特征和情感特征,提出了如式(12)所示的用戶影響力(User Influence,UI)計(jì)算公式。
其中,d 為阻尼系數(shù),取值為0.85;N 表示全部節(jié)點(diǎn)的數(shù)量,表示用戶i 被選為候選人的粉絲集合;L(j)表示用戶j 關(guān)注的且被選為候選人的用戶集合;INF_P(i)表示用戶i 的傳播特征值;INF_E(i)表示用戶i 的情感特征值。
UI 計(jì)算公式的提出借鑒了PageRank 算法的思想,認(rèn)為一個(gè)用戶的影響力不僅與其傳播特征和情感特征有關(guān),而且還與其粉絲的影響力有關(guān)。由PageRank 算法的質(zhì)量假設(shè)可知,越是質(zhì)量高的頁(yè)面指向頁(yè)面A,頁(yè)面A 越重要。所以,若粉絲的影響力普遍很高,且對(duì)該用戶的意見普遍贊成,則表明對(duì)此用戶的影響力貢獻(xiàn)越大。因此,UI計(jì)算公式不僅分析深層次的影響因素,同時(shí)還保持了PageRank 算法的優(yōu)勢(shì)。算法步驟如算法2所示。
輸入:節(jié)點(diǎn)集合U ,關(guān)系集合E,主題社團(tuán)集合S。
輸出:節(jié)點(diǎn)影響力排名。
(1)根據(jù)用戶的粉絲數(shù)、關(guān)注數(shù)和VIP 等級(jí)計(jì)算結(jié)構(gòu)特征值INF_S。
(2)將社團(tuán)中每個(gè)用戶的INF_S 從大到小排序,選取h 個(gè)用戶組成候選人集合H 。
(3)計(jì)算候選人集合H 中的每個(gè)用戶的傳播特征值INF_P 和情感特征值INF_E。
(4)根據(jù)UI公式計(jì)算出用戶的影響力值UI 。
(5)將候選人的UI 按照從大到小的順序進(jìn)行排序,選擇前K 個(gè)用戶作為意見領(lǐng)袖TOP-K 。
本文從新浪微博平臺(tái)上采集實(shí)驗(yàn)數(shù)據(jù),按照廣度優(yōu)先的策略,從微博昵稱為“人民日?qǐng)?bào)”“央視體育”“新浪財(cái)經(jīng)”“圈內(nèi)星探”“新浪軍事”“央視新聞”“新浪娛樂”七個(gè)用戶開始爬取數(shù)據(jù),爬取用戶的個(gè)人信息和2019-03-18—2019-03-20三天內(nèi)發(fā)布的微博。針對(duì)每條微博,先爬取評(píng)論內(nèi)容、點(diǎn)贊數(shù)和轉(zhuǎn)發(fā)數(shù)等數(shù)據(jù),再爬取其粉絲用戶,將這些用戶繼續(xù)添加至待爬取隊(duì)列。對(duì)一個(gè)用戶的數(shù)據(jù)爬取結(jié)束之后,繼續(xù)對(duì)下一個(gè)用戶進(jìn)行同樣的操作,重復(fù)此過程,直至爬取1 043 個(gè)用戶的信息,則爬蟲停止。
葉總接過話茬:“這么看來,我猜的就八九不離十了。老賈成功騙過我們之后,就剩下釣?zāi)憬淌谏瞎戳?。那天我提前離開酒席之后,他怕夜長(zhǎng)夢(mèng)多,便用錢盒子為餌,促成交易。仔細(xì)想想,看來老賈真的是以為這個(gè)盒子不太值錢,所以才把它當(dāng)陪襯送給了陸教授?!?/p>
該數(shù)據(jù)集中包含1 043個(gè)用戶的個(gè)人信息、1 124條用戶關(guān)系、95 447條微博信息以及296 881條評(píng)論信息。另外,進(jìn)行情感分析時(shí),需要借助情感詞典,本文的情感詞典包含7 339個(gè)正向情感詞和12 956個(gè)負(fù)向情感詞。
本文的實(shí)驗(yàn)環(huán)境如表6所示。
表6 實(shí)驗(yàn)相關(guān)環(huán)境
4.2.1 評(píng)價(jià)指標(biāo)
困惑度指所訓(xùn)練出的模型將一篇文章歸屬于哪個(gè)主題的不確定性。困惑度越小,說明聚類的效果越好。
4.2.2 對(duì)比實(shí)驗(yàn)
為了驗(yàn)證本文提出的I-LDA 模型對(duì)于主題聚類的能力,與I-LDA模型在困惑度上進(jìn)行對(duì)比實(shí)驗(yàn)。在相同的實(shí)驗(yàn)環(huán)境下,對(duì)比結(jié)果如圖3所示。
圖3 困惑度對(duì)比實(shí)驗(yàn)結(jié)果
從圖3中可以看出,本文提出的I-LDA模型困惑度的值明顯低于LDA 模型的困惑度值,進(jìn)一步說明了I-LDA模型的性能優(yōu)于LDA模型,將用戶的興趣屬性融入LDA模型中在一定程度上提升了主題聚類的精確度。
4.3.1 評(píng)價(jià)指標(biāo)
(1)時(shí)間指挖掘社團(tuán)中意見領(lǐng)袖消耗的時(shí)間,采用計(jì)算用戶結(jié)構(gòu)特征、傳播特征和情感特征的總時(shí)間表示。
(2)覆蓋率指從信息擴(kuò)散角度衡量意見領(lǐng)袖的影響力,采用社團(tuán)內(nèi)轉(zhuǎn)發(fā)意見領(lǐng)袖微博的用戶數(shù)與用戶總數(shù)的比值來表示。
(3)支持率指從情感角度衡量意見領(lǐng)袖的受支持程度,采用社團(tuán)內(nèi)正向評(píng)論的用戶數(shù)與用戶總數(shù)的比值來表示。
4.3.2 對(duì)比實(shí)驗(yàn)
將本文提出的QMOLA與文獻(xiàn)[19]提出的多維特征的意見領(lǐng)袖挖掘方法在挖掘時(shí)間上進(jìn)行比較。在相同的實(shí)驗(yàn)環(huán)境下,兩種方法的對(duì)比結(jié)果如圖4所示。
圖4 挖掘時(shí)間對(duì)比實(shí)驗(yàn)結(jié)果
從圖4中可以看出,兩種方法都計(jì)算全部用戶的結(jié)構(gòu)特征,耗時(shí)相同。之后,本文提出的QMOLA 只需計(jì)算候選人的傳播特征,與文獻(xiàn)[19]計(jì)算全部用戶的傳播特征耗時(shí)相差0.29 s。但是,兩種方法計(jì)算情感特征時(shí),耗時(shí)相差明顯。并且從時(shí)間復(fù)雜度上分析可知,文獻(xiàn)[19]的時(shí)間復(fù)雜度為O(n3) ,而QMOLA 的時(shí)間復(fù)雜度為O(n+n2)。所以,在保證挖掘意見領(lǐng)袖準(zhǔn)確率的前提下,本文提出QMOLA 比文獻(xiàn)[19]挖掘意見領(lǐng)袖的效率更高。
為了驗(yàn)證本文方法的有效性,與PageRank和SRank方法在覆蓋率上進(jìn)行對(duì)比實(shí)驗(yàn)。在相同的實(shí)驗(yàn)環(huán)境下,對(duì)比結(jié)果如圖5所示。
圖5 覆蓋率對(duì)比實(shí)驗(yàn)結(jié)果
從圖5中可以看出,SRank只考慮了情感特征,忽略了好友的影響,導(dǎo)致挖掘出的意見領(lǐng)袖覆蓋率最低。PageRank方法體現(xiàn)了用戶之間的相互影響,比SRank具有稍好的優(yōu)勢(shì)。而本文提出的QMOLA 是在PageRank的基礎(chǔ)上,不僅考慮用戶之間的相互影響,而且還結(jié)合了用戶的傳播特征和情感特征,因此,效果明顯優(yōu)于PageRank和SRank方法。當(dāng)選取的TOP-K 較小時(shí),采用QMOLA挖掘出的意見領(lǐng)袖具有更高的覆蓋率和影響力。
為了進(jìn)一步驗(yàn)證結(jié)構(gòu)特征、傳播特征和情感特征對(duì)節(jié)點(diǎn)影響力的影響,本文將QMOLA與根據(jù)結(jié)構(gòu)特征和傳播特征計(jì)算影響力的方案1 以及根據(jù)結(jié)構(gòu)特征和情感特征計(jì)算影響力的方案2進(jìn)行對(duì)比,選擇支持率作為評(píng)價(jià)指標(biāo)。在相同的實(shí)驗(yàn)環(huán)境下,對(duì)比結(jié)果如圖6所示。
圖6 支持率對(duì)比實(shí)驗(yàn)結(jié)果
從圖6 中可以看出,當(dāng)選取意見領(lǐng)袖的TOP- K 個(gè)數(shù)較小時(shí),本文提出的QMOLA 與方案1 和方案2 挖掘的意見領(lǐng)袖的支持率比較接近,但QMOLA 的效果最好。當(dāng)TOP- K 選取個(gè)數(shù)較大時(shí),QMOLA 綜合分析意見領(lǐng)袖的傳播特征和情感特征,挖掘的TOP- K 個(gè)意見領(lǐng)袖的支持率優(yōu)于方案1 和方案2。因此,本文提出的QMOLA能夠挖掘出高支持率的意見領(lǐng)袖。
4.3.3 主題社團(tuán)的意見領(lǐng)袖挖掘結(jié)果展示
表7 展示的是在“娛樂”主題社團(tuán)中挖掘出的前10個(gè)意見領(lǐng)袖的影響力排名。從表中可以看出,“楊冪”“陳坤”等用戶結(jié)構(gòu)特征值比較大,但是在近一段時(shí)間內(nèi),其微博被轉(zhuǎn)發(fā)和被評(píng)論的數(shù)量偏少,傳播特征值相對(duì)不高,導(dǎo)致用戶影響力偏低。再如“王思聰”的微博被轉(zhuǎn)發(fā)和被評(píng)論的數(shù)量很多,傳播特征值很高,但由于評(píng)論中出現(xiàn)太多貶義評(píng)論,導(dǎo)致情感特征值出現(xiàn)負(fù)值。綜合傳播特征值和情感特征值來看,其用戶影響力是比較低的。
為了更加準(zhǔn)確、高效地挖掘不同主題社團(tuán)下的意見領(lǐng)袖,本文針對(duì)現(xiàn)有方法主題抽取準(zhǔn)確率低的問題,提出了一種I-LDA模型,通過添加興趣屬性對(duì)傳統(tǒng)的LDA模型進(jìn)行改進(jìn),由此能夠抽取主題表達(dá)能力更強(qiáng)的主題詞。在以關(guān)注關(guān)系建立的社交關(guān)系圖中,增加主題相似度權(quán)重,并提出基于主題相似度的多標(biāo)簽均衡社團(tuán)劃分算法進(jìn)行主題社團(tuán)劃分,提高了主題社團(tuán)劃分的準(zhǔn)確性。本文進(jìn)一步提出了一種快速意見領(lǐng)袖挖掘算法(QMOLA),該方法先在主題社團(tuán)中篩選出結(jié)構(gòu)特征值比較大的用戶作為候選人,再采用本文提出的用戶影響力(UI)計(jì)算公式,根據(jù)候選人的傳播特征和情感特征計(jì)算用戶影響力,據(jù)此,進(jìn)行主題社團(tuán)中的意見領(lǐng)袖挖掘。
表7 節(jié)點(diǎn)影響力排名
實(shí)驗(yàn)及分析結(jié)果表明,本文方法不僅能夠準(zhǔn)確劃分出主題社團(tuán),而且挖掘意見領(lǐng)袖的效率更高,挖掘出的意見領(lǐng)袖具有較高的覆蓋率和支持率。