鄭榮新 齊同軍
政務服務大數(shù)據(jù)報告是針對政務服務的,主要反映了政務服務的社情民意和輿情動向,梳理并客觀呈現(xiàn)政務服務的輿情熱點、黨和政府政務方針政策及反饋、治國理政體系及能力建設、政務服務新思想、新技術、新做法、新經(jīng)驗等有關政務服務的一切資訊。同時,介紹境外媒體網(wǎng)站上對中國政務服務的評論,關注國際重大事件特別是對中國政務服務有影響的事件,幫助領導干部拓展視野,更好地做好政務服務工作,在問責制年代為領導干部提供應對參考。
對一個政務服務大數(shù)據(jù)報告來說,它的基本流程有以下六步:明確分析的目的,確定關鍵詞和分析角度;進行數(shù)據(jù)采集和預處理;進行數(shù)據(jù)儲存、索引和編目;進行數(shù)據(jù)的分析,得出分析結果;進行可視化展現(xiàn),直觀反映分析結果;編寫大數(shù)據(jù)報告,得出最終結論。在這六步中間,還貫穿著自然語言處理的步驟。
明確分析目的
用戶提出一個政務服務大數(shù)據(jù)報告的生成需求后,首先由相關的技術人員把這個報告的題目進行分解,明確分析的目的,確定數(shù)據(jù)分析的對象。然后決定要獲取哪些數(shù)據(jù)進行分析,從什么角度來分析,以及分析的關鍵詞等等。最后決定數(shù)據(jù)采集的來源。
明確分析目的是大數(shù)據(jù)報告生成的第一步,如果這一步的方向錯誤,那么后面的全部步驟都是無用功。為了保證這一步的正確性,目的分析都是由經(jīng)驗豐富的技術人員來擔任,并且在目的分析完成后,也要和用戶反復的溝通,直到確定充分理解了用戶的需求,才會進行后面的操作步驟。
對政務服務大數(shù)據(jù)報告的目的分析而言,這一步都是人工操作,沒有人工智能或者算法能夠代替。特別是數(shù)據(jù)采集的來源,通常都是由技術人員和用戶來定義,無法像傳統(tǒng)的搜索引擎一樣,能夠對整個Internet網(wǎng)進行全面的搜索。但是隨著大數(shù)據(jù)的逐漸發(fā)展,最終它的數(shù)據(jù)來源會面向整個Internet網(wǎng)絡。
分析的角度更是多樣化,有地域劃分、時間范圍、用戶類別、各類排名、滿意度、支持度、活躍度、關注度等等。對政務服務而言,用戶的情緒是一個很重要的分析角度。
同一個問題,分析角度不一樣,得出的結論會有很大的偏差,所以,選擇合適的分析角度也是非常重要,大數(shù)據(jù)報告應該盡可能多的選擇不同的分析角度給出結論。
數(shù)據(jù)采集和預處理
大數(shù)據(jù)技術中最重要的一環(huán)就是數(shù)據(jù)采集,也叫數(shù)據(jù)挖掘。它是通過數(shù)據(jù)爬取軟件平臺實現(xiàn)的。
數(shù)據(jù)爬取不限定于某種編程語言,也不限定于某種操作系統(tǒng)。不管是Java語言+Linux操作系統(tǒng),還是C#語言+Windows操作系統(tǒng)等等,都可以勝任數(shù)據(jù)爬取的工作。
同樣,數(shù)據(jù)的來源也是多種多樣,對政務服務大數(shù)據(jù)報告來說,數(shù)據(jù)來源可以是由爬取平臺在相關政務網(wǎng)站上爬取,也可以由填報系統(tǒng)人工錄入,也可以從Excel文檔導入,甚至還可以從相關的業(yè)務系統(tǒng)的數(shù)據(jù)庫直接讀取。
那么政務服務數(shù)據(jù)采集是從哪些網(wǎng)站來獲取數(shù)據(jù)的呢?主要是當?shù)氐氖∈锌h政務網(wǎng)站、國內(nèi)知名的新聞網(wǎng)站的政務版塊,以及一些國內(nèi)知名論壇的相關版塊。
一般來說,用戶可以自建數(shù)據(jù)挖掘平臺,但是也可以付費使用第三方的數(shù)據(jù)挖掘平臺。在大數(shù)據(jù)報告生成中,付費使用第三方的挖掘平臺的數(shù)據(jù),是一件很常見的事情。一定程度上的數(shù)據(jù)共享,可以有效節(jié)約時間和成本,對大數(shù)據(jù)報告的生成是非常有利的。
數(shù)據(jù)爬取需要爬蟲程序,從本質上來說,爬蟲就是一個能夠多線程運行的程序。它使用HTTP協(xié)議,根據(jù)設定好的爬取規(guī)則,通過GET和POST命令,得到相關網(wǎng)頁的源數(shù)據(jù)。然后通過一些程序插件去除里面的HTML、CSS修飾符和JS腳本等無效字符,得到數(shù)據(jù)分析所需要的文本數(shù)據(jù)。
數(shù)據(jù)的爬取規(guī)則,經(jīng)常采用XML文檔來保存,因為XML文檔里,可以定義非常復雜的爬取規(guī)則,讀取和編輯也較為方便。
每個要爬取的網(wǎng)頁的規(guī)則,通常是由程序員手工編寫,熟練的程序員一天能夠寫出好幾個頁面的爬取規(guī)則。現(xiàn)在還沒有好的智能算法能夠自動適應不同頁面數(shù)據(jù)爬取,一旦網(wǎng)站改版或者添加新的欄目,就必須要人工重新編寫爬取規(guī)則。
為了保證網(wǎng)站的正常運行,很多網(wǎng)站都有反爬手段,阻止爬蟲占用網(wǎng)站的數(shù)據(jù)和帶寬等資源。常見的反爬手段有字符驗證碼、圖片驗證碼、鼠標拖動滑塊驗證、IP訪問限制、流量限制、用戶必須登錄等等。爬蟲程序通常都有具有一定的反爬能力,能夠自動處理一些簡單的反爬手段,比如字符驗證碼和IP訪問限制等。但是對一些復雜反爬手段,也是無能無力,只能付費買授權或者從第三方買數(shù)據(jù)。
數(shù)據(jù)的爬取速度,通常幾個小時內(nèi),可以爬完一個小型網(wǎng)站的全部頁面,如果該網(wǎng)站的數(shù)據(jù)更新量較小,那么幾十分鐘內(nèi)就可以重新爬取一遍更新數(shù)據(jù)。爬蟲的數(shù)量越多,爬取速度也越快,但是為了防止被限制IP和封號,爬蟲的數(shù)量對單個網(wǎng)站都不會設置太多。對政務服務網(wǎng)站來說,需要爬取頁面的數(shù)量相對較少,所以在整個大數(shù)據(jù)報告周期里,數(shù)據(jù)爬取占用的時間并不是最多的。
數(shù)據(jù)爬取失敗報警機制是非常有必要的。如果某些網(wǎng)站數(shù)據(jù)爬取失敗,勢必影響最終的數(shù)據(jù)采集數(shù)量,從而影響最終的分析結果。
數(shù)據(jù)爬取完成后,還要進行數(shù)據(jù)預處理。這里的預處理一般是指根據(jù)網(wǎng)址進行數(shù)據(jù)排重和數(shù)據(jù)清洗,把重復的和有亂碼的數(shù)據(jù)丟掉。這一步很重要,通過數(shù)據(jù)預處理,能夠刪除絕大部分的無效數(shù)據(jù),可以大大減少存儲數(shù)據(jù)占用的空間,同時也減少數(shù)據(jù)分析的時間和資源消耗。
在數(shù)據(jù)爬取和數(shù)據(jù)排重、清洗的中間,還有消息中間件的存在,常見的如Kafka。消息中間件的作用是暫時存儲數(shù)據(jù),防止數(shù)據(jù)預處理跟不上數(shù)據(jù)采集的速度,從而引起采集數(shù)據(jù)的丟失。
數(shù)據(jù)存儲和索引
排重和清洗完成的數(shù)據(jù),需要封裝成便于后續(xù)處理的JSON格式,根據(jù)一定的規(guī)則,生成便于檢索的索引,也就是關鍵字,存入數(shù)據(jù)庫。
因為數(shù)據(jù)爬取每天要訪問成千上萬個網(wǎng)頁,產(chǎn)生的數(shù)據(jù)量非常大,而且大數(shù)據(jù)的保存時間一般都是永久,所以通常使用HBase數(shù)據(jù)庫。
HBase是Hadoop DataBase 的簡稱,也就是基于Hadoop的數(shù)據(jù)庫,是一種NoSQL數(shù)據(jù)庫,主要適用于海量明細數(shù)據(jù)(十億、百億)的隨機實時查詢,如日志明細、交易清單、軌跡行為等。簡單來說,它就是一種存儲量非常大、PB級別的、專門為大數(shù)據(jù)而生的超大型數(shù)據(jù)庫。
數(shù)據(jù)采集到的文本數(shù)據(jù),可能是一篇政務新聞,也可能一些用戶發(fā)表的評論。
數(shù)據(jù)的索引生成,需要對采集到的文本數(shù)據(jù)進行分詞,經(jīng)過分詞后的數(shù)據(jù),才能有效的完成索引,便于后面的SQL查詢。
文本的分詞,就是提取出一大段文本里面的關鍵詞。這些關鍵詞,通常都是和分析角度有關系的。
簡單的分詞處理,可以用分詞插件來完成,比如IK。但是分詞插件很死板,只有你事先定義的關鍵詞,才能幫你分詞,智能程度很低。
如果分析角度中包含地域,那么文本數(shù)據(jù)里面全部的地名,比如省市縣的名稱,都要提取出來作為索引。同樣,如果分析角度里面包含滿意度,那么文本數(shù)據(jù)里面和滿意度相關的情緒化的詞語,比如“支持”、“滿意”、“好”、“差”等等,也要全部提取出來,作為索引。
智能程度較高的索引,必須由自然語言處理平臺來協(xié)助完成。
自然語言處理
所謂自然語言,是指一種自然地隨文化演化的語言,比如英語、漢語、日語等。
有了自然語言處理的技術,計算機才能夠真正理解人類的語言,懂得語言中的語義和情緒等等。
自然語言處理是政務服務大數(shù)據(jù)分析中很重要的一個數(shù)據(jù)處理技術。
國內(nèi)比較知名的、開放的自然語言處理平臺,有哈工大的語言技術平臺(LTP)、騰訊文智自然語言處理NLP平臺等等。哈工大的語言技術平臺(LTP)的功能包括中文分詞、詞性標注、命名實體識別、依存句法分析、語義角色標注。騰訊文智自然語言處理的功能包括詞法分析,句法分析,篇章分析,下載抽取轉碼。
因為自然語言處理技術是一門非常復雜的技術,所以很少有大數(shù)據(jù)運營公司會單獨進行開發(fā),使用現(xiàn)成的自然語言技術平臺進行文本處理,是一種常見的處理手段。
在大數(shù)據(jù)報告的生成過程中,自然語言處理技術,可以幫我們將采集的數(shù)據(jù)歸類和建立索引,識別文本數(shù)據(jù)中的情緒,對政府服務報告有著不可或缺的作用。
自然語言處理技術,不僅僅用于數(shù)據(jù)的索引,還可以結合數(shù)據(jù)采集,對數(shù)據(jù)里面的日期和時間進行格式化和修復,對數(shù)據(jù)里面的地名進行省市縣的歸類。
很多文章里面的日期并不是年月日的標準格式,往往只有幾月幾號、今年、去年、幾年以前等等描述,通過自然語言處理加上文章的發(fā)布時間,可以將類似的日期修復成年月日的標準格式。
另外,在很多文章中的地名,往往只有本埠之類的描述,或者一個村莊的名稱,在本地是獨一無二的,但是放到全國范圍內(nèi),就有重名的。通過自然語言處理技術,分析出其他的一些信息,結合全國的地名表,也可以把地名修復成省市縣村的標準格式。
數(shù)據(jù)分析
以上全部的操作,都是為數(shù)據(jù)分析提供基本數(shù)據(jù)的。到了數(shù)據(jù)分析這步的時候,全部的數(shù)據(jù)都已經(jīng)入庫并且生成了索引。
數(shù)據(jù)分析包括基本數(shù)據(jù)分析,數(shù)據(jù)探索,復雜數(shù)據(jù)分析等。數(shù)據(jù)分析是大數(shù)據(jù)報告形成過程中,技術含量最高的部分。這里往往涉及到機器學習、深度分析、人工智能等方面。
進行數(shù)據(jù)分析的人員,不僅要熟悉相關行業(yè)知識和業(yè)務流程,還要有自己的獨到見解。若脫離了行業(yè)認知和業(yè)務背景,分析的結果就沒有太大的使用價值。
數(shù)據(jù)分析人員還要求掌握各種數(shù)據(jù)分析軟件工具,能夠根據(jù)不同的情況,選擇使用最合適的軟件工具對數(shù)據(jù)進行歸納分析。因為通過采集得到的數(shù)據(jù)是海量的,所以無法通過人工的方式進行查看,必須通過數(shù)據(jù)分析工具進行處理。常見的分析工具有ElasticSearch、Kibana等等。
數(shù)據(jù)分析從本質上來說,就是從不同的分析角度,編寫不同的SQL腳本,來獲取各個角度的數(shù)據(jù)的數(shù)量,計算出百分比。
報告的編寫人員,可以根據(jù)這些查詢數(shù)據(jù)作出可視化展現(xiàn)的圖表,寫出大數(shù)據(jù)報告,得出最終結論。
可視化展現(xiàn)
可視化展現(xiàn)是大數(shù)據(jù)分析結果最好的表現(xiàn)形式,它用圖表取代了文字說明,通過液晶屏或者高清彩色LED大屏幕,將數(shù)據(jù)分析結果用各種不同的圖表進行可視化展現(xiàn),讓人一目了然。
在可視化展現(xiàn)中,常見的圖表有散點圖(氣泡圖)、折線圖、柱狀圖、餅圖、地圖、雷達圖等幾種。除了這幾種常見的圖表以外,還有熱力圖、k線圖、關系圖、?;鶊D、漏斗圖、儀表盤等等其他圖表,也可以將各種圖表進行組合顯示,形成更復雜的圖表。
可視化展現(xiàn)經(jīng)常使用工具軟件來實現(xiàn),也可以根據(jù)實際情況,用ECharts等可視化圖表來自己構建。
大數(shù)據(jù)報告編寫
大數(shù)據(jù)報告是整個大數(shù)據(jù)分析流程的最終結果。
政務服務大數(shù)據(jù)報告是以一定的格式和規(guī)范,由熟悉相關行業(yè)知識和業(yè)務流程的專業(yè)人員,寫出的專業(yè)報告。它具有下面幾個特點:簡單可靠、清晰明了、邏輯性強。
它的數(shù)據(jù)來源于網(wǎng)絡,通過分析海量的數(shù)據(jù),從不同的角度得出數(shù)據(jù)結論,最后根據(jù)這些,得出大數(shù)據(jù)報告的最終結論。政務服務大數(shù)據(jù)的報告,對用戶情緒的關注度非常高。
由此可見,大數(shù)據(jù)報告是完全基于真實的數(shù)據(jù),特別是由第三方大數(shù)據(jù)運營公司獨立分析和編寫的大數(shù)據(jù)報告,最終報告結論的可信度是很高的。
(作者單位:浙江省杭州市數(shù)據(jù)資源管理局)