陳亞男 薄 濤 王 洋 王 喆 高 爽 熊政輝
1)北京市地震局, 北京 100080
2)中國地震應急搜救中心, 北京 100049
3)中國地震局地球物理研究所, 北京 100081
4)聯(lián)通數(shù)字科技有限公司, 北京 102600
地震發(fā)生后的首要任務是準確高效地開展地震應急處置、維護正常社會秩序并保障人民生命財產(chǎn)安全(閃淳昌等,2012)。地震災情輿情信息的收集是決策者制定有效應急指揮方案重要且不可替代的基礎(何晶,2012;郁璟貽等,2018)。近年來,隨著互聯(lián)網(wǎng)技術的快速發(fā)展,地震發(fā)生后,社交媒體涌現(xiàn)出了大量的地震輿情信息,這些信息實時海量高效地反映了災區(qū)的真實情況,為震后72 h 黃金救災救援提供重要的應急服務支持(聶高眾等,2012)。隨著地震輿情在應急中受重視程度不斷加深,研究者對震后社交媒體輿情數(shù)據(jù)開展了一系列的研究工作,并結合實際需求進行了綜合利用,有利于應急期震后信息的獲取與共享、災情輿情的快速研判及政府的應急救援決策(褚俊秀等,2016;曹彥波等,2017a;薄濤等,2018)。在地震輿情數(shù)據(jù)獲取挖掘方面,楊菁等(2014)通過對雅安地震后不同時間節(jié)點的新浪微博數(shù)據(jù)的統(tǒng)計分析,探索地震發(fā)生后微博輿情結構主體及其應急反應特征。王艷東等(2016)基于新浪微博文本數(shù)據(jù),探尋不同主題下突發(fā)事件隨時間的發(fā)展趨勢并分析可能的影響。徐敬海等(2015)、褚俊秀等(2016)提出了基于地震應急期新浪位置微博的提取方法,分別以永善5.0 級地震、魯?shù)?.5 級地震為例進行應用。曹彥波等(2017a,2017b,2018)分別對景谷6.6 級地震、九寨溝7.0 級地震、云南省通??h2 次5.0 級地震的新浪微博開放平臺API 數(shù)據(jù)進行了清洗挖掘與時空演變規(guī)律分析。李亞芳等(2020)運用網(wǎng)絡爬蟲技術,對新疆伽師6.4 級地震后48 h 內(nèi)發(fā)布的新浪微博文本數(shù)據(jù)進行了輿情信息分析及可視化研究。劉婉婷等(2021)基于新浪微博數(shù)據(jù),運用網(wǎng)絡爬蟲技術,獲取西藏自治區(qū)那曲市比如縣6.1 級地震震后24 h 及震后7 d 的相關微博及評論,對數(shù)據(jù)進行清洗和預處理,并進行時空特征分析,實現(xiàn)微博輿情數(shù)據(jù)的可視化表達。劉耀輝等(2022)以2021 年云南漾濞6.4 級地震為例,基于新浪微博數(shù)據(jù),結合熱搜詞條的變化趨勢,研究此次地震事件中網(wǎng)絡輿情的時空擴散特征、民眾情緒反應特征及可視化結果呈現(xiàn)。
由上述研究可知,現(xiàn)階段震后輿情數(shù)據(jù)挖掘及輿情信息情感分析雖取得一定進展,但大多數(shù)研究者僅針對單次地震的數(shù)據(jù)開展挖掘分析,缺乏系統(tǒng)全面的社交媒體地震輿情數(shù)據(jù)庫。從大量、不完全、有噪聲、模糊、隨機的社交媒體數(shù)據(jù)中提取有價值的地震輿情數(shù)據(jù)加以分析及利用具有重要意義。薄濤(2018)以2010-2018 年破壞性地震為研究對象,建立了我國大陸地區(qū)首個基于社交媒體平臺的破壞性地震災情數(shù)據(jù)庫,但該數(shù)據(jù)庫主要收集的是歷史數(shù)據(jù),無法對實時發(fā)生的地震自動進行數(shù)據(jù)獲取與存儲,在數(shù)據(jù)完備性上也與實際需求存在一定差距。為此,本文選取新浪微博移動端作為數(shù)據(jù)源,對接EQIM(Earthquake Instant Messager),建立準實時新浪微博地震輿情數(shù)據(jù)庫,對2021 年1 月1 日以來我國大陸地區(qū)3.0 級及以上地震實現(xiàn)輿情數(shù)據(jù)的準實時獲取、加工與入庫,數(shù)據(jù)庫的準實時功能和預處理技術提升了使用效率與數(shù)據(jù)完備度,為后續(xù)的輿情監(jiān)控與災情研判工作提供了數(shù)據(jù)支持。
目前常見的新浪微博地震輿情數(shù)據(jù)獲取方式有微博開放平臺API、網(wǎng)絡爬蟲、數(shù)據(jù)源鏡像及開放數(shù)據(jù)平臺,對上述方法原理及優(yōu)缺點進行了梳理,如表1 所示(袁浩,2009;廉捷等,2011;劉曉娟等,2013;游翔等,2014;楊飛等,2016)。其中,作為官方途徑獲取數(shù)據(jù)的新浪微博開放平臺API 和不受身份驗證限制的網(wǎng)絡爬蟲最為常用。
表1 微博數(shù)據(jù)獲取方法Table 1 Data acquisition methods of Weibo
震后對于以新浪微博為代表的社交媒體平臺進行數(shù)據(jù)獲取,其需求主要來自于兩方面,即輿情監(jiān)控與災情研判。獲取的微博數(shù)據(jù)在滿足全面性和高效性的基礎上,對距極震區(qū)較近區(qū)域的時空數(shù)據(jù)有較高需求,以反映輿情影響范圍,因此在輿情數(shù)據(jù)精準性的要求上較高。單一的新浪微博地震輿情獲取具有一定局限性,難以滿足日益增長的數(shù)據(jù)需求。因此,本文通過新浪微博開放平臺API 與分布式網(wǎng)絡爬蟲相結合的方式獲取我國大陸地區(qū)新浪微博地震輿情數(shù)據(jù),保證數(shù)據(jù)可高效、全面與穩(wěn)定獲取。
對于獲取途徑,微博信息讀取接口與EQIM 接口對接,地震發(fā)生后,EQIM 觸發(fā),地震三要素信息推送進入微博信息讀取接口,自動創(chuàng)建地震事件,實現(xiàn)微博地震輿情數(shù)據(jù)準實時獲取。依據(jù)關鍵詞檢索方法,調(diào)用微博全量數(shù)據(jù)接口與地震局官方微博客戶端數(shù)據(jù)接口(其中微博全量數(shù)據(jù)檢索設定查詢關鍵詞為地震、震、搖、晃、搖晃、振動等,地震局官方微博評論檢索包含中國地震臺網(wǎng)中心及各省地震局官方微博ID,設定查詢關鍵詞為地震發(fā)震時間、地震發(fā)震地點等),獲取震后72 h 內(nèi)的微博地震輿情數(shù)據(jù),并對地震輿情數(shù)據(jù)進行預處理和結構化加工。在獲取過程中,通過分布式網(wǎng)絡爬蟲,爬取微博開放平臺API 接口中無法獲取的微博用戶信息,并將信息存入數(shù)據(jù)庫中,實現(xiàn)微博地震輿情數(shù)據(jù)的全量檢索。數(shù)據(jù)獲取流程如圖1 所示,通常情況下,新浪微博地震輿情數(shù)據(jù)庫在震后15 min 內(nèi)完成數(shù)據(jù)的檢索下載及入庫工作。
圖1 新浪微博地震輿情數(shù)據(jù)獲取流程Fig.1 Weibo earthquake public opinion data acquisition flowchart
由于微博平臺具有大眾化、不受時空限制、靈活度較高等特點,用戶在發(fā)表微博過程中會發(fā)送如網(wǎng)址HTML 標簽、話題標簽、無用的表情符號、不相關內(nèi)容等噪聲數(shù)據(jù),這些噪聲數(shù)據(jù)對文本的分詞和詞頻統(tǒng)計均會造成影響,因此需對下載數(shù)據(jù)中無意義的信息進行數(shù)據(jù)清洗與預處理,流程如圖2 所示。在處理過程中,將微博全量數(shù)據(jù)檢索與地震局官方微博檢索中重合的ID 值數(shù)據(jù)自動剔除,實現(xiàn)重復文本數(shù)據(jù)的單一提取。對于數(shù)字、符號、無用網(wǎng)址、表情等無關文本內(nèi)容數(shù)據(jù),使用正則表達式進行清洗與刪除,提取文本內(nèi)容。對于地震相關性準確分類,由于傳統(tǒng)方法依靠機器學習模型,通過分析字符的統(tǒng)計特征達到分類和識別是否與地震相關的目的,難以實現(xiàn)地震相關性的準確分類。因此,本文提出基于fastText 模型的地震相關性識別方法,通過預處理和詞嵌入將社交媒體文本轉化為多維詞向量,經(jīng)過隱藏層對詞向量進行疊加平均,通過輸出層輸出特定的目標類別,流程如圖3 所示。該模型在訓練過程中模擬fastText 的標準3 層架構,依次使用詞嵌入層、一維全局平均池化層和全連接層拼接成最終的分類模型。
圖2 數(shù)據(jù)清洗與預處理流程Fig.2 Flow chart of data cleaning and preprocessing
圖3 基于fastText 的地震相關性二分類學習模型Fig.3 Seismic correlation dichotomous learning model based on fastText
本文訓練文本數(shù)據(jù)采用薄濤(2018)建立的我國大陸地區(qū)破壞性地震社交媒體災情數(shù)據(jù)庫中的數(shù)據(jù),隨機抽取2010-2018 年12 000 條文本數(shù)據(jù)(其中訓練集8 000 條,測試集4 000 條),對12 000 條數(shù)據(jù)使用python 中的JIEBA 分詞進行微博文本數(shù)據(jù)分詞處理操作。詞向量采用預訓練的中文維基百科詞向量,每個詞向量維度為300?;趂astText 的地震相關性分類模型方法對訓練集數(shù)據(jù)進行二分類,將與地震相關的文本數(shù)據(jù)標記為1,將與地震不相關的文本數(shù)據(jù)標記為0,隨后用測試集數(shù)據(jù)進行驗證。
在持續(xù)不斷的文本數(shù)據(jù)入庫后,數(shù)據(jù)量持續(xù)增多,數(shù)據(jù)庫中會有大量不相關的數(shù)據(jù)積累,因此通過更多的訓練次數(shù)和更大的學習速率對文本分類模型進行持續(xù)迭代優(yōu)化。提升準確率流程如圖4 所示,具體方法如下:①增加每個訓練用例的重復使用次數(shù),目前fastText 在訓練期間對每個訓練用例僅重復使用5 次,對于8 000 條訓練樣例而言稍少,因此通過增加每個樣例的使用次數(shù)提高模型質(zhì)量;②改變模型學習速度,良好的學習率為0.1~1.0,可通過測試得到更優(yōu)的學習速率,進而提高模型能力;③提升訓練速度,目前幾千個示例模型僅需要幾秒鐘,但如果數(shù)據(jù)集增大、標簽增多,模型訓練速度會變慢,從而考慮使用分層softmax,加快訓練速度,提升模型質(zhì)量。經(jīng)過2021 年實際震例檢測,該方法預處理的文本數(shù)據(jù)準確率為79.5%,微博文本數(shù)據(jù)預處理前后結果對比如圖5 所示。通過預處理可較好地解決數(shù)據(jù)冗余問題,并自動提升數(shù)據(jù)準確性。
圖4 迭代優(yōu)化流程Fig.4 Flow chart of iterative optimization
圖5 微博文本數(shù)據(jù)預處理前后結果對比Fig.5 Comparison of results before and after processing of Weibo text data
新浪微博地震輿情數(shù)據(jù)庫主要應用PostGIS 地理空間數(shù)據(jù)庫與MySQL 關系型數(shù)據(jù)庫分別存儲GIS 數(shù)據(jù)與關系數(shù)據(jù)。在邏輯上,數(shù)據(jù)庫的總體設計劃分為主體數(shù)據(jù)庫與元數(shù)據(jù)庫,主體數(shù)據(jù)庫主要包含微博評論數(shù)據(jù)、實時微博數(shù)據(jù)、地震事件數(shù)據(jù)、數(shù)量統(tǒng)計數(shù)據(jù)和系統(tǒng)運行數(shù)據(jù),建設邏輯如圖6 所示。在數(shù)據(jù)表的設計上,主要包含微博內(nèi)容和用戶關系兩部分。數(shù)據(jù)字段包含地震事件、微博用戶、微博內(nèi)容等14 個字段,具體字段屬性如表2 所示。其中,數(shù)據(jù)庫的唯一標識為微博唯一標識碼,字段名稱命名依據(jù)數(shù)據(jù)庫名稱縮寫、習慣名稱與下劃線組合的方式進行。
圖6 新浪微博地震輿情數(shù)據(jù)庫建設邏輯Fig.6 Concrete construction logic diagram of Weibo earthquake public opinion database
表2 新浪微博地震輿情數(shù)據(jù)庫字段屬性Table 2 Field attribute table of Weibo earthquake public opinion database
為方便數(shù)據(jù)查詢與管理,采用阿里云平臺,建立了Web 端新浪微博地震輿情數(shù)據(jù)庫及管理平臺(圖7),設計了快速查詢、精準查詢及數(shù)據(jù)下載模塊。其中,快速查詢模塊基于時間與震級進行標簽式快速檢索;精準查詢模塊基于發(fā)震日期、經(jīng)緯度、震級、發(fā)震地點、震源深度等多維參數(shù)進行精準檢索;數(shù)據(jù)下載模塊中的數(shù)據(jù)通過JSON 格式請求調(diào)用,具體數(shù)據(jù)列表可進行Excel 下載,下載結果包括地震事件名稱、發(fā)震時間、發(fā)震位置、經(jīng)緯度、震級、抓取的微博數(shù)據(jù)等。
圖7 Web 端新浪微博地震輿情數(shù)據(jù)庫管理平臺設計架構Fig.7 Design framework of Weibo earthquake public opinion database management platform on Web
一般情況下,當?shù)卣鹫鸺塎S為3.0 級及以上時,一般人群可感受到地震的發(fā)生,故中國地震臺網(wǎng)中心對我國大陸地區(qū)3.0 級及以上的地震實現(xiàn)了微博信息的自動推送,因此,本文研究對象為我國大陸地區(qū)3.0級及以上地震。通過對2021 年1 月1 日至2022 年3 月31 日我國大陸地區(qū)3.0 級及以上地震的新浪微博輿情數(shù)據(jù)進行抓取與預處理后,入庫至搭建完成的新浪微博地震輿情數(shù)據(jù)庫中,共包含447 次地震,共獲得732 949 條地震輿情數(shù)據(jù),如表3 所示。新浪微博地震輿情數(shù)據(jù)庫使用界面如圖8、圖9 所示,地震發(fā)生后下載的新浪微博地震輿情事例如圖10 所示。
圖8 新浪微博地震輿情數(shù)據(jù)庫快速查詢界面Fig.8 Quick query interface of Weibo earthquake public opinion database
圖9 新浪微博地震輿情數(shù)據(jù)庫精準查詢界面Fig.9 Accurate query interface of Weibo earthquake public opinion database
圖10 單次地震新浪微博地震輿情示例Fig.10 Weibo earthquake public opinion case excel display chart for a single earthquake
表3 部分地震輿情數(shù)據(jù)(2021 年1 月1 日至2022 年3 月31 日)Table 3 List of earthquake public opinion data catalogue (From January 1, 2021 to March 31, 2022)
對社交媒體新浪微博地震輿情數(shù)據(jù)庫中的輿情數(shù)據(jù)進行初步研究分析,得出以下結論:
(1)在時間特征方面,震后輿情信息峰值一般出現(xiàn)在震后2~3 h,隨后關注度會逐漸降低(圖11);地震輿情信息時間曲線受晝夜變化影響,峰值會出現(xiàn)延后現(xiàn)象,且曲線多呈連續(xù)U 形。在空間特征方面,對發(fā)震地為云南、四川等地的地震頻次及地震微博數(shù)據(jù)量進行對比,結果表明小震發(fā)生頻次高,但獲取的微博數(shù)據(jù)量小,即輿情熱度低;大震發(fā)生頻次低,但獲取的微博數(shù)據(jù)量大,即輿情熱度高,說明破壞性地震在社交媒體上獲得關注度較高,此類地震發(fā)生時應做好輿情管理工作(圖12)。在數(shù)據(jù)方面,新浪微博地震輿情數(shù)據(jù)庫中存在部分數(shù)據(jù)抓取量為0 的地震,主要位于新疆和西藏,這可能是因為該次地震發(fā)生在無人區(qū)或荒無人煙的地方,地震影響小,公眾關注度低,也可能因震級過小未引起公眾關注。
圖11 地震輿情時間特征分布示例Fig.11 Example of time feature distribution of earthquake public opinion
圖12 云南、四川地區(qū)震級與地震頻次及單次地震微博發(fā)布量關系Fig.12 Relationship between magnitude,frequency of earthquakes and Weibo release of single earthquake in Yunnan and Sichuan
(2)2021 年5 月21 日云南漾濞發(fā)生6.4 級地震,為前-主-余型地震,余震頻發(fā),在新浪微博地震輿情數(shù)據(jù)庫中第一次出現(xiàn)地震輿情信息被劃分到前震、主震及余震的多次地震事件中,實時統(tǒng)計到的主震輿情數(shù)據(jù)為11 960 條。經(jīng)后期統(tǒng)計發(fā)現(xiàn),此次地震事件實際共獲取輿情數(shù)據(jù)59 159 條。對輿情數(shù)據(jù)進行挖掘分析時,時空特征分析等具有一定難度,云南漾濞地震發(fā)生后,筆者所在研究團隊及時進行了數(shù)據(jù)獲取策略變更,將同一發(fā)震地區(qū)震后72 h 內(nèi)的輿情信息全部歸置到首次地震發(fā)生時的地震輿情信息中,如果此次地震為前主余型,人工將記錄至前震的地震輿情數(shù)據(jù)修改至主震地震輿情數(shù)據(jù)中。經(jīng)查,數(shù)據(jù)獲取策略變更后,本數(shù)據(jù)庫中涉及的震后72 h 內(nèi)余震輿情數(shù)據(jù)均實現(xiàn)了歸集。
(3)新浪微博地震輿情數(shù)據(jù)庫可提升的方面包括:①數(shù)據(jù)來源單一,僅涉及新浪微博的結構化文本數(shù)據(jù),對非結構化的圖片和視頻數(shù)據(jù)并未涉及;②隨著我國相關法律的實施,微博對位置信息的獲取進行了技術限制,本數(shù)據(jù)庫在架構設計時雖設計了微博發(fā)布位置的信息提取功能,但今后本數(shù)據(jù)庫的位置微博獲取將受到一定影響,影響程度有待進一步評估。
社交媒體作為大數(shù)據(jù)收集、存儲與傳播的新途徑,越來越受到重視。本文在已有研究的基礎上,采用新浪微博移動端為數(shù)據(jù)源,使用關聯(lián)數(shù)據(jù)庫管理系統(tǒng)MySQL,收集并建立了我國大陸地區(qū)3.0 級及以上地震準實時新浪微博地震輿情數(shù)據(jù)庫。該數(shù)據(jù)庫中獲取了2021 年1 月1 日至2022 年3 月31 日我國大陸地區(qū)有地震輿情的3.0 級及以上地震共447 次,共獲得地震輿情數(shù)據(jù)732 949 條。通過研究實現(xiàn)了微博信息讀取接口與EQIM 接口的對接及新浪微博地震輿情數(shù)據(jù)的準實時抓取,通過分布式爬蟲與新浪微博開放平臺API 接口相結合的方式高效、全面、穩(wěn)定地獲取了我國大陸地區(qū)震后地震輿情數(shù)據(jù)。采用fastText 模型的地震相關性識別方法開展數(shù)據(jù)相關性分析,數(shù)據(jù)準確率為79.5%。建立了Web 端新浪微博地震輿情數(shù)據(jù)庫及管理平臺,實現(xiàn)了數(shù)據(jù)下載、快速查詢及精確查詢,方便數(shù)據(jù)查詢與管理。通過對數(shù)據(jù)庫中的數(shù)據(jù)進行時空分析,發(fā)現(xiàn)新浪微博地震輿情數(shù)據(jù)庫中的輿情數(shù)據(jù)較豐富完備,對使用過程中發(fā)現(xiàn)的問題進行及時修正,可使輿情數(shù)據(jù)滿足研究工作需求,新浪微博地震輿情數(shù)據(jù)庫的建立為今后社交媒體地震輿情數(shù)據(jù)挖掘提供了參考,將進一步提升挖掘的深度與廣度,提升繼續(xù)學習的準確率,拓寬數(shù)據(jù)庫來源并在深度學習方面進行完善。