田俐
(湖北汽車工業(yè)學(xué)院 湖北省十堰市 442002)
服務(wù)型政府并不是一個新提出的概念,其社會管理功能大于政治統(tǒng)治性功能,該服務(wù)性受到了我國行政學(xué)界的青睞,有關(guān)理論也成為了多個學(xué)者的研究熱點。同時政務(wù)服務(wù)也被越來越多的公民所關(guān)注, 即人們不斷關(guān)注政府功能與作用[1]。
我國政府一直是服務(wù)性政府, 但要想充分地發(fā)揮政府的服務(wù)性質(zhì), 還需要以群眾為依托,注重從群眾角度,反饋社會各類問題。近年來,12345 熱線已被廣泛認(rèn)可[2],它不僅可以解決公共的多種需要,還可以幫助政府更好地實現(xiàn)服務(wù)型政府的目標(biāo)。該熱線利用多種渠道,如12345、縣長郵箱、手機(jī)短信、手機(jī)客戶端、微博、微信,可以解決不同的需要,包含但不限于:有關(guān)行政、社區(qū)管理工作、公務(wù)的咨詢,針對不屬于緊急情況的求助,針對可疑的刑事犯罪活動,如侵害社會公民、企業(yè)法人或是任何機(jī)構(gòu)的權(quán)益,以及有關(guān)部門的監(jiān)督,以促使更多的企業(yè)實現(xiàn)可持續(xù)的發(fā)展。2021年1月6日,《國務(wù)院辦公廳有關(guān)繼續(xù)改善地方政務(wù)服務(wù)的指導(dǎo)意見》正式出臺,旨在加強(qiáng)對地方政務(wù)服務(wù)的支持[3],以更好地解決公共的需求,促進(jìn)經(jīng)濟(jì)社會的可持續(xù)發(fā)展。
面對群眾通過12345 熱線反饋的問題,如何準(zhǔn)確地刻畫城市問題是值得探索的。傳統(tǒng)的方法成本高、時效性不強(qiáng),難以快速反映整個城市的問題所在。面對群眾反饋的各種數(shù)據(jù),使用機(jī)器學(xué)習(xí)算法快速挖掘各類問題,準(zhǔn)確提取出當(dāng)前熱點問題是值得探討的事情。
本文采用文本向量化、聚類等知識內(nèi)容,對北京大學(xué)開放研究數(shù)據(jù)平臺上的“三亞市‘12345’市民服務(wù)熱線記錄數(shù)據(jù)”展開分析[4]。
文本不能直接使用機(jī)器學(xué)習(xí)算法,需要將其轉(zhuǎn)化為機(jī)器了解的數(shù)據(jù)語言。例如:常見的文本向量化方式詞袋模型,它通過計算每個數(shù)據(jù)的頻次來提取數(shù)據(jù)信息,并將其轉(zhuǎn)換成一個較大維度的向量形式數(shù)據(jù)。但這種計算不考慮數(shù)據(jù)的語法和意思,而是通過計算頻次來提取信息。另一種常見的方式是TF-IDF 算法,其計算方法為:TF-IDF=詞頻(TF)*逆文檔頻率(IDF),其中TF 代表文件中某個單詞的出現(xiàn)的次數(shù),而IDF 則取決于文件總數(shù)/每個單詞所占文件的比例。當(dāng)包含單詞的文件數(shù)較少時,IDF 的數(shù)值會較大。通過TF-IDF 計算,可以將文本轉(zhuǎn)換為向量形式,從而直接使用算法分析。然而,TF-IDF 計算依賴于一種假定,即某一文件中的重點單詞在其他文件所占比例較小。此處使用TextRank進(jìn)行處理后,降低信息維度,再使用詞袋模型對其進(jìn)行向量化處理。TextRank[5]算法是延用PageRank[6]算法的思想創(chuàng)建的基于圖模型的關(guān)鍵詞提取算法。TextRank 算法將文本轉(zhuǎn)化為以詞為節(jié)點,語義為邊的詞語網(wǎng)絡(luò)圖,較LDA 等算法而言,其無需引入外部語料進(jìn)行訓(xùn)練,便可實現(xiàn)關(guān)鍵詞的抽取。其主要計算各個詞與其他詞的關(guān)聯(lián),即邊的權(quán)重,公式如下所示:
其中,ws(vi)表示句子i 的權(quán)重,wij表示兩個句子的相似度。其流程為:首先對詞進(jìn)行分詞處理,而后僅保留部分帶有詞性標(biāo)簽的詞語,構(gòu)建 N 個大小的窗口內(nèi),若滑動窗口,詞v1 與詞v2 在同一個窗口內(nèi),則它們與一條邊相連。每個頂點的分?jǐn)?shù)設(shè)置為1,頂點 Vi 的權(quán)重由連接到 Vi 的點In(Vi)、Out(Vj) 的權(quán)重來計算。從而根據(jù)其權(quán)重可以得到單詞的排序。
該算法對每個文檔單獨執(zhí)行,不需要一個文檔語料庫來進(jìn)行關(guān)鍵字提取[7]。
主成分分析(PCA)作一種非監(jiān)督的學(xué)習(xí)算法,具有節(jié)省時間、降低維度的優(yōu)勢,因此被應(yīng)用于各種特征值提取的場合。pca 采用正交變換,把一個高維度的數(shù)據(jù)轉(zhuǎn)換成一個低緯度的數(shù)據(jù),同時最大限度地保留原有的信息,使得我們的分析更加快速。具體而言,我們經(jīng)過計算協(xié)方差矩陣,得出它的特征值,并且建立它們的特征向量,具體的計算公式如下所示:
(λiE-A)x=0
其中λi 和x 分別表示矩陣A 的特征值和特征向量,將特征向量組合成一個新的矩陣,然后通過矩陣乘法的方式,就可以獲得經(jīng)過降維處理的數(shù)據(jù)。例如求得的特征向量矩陣為x',原數(shù)據(jù)為x,則降維后的數(shù)據(jù)為x'x。
KMeans 算法是一種典型的聚類算法,它是無監(jiān)督學(xué)習(xí)算法,可以根據(jù)樣本之間的相似度關(guān)系分為不同的簇。KMeans 算法是一種基于距離計算相似度的方法,其一般采用歐氏距離來表示樣本之間的相似度關(guān)系。距離公式如下所示:
du,v=∑|ui-v|
ui表示數(shù)據(jù)成員,v 表示k 個簇的中心。若計算得到兩個對象的距離越近,其相似度就越大,則可將其視作一類。Kmeans 算法的基本原理是:對于一群數(shù)據(jù),確定k 個中心點,此處可使用肘部法確定,先假設(shè)分別將k 值設(shè)置為1、2、3 等等一系列值,計算樣本點到各個質(zhì)心的距離,而后根據(jù)距離繪制折線圖,找出圖中變化最大的點的k 值,即為此處選定的k 值。而后根據(jù)k個中心點的特征值和樣本點的特征值,計算各個樣本點到中心點之間的距離,選擇距離最近的中心點,將其歸為一類。計算完所有樣本點,分至不同簇中,而后得到了k 個簇。對于這k 個簇而言,顯然之前給定的質(zhì)心不再是現(xiàn)在簇的中心點了,因而需要重新計算每個簇的質(zhì)心,即該簇中各個樣本點的平均值,更新質(zhì)心點后,再次計算各個樣本點到質(zhì)心之間的距離,繼續(xù)分簇,并再次更新質(zhì)心。不斷重復(fù)這一過程,直到質(zhì)心不再改變,或各個聚類中的樣本點保持不變或誤差平方和局部最小,即得到kmeans 算法最終的分簇結(jié)果。
數(shù)據(jù)預(yù)處理是進(jìn)行后續(xù)數(shù)據(jù)分析、數(shù)據(jù)挖掘的基礎(chǔ)步驟,需要將數(shù)據(jù)處理成不含異常值,重復(fù)值,空值等的形式,同時根據(jù)具體要求提取相應(yīng)屬性列或進(jìn)行標(biāo)準(zhǔn)化。此處需要首先將文本文件轉(zhuǎn)換成機(jī)器可以識別的數(shù)據(jù)形式,此處主要先進(jìn)行中文分詞、去停用詞等操作[8],而后對上述處理后的數(shù)據(jù)取關(guān)鍵字,再進(jìn)行向量化處理。
2.1.1 分詞
本文選擇了三亞市二月份的15327 條數(shù)據(jù)作為研究對象,每個樣本含有orderAll、order、工單編號、工單分類、工單來源、來電時間、來電類型、工單標(biāo)題、工單內(nèi)容、工單狀態(tài)、是否延期、序號、處理時間、處理環(huán)節(jié)、處理單位、處理描述、extractAddress、lon84、lat84、cluster 等20 個特征值,即共有20 個特征列。此處僅使用oder、工單標(biāo)題、工單內(nèi)容、工單分類、extractAddress 等數(shù)據(jù),例如表1 為其中一個樣本值。
表1:數(shù)據(jù)集示例
從“工單標(biāo)題”的數(shù)據(jù)來看,其中已經(jīng)包含了市民反映的核心問題,與“工單內(nèi)容”相比,其僅缺少反饋方式,因此,直接使用“工單標(biāo)題”的數(shù)據(jù),并進(jìn)行相關(guān)的處理,將其轉(zhuǎn)化為向量形式,具體步驟如下:
(1)刪除“續(xù)”、數(shù)字、地址等部分內(nèi)容,同時處理‘再次來電’等重復(fù)數(shù)據(jù)等問題。此處,續(xù)后面為工單編號,此處未找到與之對應(yīng)的工單編號,直接刪除。數(shù)字部分一般為某個小區(qū)所在位置,或是時間等,不是問題信息,同樣地址也不是具體反映的中心部分,可進(jìn)行適當(dāng)刪除。
(2)分詞處理。此處使用jieba 工具進(jìn)行分詞。jieba是一種常用的分詞方式,它通過利用 Trie 樹的架構(gòu),將句子中的所有可能的單詞排列形成一個有向無環(huán)圖,而后通過動態(tài)規(guī)劃來尋求最大概率路徑,從而得到分詞。jieba 擁有三種分詞模式:精確模式;全模式;搜索引擎模式。jieba 是一種非常有效的分詞工具,它容易獲取,且精度高,無須事先搜集有關(guān)語料進(jìn)行訓(xùn)練,極大地減少了時間成本。此處使用其精確模式,將“工單標(biāo)題”劃分成一個僅包含單詞的字符串,為下一步關(guān)鍵詞提取、向量化提供了基礎(chǔ)詞語。
(3)使用正則表達(dá)式,刪除停用詞等無意義詞,提取問題描述數(shù)據(jù)。通過分詞,我們能夠更好地識別出句子的主題。然而,我們也會發(fā)現(xiàn),許多例如表達(dá)語氣的單詞、標(biāo)點符號或者連接詞,而“關(guān)以及”、“問題”、“一棟”、“一巷”則完全等不具有任何分析的意義,我們必須先可以在此步中這些已使用才能更這樣好地識別出重點。此處刪除停用詞使用的是中文停用表“cn_stopwords.txt”文件。
2.1.2 文本向量化
使用one-hot 獨熱碼編碼方式處理上述“工單分類”這項離散數(shù)據(jù),將其轉(zhuǎn)換成僅含有0 和1 的矩陣形式,對上述分詞后的工單標(biāo)題詞組,使用詞袋模型,進(jìn)行向量化處理[9],轉(zhuǎn)換成一個稀疏矩陣,具體操作為將處理后的不同關(guān)鍵字作為columns 值,當(dāng)該單詞在這個樣本‘工單標(biāo)題“中存在時,將其置為1,反之置為0。其公式可簡寫為下列形式:
對上述關(guān)鍵詞向量化后,與工單分類矩陣數(shù)據(jù)拼接。此時若直接使用該數(shù)據(jù),其維度太高,運行成本過大。此處使用PCA 主成分分析法進(jìn)行降維處理,處理過程為計算矩陣的特征值和特征向量,組合特征向量得到特征矩陣,與原數(shù)據(jù)矩陣作乘法,即可得到降維之后的數(shù)據(jù)。本文將上述矩陣維度降至二維。這樣處理使得原本的數(shù)據(jù)信息得以保留,同時降低了處理成本。
在上述二維數(shù)據(jù)的基礎(chǔ)上,本文繼續(xù)使用KMeans算法對其進(jìn)行聚類分析[10]。此處選用kmeans 算法主要是由于在此之前數(shù)據(jù)集中并沒有一個明確的label 標(biāo)志著各個工單問題分別屬于哪個核心問題,不知道目標(biāo)變量是什么,主要目的是將相似的樣本自動歸到一個類別中,因而此處使用非監(jiān)督學(xué)習(xí)算法,而KMeans 算法顯然是非監(jiān)督學(xué)習(xí)算法中用于聚類的典型代表,因而此處使用KMeans 算法計算各個數(shù)據(jù)相似度并進(jìn)行聚類處理。面對預(yù)處理后的數(shù)據(jù)首先需要確定k 值,使用肘部法,畫出肘部圖,發(fā)現(xiàn)當(dāng)k=3 時,畸變程度變化最明顯。為了避免過擬合或達(dá)不到分類的目的,我們選擇k 的值為3,并從圖像中隨機(jī)選擇3 個聚類的質(zhì)心及中心點,然后計算上述各個樣本點與質(zhì)心之間的距離或相似度,并按照相似度大小將其劃分到相似度較小的類中,同時更新3 個質(zhì)心的值,重復(fù)這個步驟,直到達(dá)到質(zhì)心不再發(fā)生改變。聚類結(jié)果如圖1 所示。
圖1:kmeans 算法分簇圖
從以上圖像可以看出,根據(jù)kmeans 算法,就“工單標(biāo)題”、“工單分類”而言可以將問題大體分為三個簇,此處分別用綠色點、藍(lán)色點、橙色點表示,每個簇的質(zhì)心使用相同顏色的星型圖案顯示在圖中。此處分簇效果比較好,簇間距離較大,簇內(nèi)距離較小,分類比較明顯。
將上述每個簇的“工單標(biāo)題”拼接成一個數(shù)據(jù),對該數(shù)據(jù)使用TestRank 算法,計算出每一類的關(guān)鍵詞。最終得到集中突出的問題為噪音和違停的問題。觀察原始數(shù)據(jù)有771 條數(shù)據(jù)涉及到“噪音”問題,450 條數(shù)據(jù)涉及到違停問題。
本文通過對北京大學(xué)開放研究數(shù)據(jù)平臺“三亞市‘12345’市民服務(wù)熱線記錄數(shù)據(jù)”2019年2月數(shù)據(jù)處理并展開分析,得到海南省三亞市群眾于二月份反映的主要問題可以劃分為三類,反映了噪聲和違停等問題。從這些數(shù)據(jù)可以看出在2019年2月,三亞市民對這一類問題比較困擾,市政府等相關(guān)單位應(yīng)著手于此,從集中反應(yīng)的問題出發(fā),逐步解決群眾反饋的問題。通過有效利用和深入挖掘這一類政務(wù)數(shù)據(jù),我們不僅能夠更好地了解當(dāng)前的社會狀況,還能夠有效地幫助我們構(gòu)筑起一個具有高效率、高質(zhì)量的服務(wù)型政府,從而極大地改善和優(yōu)化我們的社會環(huán)境,實現(xiàn)城市的高效運轉(zhuǎn)。
但顯然,使用本文中提到的算法內(nèi)容對大規(guī)模數(shù)據(jù)進(jìn)行分析速度較慢,而且單單使用這幾列數(shù)據(jù),以及以上算法對此進(jìn)行分析,其分析效果還是是不夠的,需要進(jìn)一步處理數(shù)據(jù),給定相應(yīng)場景的分詞,停用詞,進(jìn)行數(shù)據(jù)分詞以及提取數(shù)據(jù)關(guān)鍵詞,同時提升算法,才能得到一個更好的效果。在未來,我將從更多的維度進(jìn)行展開分析,而不單單局限于上述提到的這幾個部分,進(jìn)一步改進(jìn)數(shù)據(jù)預(yù)處理部分,以及分類計算方法,從而使得分析結(jié)果能夠更加清楚地反映市民生活過程中的集中問題。