王書欣 陳元昭 張舒婷
(作者單位:深圳市氣象局)
如何獲取及利用網(wǎng)絡(luò)中蘊含的大量社會觀測數(shù)據(jù)成為新媒體時代氣象觀測發(fā)展的重點。深圳市氣象局利用爬蟲技術(shù)獲取數(shù)據(jù),并通過機器學(xué)習(xí)方法對數(shù)據(jù)進行篩選過濾,建立了一套高擴展性、高效性和低成本的氣象社會觀測數(shù)據(jù)的采集系統(tǒng),快速獲取、篩選、分析和提取有價值的、多樣化的氣象相關(guān)的社會觀測數(shù)據(jù),并對數(shù)據(jù)加以分析應(yīng)用,為預(yù)報員進行公眾服務(wù)、大城市氣象災(zāi)害風(fēng)險預(yù)警提供支撐。
傳統(tǒng)地面綜合氣象觀測是當(dāng)前對天氣進行預(yù)測的一種重要手段,但隨著社會經(jīng)濟的快速發(fā)展及計算機網(wǎng)絡(luò)技術(shù)的不斷完善,各大領(lǐng)域的數(shù)據(jù)量都飛速增加,使人們進入到大數(shù)據(jù)社會時代,移動網(wǎng)絡(luò)成為公眾獲取天氣信息的主要渠道,同時也成為信息發(fā)布的參與者之一,微博則是最具影響力的傳播途徑。在這一背景下,為使微博中大量社會數(shù)據(jù)更好地為氣象部門提供服務(wù),就必須完善社會化觀測數(shù)據(jù)獲取方法。因此探討基于爬蟲技術(shù)基礎(chǔ)之上的社會化觀測數(shù)據(jù)與獲取具有重要意義。
目前,盡管國內(nèi)氣象部門尚未有基于爬蟲技術(shù)的數(shù)據(jù)獲取技術(shù),但國內(nèi)外大量專家學(xué)者針對網(wǎng)絡(luò)爬蟲技術(shù)開展了大量的研究工作。基于以往研究,深圳市氣象局首度嘗試建立基于爬蟲技術(shù)的社會化觀測數(shù)據(jù)獲取平臺。本文將著重基于爬蟲技術(shù)探討社會化觀測數(shù)據(jù)獲取及應(yīng)用,以打破傳統(tǒng)氣象觀測壁壘,開展多源觀測數(shù)據(jù)的在線融合并推進氣象觀測的社會化,彌補觀測空缺,利用獲取數(shù)據(jù)分析熱度和情感,使社會化數(shù)據(jù)可以在天氣預(yù)報服務(wù)中得以利用。
隨著大數(shù)據(jù)時代的到來,氣象部門需建設(shè)一套高擴展性、高效性和低成本的氣象社會觀測數(shù)據(jù)的采集系統(tǒng),通過快速獲取、處理、分析和提取有價值的、多樣化的氣象相關(guān)的社會觀測數(shù)據(jù),以滿足當(dāng)今大數(shù)據(jù)環(huán)境下對于文本、圖片等數(shù)據(jù)的采集、存儲、分析及可視化需求,為社會提供更優(yōu)質(zhì)的服務(wù)。
為此,搭建基于爬蟲技術(shù)的社會化觀測數(shù)據(jù)獲取平臺,可以完成數(shù)據(jù)獲取,數(shù)據(jù)過濾以及數(shù)據(jù)分析三部分工作。通過爬蟲技術(shù)獲取包括冰雹、龍卷等現(xiàn)有探測設(shè)備無法精準捕捉的中小尺度天氣現(xiàn)象,其形式包括文字、圖片、視頻等。由于爬取到的數(shù)據(jù)有大量的重復(fù)、過時甚至是虛假信息,需要對其進行過濾,最終將可用的數(shù)據(jù)進行氣象實況監(jiān)控和公共服務(wù)輿論情感分析,后文將詳細闡述這部分工作。
平臺包含數(shù)據(jù)獲取模塊、數(shù)據(jù)存儲模塊和結(jié)果分析展示模塊(圖1)。基于氣象社會觀測信息的特點,采用分布式數(shù)據(jù)采集技術(shù),并存儲在數(shù)據(jù)庫中,通過建立機器學(xué)習(xí)、深度學(xué)習(xí)的模型對數(shù)據(jù)進行計算和分析,得到統(tǒng)計信息,最終通過可視化的界面展示。三個模塊分工明確,下層向上層提供可靠服務(wù),最終構(gòu)成整個完整的平臺。

