孫 曉,張 陳,任福繼,2
(1. 合肥工業(yè)大學(xué) 計(jì)算機(jī)與信息學(xué)院,安徽 合肥 230009; 2. 德島大學(xué) 工程學(xué)院,日本 7700855)
國(guó)內(nèi)外社交平臺(tái)正在迅速發(fā)展,根據(jù)新浪官方發(fā)布的2016年第三季度營(yíng)業(yè)報(bào)告[1],截止到2016年9月30日,微博的月活躍人數(shù)已達(dá)到2.97億。其中,9月份的日活躍用戶(hù)達(dá)1.32億,較2015年同比增長(zhǎng)32%;微博活躍用戶(hù)中,擁有大學(xué)以上高等學(xué)歷的用戶(hù)始終是微博的主力用戶(hù),占比高達(dá)77.8%,他們發(fā)表的語(yǔ)言往往表征了一定的情感傾向性[2]。圖1和圖2是本文對(duì)100位用戶(hù)在2011年5月—2016年5月間總計(jì)10 275條微博進(jìn)行統(tǒng)計(jì)后,得到的五類(lèi)情感分布以及情感極性比例情況。“傷心、生氣”作為消極情緒占比19%,這一數(shù)據(jù)值得關(guān)注和研究。微博異常情緒檢測(cè)是微博情感分析的一個(gè)重要領(lǐng)域。通過(guò)提取用戶(hù)微博語(yǔ)料中的有價(jià)值的部分,可以很好地進(jìn)行網(wǎng)絡(luò)輿情的監(jiān)督,甚至公共安全的監(jiān)測(cè)。防止非理性情緒在網(wǎng)絡(luò)中蔓延,對(duì)可能出現(xiàn)負(fù)面情緒的事件及時(shí)做出反應(yīng)。防止某些不法分子企圖通過(guò)微博平臺(tái)傳播謠言[3],以維護(hù)社會(huì)的穩(wěn)定與和諧。[4]進(jìn)而還可以幫助企業(yè)根據(jù)用戶(hù)對(duì)產(chǎn)品的評(píng)價(jià)和情感傾向,做出正確的決策,提高產(chǎn)品質(zhì)量,減少不必要的損失,提高企業(yè)收益。
圖1 100位用戶(hù)五年微博類(lèi)別數(shù)目
圖2 100位用戶(hù)五年微博情感極性分布
目前社交媒體的用戶(hù)情緒異常檢測(cè)方法主要有以下幾種: Lin[5]提出了一種新的混合模型,因子圖模型結(jié)合卷積神經(jīng)網(wǎng)絡(luò),利用Twitter內(nèi)容屬性和社交信息來(lái)增強(qiáng)壓力檢測(cè)。本方法采用了大規(guī)模數(shù)據(jù)集,系統(tǒng)地研究用戶(hù)的壓力狀態(tài)和社會(huì)交往的相關(guān)性。最后通過(guò)訓(xùn)練集預(yù)測(cè)未標(biāo)注的用戶(hù)壓力狀態(tài),提高了檢測(cè)準(zhǔn)確性能。Zhang[6]等人以情緒因子中常用的情緒詞和情緒短語(yǔ)為基礎(chǔ)構(gòu)建情感詞典以及情緒規(guī)則庫(kù),進(jìn)行微博情緒的識(shí)別和分類(lèi),取得較好結(jié)果。Wang[7]通過(guò)考慮一個(gè)文本的賓語(yǔ)(客體)來(lái)增加情感分類(lèi)的方法,對(duì)社交數(shù)據(jù)進(jìn)行異常檢測(cè),以Twitter的數(shù)據(jù)為樣例學(xué)習(xí),統(tǒng)計(jì)四天時(shí)間內(nèi)推特上的中性、消極、積極情緒的數(shù)目。通過(guò)比較消極情緒比例來(lái)預(yù)測(cè)某一天網(wǎng)民情緒是否出現(xiàn)異常,得出的結(jié)論比較籠統(tǒng),不能準(zhǔn)確分析到具體事件和具體用戶(hù)。李凌云[8]在基于微博的事件實(shí)時(shí)監(jiān)測(cè)框架與系統(tǒng)中,提出用基于規(guī)則和統(tǒng)計(jì)的方法,用時(shí)間序列模型來(lái)監(jiān)測(cè)異常,證明比普通的模型更有效果。Yin[9]等人提出一種基于提升系數(shù)的微博異常排名檢測(cè)方法,有效防止了人為操縱微博提升排名的行為對(duì)微博排名的干擾。在仿真數(shù)據(jù)集的實(shí)驗(yàn)表明,該方法能通過(guò)微博拓?fù)溆行У刈R(shí)別異常排名。
綜合以上所述研究現(xiàn)狀,目前異常情緒建模及異常檢測(cè)主要是基于情感詞典、文本分類(lèi)、神經(jīng)網(wǎng)絡(luò)、基于統(tǒng)計(jì)和規(guī)則、基于時(shí)間序列分析模型和基于排名等,這些工作需要大量的標(biāo)注語(yǔ)料作為訓(xùn)練集,故針對(duì)異常情緒的語(yǔ)料標(biāo)注工作量很大。另外,目前的研究工作傾向于對(duì)一個(gè)社交平臺(tái)上的所有語(yǔ)料進(jìn)行分類(lèi)和分析,從而檢測(cè)出某個(gè)時(shí)間點(diǎn)的爆發(fā)異常事件,但針對(duì)單個(gè)用戶(hù)的異常情緒的檢測(cè)的研究較少。
為了檢測(cè)特定用戶(hù)或者特定時(shí)間段內(nèi)的異常情緒,本文的工作分為三大階段: 數(shù)據(jù)處理階段;異常情緒檢測(cè)階段;用戶(hù)情緒建模階段。其中數(shù)據(jù)處理階段的工作在本節(jié)具體介紹,異常情緒檢測(cè)和用戶(hù)情緒建模將分別在本文第二節(jié)和第三節(jié)具體闡述。
數(shù)據(jù)處理階段,首先采用多策略的大數(shù)據(jù)抓取技術(shù)[10]收集了100位微博用戶(hù)從2011年5月到2016年5月間的10 275條新浪微博作為實(shí)驗(yàn)語(yǔ)料。原始語(yǔ)料標(biāo)有相應(yīng)的用戶(hù)id,發(fā)布時(shí)間等相關(guān)信息。利用SVM分類(lèi)器[11]對(duì)獲取的微博語(yǔ)料進(jìn)行文本分類(lèi),結(jié)合人工糾正標(biāo)注,得到用戶(hù)微博的“中性、開(kāi)心、驚訝、傷心、生氣”類(lèi)別數(shù)目。用戶(hù)微博的五種情緒數(shù)目可以作為該用戶(hù)情緒相關(guān)的變量(五維向量),考察該變量與用戶(hù)情緒的相關(guān)性并建模。對(duì)于用戶(hù)每一類(lèi)情感的微博統(tǒng)計(jì)結(jié)果可以用單變量的高斯建模。而針對(duì)用戶(hù)五類(lèi)情感的這個(gè)五維向量,則引入多元高斯分布對(duì)用戶(hù)情緒建模,并進(jìn)行異常檢測(cè)。對(duì)標(biāo)注了情感的微博文本進(jìn)行統(tǒng)計(jì),本文是基于用戶(hù)和時(shí)間兩個(gè)角度進(jìn)行異常檢測(cè),按照“用戶(hù)、月份、微博類(lèi)別、數(shù)目”和“月份、微博類(lèi)別、數(shù)目”這兩種方式進(jìn)行統(tǒng)計(jì)。
高斯分布就是用高斯概率密度函數(shù)(正態(tài)分布曲線(xiàn))精確地量化事物,將一個(gè)事物分解為若干個(gè)基于高斯概率密度函數(shù)形成的模型。高斯模型有單高斯模型(SGM)和多元高斯模型(MGM)[12]兩種。
圖3是本文對(duì)一個(gè)用戶(hù)11個(gè)月的微博情感的數(shù)目進(jìn)行高斯分布擬合,橫坐標(biāo)是用戶(hù)每個(gè)月發(fā)布微博的數(shù)目,縱坐標(biāo)是通過(guò)高斯函數(shù)計(jì)算出的聯(lián)合概念密度。從圖3可以看出,當(dāng)數(shù)據(jù)集數(shù)目N較小時(shí),擬合的圖形并不完全符合高斯分布,但事實(shí)是,隨著N的增大它會(huì)很快收斂于高斯分布。該結(jié)果的一個(gè)推論是: 當(dāng)N趨于∞時(shí),數(shù)據(jù)分布趨于高斯分布,所以對(duì)于一組數(shù)據(jù),當(dāng)數(shù)據(jù)量足夠多的時(shí)候,可以對(duì)其進(jìn)行高斯分布擬合,并進(jìn)行異常檢測(cè)。
圖3 正態(tài)分布擬合圖
表1中,X1—X5是本文用來(lái)描述用戶(hù)微博情緒的五個(gè)特征,對(duì)于傳統(tǒng)的單高斯模型而言,這些特征需要一個(gè)一個(gè)被計(jì)算分析。單高斯模型可以在一定程度上檢測(cè)一組數(shù)據(jù)的異常點(diǎn)。目前多數(shù)的研究也專(zhuān)注于單高斯模型或者二維高斯模型,幾乎沒(méi)有用三個(gè)甚至更多的變量來(lái)檢測(cè)異常。本文通過(guò)將新浪微博用戶(hù)的微博處理成五維的向量,也就是用五維的特征來(lái)表征一個(gè)用戶(hù)的情感。單高斯分布將會(huì)被用于可視化用戶(hù)微博的每一類(lèi)情緒,多高斯模型則被用來(lái)解決異常情緒檢測(cè)問(wèn)題。假設(shè)用戶(hù)的多維情感分布符合多元正態(tài)分布,多元高斯模型可以自動(dòng)獲取這些特征變量之間的聯(lián)系,實(shí)現(xiàn)對(duì)這五維情緒的聯(lián)合建模,避免了大量的計(jì)算工作。通過(guò)聯(lián)合概率密度和設(shè)定合適的閾值[13],量化了異常檢測(cè)。
表1 微博五維情緒特征
異常檢測(cè)是從數(shù)據(jù)集合中檢測(cè)異常樣本。而實(shí)際生活中異常檢測(cè)中的異常樣本很少,傳統(tǒng)的監(jiān)督學(xué)習(xí)算法很難從這些異常樣本中學(xué)習(xí),所以大多數(shù)的異常檢測(cè)方法都是基于非監(jiān)督學(xué)習(xí)。目前主要有三種非監(jiān)督的異常檢測(cè)的方法: 基于模型[14],基于臨近[15]和基于密度[16]。吳恩達(dá)教授曾以飛機(jī)發(fā)動(dòng)機(jī)的異常檢測(cè)[17]為例,闡述了基于密度的異常檢測(cè)的基本原理: 導(dǎo)致飛機(jī)發(fā)動(dòng)機(jī)異常有多種因素。假設(shè)X=發(fā)動(dòng)機(jī)產(chǎn)生的熱量,Y=發(fā)動(dòng)機(jī)的振動(dòng)強(qiáng)度,給出一組數(shù)據(jù)D=(D1,D2,...,Dn)。由于這里發(fā)動(dòng)機(jī)異常檢測(cè)是基于兩個(gè)變量來(lái)確定的,根據(jù)這兩個(gè)變量,確定一個(gè)個(gè)坐標(biāo)點(diǎn)(x,y),這些數(shù)據(jù)點(diǎn)可以繪制在圖上。如圖4所示,橢圓表示的數(shù)據(jù)點(diǎn)密度大,可以被標(biāo)記為正常;最右邊的三角形標(biāo)記的數(shù)據(jù)點(diǎn)明顯偏離正常數(shù)據(jù)組,其密度比橢圓點(diǎn)小得多,也可看作是一個(gè)離群點(diǎn)(outlier)[18]?;诿芏鹊姆椒▉?lái)檢測(cè)異常依據(jù)的是: 低密度并且與鄰近點(diǎn)相距較遠(yuǎn)的數(shù)據(jù)點(diǎn),將被標(biāo)記為異常點(diǎn)。本文基于此原理,計(jì)算出帶情感的微博數(shù)據(jù)的分布密度,判斷一組數(shù)據(jù)是否出現(xiàn)異常,進(jìn)而判斷該組數(shù)據(jù)對(duì)應(yīng)的用戶(hù)和月份是否異常。
圖4 異常檢測(cè)案例
異常檢測(cè)的方法有很多,目前主要是非參數(shù)[18]和非監(jiān)督[19]的方法,本文選擇多元高斯模型的原因是: 首先,可以避免大量的數(shù)據(jù)標(biāo)記和訓(xùn)練工作;其次,可以自動(dòng)捕捉變量之間的不同特征之間的相關(guān)性;第三,實(shí)驗(yàn)中,微博情緒是五維的變量,而多元高斯可以對(duì)多元情緒很好地建模;最后,通過(guò)計(jì)算樣本的聯(lián)合概率密度,量化了異常檢測(cè)。
其中m是樣本的個(gè)數(shù),n是變量的維數(shù),j從1到n。μ(n維)是每一維向量的均值,由樣本均值代替,∑是協(xié)方差,由樣本方差代替。假設(shè)給出一個(gè)測(cè)試樣本x(k)(n維的變量), 該樣本的聯(lián)合概率密度可以這樣計(jì)算,如式(3)所示。
(3)
圖5是本文的用戶(hù)微博異常情緒檢測(cè)模型:
Step1統(tǒng)計(jì)用戶(hù)/月份N類(lèi)微博
Step2根據(jù)微博數(shù)據(jù)的μ和∑建模
Step3計(jì)算聯(lián)合概率密度值p(x)
Step4閾值選擇,確定最優(yōu)的閾值ε
Step5判斷p(x)<ε與否
Step6p(x)<ε,標(biāo)記為異常,否則正常
圖5 微博異常情緒檢測(cè)模型
聯(lián)合概率密度值是反應(yīng)多個(gè)數(shù)據(jù)點(diǎn)中,當(dāng)前樣本數(shù)據(jù)點(diǎn)出現(xiàn)的概率,也是本文異常情緒檢測(cè)的重要判斷依據(jù)。聯(lián)合概率密度值越小,說(shuō)明數(shù)據(jù)出現(xiàn)頻率越低,出現(xiàn)異??赡苄栽酱蟆7粗畡t較正常。如果某個(gè)用戶(hù)/月份的聯(lián)合概率密度值p(x)<ε,則被標(biāo)記為異常用戶(hù)/月份,閾值ε的選擇將在2.3節(jié)闡述。
基于1.1節(jié)的微博數(shù)據(jù),本文將10 275條微博處理成1 700個(gè)五維的數(shù)據(jù)集,每組數(shù)據(jù)集的聯(lián)合概率密度值可以利用式(3)批量計(jì)算,減少了一部分時(shí)間。閾值的選擇直接影響異常檢測(cè)的準(zhǔn)確率,閾值的選取是根據(jù)微博數(shù)據(jù)聯(lián)合概率密度值的分布來(lái)確定,具體通過(guò)以下步驟實(shí)現(xiàn):
Step1按所有用戶(hù)和所有月份得到五維數(shù)據(jù)集,批量計(jì)算其聯(lián)合概率密度。
Step2將所有數(shù)據(jù)集分為兩部分: 交叉驗(yàn)證集[20]和測(cè)試集[21]。
Step3通過(guò)設(shè)置不同的閾值,在交叉驗(yàn)證集上進(jìn)行實(shí)驗(yàn),對(duì)獲得的準(zhǔn)確率進(jìn)行比較。
Step4選取交叉驗(yàn)證集最高準(zhǔn)確率對(duì)應(yīng)的閾值作為測(cè)試集上的閾值。
表2是基于單個(gè)用戶(hù)統(tǒng)計(jì)的聯(lián)合概率密度值,以用戶(hù)12為例,第2列到第6列是五種情緒的微博數(shù)目。從表2中可以看出,該用戶(hù)大部分月份的微博情感聯(lián)合概率密度值是從1E-03到1E-04。但在2013年5月,該用戶(hù)的微博數(shù)據(jù)聯(lián)合概率密度值為3.40E-06。偏離其他組,是一個(gè)離群點(diǎn),被標(biāo)記為異常。
表2 基于用戶(hù)的聯(lián)合概率密度
續(xù)表
圖6是表2對(duì)應(yīng)的用戶(hù)12的微博原文本,從圖中可以看出,用戶(hù)在2013年5月,確實(shí)出現(xiàn)“不舍得,累,失眠”等異常情緒字眼。
表3是基于月份統(tǒng)計(jì)的聯(lián)合概率密度結(jié)果,第2列到第6列是五種情緒的微博數(shù)目,可以看出2016年5月,user1, user 8, user 19, user 20這四個(gè)用戶(hù)的數(shù)據(jù)聯(lián)合概率密度值明顯小于其他組,這些密度值遠(yuǎn)小于其他組的用戶(hù)將被標(biāo)記為疑似異常。
圖6 驗(yàn)證異常情緒文本(用戶(hù)12)
用戶(hù)X1X2X3X4X5聯(lián)合概率密度user11400001.41E-05user2120016.50E-04user3000103.21E-03user4000103.21E-03user5021112.71E-03user6120103.01E-03user7010004.72E-03user8102112.59E-05user9111102.09E-03user10000103.21E-03user11710003.21E-03
用戶(hù)X1X2X3X4X5聯(lián)合概率密度user12000103.21E-03user13031019.26E-04user14010004.72E-03user15010004.72E-03user16200007.15E-03user17100006.61E-03user18100006.61E-03user19511025.45E-05user208102202.13E-06user21200007.15E-03
圖7是表3對(duì)應(yīng)的異常微博文本,可以看出2016年5月,用戶(hù)19,20出現(xiàn)“心酸,可憐,忘掉過(guò)去,甘愿放棄”等異常情緒狀態(tài)字眼。
為了提高異常檢測(cè)的準(zhǔn)確性,本文將1 700組數(shù)據(jù)集繼續(xù)劃分為500組交叉驗(yàn)證集和1 200組測(cè)試集。根據(jù)批量計(jì)算得到所有數(shù)據(jù)集的聯(lián)合概率密度,通過(guò)觀(guān)察和分析,選擇三個(gè)比較合適的閾值放在交叉驗(yàn)證集上實(shí)驗(yàn)。不同的閾值將得到不同的實(shí)驗(yàn)精度,而精度最高的對(duì)應(yīng)的閾值將被選擇出來(lái)用于測(cè)試集繼續(xù)實(shí)驗(yàn)。
圖7 驗(yàn)證異常情緒文本(2016年5月)
表4是基于用戶(hù)的閾值選擇,選取三個(gè)較合適的閾值在交叉驗(yàn)證集上進(jìn)行實(shí)驗(yàn): 1E-04, 4E-05,1E-05,當(dāng)閾值是4E-05時(shí),此時(shí)異常檢測(cè)準(zhǔn)確率最高,為88.89%;表5是基于月份的閾值選擇,選取了三個(gè)較合適的閾值在交叉驗(yàn)證集上進(jìn)行實(shí)驗(yàn): 1E-05, 1E-06, 1E-07,從表5可以看出當(dāng)閾值是1E-06時(shí),此時(shí)異常檢測(cè)準(zhǔn)確率最高,為88.89%。從表4和表5也可以看出,閾值設(shè)定的越小,準(zhǔn)確率不一定越高,閾值的選取是根據(jù)不同統(tǒng)計(jì)的結(jié)果來(lái)進(jìn)行初步觀(guān)察,交叉驗(yàn)證和篩選,最后選擇合適的結(jié)果。本文通過(guò)交叉驗(yàn)證,最后基于用戶(hù)和月份的異常檢測(cè)選取的閾值分別是4E-05和1E-06。
表4 基于用戶(hù)的閾值選擇
表5 基于月份的閾值選擇
表6是基于用戶(hù)的異常情緒檢測(cè)結(jié)果,基于不同的用戶(hù)統(tǒng)計(jì)得到的結(jié)果可以判斷出一個(gè)用戶(hù)在哪一段時(shí)間內(nèi)情緒出現(xiàn)異常。從表6可以看出,實(shí)驗(yàn)中109個(gè)數(shù)據(jù)集被標(biāo)記為異常,通過(guò)和原始的微博情緒(半自動(dòng)標(biāo)記結(jié)果)比較,其中91條數(shù)據(jù)集是真陽(yáng)性(檢測(cè)正確)異常,18條為假陽(yáng)性(檢測(cè)錯(cuò)誤),最終的準(zhǔn)確率是83.49%。表7是基于不同的月份的異常情緒檢測(cè)結(jié)果,基于不同的月份統(tǒng)計(jì)得到的結(jié)果可以判斷出一段時(shí)間內(nèi)哪些用戶(hù)出現(xiàn)異常情緒。從表7可以看出,74條數(shù)據(jù)集被標(biāo)記為異常,其中65條數(shù)據(jù)集是真陽(yáng)性,9條為假陽(yáng)性,最終的準(zhǔn)確率是87.84%。
為了更好地對(duì)提出的模型進(jìn)行評(píng)估,本文選取了前人相關(guān)的典型工作來(lái)進(jìn)行比較,目前針對(duì)社交媒體上的用戶(hù)情緒進(jìn)行檢測(cè)的研究較少,而針對(duì)一段時(shí)間內(nèi)異常的檢測(cè)的相關(guān)研究較多。如圖8所示,基于NMF(nonnegative matrix factorization)的方法準(zhǔn)確率較低,約為51%?;谖⒉┑氖录?shí)時(shí)監(jiān)測(cè)方法[8]達(dá)到了73.33%的準(zhǔn)確率,基于SSDM[22]的檢測(cè)方法準(zhǔn)確率是85.20%,相對(duì)于前者有較大提高。但本方法是針對(duì)Twitter文本的垃圾信息檢測(cè),與中文微博的異常檢測(cè)有一定不同。本文通過(guò)引入聯(lián)合概率密度參數(shù)對(duì)異常檢測(cè)進(jìn)行量化,得到異常情緒檢測(cè)的準(zhǔn)確率為87.84%,取得了一定進(jìn)步。由于網(wǎng)絡(luò)事件異常多樣,特征不明顯,且具有意外性和偶發(fā)性,目前,異常檢測(cè)的結(jié)果均不是太高,需要進(jìn)一步研究。
圖8 準(zhǔn)確率比較
單個(gè)用戶(hù)的微博異常情緒檢測(cè)可以通過(guò)對(duì)該用戶(hù)的微博數(shù)據(jù)進(jìn)行分析,群體用戶(hù)的異常情緒檢測(cè)則可以通過(guò)對(duì)一段時(shí)間內(nèi)所有用戶(hù)的微博數(shù)據(jù)進(jìn)行建模分析。假設(shè)用戶(hù)每個(gè)月的五類(lèi)情緒數(shù)據(jù)可以看成一個(gè)五維矩陣。假設(shè)每一維相互獨(dú)立且服從高斯分布,可以使用K-S(Kolmogorov-Smirnov)檢驗(yàn)[23]對(duì)每一維的數(shù)據(jù)是否服從高斯分布進(jìn)行檢測(cè)。原假設(shè): 檢驗(yàn)分布為正態(tài)分布。
K-S檢驗(yàn)表格中的VAR1-VAR5分別代表“中性、開(kāi)心、驚訝、傷心、生氣”這五個(gè)情緒變量,N代表參與檢測(cè)的樣本數(shù)目。評(píng)價(jià)指標(biāo)是即漸近顯著性(雙側(cè))值(P-value),一般P-value設(shè)定為0.05,當(dāng)P-value >0.05時(shí),不能拒原假設(shè),即可以認(rèn)為數(shù)據(jù)服從正態(tài)分布;反之拒絕原假設(shè),即認(rèn)為數(shù)據(jù)不服從正態(tài)分布。
表8 單個(gè)用戶(hù)微博情緒數(shù)據(jù)的K-S檢驗(yàn)
注: a. 檢驗(yàn)分布為正態(tài)分布。b. 根據(jù)數(shù)據(jù)計(jì)算得到。
由表8可以看出 “中性、開(kāi)心、傷心”情緒的P>0.05,則不能拒絕原假設(shè),這也符合前面的假設(shè)。用戶(hù)大部分正常的情緒是近似符合正態(tài)分布,而生氣等情緒不符合正態(tài)分布。在對(duì)單個(gè)用戶(hù)高斯建模的基礎(chǔ)上,本文研究了群體用戶(hù)的微博情緒模型,對(duì)群體的情緒分布是否滿(mǎn)足高斯分布進(jìn)行了檢測(cè): 表9是100位用戶(hù)其中一個(gè)月的微博情緒K-S檢測(cè)結(jié)果,發(fā)現(xiàn)P=0<0.05,即拒絕原假設(shè)。接著對(duì)100位微博用戶(hù)的60個(gè)月的微博數(shù)據(jù)進(jìn)行檢測(cè),發(fā)現(xiàn)P均小于0.05,進(jìn)一步說(shuō)明群體情緒并不服從正態(tài)分布。
通過(guò)實(shí)驗(yàn),本文得出如下推論:
a. 微博的“中性、開(kāi)心、傷心”情緒可近似為正態(tài)分布,其中“開(kāi)心”類(lèi)最具代表性。
b. “驚訝”和“生氣”這兩類(lèi)情緒數(shù)據(jù)稀疏,且具有爆發(fā)性,也就是用戶(hù)異常情緒,不服從正態(tài)分布。
c. 群體的情緒不滿(mǎn)足正態(tài)分布,它更趨向于另一種指數(shù)分布: “冪律分布”[24]。
推論a,b在上述實(shí)驗(yàn)中已得到驗(yàn)證,為了驗(yàn)證推論c,即群體的微博情緒滿(mǎn)足冪律分布,本文給出了如圖9所示的檢驗(yàn)過(guò)程。冪律分布的檢驗(yàn)主要是使用matlab進(jìn)行數(shù)據(jù)擬合,原始數(shù)據(jù)row data接近長(zhǎng)尾分布(long-tailed)形狀,經(jīng)過(guò)取對(duì)數(shù)得到的log data近似一條直線(xiàn),最后用“殘差和”對(duì)原始數(shù)據(jù)進(jìn)行計(jì)算并評(píng)估分布的合理性?!皻埐詈汀痹叫?,可以認(rèn)為該組數(shù)據(jù)越服從冪律分布。圖9的數(shù)據(jù)得出殘差和為0.03,可以認(rèn)為該組數(shù)據(jù)近似服從冪律分布,為了實(shí)驗(yàn)的準(zhǔn)確性,本文對(duì)群體用戶(hù)所有月份的情緒分布進(jìn)行冪律分布檢驗(yàn),均證實(shí)了推論的正確性,即群體用戶(hù)的微博情緒滿(mǎn)足“冪律分布”。
表9 群體用戶(hù)微博情緒數(shù)據(jù)的K-S檢驗(yàn)
注: a. 檢驗(yàn)分布為正態(tài)分布。b. 根據(jù)數(shù)據(jù)計(jì)算得到。
圖9 冪律分布檢驗(yàn)
本文結(jié)合多元高斯模型與聯(lián)合概率密度,對(duì)用戶(hù)微博異常情緒進(jìn)行檢測(cè),從用戶(hù)和時(shí)間兩個(gè)角度統(tǒng)計(jì)并分析,將聯(lián)合概率密度值作為用戶(hù)異常情緒的判斷指標(biāo),量化了異常檢測(cè)。結(jié)合多元高斯分布和冪律分布對(duì)單個(gè)用戶(hù)和群體用戶(hù)的情緒進(jìn)行建模。實(shí)驗(yàn)結(jié)果表明,按照用戶(hù)和月份進(jìn)行的異常檢測(cè)準(zhǔn)確率分別為83.49% 和 87.84%。實(shí)驗(yàn)還通過(guò)正態(tài)分布檢驗(yàn),發(fā)現(xiàn)單個(gè)用戶(hù)的“中性、開(kāi)心、傷心”情緒滿(mǎn)足正態(tài)分布,而“驚訝、生氣”情緒由于具有爆發(fā)性,不服從正態(tài)分布。通過(guò)對(duì)單個(gè)用戶(hù)和群體用戶(hù)的微博數(shù)據(jù)進(jìn)行分析,發(fā)現(xiàn)群體的情緒總體服從冪律分布,而單個(gè)用戶(hù)的情緒則不服從,與市場(chǎng)規(guī)律吻合。本文的不足之處在于當(dāng)前的實(shí)驗(yàn)數(shù)據(jù)比較稀疏,當(dāng)數(shù)據(jù)足夠多時(shí),可以對(duì)用戶(hù)一個(gè)月、一周甚至一天的情緒進(jìn)行建模,并檢測(cè)異常情緒。本文提出了一個(gè)比較完整的基于社交媒體的用戶(hù)情緒建模和異常情緒檢測(cè)模型,該模型對(duì)于預(yù)防大眾心理問(wèn)題以及檢測(cè)公共安全有一定意義,進(jìn)一步還可以幫助企業(yè)根據(jù)用戶(hù)對(duì)產(chǎn)品的評(píng)價(jià)和情感傾向,來(lái)做出正確的決策。
[1] 微博數(shù)據(jù)中心: 新浪微博.2016微博用戶(hù)發(fā)展報(bào)告[R/OL].[ 2017-2-8]. http: //www.useit.com.cn/thread-14392-1-1.html
[2] 孫曉,何家勁,任福繼.基于多特征融合的混合神經(jīng)網(wǎng)絡(luò)模型諷刺語(yǔ)用判別[J].中文信息學(xué)報(bào), 2016, 30(6): 215-223.
[3] Yang F, Liu Y, Yu X, et al. Automatic detection of rumor on Sina Weibo[C]//Proceedings of the ACM, 2012: 1-7.
[4] 何躍,鄧唯茹,張丹. 中文微博的情況識(shí)別與分類(lèi)研究[J]. 情報(bào)雜志,2014,2: 136-139.
[5] Lin H, Jia J, Qiu J, et al.H. Detecting Stress Based on Social Interactions in Social Networks[J]. IEEE Transactions on Knowledge and Data Engineering, 2017,(99): 1.
[6] Zhang J,Zhu B,Liang L,et al. Recognition and classification of emotions in the Chinese microblog based on emotional factor[J]. Beijing Daxue XuebaoZiran Kexue Ban/acta Scientiarum Naturalium Universitatis Pekinensis, 2014,50(1): 79-84.
[7] Wang Z, Joo V, Tong C, et al. Anomaly Detection through Enhanced Sentiment Analysis on Social Media Data[C]//Proceedings of the IEEE International Conference on Cloud Computing Technology and Science. IEEE, 2014: 917-922.
[8] 李凌云. 基于微博的事件實(shí)時(shí)監(jiān)測(cè)框架與系統(tǒng)[D]. 北京郵電大學(xué)碩士學(xué)位論文, 2014.
[9] Yin G, Zhang Y, Dong Y, et al. A boost factor based detection method for abnormal rank of microblogging[J]. Journal of Harbin Engineering University, 2013, 34(4): 488-493.
[10] 孫曉, 葉嘉麒, 唐陳意,等. 基于多策略的新浪微博大數(shù)據(jù)抓取及應(yīng)用[J]. 合肥工業(yè)大學(xué)學(xué)報(bào)自然科學(xué)版, 2014(10): 1210-1215.
[11] Chang C C, Lin C J. LIBSVM: A library for support vector machines[J]. Acm Transactions on Intelligent Systems & Technology, 2007, 2: 27.
[12] Yuan S F, Wang S T. Multi-classification method applied to face recognition based on mixed Gaussian distribution[J]. Application Research of Computers, 2013, 30(9): 2868-2871.
[13] Diehl P U, Neil D, Binas J, et al. Fast-classifying, high-accuracy spiking deep networks through weight and threshold balancing[C]//Proceedings of the International Joint Conference on Neural Networks. 2015: 1-8.
[14] Liang J, Du R. Model-based Fault Detection and Diagnosis of HVAC systems using Support Vector Machine method[J]. International Journal of Refrigeration, 2007, 30(6): 1104-1114.
[15] Idé T, Lozano A C, Abe N, et al. Proximity-Based Anomaly Detection using Sparse Structure Learning[J]. SDM, 2009: 97-108.
[16] Ma S H, Wang J K, Liu Z G, et al. Density-Based Distributed Elliptical Anomaly Detection in Wireless Sensor Networks[J]. Applied Mechanics & Materials, 2012, 249-250: 226-230.
[17] Andrew Ng: Machine Learning. Week9,Anomaly Dection[EB/OL].[2017-4-21]. https: //www.coursera.org/learn/machine-learning
[18] Dang X, Serfling R. Nonparametric depth-based multivariate outlier identifiers, and masking robustness properties[J]. Journal of Statistical Planning & Inference, 2010, 140(1): 198-213.
[19] Huang G, Song S, Gupta J N, et al. Semi-supervised and unsupervised extreme learning machines[J]. Cybernetics. 2014, 44(12): 2405.
[20] Chen K, Lei J. Network Cross-Validation for Determining the Number of Communities in Network Data[J]. Journal of the American Statistical Association,2014, 178(5): 410.
[21] Yu H, Yang J, Han J, et al. Making SVMs Scalable to Large Data Sets using Hierarchical Cluster Indexing[J]. Data Mining and Knowledge Discovery, 2005, 11(3): 295-321.
[22] Hu X, Tang J, Zhang Y, et al. Social spammer detection in microblogging[C]//Proceedings of the International Joint Conference on Artificial Intelligence. 2013: 2633-2639.
[23] Eghbali H J. K-S Test for Detecting Changes from Landsat Imagery Data[J]. IEEE Transactions on Systems Man & Cybernetics, 1979, 9(1): 17-23.
[24] AaronClauset A, Shalizi C R, Newman M E J. Power-Law Distributions in Empirical Data[J]. Siam Review, 2007, 51(4): 661-703.
E-mail: ren2fuji@gmail.com