劉 昕,王海文,孫志堅(jiān),楊大偉,龐銘江
1.中國(guó)石油大學(xué)(華東)計(jì)算機(jī)與科學(xué)技術(shù)學(xué)院,山東 青島 266580
2.青島市保密技術(shù)服務(wù)中心,山東 青島 266071
重大輿情事件影響著現(xiàn)實(shí)世界中熱點(diǎn)事件的發(fā)展進(jìn)程,對(duì)國(guó)家安全和社會(huì)穩(wěn)定造成嚴(yán)重沖擊,如何實(shí)現(xiàn)重大輿情事件的可信溯源,對(duì)于政府部門及時(shí)處置重大輿情事件,構(gòu)建誠(chéng)信友善的社交網(wǎng)絡(luò),維護(hù)國(guó)家長(zhǎng)治久安具有重要現(xiàn)實(shí)意義。將區(qū)塊鏈技術(shù)應(yīng)用于社交網(wǎng)絡(luò)可信數(shù)據(jù)存儲(chǔ),利用其防篡改、可溯源、匿名性、自治性等優(yōu)勢(shì),可為重大輿情事件溯源提供可信數(shù)據(jù)基礎(chǔ),實(shí)現(xiàn)輿情信息發(fā)布源頭追蹤、用戶隱私保護(hù)、輿論環(huán)境自主維護(hù),同時(shí)為構(gòu)建個(gè)性自由且和諧有序的元宇宙可信社交網(wǎng)絡(luò)提供分布式數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)隱私保護(hù)、數(shù)據(jù)可信共享等方面的技術(shù)支撐。
在包含海量用戶的社交網(wǎng)絡(luò)中,數(shù)據(jù)來(lái)源廣泛、易于篡改,且輿情信息擴(kuò)散速度快、影響面廣泛,導(dǎo)致重大輿情事件難以溯源。然而,區(qū)塊鏈技術(shù)在網(wǎng)絡(luò)輿情溯源方面的研究較為匱乏,同時(shí)在元宇宙中多應(yīng)用于虛擬經(jīng)濟(jì)系統(tǒng)、數(shù)據(jù)共享等領(lǐng)域[1]。
針對(duì)上述問題,設(shè)計(jì)了一種基于雙層區(qū)塊鏈的重大輿情事件溯源方法,主要貢獻(xiàn)如下:
(1)利用Sentence-BERT 模型的平均池化層生成各用戶言論句向量并進(jìn)行K-Means 聚類,計(jì)算各用戶K個(gè)聚類中心間的歐式距離,設(shè)置距離閾值并計(jì)算滿足閾值的聚類中心個(gè)數(shù)作為用戶興趣相似度,以用戶為節(jié)點(diǎn)、以興趣相似度為權(quán)值構(gòu)造無(wú)向帶權(quán)圖,基于Leiden算法進(jìn)行興趣社區(qū)發(fā)現(xiàn),用于輿情數(shù)據(jù)的社區(qū)化管理。
(2)以各興趣社區(qū)內(nèi)的用戶為節(jié)點(diǎn)構(gòu)建輿情信息鏈,提取用戶言論關(guān)鍵詞并計(jì)算其哈希值作為數(shù)據(jù)索引,記錄用戶所屬興趣社區(qū)、用戶言論數(shù)據(jù)哈希、言論關(guān)鍵詞哈希列表、言論來(lái)源區(qū)塊號(hào)、用戶影響力、聲譽(yù)積分等數(shù)據(jù),利用言論來(lái)源區(qū)塊號(hào)形成鏈內(nèi)索引,以各興趣社區(qū)依據(jù)聲譽(yù)積分排序選舉出的領(lǐng)導(dǎo)者為興趣社區(qū)鏈節(jié)點(diǎn),記錄各社區(qū)高影響力用戶的ID 及其言論關(guān)鍵詞哈希列表、日活躍用戶數(shù)、用戶發(fā)布或轉(zhuǎn)發(fā)等行為的數(shù)量、用戶影響力總和等社區(qū)動(dòng)態(tài)屬性數(shù)據(jù),保障輿情信息的可信記錄的同時(shí)實(shí)現(xiàn)用戶隱私保護(hù)。
(3)設(shè)計(jì)基于聲譽(yù)積分的激勵(lì)機(jī)制,以用戶及其言論屬性計(jì)算用戶影響力,以用戶歷史聲譽(yù)積分與影響力為積分計(jì)算參數(shù),獎(jiǎng)勵(lì)發(fā)表正向言論的用戶、懲罰發(fā)表負(fù)向言論的用戶,對(duì)聲譽(yù)積分較低的用戶添加警告標(biāo)識(shí),激勵(lì)用戶自主維護(hù)元宇宙社交網(wǎng)絡(luò)的輿論環(huán)境。
(4)設(shè)計(jì)基于興趣社區(qū)動(dòng)態(tài)屬性的活躍度計(jì)算方法,通過活躍度異常波動(dòng)發(fā)現(xiàn)潛在的異常輿情事件,根據(jù)溯源證據(jù)鏈追蹤異常輿情源頭,基于用戶節(jié)點(diǎn)所屬社區(qū)信息發(fā)現(xiàn)推動(dòng)輿情事件發(fā)展的群體,實(shí)現(xiàn)重大輿情事件的溯源。
區(qū)塊鏈?zhǔn)且苑植际劫~本為數(shù)據(jù)存儲(chǔ)載體,以P2P網(wǎng)絡(luò)為通信載體,基于密碼學(xué)確定所有權(quán)及保障隱私,通過分布式系統(tǒng)共識(shí)算法保障一致性,旨在構(gòu)建價(jià)值交換系統(tǒng)的技術(shù)[2],廣泛應(yīng)用于電子商務(wù)、數(shù)字政務(wù)、信用評(píng)估、智慧物流等場(chǎng)景[3]。如下從信息溯源與輿情管理兩個(gè)研究領(lǐng)域展開介紹。
在信息溯源領(lǐng)域,Peng 等人[4]提出了P2B-Trace 框架,設(shè)計(jì)了一個(gè)基于認(rèn)證數(shù)據(jù)結(jié)構(gòu)(authenticated data structure)的區(qū)塊鏈架構(gòu)來(lái)記錄人員接觸記錄,實(shí)現(xiàn)了基于零知識(shí)證明的新冠密接人員驗(yàn)證方案;Xu等人[5]通過計(jì)算用戶假名、時(shí)間戳、地理位置信息的哈希值構(gòu)建TraceCode,對(duì)用戶身份與行動(dòng)軌跡數(shù)據(jù)脫敏,實(shí)現(xiàn)了強(qiáng)隱私保護(hù)的新冠密接人員追蹤方案。上述兩種方法的缺陷在于構(gòu)建的全球性的單鏈結(jié)構(gòu)公共區(qū)塊鏈網(wǎng)絡(luò),在單層區(qū)塊鏈上存儲(chǔ)海量數(shù)據(jù)導(dǎo)致數(shù)據(jù)查詢延遲高、溯源效率低下。Agrawal 等人[6]構(gòu)建了供應(yīng)鏈合作伙伴聯(lián)盟鏈,建立基于智能合約的信任機(jī)制,實(shí)現(xiàn)了面料廠商和成衣廠商間的信息追溯;禹忠等人[7]基于聯(lián)盟鏈架構(gòu)設(shè)計(jì)了一種“代碼層+管理層”的藥品信息溯源智能合約,實(shí)現(xiàn)了業(yè)務(wù)邏輯與信息校驗(yàn)的分離,提高了信息溯源的效率。上述方法的問題在于聯(lián)盟鏈架構(gòu)使得供應(yīng)鏈中各方上鏈需通過鏈上共識(shí)并生成數(shù)字證書,步驟繁瑣、效率低,難以應(yīng)用于大規(guī)模的上下游產(chǎn)業(yè)鏈信息溯源。陳飛等人[8]設(shè)計(jì)了一種雙層溯源數(shù)據(jù)存儲(chǔ)機(jī)制,產(chǎn)品各環(huán)節(jié)數(shù)據(jù)存儲(chǔ)在本地?cái)?shù)據(jù)庫(kù),鏈上僅存儲(chǔ)供應(yīng)鏈信息摘要,改善了區(qū)塊鏈的可擴(kuò)展性問題。該方法缺陷在于本數(shù)據(jù)庫(kù)未采用分布式架構(gòu),存在數(shù)據(jù)篡改、丟失的風(fēng)險(xiǎn)。
在輿情管理領(lǐng)域,Sengupta 等人[9]構(gòu)建了基于區(qū)塊鏈的模型ProBlock,利用區(qū)塊鏈存儲(chǔ)新聞信息及新聞審核投票結(jié)果信息,確保發(fā)布的新聞不被篡改;劉峰等人[10]設(shè)計(jì)了一種單層輿情區(qū)塊鏈,利用零知識(shí)證明機(jī)制存儲(chǔ)網(wǎng)絡(luò)用戶的身份證號(hào)、手機(jī)號(hào)等個(gè)人身份數(shù)據(jù)作為輿情存證數(shù)據(jù);劉嘉琪等人[11]將網(wǎng)信辦、地方行政執(zhí)法單位、國(guó)有存證機(jī)構(gòu)和社交媒體平臺(tái)作為鏈上節(jié)點(diǎn)共同參與信息存儲(chǔ),由多邊跨組織、跨部門集體維護(hù)鏈上數(shù)據(jù)以防止數(shù)據(jù)篡改。上述方法的問題在于利用單鏈結(jié)構(gòu)存儲(chǔ)輿情或用戶信息的原始數(shù)據(jù),未建立數(shù)據(jù)索引導(dǎo)致查詢效率低,且存在泄露用戶隱私的風(fēng)險(xiǎn)。Chen 等人[12]提出了一種基于PoA 共識(shí)算法的虛假新聞存證方法,該方法通過信譽(yù)評(píng)分選舉權(quán)威新聞機(jī)構(gòu)節(jié)點(diǎn)對(duì)新聞內(nèi)容進(jìn)行驗(yàn)證,并記錄虛假新聞信息,對(duì)虛假新聞發(fā)布者追責(zé)。該方法缺陷在于龐大數(shù)量的新聞?dòng)缮贁?shù)新聞機(jī)構(gòu)審查,效率低下且存在共謀攻擊風(fēng)險(xiǎn)。Torky 等人[13]提出了信用證明(proof of credibility)共識(shí)協(xié)議,根據(jù)不同新聞來(lái)源的Boost因子、新聞被分享的次數(shù)、新聞關(guān)注人數(shù)量等參數(shù)計(jì)算新聞的信用值,對(duì)信用值低于閾值的新聞視為謠言并記錄在區(qū)塊鏈中;Qayyum 等人[14]提出一個(gè)基于媒體身份認(rèn)證的虛假新聞防治方法,利用智能合約登記、更新和撤銷新聞機(jī)構(gòu)的身份,利用信譽(yù)積分機(jī)制約束新聞機(jī)構(gòu)的行為。上述方法的問題在于僅關(guān)注新聞媒體這一輿情信息來(lái)源,忽略了社交平臺(tái)中的用戶尤其是高影響力用戶同樣也是輿情信息的重要來(lái)源,僅約束新聞媒體的行為難以有效實(shí)現(xiàn)可信的社交網(wǎng)絡(luò)。
目前基于區(qū)塊鏈技術(shù)的輿情溯源研究較為匱乏,傳統(tǒng)社交網(wǎng)絡(luò)信息溯源方法多采用復(fù)雜網(wǎng)絡(luò)溯源技術(shù)。復(fù)雜網(wǎng)絡(luò)中的信息溯源問題是信息擴(kuò)散的逆向問題,根據(jù)信息源頭數(shù)的不同,溯源方法可以分為單源識(shí)別方法和多源識(shí)別方法[15]。
在單源頭溯源研究方面,Kesavareddigari 等人[16]提出了一種“Types Center”方法估計(jì)樹狀網(wǎng)絡(luò)上的信息源,該方法在大型網(wǎng)絡(luò)上的近似誤差不超過感染節(jié)點(diǎn)數(shù)量的對(duì)數(shù),實(shí)現(xiàn)了高效的信息源頭識(shí)別;Yang 等人[17]提出了一種基于方向誘導(dǎo)搜索的高斯估計(jì)器,實(shí)現(xiàn)了在復(fù)雜網(wǎng)絡(luò)中低計(jì)算復(fù)雜度的傳播源定位;Rácz等人[18]基于自適應(yīng)擴(kuò)散協(xié)議,證明了在底層社交網(wǎng)絡(luò)圖為一個(gè)無(wú)限大的d正則樹時(shí),利用三個(gè)及以上的獨(dú)立傳播快照?qǐng)D可以保證以恒定的概率找到信息源頭;Louni 等人[19]利用概率加權(quán)圖量化社會(huì)網(wǎng)絡(luò)的不確定性,基于社交網(wǎng)絡(luò)的模塊化性質(zhì)識(shí)別具有不同關(guān)系強(qiáng)度的信息傳播源;Cai等人[20]假設(shè)圖上信息源頭節(jié)點(diǎn)的子節(jié)點(diǎn)傳播信息時(shí)間分別服從不同參數(shù)的指數(shù)分布,利用多個(gè)序列相關(guān)的快照提高溯源準(zhǔn)確率。
復(fù)雜網(wǎng)絡(luò)的信息溯源問題最先是從研究樹圖上單源頭溯源的特殊情況開始,后逐漸擴(kuò)展到在線社交網(wǎng)絡(luò)中多源頭溯源的實(shí)際情況[21],故復(fù)雜網(wǎng)絡(luò)多源頭溯源技術(shù)更加符合解決輿情溯源問題的實(shí)際需要。
在多源頭溯源研究方面,Wang 等人[22]通過將社交網(wǎng)絡(luò)劃分為多個(gè)分區(qū),基于似然估計(jì)對(duì)每個(gè)分區(qū)中的單個(gè)源進(jìn)行定位,將多源頭溯源問題轉(zhuǎn)換為多個(gè)單源頭溯源問題以實(shí)現(xiàn)信息溯源;Dong等人[23]利用“編碼器-解碼器”結(jié)構(gòu)和基于圖約束的多任務(wù)學(xué)習(xí)構(gòu)建GCSSI 模型,該模型可逆向估計(jì)出各時(shí)間步的信息傳播狀態(tài),最終預(yù)測(cè)出信息源頭;Wang 等人[24]分析用戶行為特征構(gòu)建用戶信息矩陣,基于用戶信息矩陣來(lái)復(fù)現(xiàn)信息傳播過程從而得到信息源頭;Feizi 等人[25]將用戶言論發(fā)布時(shí)間、文本特征以及內(nèi)容相關(guān)度等參數(shù)融合,構(gòu)建信息傳播模型,優(yōu)化并計(jì)算信息傳播源頭;Wu等人[26]提出了TraceMiner,推斷社交網(wǎng)絡(luò)用戶與社交網(wǎng)絡(luò)結(jié)構(gòu)的嵌入,利用LSTMRNN對(duì)消息的傳播路徑進(jìn)行表示和分類;于凱等人[27]提出一種基于多中心性分析的網(wǎng)絡(luò)輿情信息源點(diǎn)追溯算法,有效組合5 種中心性指標(biāo)來(lái)構(gòu)建多中心性算法,通過大量實(shí)驗(yàn)找出溯源效果最好的多中心性算法,以此來(lái)精準(zhǔn)追溯輿情信息傳播源點(diǎn);陳淑娟等人[28]提出了一種快速意見領(lǐng)袖挖掘算法,該算法利用結(jié)構(gòu)特征篩選出主題社團(tuán)中的意見領(lǐng)袖候選人,結(jié)合傳播特征和情感特征挖掘主題社團(tuán)中的意見領(lǐng)袖,在此基礎(chǔ)上挖掘潛在信息傳播源頭。
上述多源頭信息溯源方法通過構(gòu)建信息擴(kuò)散模型,分析輿情事件發(fā)生后的用戶屬性、言論等數(shù)據(jù)實(shí)現(xiàn)輿情溯源,需要進(jìn)行大量復(fù)雜的運(yùn)算,同時(shí)可能存在因數(shù)據(jù)篡改、缺失進(jìn)而影響溯源結(jié)果的問題,無(wú)法保證溯源的時(shí)效性與可信性。與之相比,區(qū)塊鏈的鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)天然支持信息溯源,無(wú)需構(gòu)建復(fù)雜模型與大量數(shù)學(xué)計(jì)算,溯源方式簡(jiǎn)潔高效,同時(shí)基于分布式存儲(chǔ)技術(shù)、哈希算法及共識(shí)算法實(shí)現(xiàn)數(shù)據(jù)防篡改,可保障輿情數(shù)據(jù)及輿情信息傳播過程的可靠存儲(chǔ),實(shí)現(xiàn)輿情事件可信溯源,支撐可信元宇宙社交網(wǎng)絡(luò)構(gòu)建。
本文提出的輿情事件溯源方法如圖1 所示。針對(duì)元宇宙社交網(wǎng)絡(luò)擁有龐大的用戶群體,在整個(gè)網(wǎng)絡(luò)中開展輿情溯源效率低下的問題,需采取“分而治之”的策略以提高輿情事件溯源的效率。
基于用戶間的興趣相似度構(gòu)造無(wú)向帶權(quán)圖,利用社區(qū)發(fā)現(xiàn)算法將用戶劃分為若干個(gè)大小不一的個(gè)性化興趣社區(qū)。在興趣社區(qū)的基礎(chǔ)上設(shè)計(jì)了雙層區(qū)塊鏈結(jié)構(gòu),以各興趣社區(qū)內(nèi)的用戶為節(jié)點(diǎn),構(gòu)造輿情信息鏈記錄用戶言論、所屬社區(qū)、影響力、聲譽(yù)積分等數(shù)據(jù),在此基礎(chǔ)上以各興趣社區(qū)選舉的社區(qū)領(lǐng)導(dǎo)者為節(jié)點(diǎn)構(gòu)造興趣社區(qū)鏈,記錄社區(qū)高影響力用戶言論關(guān)鍵詞哈希列表、用戶總數(shù)、日活躍用戶數(shù)、節(jié)點(diǎn)影響力總和等社區(qū)動(dòng)態(tài)屬性數(shù)據(jù),實(shí)現(xiàn)了輿情數(shù)據(jù)的分層社區(qū)化可信記錄,有利于縮小輿情數(shù)據(jù)檢索范圍,提高輿情事件溯源效率。
以言論關(guān)鍵詞檢索興趣社區(qū)鏈中潛在輿情源頭社區(qū),在輿情信息鏈中檢索相關(guān)社區(qū)區(qū)塊,多源信息以時(shí)間為序列形成多源頭溯源證據(jù)鏈,開展輿情溯源,追蹤異常輿情源頭用戶與群體。同時(shí)設(shè)計(jì)了基于聲譽(yù)積分的激勵(lì)機(jī)制約束用戶行為,鼓勵(lì)自主維護(hù)積極向上的輿論環(huán)境,有助于構(gòu)建個(gè)性自由、和諧有序的元宇宙可信社交網(wǎng)絡(luò)。
元宇宙社交網(wǎng)絡(luò)中的用戶自發(fā)組織形成眾多元宇宙社區(qū),具有相同興趣的用戶聚集在一個(gè)社區(qū)中自由互動(dòng),利用這一特點(diǎn),將龐大的用戶群體劃分為不同的興趣社區(qū)可有效降低輿情溯源的難度。通過提取各用戶言論數(shù)據(jù)的句向量,基于句向量聚類中心間距離計(jì)算用戶間興趣的相似度,利用不同用戶間的相似度劃分興趣社區(qū)。當(dāng)發(fā)生重大輿情事件時(shí),以興趣社區(qū)為單位分析并追溯各社區(qū)內(nèi)的輿情數(shù)據(jù),及時(shí)發(fā)現(xiàn)傳播輿情事件的個(gè)人與群體,提高輿情溯源的效率與準(zhǔn)確性。
基于用戶言論的文本相似度,判斷用戶間是否存在相似的興趣話題。由于社交網(wǎng)絡(luò)用戶發(fā)表的言論內(nèi)容一般較短且長(zhǎng)度不一,為了得到統(tǒng)一長(zhǎng)度的句向量,在BERT 模型輸出層上添加平均池化層[29],將言論文本輸入模型,取每個(gè)Token的平均Embedding,獲得用戶言論句子的固定長(zhǎng)度向量。在此基礎(chǔ)上,對(duì)用戶言論句向量進(jìn)行歸一化,利用PCA 算法將每個(gè)用戶的所有言論句向量降維至2維,利用降維后的句向量進(jìn)行K-Means聚類,將每個(gè)用戶的所有言論向量聚類為k簇,獲得用戶i所有言論的k個(gè)聚類中心,記作Centeri={ci1,ci2,…,cik},分別計(jì)算用戶i與用戶j的k個(gè)聚類中心的歐式距離,如式(1)所示:
其中,cik坐標(biāo)為(x1,y1),cjk坐標(biāo)為(x2,y2)。
若某一對(duì)聚類中心的距離小于相似度距離閾值d,則認(rèn)為用戶言論存在相似性,記為tk=1,則用戶i與用戶j的興趣相似度記為Sij=∑tk。
以用戶為興趣社區(qū)節(jié)點(diǎn),若用戶間相似度大于0,則用戶間存在一條邊,以興趣相似度為邊的權(quán)值,構(gòu)建一個(gè)無(wú)向帶權(quán)圖用于興趣社區(qū)發(fā)現(xiàn)??紤]到用戶間的言論或多或少存在一些相似性,若聚類簇?cái)?shù)與相似度距離閾值選擇不合理,會(huì)導(dǎo)致多數(shù)用戶節(jié)點(diǎn)之間均存在邊,不利于接下來(lái)的社區(qū)發(fā)現(xiàn)[30],故應(yīng)以社區(qū)發(fā)現(xiàn)結(jié)果為評(píng)價(jià)標(biāo)準(zhǔn)取兩個(gè)參數(shù)的較優(yōu)組合,實(shí)現(xiàn)對(duì)無(wú)向帶權(quán)圖數(shù)據(jù)的降噪。
利用Leiden 算法[31]進(jìn)行興趣社區(qū)發(fā)現(xiàn),初始狀態(tài)下,無(wú)向圖中的每個(gè)用戶節(jié)點(diǎn)都是一個(gè)單獨(dú)的社區(qū),遍歷所有節(jié)點(diǎn),嘗試將節(jié)點(diǎn)i的所屬社區(qū)修改為所有鄰居節(jié)點(diǎn)的所屬社區(qū),并計(jì)算節(jié)點(diǎn)i的所屬社區(qū)改變后的模塊度增益ΔQ[30],如式(2)所示:
其中,m為圖中所有邊的權(quán)重總和,ki,in為節(jié)點(diǎn)i連接至鄰居節(jié)點(diǎn)所屬社區(qū)C內(nèi)所有節(jié)點(diǎn)的邊的權(quán)重總和,ki為節(jié)點(diǎn)i所有邊的權(quán)重總和,∑tot為其他社區(qū)連接至社區(qū)C內(nèi)所有節(jié)點(diǎn)的邊的權(quán)重總和。
將節(jié)點(diǎn)i的所屬社區(qū)隨機(jī)改變?yōu)槟K度增益大于0的相鄰節(jié)點(diǎn)所屬社區(qū),模塊度增益越大,節(jié)點(diǎn)i更有可能被劃分至該社區(qū)。在第一輪移動(dòng)結(jié)束后,后續(xù)輪次只遍歷所屬社區(qū)發(fā)生變化的節(jié)點(diǎn)。對(duì)所有節(jié)點(diǎn)重復(fù)上述步驟,直到所有節(jié)點(diǎn)都不能通過改變其所屬社區(qū)來(lái)增加模塊度。
將第一個(gè)階段得到的社區(qū)凝聚為一個(gè)新的節(jié)點(diǎn),節(jié)點(diǎn)的環(huán)邊權(quán)重為原始社區(qū)內(nèi)所有節(jié)點(diǎn)間的邊權(quán)重之和,兩個(gè)節(jié)點(diǎn)之間邊的權(quán)值為兩個(gè)原始社區(qū)間相連節(jié)點(diǎn)的邊的權(quán)值的總和,由此形成一個(gè)新的子圖。
反復(fù)迭代執(zhí)行上述步驟,直到模塊度不再增大,得到最終的興趣社區(qū)發(fā)現(xiàn)結(jié)果,如圖2所示。
圖2 興趣社區(qū)Fig.2 Communities of interest
2.2.1 用戶影響力計(jì)算
用戶自身的影響力對(duì)于一條信息的傳播的影響是巨大的。對(duì)于輿情信息,個(gè)人用戶或者粉絲數(shù)較少的自媒體發(fā)布之后產(chǎn)生的影響可能不是很大,但是經(jīng)過一些影響力巨大的意見領(lǐng)袖用戶,例如微博大V或者是一些官方賬號(hào)發(fā)布之后,輿情信息會(huì)快速傳播,造成較為廣泛的輿論影響[32],所以在進(jìn)行輿情溯源時(shí)應(yīng)當(dāng)將用戶對(duì)于信息傳播的影響力納入考量。用戶影響力定義如式(3)所示:
其中,x1,x2,x3,x4分別為用戶所有言論的被點(diǎn)贊總數(shù)、被轉(zhuǎn)發(fā)總數(shù)、被評(píng)論總數(shù)以及用戶粉絲總數(shù),ci為xi的權(quán)重,權(quán)重的取值應(yīng)當(dāng)考慮各參數(shù)值對(duì)信息傳播廣度的影響。用戶節(jié)點(diǎn)的影響力隨著參數(shù)值增長(zhǎng)而增長(zhǎng),但當(dāng)參數(shù)值超過一定數(shù)量級(jí)后,用戶的影響力增長(zhǎng)應(yīng)當(dāng)趨于平緩,故使用ln 函數(shù)計(jì)算用戶影響力。
2.2.2 激勵(lì)機(jī)制
設(shè)計(jì)基于聲譽(yù)積分的激勵(lì)機(jī)制,在輿情信息鏈上部署聲譽(yù)積分智能合約。分析用戶言論的情感極性,若用戶發(fā)表正向言論則獲得積分,反之發(fā)表負(fù)向言論則扣減其持有的積分,同時(shí)展示用戶在元宇宙社交網(wǎng)絡(luò)中虛擬形象上的聲譽(yù)積分或積分等級(jí),增強(qiáng)高聲譽(yù)積分用戶的言論影響力與個(gè)人榮譽(yù)感。若某節(jié)點(diǎn)積分?jǐn)?shù)小于警告閾值,則為該用戶添加警告標(biāo)識(shí),提醒其他用戶該用戶很有可能是網(wǎng)絡(luò)水軍,必要時(shí)可以選擇隱藏低聲譽(yù)積分用戶的言論,加強(qiáng)輿論監(jiān)管力度。另外,利用區(qū)塊鏈數(shù)據(jù)防篡改、不可抵賴的特點(diǎn),可督促用戶謹(jǐn)言慎行、對(duì)自己的言論負(fù)責(zé),自主維護(hù)積極健康的輿論環(huán)境。
考慮到一個(gè)擁有較高聲譽(yù)積分的節(jié)點(diǎn)發(fā)布的言論擁有更強(qiáng)的輿論影響力,為保障輿論態(tài)勢(shì)穩(wěn)定,必須解決兩個(gè)主要問題:
其一,用戶節(jié)點(diǎn)不能僅僅通過發(fā)表幾次正向言論就能獲得較多的聲譽(yù)積分,即應(yīng)該根據(jù)用戶的全部言論數(shù)據(jù)來(lái)評(píng)估用戶的聲譽(yù)。這可以防止水軍節(jié)點(diǎn)通過大量發(fā)布正向言論在短期內(nèi)獲得過多的聲譽(yù)積分,以掩蓋其過去發(fā)表大量負(fù)向言論的行為。其二,用戶節(jié)點(diǎn)不能以不穩(wěn)定的言論極性獲得良好的聲譽(yù)。良好的聲譽(yù)只能通過持續(xù)地發(fā)表正向言論來(lái)獲得,這可以防止擁有較高影響力的節(jié)點(diǎn)在其大量言論中隱藏其負(fù)向言論。
針對(duì)第一個(gè)問題,需要限制用戶最近發(fā)表的正向言論獲得的聲譽(yù)積分,用戶發(fā)表第n+1 次正向言論獲得的聲譽(yù)積分計(jì)算如式(4)所示:
其中,Rn為用戶發(fā)表的前n次言論獲得的聲譽(yù)積分,參數(shù)k∈[1,n]將用戶n次言論所獲積分劃分為前k次與后n-k次言論所獲積分兩個(gè)區(qū)間,參數(shù)ρ∈[0,1]調(diào)節(jié)用戶前k次與后n-k次發(fā)表正向言論所獲積分的權(quán)重。為了避免水軍用戶在短期內(nèi)獲得大量聲譽(yù)積分,k應(yīng)取較大值,ρ應(yīng)取較小值。
針對(duì)第二個(gè)問題,當(dāng)根據(jù)用戶發(fā)表正負(fù)言論增減其聲譽(yù)積分時(shí),將用戶的影響力與所獲聲譽(yù)積分納入考量,將影響力與已獲得聲譽(yù)積分作為用戶發(fā)表一次言論獲得或扣除積分的計(jì)算參數(shù)。對(duì)用戶i的影響力與聲譽(yù)積分?jǐn)?shù)值進(jìn)行歸一化,如式(5)、(6)所示:
其中,Ii為用戶i的影響力數(shù)值,Ri為用戶i的聲譽(yù)積分?jǐn)?shù)值,Imin、Imax為所有用戶影響力的最小、最大值,Rmin、Rmax為所有用戶聲譽(yù)積分的最小、最大值。
用戶發(fā)表一次正負(fù)向言論獲得或扣除的聲譽(yù)積分計(jì)算如式(7)所示:
其中,p為基礎(chǔ)分?jǐn)?shù),w1與w2分別為影響力與聲譽(yù)的權(quán)重,且w1+w2=1。通過設(shè)置不同的參數(shù)權(quán)重,可以調(diào)節(jié)對(duì)擁有較高影響力或聲譽(yù)積分用戶發(fā)表正負(fù)向言論時(shí)的獎(jiǎng)懲力度。
2.2.3 共識(shí)機(jī)制
設(shè)計(jì)基于聲譽(yù)積分的Raft共識(shí)算法,在領(lǐng)導(dǎo)者節(jié)點(diǎn)的選舉規(guī)則上,將節(jié)點(diǎn)的聲譽(yù)積分納入考量。在輿情信息鏈中,各社區(qū)基于節(jié)點(diǎn)聲譽(yù)積分的多寡選擇一個(gè)領(lǐng)導(dǎo)者節(jié)點(diǎn),其余節(jié)點(diǎn)作為跟隨者節(jié)點(diǎn)。領(lǐng)導(dǎo)者節(jié)點(diǎn)負(fù)責(zé)生成并驗(yàn)證區(qū)塊,同時(shí)將區(qū)塊發(fā)送給其他跟隨者節(jié)點(diǎn)進(jìn)行記賬,領(lǐng)導(dǎo)者節(jié)點(diǎn)通過心跳消息與其他跟隨者節(jié)點(diǎn)保持連接,心跳消息中應(yīng)包含領(lǐng)導(dǎo)者節(jié)點(diǎn)的聲譽(yù)積分?jǐn)?shù)值。若其他跟隨者節(jié)點(diǎn)在一定時(shí)間間隔內(nèi)未收到領(lǐng)導(dǎo)者節(jié)點(diǎn)的心跳信息,或某個(gè)跟隨者節(jié)點(diǎn)的聲譽(yù)積分值超過當(dāng)前領(lǐng)導(dǎo)者節(jié)點(diǎn),則跟隨者節(jié)點(diǎn)在社區(qū)內(nèi)廣播選舉信息,重新選舉領(lǐng)導(dǎo)者節(jié)點(diǎn)。在興趣社區(qū)鏈中,領(lǐng)導(dǎo)者節(jié)點(diǎn)在各社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)中選舉產(chǎn)生,其他選舉規(guī)則同輿情信息鏈,不做贅述。
元宇宙社交網(wǎng)絡(luò)中的海量用戶身處不同地域、時(shí)區(qū),若在整個(gè)區(qū)塊鏈網(wǎng)絡(luò)中采用Gossip 協(xié)議進(jìn)行通信,每個(gè)節(jié)點(diǎn)將接收到的消息發(fā)送給所有鄰居節(jié)點(diǎn),冗余數(shù)據(jù)多、傳輸延遲高,降低系統(tǒng)的共識(shí)速度與吞吐量[33]。針對(duì)該問題,設(shè)計(jì)基于興趣社區(qū)的區(qū)塊鏈網(wǎng)絡(luò)分片通信機(jī)制,以興趣社區(qū)為單位將區(qū)塊鏈網(wǎng)絡(luò)劃分為更小的子網(wǎng)絡(luò),將各興趣社區(qū)中的用戶作為子網(wǎng)絡(luò)節(jié)點(diǎn),記錄本社區(qū)的輿情數(shù)據(jù),實(shí)現(xiàn)輿情數(shù)據(jù)的社區(qū)化管理,同時(shí)在社區(qū)內(nèi)設(shè)置路由節(jié)點(diǎn),路由節(jié)點(diǎn)記錄其他社區(qū)路由節(jié)點(diǎn)的地址,負(fù)責(zé)與其他社區(qū)建立P2P 通信,社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)默認(rèn)為社區(qū)路由節(jié)點(diǎn)。
考慮到系統(tǒng)的可用性,當(dāng)社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)重新選舉或領(lǐng)導(dǎo)者節(jié)點(diǎn)故障時(shí),無(wú)法接收到其他社區(qū)發(fā)送的區(qū)塊數(shù)據(jù),需要選擇若干節(jié)點(diǎn)作為備用路由節(jié)點(diǎn)。各社區(qū)內(nèi)部完成共識(shí)并將新區(qū)塊上鏈后,由當(dāng)前社區(qū)路由節(jié)點(diǎn)將新區(qū)塊發(fā)送至其他社區(qū)路由節(jié)點(diǎn),其他社區(qū)路由節(jié)點(diǎn)在接收到新區(qū)塊后將其發(fā)送至領(lǐng)導(dǎo)者節(jié)點(diǎn),領(lǐng)導(dǎo)者節(jié)點(diǎn)將區(qū)塊在本社區(qū)內(nèi)廣播上鏈。
2.2.4 區(qū)塊鏈結(jié)構(gòu)
以興趣社區(qū)內(nèi)每位用戶作為節(jié)點(diǎn)構(gòu)建輿情信息鏈,記錄各用戶的言論與屬性數(shù)據(jù)。輿情信息鏈的區(qū)塊頭包含:區(qū)塊號(hào);當(dāng)前區(qū)塊哈希,為區(qū)塊體數(shù)據(jù)的哈希值;前一區(qū)塊哈希,為前一區(qū)塊中區(qū)塊頭數(shù)據(jù)的哈希值;區(qū)塊生成時(shí)間。
為實(shí)現(xiàn)輿情溯源時(shí)快速查找鏈上數(shù)據(jù)、鎖定輿情事件源頭,利用所屬社區(qū)信息與言論數(shù)據(jù),以用戶間的互動(dòng)關(guān)系檢索相關(guān)區(qū)塊形成溯源證據(jù)鏈。用戶發(fā)布、點(diǎn)贊、轉(zhuǎn)發(fā)、評(píng)論的內(nèi)容均需生成哈希值并記錄其所在區(qū)塊號(hào),對(duì)于用戶原創(chuàng)發(fā)布的內(nèi)容,言論來(lái)源區(qū)塊號(hào)為當(dāng)前區(qū)塊號(hào),若用戶間存在互動(dòng)行為,即用戶點(diǎn)贊、轉(zhuǎn)發(fā)、評(píng)論了其他用戶發(fā)布的言論,則言論來(lái)源區(qū)塊號(hào)為內(nèi)容原始記錄所在的區(qū)塊號(hào),以此形成鏈內(nèi)數(shù)據(jù)索引。以用戶ID、行為發(fā)生時(shí)間及言論內(nèi)容計(jì)算用戶行為哈希值,如式(8)所示:
同時(shí),對(duì)于用戶原創(chuàng)發(fā)布的內(nèi)容,利用TextRank 算法提取用戶言論內(nèi)容的關(guān)鍵詞集作為輿情溯源時(shí)的數(shù)據(jù)索引。為了保護(hù)用戶隱私,鏈上不存儲(chǔ)用戶言論的明文數(shù)據(jù),通過計(jì)算每個(gè)關(guān)鍵詞的哈希值形成言論關(guān)鍵詞哈希列表,利用關(guān)鍵詞哈希匹配實(shí)現(xiàn)數(shù)據(jù)的查詢與溯源。對(duì)于非用戶原創(chuàng)的內(nèi)容,言論關(guān)鍵詞哈希列表為原始言論數(shù)據(jù)的哈希列表,避免重復(fù)計(jì)算數(shù)據(jù)哈希值。
輿情信息鏈的區(qū)塊體包含:事務(wù)數(shù)據(jù),包括用戶ID、用戶所屬社區(qū)ID、用戶行為類別(發(fā)布、點(diǎn)贊、轉(zhuǎn)發(fā)、評(píng)論)、行為發(fā)生時(shí)間、用戶行為哈希、言論關(guān)鍵詞哈希列表、言論來(lái)源區(qū)塊號(hào)、用戶聲譽(yù)積分、聲譽(yù)積分警告標(biāo)識(shí)、用戶影響力數(shù)值;身份數(shù)據(jù),包含用戶節(jié)點(diǎn)公鑰、社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)公鑰;簽名數(shù)據(jù),利用用戶節(jié)點(diǎn)、社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)私鑰進(jìn)行數(shù)字簽名的事務(wù)數(shù)據(jù)。
在輿情信息鏈的基礎(chǔ)上構(gòu)建興趣社區(qū)鏈,考慮到各興趣社區(qū)的輿情狀態(tài)變化的實(shí)時(shí)性,為了政府部門能夠?qū)崟r(shí)監(jiān)測(cè)輿情變化,及時(shí)研判輿情態(tài)勢(shì),興趣社區(qū)鏈應(yīng)記錄各興趣社區(qū)的動(dòng)態(tài)屬性數(shù)據(jù)。同時(shí),社區(qū)內(nèi)的高影響力用戶很大程度上影響著社區(qū)內(nèi)輿論的走向,所以各興趣社區(qū)內(nèi)的高影響力用戶的相關(guān)信息也應(yīng)記錄在興趣社區(qū)鏈中。興趣社區(qū)鏈區(qū)塊頭結(jié)構(gòu)與輿情信息鏈相同。興趣社區(qū)鏈區(qū)塊體的事務(wù)數(shù)據(jù)包含:興趣社區(qū)ID;社區(qū)內(nèi)影響力高用戶的ID 及其言論關(guān)鍵詞哈希列表;社區(qū)用戶總數(shù);日活躍用戶數(shù);用戶的發(fā)布、點(diǎn)贊、轉(zhuǎn)發(fā)、評(píng)論行為總數(shù);社區(qū)內(nèi)節(jié)點(diǎn)影響力總和;身份數(shù)據(jù)包含社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)公鑰及興趣社區(qū)鏈領(lǐng)導(dǎo)者節(jié)點(diǎn)公鑰;簽名數(shù)據(jù)為利用社區(qū)領(lǐng)導(dǎo)者節(jié)點(diǎn)、興趣社區(qū)鏈領(lǐng)導(dǎo)者節(jié)點(diǎn)私鑰進(jìn)行數(shù)字簽名的事務(wù)數(shù)據(jù)。
利用智能合約自動(dòng)化執(zhí)行、可信透明的優(yōu)點(diǎn),在興趣社區(qū)鏈上部署異常輿情識(shí)別智能合約,在輿情信息鏈上部署輿情溯源智能合約。異常輿情識(shí)別智能合約實(shí)時(shí)監(jiān)測(cè)興趣社區(qū)鏈記錄的各興趣社區(qū)的動(dòng)態(tài)屬性數(shù)據(jù),當(dāng)發(fā)現(xiàn)可能的異常輿情狀況時(shí),以言論關(guān)鍵詞檢索興趣社區(qū)鏈中潛在輿情源頭社區(qū),調(diào)用輿情溯源智能合約在輿情信息鏈中檢索相關(guān)社區(qū)區(qū)塊,檢索到的多源信息以時(shí)間為序列形成多源頭溯源證據(jù)鏈,分析異常輿情源頭,實(shí)現(xiàn)重大輿情事件的早發(fā)現(xiàn)、早預(yù)警,為輿情事件的及時(shí)處置、避免輿情擴(kuò)散蔓延提供支持。
異常輿情識(shí)別智能合約在讀取興趣社區(qū)鏈上的最新區(qū)塊內(nèi)容后,基于各社區(qū)用戶總數(shù)CUsum、日活躍用戶數(shù)AUsum、用戶各類行為數(shù)量OPsum、社區(qū)內(nèi)節(jié)點(diǎn)影響力總和Isum,計(jì)算各社區(qū)活躍度T,其中b1,b2,b3為各參數(shù)權(quán)重,如式(9)所示:
當(dāng)社區(qū)活躍度超過一定閾值或政府部門需要對(duì)特定輿情事件進(jìn)行溯源時(shí),若社區(qū)內(nèi)高影響力用戶的言論關(guān)鍵詞哈希值與輿情事件關(guān)鍵詞的哈希值存在交集,根據(jù)用戶所屬社區(qū)ID及關(guān)鍵詞哈希搜索該社區(qū)內(nèi)用戶的言論數(shù)據(jù),根據(jù)區(qū)塊內(nèi)記錄的言論來(lái)源區(qū)塊號(hào)前向搜索鏈上數(shù)據(jù),查找到言論的原始發(fā)布者,這樣的原始發(fā)布者可能存在多個(gè),將這些節(jié)點(diǎn)視作異常行為節(jié)點(diǎn)。計(jì)算各社區(qū)存在異常行為節(jié)點(diǎn)的數(shù)量與社區(qū)總活躍用戶的比值,據(jù)此對(duì)各社區(qū)進(jìn)行排序,發(fā)現(xiàn)推動(dòng)輿情事件發(fā)展的個(gè)人與群體。將溯源到的用戶ID、所屬興趣社區(qū)ID、用戶行為哈希、言論關(guān)鍵詞哈希列表、用戶影響力等信息,形成溯源報(bào)告推送至政府部門,完成輿情溯源。
利用網(wǎng)絡(luò)爬蟲技術(shù)隨機(jī)爬取2022 年06 月16 日至2023 年02 月23 日,新浪微博部分熱點(diǎn)話題參與用戶的ID及粉絲數(shù)量,用戶發(fā)布與轉(zhuǎn)發(fā)的微博文本,用戶微博被轉(zhuǎn)發(fā)、被評(píng)論、被點(diǎn)贊的數(shù)量及上述互動(dòng)行為的用戶ID,對(duì)數(shù)據(jù)進(jìn)行清洗,刪除亂碼、內(nèi)容無(wú)效(如微博內(nèi)容為單個(gè)字符或僅有“轉(zhuǎn)發(fā)微博”)、內(nèi)容重復(fù)的數(shù)據(jù)后,獲得405位用戶的共計(jì)109 970條言論數(shù)據(jù)。本文實(shí)驗(yàn)硬件環(huán)境為配備Windows 10 64 位操作系統(tǒng),Intel Core i7-10700 CPU 2.90 GHz 和16 GB 內(nèi)存的計(jì)算機(jī),利用VMware虛擬機(jī)安裝CentOS 7操作系統(tǒng),使用Pycharm、Python 3.8、Hyperledger Fabric 2.4.2、Hyperledger Caliper 0.4.2進(jìn)行實(shí)驗(yàn)。
首先,利用Sentence-BERT 模型生成各微博用戶每一條微博文本的句向量,對(duì)向量PCA降維后進(jìn)行聚類,設(shè)置距離閾值并計(jì)算各微博用戶間的興趣相似度,在此基礎(chǔ)上利用Leiden算法進(jìn)行興趣社區(qū)發(fā)現(xiàn)。
其次,利用Hyperledger Fabric 分別搭建兩條區(qū)塊鏈。以各興趣社區(qū)內(nèi)的用戶為鏈上節(jié)點(diǎn)構(gòu)建輿情信息鏈,將微博用戶的一條言論數(shù)據(jù)及其他信息作為一條事務(wù)數(shù)據(jù)上鏈,鏈上記錄用戶ID、所屬興趣社區(qū)、言論數(shù)據(jù)哈希、言論關(guān)鍵詞哈希列表、言論來(lái)源區(qū)塊號(hào)、影響力、聲譽(yù)積分?jǐn)?shù)據(jù)。以各興趣社區(qū)的領(lǐng)導(dǎo)者為節(jié)點(diǎn)構(gòu)建興趣社區(qū)鏈,鏈上記錄各社區(qū)高影響力用戶的ID 及其言論關(guān)鍵詞哈希列表、日活躍用戶數(shù)、用戶發(fā)布、轉(zhuǎn)發(fā)等行為數(shù)量、用戶影響力總和數(shù)據(jù)。
首先,為尋找較優(yōu)的社區(qū)發(fā)現(xiàn)參數(shù)設(shè)置方案,設(shè)置不同聚類簇?cái)?shù)、相似度距離閾值,測(cè)試不同參數(shù)組合下對(duì)興趣社區(qū)發(fā)現(xiàn)結(jié)果的影響。其次,對(duì)區(qū)塊鏈進(jìn)行查詢延遲及吞吐量性能測(cè)試以驗(yàn)證本文方法的可行性。
3.2.1 聚類簇?cái)?shù)設(shè)置
用戶言論向量聚類簇?cái)?shù)k的設(shè)置決定了參與相似度計(jì)算的聚類中心點(diǎn)的個(gè)數(shù),影響用戶間興趣相似度的計(jì)算結(jié)果。同時(shí)興趣社區(qū)是在用戶興趣相似度數(shù)據(jù)基礎(chǔ)上,構(gòu)建無(wú)向帶權(quán)圖并利用社區(qū)發(fā)現(xiàn)算法進(jìn)行劃分,因此應(yīng)選擇合適的聚類簇?cái)?shù)k與距離閾值d的組合,使得用戶節(jié)點(diǎn)之間的邊數(shù)在一個(gè)合理范圍內(nèi)以降低數(shù)據(jù)噪聲,為接下來(lái)的興趣社區(qū)發(fā)現(xiàn)奠定數(shù)據(jù)基礎(chǔ)。
為分析聚類簇?cái)?shù)k的取值對(duì)社區(qū)發(fā)現(xiàn)結(jié)果的影響,需要取不同聚類簇?cái)?shù)k及相似度距離閾值進(jìn)行對(duì)比實(shí)驗(yàn)。本文取9個(gè)不同的相似度距離閾值進(jìn)行多次實(shí)驗(yàn),如3.2.2小節(jié)所示,結(jié)果表明當(dāng)距離閾值過小或過大時(shí),社區(qū)發(fā)現(xiàn)結(jié)果均較差,故選取低、中、高3個(gè)相似度距離閾值區(qū)間的典型值,分別取相似度距離閾值為0.3、0.6、1.0,設(shè)置三組實(shí)驗(yàn),對(duì)不同距離閾值設(shè)置6個(gè)聚類簇?cái)?shù),考慮到過小的聚類簇?cái)?shù)可能導(dǎo)致參與計(jì)算的聚類中心數(shù)過少,從而使得用戶間的相似度偏小,故在實(shí)驗(yàn)中取最小聚類簇?cái)?shù)為5,分析不同聚類簇?cái)?shù)k與距離閾值d組合下,社區(qū)發(fā)現(xiàn)結(jié)果模塊度數(shù)據(jù),如圖3所示。
圖3 模塊度隨聚類簇?cái)?shù)k 與相似度距離閾值d 的變化Fig.3 Change of modularity with cluster number of k and similarity distance threshold d
由圖3 可知,隨著聚類簇?cái)?shù)數(shù)量的不斷增加,模塊度呈現(xiàn)快速下降趨勢(shì),在三組實(shí)驗(yàn)中,不論相似度距離閾值取何值,模塊度的最大值均在聚類簇?cái)?shù)k=5 時(shí)取得。由此可知選擇較小的聚類簇?cái)?shù)可以有效提高興趣社區(qū)發(fā)現(xiàn)的效果。
3.2.2 相似度距離閾值設(shè)置
相似度距離閾值的設(shè)置直接決定了用戶間是否存在相似性,選擇合理的相似度距離閾值d,在劃分出內(nèi)部連接緊密、外部連接稀疏的興趣社區(qū)同時(shí),盡可能覆蓋所有用戶節(jié)點(diǎn),利用區(qū)塊鏈的去中心化保障輿情數(shù)據(jù)安全,支撐輿情事件的高效、可信溯源。由3.2.1小節(jié)的分析可知,應(yīng)取聚類簇?cái)?shù)為5,在此基礎(chǔ)上設(shè)置9個(gè)相似度距離閾值,分析不同相似度距離閾值下興趣社區(qū)發(fā)現(xiàn)效果。由于Leiden算法執(zhí)行結(jié)果具有一定隨機(jī)性,取每個(gè)相似度距離閾值的5次模塊度、社區(qū)數(shù)量的平均值作為最終的模塊度、檢測(cè)出的社區(qū)數(shù)量。
由圖4(a)中數(shù)據(jù)可知,模塊度與相似度距離閾值呈反比關(guān)系。隨著距離閾值的增加,用戶間相似度的判定更為寬松,用戶節(jié)點(diǎn)間的邊數(shù)與權(quán)重不斷增加,導(dǎo)致各社區(qū)間的邊界不清晰,模塊度不斷下降。當(dāng)距離閾值取0.2 時(shí),模塊度最大,為0.89,相似度距離閾值取0.3 時(shí),模塊度為0.72,相似距離閾值取1.0時(shí),模塊度僅為0.27。
圖4 相似度距離閾值的影響Fig.4 Influence of similarity distance threshold
由圖4(b)中數(shù)據(jù)可知,隨著相似距離閾值的不斷增加,檢測(cè)出的社區(qū)數(shù)量呈下降趨勢(shì)。當(dāng)相似度距離閾值取0.2時(shí),檢測(cè)出社區(qū)數(shù)量最多,達(dá)到46個(gè),當(dāng)閾值取0.3時(shí),社區(qū)數(shù)量快速下降為20 個(gè),取其他閾值時(shí),檢測(cè)出社區(qū)數(shù)量相對(duì)平穩(wěn)。
同時(shí)由圖4(c)中數(shù)據(jù)可知,參與社區(qū)發(fā)現(xiàn)的用戶數(shù)量與相似距離閾值呈反比關(guān)系,過小的距離閾值導(dǎo)致過多的用戶與所有用戶間的相似度為0。當(dāng)距離閾值取0.3 時(shí),共有357 個(gè)用戶參與社區(qū)發(fā)現(xiàn),距離閾值取0.2時(shí),僅保留了272個(gè)用戶進(jìn)行社區(qū)發(fā)現(xiàn)。
在實(shí)踐中,當(dāng)模塊度大于0.3時(shí),節(jié)點(diǎn)網(wǎng)絡(luò)呈現(xiàn)出顯著的社區(qū)結(jié)構(gòu)[34]。如圖5 所示,當(dāng)相似距離閾值閾值取0.2時(shí),僅依據(jù)模塊度指標(biāo)進(jìn)行評(píng)價(jià),社區(qū)發(fā)現(xiàn)的結(jié)果較好,但需要注意的是,此時(shí)檢測(cè)出的社區(qū)多數(shù)為2~3 個(gè)節(jié)點(diǎn)構(gòu)成的小社區(qū),導(dǎo)致每個(gè)社區(qū)的言論數(shù)據(jù)有限,同時(shí)參與社區(qū)發(fā)現(xiàn)的用戶較少。雖然可以采取將剩余的用戶劃為一個(gè)社區(qū)方法進(jìn)行處理,但這些數(shù)量較多的未參與社區(qū)發(fā)現(xiàn)的用戶之間可能存在社區(qū)結(jié)構(gòu),不利于輿情數(shù)據(jù)的社區(qū)化管理。
綜上所述,當(dāng)相似度距離閾值取0.3 時(shí),模塊度、檢測(cè)出的社區(qū)數(shù)量、參數(shù)用戶數(shù)量為較均衡的水平。
3.2.3 區(qū)塊鏈性能測(cè)試
本文選擇吞吐量和查詢平均延遲作為性能評(píng)估指標(biāo),利用Hyperledger Caliper 進(jìn)行性能測(cè)試。在區(qū)塊鏈系統(tǒng)中,網(wǎng)絡(luò)吞吐量是衡量系統(tǒng)性能的重要指標(biāo),它表示在單位時(shí)間內(nèi)確認(rèn)并寫入鏈中的事務(wù)數(shù)量,而查詢延遲則評(píng)估系統(tǒng)訪問區(qū)塊鏈賬本的響應(yīng)時(shí)間。
本文設(shè)置了六輪測(cè)試,最小事務(wù)量為100,最大事務(wù)量為5 000,每輪分4 次讀寫所有事務(wù),取4 次測(cè)試數(shù)據(jù)的查詢延遲、吞吐量、發(fā)送率的平均值作為本輪測(cè)試的結(jié)果。如圖6 所示,在六輪測(cè)試中,僅在查詢事務(wù)量為1 000 時(shí),延遲出現(xiàn)小幅波動(dòng),總體而言,查詢延遲并未隨查詢事務(wù)數(shù)量的增加而大幅上漲,延遲數(shù)據(jù)保持在一個(gè)相對(duì)平穩(wěn)的水平,約為110 ms。
圖6 查詢延遲性能測(cè)試Fig.6 Query delay performance tests
如圖7所示,本系統(tǒng)在六輪測(cè)試中吞吐量的性能表現(xiàn)穩(wěn)定,網(wǎng)絡(luò)吞吐量和事務(wù)發(fā)送速率大致相同,隨著事務(wù)數(shù)量的不斷增加,網(wǎng)絡(luò)的總體吞吐量與發(fā)送率未出現(xiàn)較大波動(dòng),均在550 TPS 以上。綜上所述,利用區(qū)塊鏈系統(tǒng)分片通信機(jī)制與Raft共識(shí)算法,可以在處理大規(guī)模請(qǐng)求時(shí)保持穩(wěn)定的性能,為輿情數(shù)據(jù)的可信記錄與溯源提供支撐。
圖7 吞吐量性能測(cè)試Fig.7 Throughput performance test
本節(jié)將對(duì)雙層輿情區(qū)塊鏈在數(shù)據(jù)防篡改、數(shù)據(jù)完整性、隱私保護(hù)方面的安全特點(diǎn)進(jìn)行分析與總結(jié)。
(1)數(shù)據(jù)防篡改:存儲(chǔ)在雙層區(qū)塊鏈中的輿情數(shù)據(jù)使用節(jié)點(diǎn)的私鑰進(jìn)行數(shù)字簽名,同時(shí)記錄進(jìn)行簽名的節(jié)點(diǎn)的公鑰,驗(yàn)證者可利用該公鑰驗(yàn)證簽名后數(shù)據(jù),對(duì)區(qū)塊中記錄的事務(wù)數(shù)據(jù)進(jìn)行核對(duì)。另外鏈上數(shù)據(jù)以分布式架構(gòu)存放在區(qū)塊鏈網(wǎng)絡(luò)的各個(gè)節(jié)點(diǎn)中,每個(gè)節(jié)點(diǎn)保存相同的數(shù)據(jù)副本,元宇宙社交網(wǎng)絡(luò)中身處不同時(shí)空域的海量鏈上節(jié)點(diǎn)使得數(shù)據(jù)難以篡改。因此本方法基于區(qū)塊鏈的不可篡改性,既能保障鏈上數(shù)據(jù)的不可抵賴,也可以保證數(shù)據(jù)的完整性。
(2)數(shù)據(jù)完整性:由于社交網(wǎng)絡(luò)用戶可以對(duì)自己的言論數(shù)據(jù)進(jìn)行隨意修改或刪除,導(dǎo)致溯源證據(jù)鏈斷裂,所以利用原始言論數(shù)據(jù)進(jìn)行溯源時(shí),可能無(wú)法查找到信息的發(fā)布源頭。針對(duì)此問題,本方法將每個(gè)用戶的所有言論內(nèi)容的哈希值上鏈,充分利用區(qū)塊鏈數(shù)據(jù)的不可篡改優(yōu)勢(shì),用戶只能刪除其發(fā)表的原始言論數(shù)據(jù),鏈上數(shù)據(jù)作為用戶行為的存證不會(huì)被刪除,可利用完整的哈希證據(jù)鏈對(duì)輿情信息進(jìn)行溯源。因此可以為重大輿情事件溯源提供完整的數(shù)據(jù)支撐。
(3)隱私保護(hù):由于鏈上數(shù)據(jù)公開透明,所有鏈上節(jié)點(diǎn)均可讀取,鏈上記錄不應(yīng)明文存儲(chǔ)用戶的隱私數(shù)據(jù)。本方法中的上鏈數(shù)據(jù)僅包含用戶各類行為數(shù)據(jù)及言論關(guān)鍵詞的哈希值,不存儲(chǔ)其明文數(shù)據(jù),其他鏈上節(jié)點(diǎn)無(wú)法獲取用戶的隱私數(shù)據(jù),可以為元宇宙社交網(wǎng)絡(luò)用戶提供良好的隱私保護(hù)。
通過上述安全特點(diǎn)的分析可知,本方法能夠保障元宇宙社交網(wǎng)絡(luò)用戶間實(shí)時(shí)互動(dòng)數(shù)據(jù)的防篡改、完整性與隱私保護(hù),支撐基于鏈上數(shù)據(jù)的可信輿情事件溯源,具有較好的安全性與實(shí)用性。
本文提出了一種基于雙層區(qū)塊鏈的重大輿情事件溯源方法,初步探索了基于區(qū)塊鏈的元宇宙可信社交網(wǎng)絡(luò)的技術(shù)路徑。該方法基于用戶間興趣相似度劃分興趣社區(qū),實(shí)現(xiàn)輿情數(shù)據(jù)社區(qū)化管理,在不存儲(chǔ)用戶原始言論數(shù)據(jù)的條件下,基于用戶間互動(dòng)關(guān)系與言論哈希值建立鏈內(nèi)數(shù)據(jù)索引,檢索鏈上不可篡改的言論存證數(shù)據(jù)形成多源頭溯源證據(jù)鏈,在充分保障用戶隱私安全的前提下實(shí)現(xiàn)重大輿情事件的可信溯源。同時(shí),基于節(jié)點(diǎn)影響力設(shè)計(jì)聲譽(yù)積分機(jī)制,以聲譽(yù)積分機(jī)制約束用戶行為,激勵(lì)用戶自主對(duì)輿論環(huán)境進(jìn)行維護(hù)。
未來(lái)的研究工作可從基于圖神經(jīng)網(wǎng)絡(luò)的社區(qū)發(fā)現(xiàn)、區(qū)塊鏈的共識(shí)效率提升、基于言論情感極性分析的輿情態(tài)勢(shì)判斷等方面展開,在此基礎(chǔ)上提出基于區(qū)塊鏈的元宇宙可信社交網(wǎng)絡(luò)構(gòu)建的技術(shù)方案。