徐建國,韓青君,李 青
(1.山東科技大學 計算機科學與工程學院,山東 青島 266590;2.山東政法學院 公共管理學院,山東 濟南 250014)
2018年8月20日,中國互聯(lián)網絡信息中心(CNNIC)在北京發(fā)布第42次《中國互聯(lián)網絡發(fā)展狀況統(tǒng)計報告》,截至2018年6月,中國網民規(guī)模已高達8.02億,普及率達到57.7%,2018年上半年新增網民數量較上一年末增長3.8%[1]。互聯(lián)網成為社會大眾獲取信息、發(fā)布信息、交流觀點最主要的平臺[2]。網絡輿情成為社會輿情的最主要組成部分,而網絡因其特有的開放性、自由性、傳播速度快等特點,很容易使網民在發(fā)表自己觀點的同時受到外界誘導,也非常易于虛假信息的傳播。因此,網絡輿情熱點的準確獲取與分析對政府掌握輿情動態(tài)以及維護社會穩(wěn)定具有重要的現(xiàn)實意義。
通過檢索相關文獻發(fā)現(xiàn),國外很早就已經出現(xiàn)輿情熱點相關研究。1996年,首次出現(xiàn)話題檢測與跟蹤技術(Topic Detection and Tracking,TDT)[3],主要研究報道切分、關聯(lián)發(fā)現(xiàn)、話題跟蹤、新事件發(fā)現(xiàn)、話題發(fā)現(xiàn)5個方面;而后,馬賽諸塞大學探索形成了語料庫,為TDT研究打下堅實基礎;Manquan Yu等[4]采用層次聚類算法將新聞語料進行分類,避免了相似話題聚攏的問題,也可將時間跨度較大的幾個話題組間聚類為一個話題;Zheng等[5]利用Aging Theory對BBS中熱點話題進行識別,可快速挖掘任意時間段內的熱點話題。國內關于輿情熱點的研究起步較晚,但隨著互聯(lián)網技術發(fā)展,越來越多學者關注輿情熱點問題。其中,王偉、許鑫[6]構建了基于聚類的網絡輿情熱點發(fā)現(xiàn)及分析系統(tǒng),通過二次聚類提高輿情相關度質量及輿情分析準確度;張壽華、劉振鵬[7]針對網絡輿情發(fā)生和傳播的特點,提出自動挖掘熱點關鍵詞并根據關鍵詞進行話題聚類的方法;王亞民、胡悅[8]提出一種基于BTM模型的微博輿情熱點發(fā)現(xiàn)方法,有效解決了傳統(tǒng)模型在文本建模中的高維度、稀疏性問題,改善了熱點話題的發(fā)現(xiàn)質量;鄧先均、楊雅茜等[9]使用幾種聚類算法對網絡輿情熱點話題監(jiān)測進行對比試驗,進而分析出更適用于熱點話題監(jiān)測的算法。因此,本文結合網路輿情特點,在理解K-means算法的基礎上,將改進后的K-means算法運用于輿情熱點獲取與分析中,提高網絡輿情分析準確度,為政府輿情管理工作提升技術保障。
K-means聚類的基本原理是,首先隨機選取需要的k個聚類中心,計算每個樣本到聚類中心的距離,根據樣本點與k個聚類中心的距離可將所有樣本聚類成k個類,然后不斷地修正聚類中心,再計算每個樣本到新的聚類中心的距離,將所有樣本聚成k個類,由此循環(huán)往復直到每個類的大小幾乎不再發(fā)生變化,在閾值范圍內停止,聚類完成[10]。5種常見的聚類算法分別是:劃分式聚類算法、層次式聚類算法、基于網格的聚類算法、基于密度的聚類算法和基于模型的聚類算法[11]。
K-means聚類算法中,指定聚類C=V2{V1}中心的特點使得到的聚類結果受人為干預影響大,還會導致不準確的話題聚類結果。為解決該問題,進一步改進K-Means聚類算法,步驟如下[12]:
第一步,按照特征項個數由多到少對論壇主題特征向量排序,并存儲在D′={V1,V2,V3,…Vn}中,將V1作為第一個聚類中心,使聚類中心集合C={V1},確定聚類個數k。
第二步,設定n=0,從V2開始,依次比較D′中元素與聚類中心集合C中的元素是否含有相同特征項。若有,從D′中刪除該元素,反之,把該元素放入聚類中心集合C中,且n=n+1,直到n=k時停止,聚類中心集合為C={V1,V2,V3,…Vk}。
第四步,循環(huán)往復前2步,直到每個類的大小幾乎不再發(fā)生變化,在閾值范圍內停止,聚類完成。
第五步,輸出聚類結果。
對于給定的論壇主題特征向量集D={T1,T2,T3,…Tn},可以得到k個聚類中心,這樣就把每個特征向量對應的主題分到k個聚類中心。話題聚類后,根據話題存在的實際意義,對話題進行過濾,以提高準確性。
K-means聚類分析目前在電子商務、圖情分析、生物科學、企業(yè)經濟等領域都得到了有效應用,如人體體型分類、圖書館主題挖掘、高校學生消費數據、卷煙零售門店庫存分析等[14-17]。同時,該算法也適用于網絡輿情中的輿情熱點獲取與分析,因為網絡輿情分散在互聯(lián)網各個網頁中,針對某一個網絡輿情事件的每一句留言或評論都是輿情熱點分析的范疇。所以,使用K-means聚類算法有助于將網民的相同觀點與不同觀點劃分到不同類,它是輿情數據處理的關鍵一步,算法精確與否關系到數據處理的精確度。
網絡輿情熱點提取主要是將獲取的輿情數據經熱點提取算法劃分到不同話題簇中,并在需要時對話題簇進行更新,以便政府管理人員快速發(fā)現(xiàn)有用信息,有助于監(jiān)督和了解互聯(lián)網上的輿論情況。本文分析使用K-means聚類算法實現(xiàn)以上要求,該算法的簡易流程如圖1所示。
圖1 K-means聚類算法應用流程
算法實現(xiàn)過程主要代碼如下:
print' Start Kmeans'
from sklearn.cluster import Kmeans
For k in range(3,5,1):
Clf=Kmeans(n_clusters=k)
S=clf,fit(weight)
Centroids=clf.cluster_centers_
#進行降維處理
From sklearn.decomposition import PCA
Pca=PCA(n_components=2)
#輸出兩維
newData=pca.fit_transform(weight)
載入N維
Mark=['or','ob','og','oy','^r','+r','sr','dr',' For i in range(0,455,1): Sign='' markIndex=clf.labels_[i] Plt.plot(newData[i][0],newData[i][1],mark[markIndex] For j in range(numword): If weight[i][j]>0.4: Sign=sign+word[j] Plt.text(newData[i][0],newData[i][1],sign,fontsize=6) Plt.show() 互聯(lián)網不斷發(fā)展使得網絡輿情的形成、傳播和發(fā)展復雜多變[18]。本文通過對比分析,對近年來網絡輿情熱點的獲取方法進行了研究,在理解K-means聚類算法的基礎上進一步改進該算法,對新聞中的關鍵詞進行聚類分析以獲得輿情熱點,最后給出該算法的實現(xiàn)過程,以提高聚類性能的精度和穩(wěn)定性[19]。研究表明,該方法能為引導網絡輿情的發(fā)展方向提供依據,也可及時防范誤導性言論對社會公眾的消極影響。然而,如何更加全面、準確、深入地獲取輿情熱點,深入挖掘輿情信息,仍需要更深入的研究。3 結語