圖1 社會化觀測數(shù)據(jù)獲取平臺設(shè)計模型
深圳天氣微博建立8年,截至2018年11月,粉絲187萬人,僅2018年閱讀量達10億次,轉(zhuǎn)評次數(shù)超過50萬次,超強臺風(fēng)山竹話題討論量過100萬次,在如此龐大的信息庫中存在著海量的社會自發(fā)上傳至社交媒體的觀測信息,與傳統(tǒng)氣象監(jiān)測如自動站、雷達、衛(wèi)星數(shù)據(jù)不同,社會觀測數(shù)據(jù)雖不能精確測量各種氣象要素,但可以監(jiān)測到包含冰雹、龍卷等罕見無法監(jiān)測的天氣現(xiàn)象,以及積水、滑坡等氣象部門無法掌握的衍生災(zāi)害實況,這些數(shù)據(jù)有效地對傳統(tǒng)氣象觀測數(shù)據(jù)進行補充,通過收集該信息的發(fā)布時間、發(fā)布地點以及相關(guān)內(nèi)容包括圖片、視頻等信息,擴大氣象數(shù)據(jù)觀測網(wǎng),共實現(xiàn)爬取冰雹、大風(fēng)、暴雨、雷電、龍卷5種氣象類信息,以及積水、洪澇、滑坡3種災(zāi)害影響類信息。
目前平臺數(shù)據(jù)主要來源于新浪微博,但此技術(shù)同樣可應(yīng)用于微信、各大門戶、新聞網(wǎng)站以及各政府部門網(wǎng)站,從而獲取氣象信息和其影響信息,此項工作未來將逐步開展。
網(wǎng)絡(luò)爬蟲技術(shù)是互聯(lián)網(wǎng)搜索功能中一項基本技術(shù),其在中國最成功的應(yīng)用就是百度搜索引擎,通過一傳十、十傳百的裂變搜索方式,實現(xiàn)信息的網(wǎng)狀獲取,該技術(shù)的優(yōu)點在于信息獲取速度快、內(nèi)容全。為此引入網(wǎng)絡(luò)爬蟲技術(shù)來獲取新浪微博中社會觀測數(shù)據(jù),并按照一定的預(yù)設(shè)關(guān)鍵詞、地域、時間等閾值進行自動識別、抓取氣象相關(guān)信息的程序和腳本。
基于網(wǎng)絡(luò)爬蟲技術(shù)獲取社會化觀測數(shù)據(jù)的方法主要包括:基于第三方軟件或者第三方微博數(shù)據(jù)集的方法、基于新浪公開API的方法和網(wǎng)絡(luò)爬蟲抓取的方法。通過使用爬蟲技術(shù)中通用的Scrapy爬取方式,可以同時發(fā)送多條爬取請求,同步進行信息爬取,最大化增進爬取效率。由于采集到的微博數(shù)據(jù)并非都是描述冰雹、龍卷風(fēng)、大風(fēng)等發(fā)生信息的數(shù)據(jù),需要采用文本分類技術(shù),將實際含有上述關(guān)鍵詞的文本識別出來,同時記錄其相關(guān)的圖片、視頻、網(wǎng)頁鏈接等信息。
所獲取的信息同時需判斷以下幾個條件以便進行后期分析:1)記錄的信息與災(zāi)害性天氣相關(guān);2)如果與災(zāi)害性天氣相關(guān),有明確的發(fā)生氣象現(xiàn)象的位置或時間;3)記錄的信息與輿情是否相關(guān)。
目前,基于新浪微博平臺的數(shù)據(jù)進行爬取的數(shù)據(jù)可在5 min內(nèi)完成,但結(jié)合深圳實際天氣情況以及工作需要將爬取頻率保持1次/h,鑒于目前雷達數(shù)據(jù)的更新頻率為6 min,在惡劣天氣下,也可后臺更改爬取頻率為1次/6 min。
通過爬蟲技術(shù)獲取的文本信息存在大量失真、失效、無用甚至是廣告數(shù)據(jù),為保證數(shù)據(jù)的可用性,需對其進行過濾篩選。通過機器學(xué)習(xí)方式,使用支持向量機(SVM)模式進行數(shù)據(jù)分類與回歸分析,由預(yù)報員人工判別給定的多組社會數(shù)據(jù)訓(xùn)練實例,將訓(xùn)練實例分類標記為有效、無效兩類,通過機器不斷學(xué)習(xí),使SVM模型成為非概率的二元線性分類器。當(dāng)出現(xiàn)新的實例時,SVM模型將其進行分類為有效或無效其中一類。經(jīng)過大量數(shù)據(jù)訓(xùn)練,機器將過濾篩選后的數(shù)據(jù)推送至前段展示,預(yù)報員仍可手動調(diào)整信息類別,通過不斷增加訓(xùn)練實例,形成正反饋機制,不斷優(yōu)化篩選模型。
利用爬蟲技術(shù)采集篩選后的微博數(shù)據(jù)仍存在大量的重復(fù)數(shù)據(jù)從而影響分析結(jié)果,選用simhash算法去重可以高效地將爬蟲系統(tǒng)每日數(shù)以千萬級的數(shù)據(jù)進行去重合并,通過對文檔關(guān)鍵詞進行拆分并整理成關(guān)鍵詞集合,對比不同文檔關(guān)鍵詞集合相似度,去除重復(fù)數(shù)據(jù)。
目前對廣東省范圍內(nèi)的冰雹、大風(fēng)、暴雨、雷電、龍卷5種氣象類信息,以及積水、洪澇、滑坡3種災(zāi)害影響類信息進行爬取,共獲取到53900條數(shù)據(jù),其中氣象類數(shù)據(jù)48538條,災(zāi)害影響類5362條,由圖2逐日數(shù)據(jù)結(jié)果展示可以直觀獲知深圳4—9月重大災(zāi)害天氣發(fā)生時間,如8月底持續(xù)季風(fēng)低壓降水和9月15—16日超強臺風(fēng)山竹影響,對于4月前汛期深圳無強對流、回南天等高影響天氣這種反例也有明顯表現(xiàn)。同時可以獲知社會數(shù)據(jù)獲取強度,對強天氣過程、衍生災(zāi)害進行準確識別。
氣象中所關(guān)注的熱度,是市民在一段時間內(nèi)所關(guān)注的某一天氣類型、災(zāi)害信息或是相關(guān)話題,我們提取其關(guān)鍵字作為熱度的主題詞。傳統(tǒng)的基于詞頻分析的主題模型不能從語義中進行分析,而將微博熱度作為計算基數(shù)的LDA主題模型則是將評論數(shù)、轉(zhuǎn)發(fā)數(shù)納入計算,獲取微博主題熱度分布,得到真實的高關(guān)注度數(shù)據(jù)信息,可供預(yù)報員更有針對性進行服務(wù)或是發(fā)現(xiàn)并處理輿情。

