程 志
(福建省地震局,福州 350003)
據有關部門測算,一次廣泛的地震謠言事件所造成的損失,不亞于一次中等強度的地震。自 2008年汶川大地震以來,我國曾發生多起地震謠傳事件,每次都帶來了較大的社會危害。由于互聯網在信息傳播上的優勢,互聯網媒體經常是地震謠言的滋生源。特別是新出現的微博平臺,由于其極大降低了個體對社會發布和傳播信息的成本,它已成為最主要的網絡謠言傳播平臺。針對這種情況,本文提出一種面向新浪微博的地震謠言監測系統,通過對該微博平臺的實時檢測,實現及時發現新出現的地震謠言的目的。
微博地震謠言監測系統的運行過程主要包括疑似謠言信息的捕捉、進一步甄別和告警3個步驟。
(1)疑似謠言信息的捕捉:由于新浪微博平臺提供了獨立的微博搜索引擎,通過它可以抓取含有指定關鍵字的微博內容。因此,在此基礎上設計定制的網絡爬蟲程序定期對微博搜索引擎指定關鍵字頁面進行網頁數據挖掘,對照之前的挖掘記錄排除冗余結果即可獲得最新的疑似信息,疑似信息以XML格式提交給下一步驟。
(2)疑似信息的進一步甄別:使用干擾信息的過濾和高危信息匹配兩種策略相結合的方式實現甄別。干擾信息和高危信息均通過與知識庫匹配判定。知識庫里保存兩類信息特征,一是常見的干擾信息的特征,以分詞組形式保存,例如,以“地震”為關鍵字捕捉到的疑似信息里如果包含“官場地震”、“娛樂圈地震”等分詞,則判定為干擾信息予以排除;另一種是高危謠言的特征,以正則表達式的形式保存,以福州為例,如果疑似信息里一句話中按照先后順序包含“預測”,“福州”,“將發生”,“級地震”等詞,即可判定為是地震謠言。
(3)告警:系統接駁短信網關,發現地震謠言后將相關人員的手機發送告警短信。
系統主要由6個軟件模塊及配置文件、挖掘規則文件、知識庫(數據庫)構成。①下載模塊:定時提交特定關鍵字對應的URL提交給新浪微博搜索引擎,下載對應的HTML頁面文件。下載的時間間隔和關鍵字列表記錄在配置文件中。②HTML解析器:將下載到的HTML文件解析成內存中的數據對象。③HTML數據挖掘模塊:根據挖掘規則文件從HTML解析器生成的數據對象提取微博列表,包括每一條微博的發布者名稱,帳號,微博正文等信息,并保存至一個XML對象中。挖掘規則文件記錄了下載到的HTML頁面中關鍵的HTML元素與要生成的XML對象中的元素的映射關系。④干擾信息過濾模塊:分析HTML數據挖掘模塊生成的XML中的微博條目,根據分詞庫獲得微博正文包含的分詞集,與知識庫中常見干擾信息包含的分詞進行匹配從而過濾干擾信息。⑤高危信息檢測模塊:將經干擾信息過濾模塊處理后的XML對象中的微博正文進行分句,將分句與知識庫中高危信息的正則表達式進行匹配,產生判定結果提交給報警模塊。⑥報警模塊:編輯報警信息,并發送給配置文件中記錄的手機號碼。該模塊一端接駁短信網關API,另一端對高危信息檢測模塊提供寫入接口。
系統程序部分使用Visual C#語言編寫,數據庫為My SQL,使用開源的HTML Parser組件作為HTML解析器。另外,在我局之前為其他項目開發的HTML頁面數據挖掘組件XBPicker中的大部分代碼被復用至本系統中HTML數據挖掘模塊中。
2012年3月至4月間,系統累計試運行了20天,設定的監控地區為福建,系統共捕捉到65條謠言信息,其中僅一條為誤報警。該系統首次實現了對新浪微博平臺的地震謠言監測功能,具有首創意義。系統具有簡單易用,檢測精度較高,實時性好的特點,將地震謠言被發布至被檢測到的時間間隔縮短到幾分鐘以內,具有較高的實用價值。