□李麗蓉
(山西警察學(xué)院,山西 太原 030401)
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展和網(wǎng)民數(shù)量的日益增長(zhǎng),網(wǎng)絡(luò)媒體逐漸成為一種主流信息傳播形式,占據(jù)主導(dǎo)地位。網(wǎng)絡(luò)媒體具有全球性、開(kāi)放性、便捷性、互動(dòng)性、隱蔽性等特點(diǎn),在給信息傳播帶來(lái)便捷的同時(shí),也使得網(wǎng)絡(luò)輿情傳播走向放大化和無(wú)序化,容易引發(fā)輿情熱點(diǎn)和敏感話(huà)題,有時(shí)會(huì)造成巨大負(fù)面影響。因此,及時(shí)準(zhǔn)確地發(fā)現(xiàn)并監(jiān)控?zé)狳c(diǎn)和敏感話(huà)題,有針性地做出反應(yīng),對(duì)構(gòu)建和諧網(wǎng)絡(luò)輿論環(huán)境,維護(hù)社會(huì)穩(wěn)定具有積極的作用。
網(wǎng)絡(luò)輿情檢測(cè)系統(tǒng)主要包括輿情采集、輿情預(yù)處理、輿情分析和輿情處理四部分。
輿情采集主要是對(duì)web頁(yè)面信息采集,通過(guò)網(wǎng)絡(luò)爬蟲(chóng)工具定時(shí)、自動(dòng)從被監(jiān)測(cè)網(wǎng)站上采集信息?!爱?dāng)前主要的爬蟲(chóng)技術(shù)有通用型爬蟲(chóng)、主題爬蟲(chóng)和分布式爬蟲(chóng)”,[1]只有高質(zhì)量的信息采集才能保證后續(xù)輿情分析的可靠性和及時(shí)性。
輿情預(yù)處理指初步整理采集的web頁(yè)面信息,包括文本分詞、去除停用詞、數(shù)據(jù)清洗等過(guò)程,經(jīng)過(guò)結(jié)構(gòu)化處理將原始的半結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn)換成規(guī)范的結(jié)構(gòu)化數(shù)據(jù)集,存儲(chǔ)到輿情數(shù)據(jù)庫(kù)中,便于后續(xù)的輿情分析使用。
輿情分析是系統(tǒng)的核心部分,指對(duì)經(jīng)過(guò)預(yù)處理后的輿情信息進(jìn)行熱點(diǎn)挖掘,產(chǎn)生出熱點(diǎn)話(huà)題,并對(duì)話(huà)題進(jìn)行敏感性分析,包括特征提取、話(huà)題聚類(lèi)、熱點(diǎn)分析等過(guò)程。
輿情處理包括輿情預(yù)警和輿情報(bào)告,系統(tǒng)根據(jù)分析統(tǒng)計(jì)得到的輿情信息及相關(guān)網(wǎng)絡(luò)輿情預(yù)警指標(biāo),實(shí)施輿情報(bào)警,提交輿情報(bào)告。
對(duì)經(jīng)過(guò)預(yù)處理后的文本數(shù)據(jù),采用TF-IDF算法進(jìn)行特征提取。把每篇文檔按照標(biāo)題向量化后表示為d=(t1,t2,…,ti,…,tm),其中ti為文檔d標(biāo)題經(jīng)過(guò)預(yù)處理后的詞。某詞在文檔中的重要性越大,它的TF-IDF值就越大。計(jì)算文檔中每個(gè)詞的TF-IDF值,然后按照TF-IDF值降序排列,選擇排在前面的幾個(gè)詞,一般它們就是這篇文檔的特征詞。具體算法描述如下:
步驟1:計(jì)算詞頻
(1)
步驟2:計(jì)算逆文檔頻率
(2)
步驟3:計(jì)算TF-IDF
TF-IDF= 詞頻(TF)×逆文檔頻率(IDF)
(3)
話(huà)題聚類(lèi)可以有效地提取各類(lèi)信息,從而發(fā)現(xiàn)熱點(diǎn)話(huà)題。根據(jù)網(wǎng)站的影響力和熱點(diǎn)時(shí)效性,對(duì)各個(gè)網(wǎng)站設(shè)置相應(yīng)權(quán)重,按照權(quán)重和發(fā)布時(shí)間對(duì)采集到的網(wǎng)頁(yè)數(shù)據(jù)降序排序。默認(rèn)一個(gè)熱點(diǎn)關(guān)鍵詞表征一個(gè)熱點(diǎn)話(huà)題,然后以關(guān)鍵詞為線(xiàn)索對(duì)熱點(diǎn)話(huà)題進(jìn)行聚類(lèi),采用夾角余弦公式計(jì)算本頁(yè)面文本與已有熱點(diǎn)話(huà)題的相似度。
1.K-Means算法
K-Means算法是一種常用的基于劃分的聚類(lèi)算法,它的基本思想是:首先對(duì)于給定的樣本集D,根據(jù)一定策略選擇K個(gè)點(diǎn)作為每個(gè)簇的初始中心,將其余樣本劃分到距離最近的簇中。然后在生成的新簇中,重新計(jì)算K個(gè)簇的中心,再重新進(jìn)行劃分,使簇內(nèi)的點(diǎn)盡量緊密地放在一起,使簇間的距離盡量大。具體步驟如下:
步驟1:在樣本集D中隨機(jī)選擇K個(gè)簇初始中心點(diǎn)。
步驟2:分別計(jì)算每個(gè)樣本到K個(gè)簇中心點(diǎn)的距離,把每個(gè)樣本劃分到距離最近的簇中。
步驟3:重新計(jì)算各個(gè)簇中的樣本到該簇中心點(diǎn)距離的平均值,作為簇的新中心點(diǎn)。
重復(fù)步驟2和3,直到簇中心點(diǎn)不發(fā)生改變或是達(dá)到最大的迭代次數(shù)。
K-Means算法具有簡(jiǎn)單有效,收斂速度快,簇內(nèi)相似度高等優(yōu)點(diǎn),但也有一定的局限性:需要提前設(shè)定劃分簇?cái)?shù)K。最常用方法是隨機(jī)選擇K,K的取值不同在一定程度上會(huì)導(dǎo)致聚類(lèi)結(jié)果波動(dòng)性大,容易受到噪聲數(shù)據(jù)和離群數(shù)據(jù)點(diǎn)的干擾。
2.差分進(jìn)化算法
“差分進(jìn)化(Differential Evolution,DE)算法是用于求解優(yōu)化問(wèn)題的一種啟發(fā)式搜索算法”[2],用于求解多維空間中全局最優(yōu)解。它的基本思想是:首先利用種群個(gè)體的差異進(jìn)行重組,得到中間種群。然后根據(jù)適應(yīng)度值選擇表現(xiàn)較好的個(gè)體作為下一代種群個(gè)體,經(jīng)過(guò)反復(fù)迭代向問(wèn)題的最優(yōu)解逼近。具體算法描述如下:
種群表示為:
(4)
(5)
步驟1:種群初始
(6)
xj,max和xj,min是j維向量的上下限,rnd是0到1之間的隨機(jī)數(shù)。
步驟2:變異
(7)
步驟3:交叉
(8)
式中Pcr是雜交概率,Pcr∈[0,1]。
步驟4:選擇
3.改進(jìn)的K-Means算法
為了克服K-Means算法的缺陷,采用改進(jìn)的差分進(jìn)化算法對(duì)K-Means算法進(jìn)行優(yōu)化。它的基本思想是:首先,從數(shù)據(jù)集中隨機(jī)選擇K個(gè)聚類(lèi)中心,構(gòu)建初始種群。然后,采用差分進(jìn)化算法的變異、交叉和選擇等操作獲得最優(yōu)個(gè)體。最后,利用最優(yōu)個(gè)體獲得最優(yōu)初始聚類(lèi)中心并進(jìn)行文本聚類(lèi)。具體算法描述如下:
步驟1:種群初始化
在數(shù)據(jù)集D中隨機(jī)選擇N個(gè)個(gè)體作為初始種群,每個(gè)個(gè)體由K個(gè)聚類(lèi)中心向量組成。
(9)
(10)
步驟3:變異操作
(11)
步驟4:交叉操作
(12)
式中Pcr是雜交概率,Pcr∈[0,1]。
步驟5:選擇操作
步驟7:從輸出的最優(yōu)個(gè)體得到最優(yōu)聚類(lèi)簇中心集K,將種群中所有個(gè)體劃分到距離最近的簇中。
根據(jù)新聞、論壇、博客等各自的特點(diǎn)設(shè)計(jì)相應(yīng)的熱點(diǎn)分析模型。
1.新聞熱點(diǎn)分析
不同網(wǎng)站中新聞的可靠性不同,新聞的瀏覽人數(shù)和評(píng)論條數(shù)也能反映其熱度,設(shè)計(jì)如式(13)熱點(diǎn)分析模型。
Weight(f(pni,cni))
(13)
式中HotValues(t)表示話(huà)題t的熱度值,n表示話(huà)題t的新聞個(gè)數(shù),Weight(Si)表示新聞i所在網(wǎng)站的權(quán)重,Weight(f(pni,cni))表示新聞i的瀏覽次數(shù)與評(píng)論條數(shù)的權(quán)重,pni表示新聞i的瀏覽次數(shù),cni表示新聞i的評(píng)論條數(shù),f(pni,cni)=αpni+βcni,其中α∈(0,1),β∈(0,1),α+β=1。
2.論壇與博客熱點(diǎn)分析
論壇與博客除了采用新聞所在網(wǎng)站中的網(wǎng)站權(quán)重、瀏覽次數(shù)與評(píng)論條數(shù)的權(quán)重外,還增加了帖子i的轉(zhuǎn)載次數(shù)權(quán)重Weight(dni),如式(14)。
Weight(f(pni,cni))×Weight(dni)
(14)
系統(tǒng)采用常用的“誤檢率、漏檢率和耗費(fèi)函數(shù)作為網(wǎng)絡(luò)輿情話(huà)題檢測(cè)算法優(yōu)劣的評(píng)判標(biāo)準(zhǔn)”。[3]誤檢率指語(yǔ)料庫(kù)中檢測(cè)錯(cuò)誤的該話(huà)題不相關(guān)文本數(shù)目與該話(huà)題不相關(guān)文本總數(shù)的比值,漏檢率指語(yǔ)料庫(kù)中未檢測(cè)出的該話(huà)題相關(guān)文本數(shù)目與所有該話(huà)題相關(guān)文本總數(shù)的比值。耗費(fèi)函數(shù)C是錯(cuò)誤識(shí)別代價(jià),是建立在誤檢率和漏檢率之上的總體性能損失。假設(shè)語(yǔ)料庫(kù)中所有與該話(huà)題相關(guān)文本總數(shù)為A,不相關(guān)文本總數(shù)為B,其中從A中檢測(cè)出的文本相關(guān)數(shù)為A1,從B中檢測(cè)出的文本相關(guān)數(shù)為B1,漏檢率、誤檢率和耗費(fèi)函數(shù)表示為:
PM=(A-A1)/A
(15)
PF=B1/B
(16)
C=CMPMP+CFPF(1-P)
(17)
式中PM和PF是漏檢率和誤檢率,C是耗費(fèi)函數(shù),CM和CF是漏檢率和誤檢率的代價(jià)系數(shù),P是文本屬于某話(huà)題類(lèi)的先驗(yàn)概率。設(shè)定CM=1,CF=0.1,P=0.02。
網(wǎng)絡(luò)輿情分析系統(tǒng)基于Hadoop開(kāi)發(fā),系統(tǒng)選擇新聞、論壇及微博作為信息源,利用網(wǎng)絡(luò)爬蟲(chóng)技術(shù)對(duì)2019 年內(nèi)的新聞報(bào)道和帖子爬取數(shù)據(jù),再?gòu)倪@些信息中隨機(jī)選取了翟天臨事件、大學(xué)生網(wǎng)貸、乘客進(jìn)駕駛艙、上海垃圾分類(lèi)和涼山森林火災(zāi)等5個(gè)話(huà)題,為每個(gè)話(huà)題選擇100 篇相關(guān)的文本信息作為語(yǔ)料庫(kù),共 500 篇,使用Eclipse設(shè)計(jì)輿情分析算法,后臺(tái)數(shù)據(jù)庫(kù)采用 MySQL,進(jìn)行輿情分析實(shí)驗(yàn)?;贙-Means算法與改進(jìn)的K-Means算法的話(huà)題檢測(cè)統(tǒng)計(jì)結(jié)果如表1與表2所示。從實(shí)驗(yàn)結(jié)果來(lái)看,提出的網(wǎng)絡(luò)輿情分析算法快速有效,話(huà)題檢測(cè)準(zhǔn)確率較高。
表1 K-Means算法聚類(lèi)結(jié)果
表2 改進(jìn)的K-Means算法聚類(lèi)結(jié)果
本文研究的是文本聚類(lèi)算法在網(wǎng)絡(luò)輿情話(huà)題檢測(cè)中的實(shí)際應(yīng)用,將具有結(jié)構(gòu)簡(jiǎn)單、易于實(shí)現(xiàn)、控制參數(shù)較少、收斂速度較快等優(yōu)點(diǎn)的差分進(jìn)化算法與K-Means聚類(lèi)算法相結(jié)合,實(shí)驗(yàn)結(jié)果表明,與K-Means聚類(lèi)算法相比,改進(jìn)算法明顯提高了初始聚類(lèi)中心的選擇優(yōu)化能力,全局搜索能力更強(qiáng),收斂速度更快,聚類(lèi)結(jié)果質(zhì)量更高。
山西警察學(xué)院學(xué)報(bào)2021年1期