圖2 2018年4—9月逐日獲取數(shù)據(jù)結(jié)果展示(條)
對于微博氣象信息的挖掘,由于微博用戶之間具有關(guān)注與被關(guān)注、轉(zhuǎn)發(fā)與評論的關(guān)系,社會關(guān)系網(wǎng)龐大而復(fù)雜,常規(guī)的分析方法無法勝任。“深圳天氣”微博信息構(gòu)成的文本矩陣的稀疏性和高維度性,選擇使用潛在狄利克雷分布的主題生成模型(LDA)來完成基于潛在語義分析的文本挖掘方法進行的微博主題的挖掘。

圖3 2018年6月5—9日主題詞熱度分析結(jié)果展示
2018年6月6—8日受南海熱帶低壓影響,廣東大部出現(xiàn)大暴雨。通過統(tǒng)計2018年6月5—9日微博中社會化數(shù)據(jù)得出主題詞熱度如圖3所示,經(jīng)與天氣實況以及預(yù)報員輿情監(jiān)控對比看來,此次記錄為真實有效。統(tǒng)計顯示最受網(wǎng)友關(guān)注的天氣現(xiàn)象為臺風(fēng)、暴雨和大暴雨,深圳、江門和廣州則為受影響關(guān)注度最高的地區(qū),說明本次過程對珠三角地區(qū)的高密度人群影響更為顯著;同時天氣預(yù)警信息和高考信息也同樣備受關(guān)注,在進行公眾服務(wù)時應(yīng)將其與其他高熱度主題結(jié)合共同服務(wù)。
經(jīng)過未來的長期主題詞熱度數(shù)據(jù)積累,可以總結(jié)出公眾所真實關(guān)心、討論的天氣現(xiàn)象,從而根據(jù)需求,加大該天氣條件下的氣象服務(wù)力度。
氣象服務(wù)由于其必然存在的不準確性以及目前與公眾所期望的精細化預(yù)報間的差距,氣象部門經(jīng)常陷入輿論風(fēng)波,由于輿情信息的不能及時獲取,往往不能正確地化解輿情。而基于爬蟲技術(shù)獲取到的數(shù)據(jù)中除大量的社會觀測數(shù)據(jù),其中還包含著社會的情感狀態(tài),包括正面積極鼓勵的言語或是負面批評的指責(zé),分析數(shù)據(jù)中的情感走向有助于更好掌握輿情動態(tài),引導(dǎo)大眾評論走向,為氣象服務(wù)做出正面回應(yīng)。
目前爬取3萬條微博,84萬條深圳天氣微博的評論,人工對其中1萬條評論進行情感定性,分為積極評價(pos)和消極評價(neg)以及中性,根據(jù)多元伯努利事件模型(NB)、支持向量機(SVM)、卷積神經(jīng)網(wǎng)絡(luò)(CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)、霍普菲爾網(wǎng)絡(luò)(HN)、深度霍普菲爾網(wǎng)絡(luò)(Att+HN)、AVG函數(shù)、時間敏感網(wǎng)絡(luò)(TSN) 8種機器學(xué)習(xí)方法對3萬條評論進行分析實驗,通過計算情感定性準確率、相關(guān)系數(shù)以及方差確定學(xué)習(xí)方法,結(jié)果如圖4。

圖4 微博評論數(shù)據(jù)的對比試驗結(jié)果
統(tǒng)計表明,RNN、Att+HN 、AVG三種方法的分析結(jié)果更為準確,其中AVG方法的方差結(jié)果更優(yōu),準確率和相關(guān)性結(jié)果也名列前茅,綜合考慮AVG方法更穩(wěn)定更適合進行情感分析。
同樣,對6月5—9日降雨過程進行情感分析,共獲取15060條數(shù)據(jù)(表1),發(fā)現(xiàn)大部分評論感情色彩以中性為主,其中大部分是提出咨詢,惡劣天氣來臨或正在影響時人們關(guān)注度大幅提高,過程結(jié)束關(guān)注度急劇下降,9日數(shù)據(jù)量僅為7日的1/10;惡劣天氣下消極評價量、比例同步上升,而在惡劣天氣最初影響時人們更愿意發(fā)表有感情色彩的言論,6日積極和消極評價占比總評價數(shù)為22.3%,相較其他日期上升3%~5%。預(yù)報員根據(jù)以上情感分析數(shù)據(jù)及時引導(dǎo)輿論。

表1 2018年6月5—9日情感分析結(jié)果展示
根據(jù)過去一年的平臺建設(shè)與數(shù)據(jù)獲取分析發(fā)現(xiàn),基于爬蟲技術(shù)來獲取社會化觀測數(shù)據(jù)可以有效地補充常規(guī)氣象觀測的不足,尤其是在冰雹、大風(fēng)、暴雨等氣象災(zāi)害發(fā)生時可以快速獲取大量信息,并獲取其帶來的影響,加大輿情監(jiān)控,為預(yù)報員進行公眾與決策服務(wù)進行數(shù)據(jù)支撐。通過爬蟲技術(shù)獲取到的數(shù)據(jù)我們可以清楚獲知災(zāi)害發(fā)生的種類、時間、時長與地點,并進行記錄統(tǒng)計,為預(yù)報和決策服務(wù)提供支持;通過主題詞熱度分析,預(yù)報員可以清晰感知公眾關(guān)注熱點,并有針對性地開展公眾服務(wù);情感分析幫助預(yù)報員實時監(jiān)控輿情,在惡劣天氣或預(yù)報失誤時,及時化解輿情。
未來爬蟲技術(shù)在社會化觀測數(shù)據(jù)將結(jié)合雷達與自動站實況進一步優(yōu)化數(shù)據(jù)篩選結(jié)果,加大其真實可用性,并且獲取途徑將不僅限于新浪微博平臺,深圳天氣微信同樣具有100萬粉絲,年閱讀量超過1000萬次,各大新聞客戶端如騰訊、網(wǎng)易、今日頭條也具有極高的互動性,在上述平臺開展社會化觀測數(shù)據(jù)獲取工作,可以進一步擴大數(shù)據(jù)來源。該技術(shù)也可運用到政府網(wǎng)站及其他類型網(wǎng)站中,以用于獲取如河道、水位、浪潮等基礎(chǔ)信息的更細,使決策服務(wù)技術(shù)得到更多數(shù)據(jù)支撐。
深入閱讀
楊富蓮, 2017. 地面綜合氣象觀測能力提升對策. 科技與創(chuàng)新, 9:47-48.
姜青山, 2018. 淺談氣象服務(wù)App的開發(fā)與應(yīng)用. 科技風(fēng), (1): 124-124.王杰, 2017. 基于微博大數(shù)據(jù)的輿情監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn). 天津:中國民航大學(xué).
劉慶華, 覃茹芊, 2013. 探索區(qū)域氣象觀測站社會化保障的新模式.氣象研究與應(yīng)用, 34(z2): 170-171, 173.
石磊, 2013. 新浪API與網(wǎng)絡(luò)爬蟲結(jié)合獲取數(shù)據(jù)的研究與應(yīng)用. 中國電子商務(wù), (22): 58-59.
毛夏, 李磊, 江崟, 等, 2017. 深圳超大城市氣象探測數(shù)據(jù)在科學(xué)研究中的應(yīng)用. 廣東氣象, (6): 2-5.
Advances in Meteorological Science and Technology2019年3期