石少?zèng)_, 陳 鵬,2*, 曾昭龍, 胡校成
(1.中國(guó)人民公安大學(xué)信息技術(shù)與網(wǎng)絡(luò)安全學(xué)院,北京 102600;2.安全防范技術(shù)與風(fēng)險(xiǎn)評(píng)估公安部重點(diǎn)實(shí)驗(yàn)室,北京 102600;3.社會(huì)安全風(fēng)險(xiǎn)感知與防控大數(shù)據(jù)應(yīng)用國(guó)家工程實(shí)驗(yàn)室,北京 100043)
對(duì)犯罪活動(dòng)進(jìn)行態(tài)勢(shì)感知、情報(bào)挖掘、分析研判和預(yù)測(cè)是公安機(jī)關(guān)進(jìn)行犯罪打擊和預(yù)防的重要工作。其中,犯罪預(yù)測(cè)由于對(duì)勤務(wù)資源的調(diào)度和指揮具有重要的參考價(jià)值,受到了各級(jí)公安部門的高度關(guān)注。目前,在犯罪預(yù)測(cè)的研究領(lǐng)域,研究人員主要采用各類時(shí)間序列預(yù)測(cè)方法對(duì)犯罪活動(dòng)的時(shí)間趨勢(shì)進(jìn)行預(yù)測(cè)分析。從總體來(lái)看,現(xiàn)有的犯罪時(shí)間序列預(yù)測(cè)工作大體可以分為兩個(gè)方面,一是使用單一模型進(jìn)行犯罪時(shí)間序列的預(yù)測(cè),比如Yadav等利用ARMA模型預(yù)測(cè)了犯罪距離[1],Rodriguez等利用時(shí)間序列方法對(duì)舊金山犯罪數(shù)量進(jìn)行了預(yù)測(cè)[2],申貴成等[3]利用時(shí)間序列預(yù)測(cè)了短期交通流量,陳鵬等[4]則利用孤立點(diǎn)挖掘發(fā)現(xiàn)了警情時(shí)間序列的異常點(diǎn),單勇等[5]采用X-11方法對(duì)溫州市龍灣區(qū)的盜竊犯罪數(shù)量進(jìn)行了預(yù)測(cè),陳鵬等[6]使用ARIMA模型對(duì)廊坊市的110警情數(shù)據(jù)進(jìn)行了短期預(yù)測(cè),張立強(qiáng)等[7]利用一階整值對(duì)盜竊犯罪時(shí)間序列進(jìn)行了預(yù)測(cè),陳鵬等[8]使用模糊?;С窒蛄繖C(jī)對(duì)警情時(shí)間序列進(jìn)行了預(yù)測(cè),等等;二是使用復(fù)合模型進(jìn)行犯罪時(shí)間序列的預(yù)測(cè)分析,比如陳鵬等[9]構(gòu)建了灰色-馬爾可夫模型對(duì)廊坊侵財(cái)類警情數(shù)量進(jìn)行了預(yù)測(cè);涂小萌等[10]提出了ARIMA-LSSVM模型對(duì)犯罪時(shí)間序列進(jìn)行了預(yù)測(cè);劉美霖等[11]構(gòu)建了ANN-STARM模型預(yù)測(cè)了警情的數(shù)量,等等,從實(shí)際應(yīng)用來(lái)看,其效果要好于采用單一模型的預(yù)測(cè)精度。然而,這些研究大都以預(yù)測(cè)短期內(nèi)單位時(shí)間的案發(fā)數(shù)量為目標(biāo),同時(shí)由于犯罪事件本身隨機(jī)性強(qiáng),且容易受到人為因素和突發(fā)因素等多重噪聲因素的影響,因此實(shí)現(xiàn)犯罪或警情時(shí)間序列的精準(zhǔn)預(yù)測(cè)往往十分困難,即便能夠達(dá)到較好的預(yù)測(cè)精度,也只能實(shí)現(xiàn)短期內(nèi)預(yù)測(cè),無(wú)法實(shí)現(xiàn)長(zhǎng)周期的預(yù)測(cè)。實(shí)際上,從當(dāng)前公安工作的需求來(lái)看,其對(duì)犯罪或警情的時(shí)序預(yù)測(cè)不再以精準(zhǔn)的數(shù)量預(yù)測(cè)為主,而是希望獲得未來(lái)一段時(shí)期內(nèi)警情的分布或風(fēng)險(xiǎn)級(jí)別以便于提前進(jìn)行勤務(wù)資源的機(jī)動(dòng)調(diào)度和部署。為此,針對(duì)警情時(shí)間序列的特點(diǎn),以時(shí)間序列和神經(jīng)網(wǎng)絡(luò)模型為基礎(chǔ),提出了一種適合警情時(shí)間序列長(zhǎng)周期預(yù)測(cè)的STL-FNN模型,并以實(shí)際數(shù)據(jù)進(jìn)行分析,通過(guò)與傳統(tǒng)的預(yù)測(cè)方法相比較證明其在犯罪預(yù)測(cè)領(lǐng)域的有效性。
對(duì)時(shí)間序列Yt,其可以分解成趨勢(shì)項(xiàng)分量Tt、周期項(xiàng)分量St和殘差項(xiàng)Rt,其表達(dá)式如式(1)所示:
Yt=Tt+St+Rt,t=1,2,…,N
(1)
解趨勢(shì)項(xiàng)分量Tt、周期項(xiàng)分量St和殘差項(xiàng)Rt可以通過(guò)以魯棒局部加權(quán)回歸作為平滑方法的時(shí)間序列分解方法(seasonal decomposition of time series by loess,STL)得到[12-13],其分為內(nèi)循環(huán)與外循環(huán)兩個(gè)過(guò)程,其中內(nèi)循環(huán)主要實(shí)現(xiàn)時(shí)間序列趨勢(shì)分量的擬合與周期分量的計(jì)算,STL的外循環(huán)主要為調(diào)節(jié)魯棒性權(quán)重,以減少殘差項(xiàng)Rt的異常值對(duì)時(shí)間序列分解產(chǎn)生影響。
在內(nèi)循環(huán)每次迭代過(guò)程中,在(2)與(6)做LOESS回歸時(shí),鄰域權(quán)重需要乘以魯棒性權(quán)重ρt,以減少異常值對(duì)內(nèi)循環(huán)的影響,魯棒性權(quán)重ρt計(jì)算為:對(duì)任一時(shí)刻t,時(shí)間序列Yt的魯棒性權(quán)重ρt的計(jì)算如式(2)~式(4)所示:
(2)
(3)
h=6median(|Rt|)
(4)
式中:B為雙平方函數(shù);h為中間變量。
全連接神經(jīng)網(wǎng)絡(luò)(fully connected neural network,F(xiàn)NN)是一種非線性模型,是基于仿生人腦神經(jīng)系統(tǒng)工作原理而演化而來(lái),具備強(qiáng)大的非線性函數(shù)逼近能力[13],其相應(yīng)的演化模型應(yīng)用十分廣泛[14-16]。全連接神經(jīng)網(wǎng)絡(luò)是指任意相鄰兩層即n-1層任一神經(jīng)元節(jié)點(diǎn)都與n層的所有神經(jīng)元節(jié)點(diǎn)相連,第n層每個(gè)神經(jīng)元節(jié)點(diǎn)在進(jìn)行計(jì)算時(shí),其激活函數(shù)的輸入值是n-1層所有神經(jīng)節(jié)點(diǎn)的加權(quán)。其中yi為第n層第i個(gè)神經(jīng)元節(jié)點(diǎn)的輸出值,f為第n層第i個(gè)神經(jīng)元節(jié)點(diǎn)的激活函數(shù),xj為n-1層第j個(gè)神經(jīng)元節(jié)點(diǎn)的輸出值,wj為對(duì)應(yīng)的權(quán)重值。其公式如式(5):
(5)
激活函數(shù)采用廣泛應(yīng)用的線性整流函數(shù)(rectified linear unit,ReLU),公式如式(6):
(6)
損失函數(shù)采用均方差(mean squared error,MSE),公式如式(7):
(7)
式(7)中:observed指真實(shí)值;predicted指預(yù)測(cè)值;N為預(yù)測(cè)值個(gè)數(shù)。
從STL和FNN模型的算法原理可以看出,STL模型主要通過(guò)提取時(shí)間序列Yt中的趨勢(shì)項(xiàng)分量Tt和周期項(xiàng)St,并以Tt為基礎(chǔ)來(lái)進(jìn)行短期趨勢(shì)預(yù)測(cè)。而相比之下,F(xiàn)NN模型由于其強(qiáng)大的非線性擬合能力能夠?qū)r(shí)間序列Yt中的非線性分量,如周期項(xiàng)St和殘差項(xiàng)Rt進(jìn)行較為精準(zhǔn)的預(yù)測(cè)。因此,根據(jù)警情時(shí)間序列預(yù)測(cè)的現(xiàn)實(shí)需求,提出一種基于STL和FNN模型的警情時(shí)間序列長(zhǎng)周期預(yù)測(cè)模型。將警情時(shí)間序列的周期項(xiàng)分量St和殘差項(xiàng)Rt記為組合項(xiàng)Mt,則警情時(shí)間序列可以表示為
Yt=Tt+Mt
(8)
基于STL-FNN警情時(shí)間序列長(zhǎng)周期預(yù)測(cè)模型結(jié)構(gòu)如圖1所示,其實(shí)現(xiàn)步驟如下。
圖1 STL-FNN預(yù)測(cè)模型組成
(1)將周期長(zhǎng)度為k的警情時(shí)間序列訓(xùn)練數(shù)據(jù)Yt(t=1,2,…,N)導(dǎo)入模型,利用STL提取時(shí)間序列的趨勢(shì)項(xiàng)Tt和組合項(xiàng)Mt,設(shè)提取到的時(shí)間序列趨勢(shì)項(xiàng)序列為
Tt={T1,T2,…,TN}
(9)
設(shè)提取到的時(shí)間序列組合項(xiàng)為
Mt={M1,M2,…,MN}
(10)
(11)
(12)
(4)對(duì)得到的預(yù)測(cè)結(jié)果進(jìn)行相應(yīng)的標(biāo)準(zhǔn)差分級(jí),最終得到一個(gè)周期內(nèi)的單日警情風(fēng)險(xiǎn)等級(jí)。
為驗(yàn)證STL-FNN預(yù)測(cè)模型的有效性,以B市的盜竊類犯罪時(shí)間序列數(shù)據(jù)為例進(jìn)行一年周期的預(yù)測(cè)。數(shù)據(jù)的時(shí)間區(qū)間為2004—2014年,期間共發(fā)生盜竊類警情478 328起。以2004—2013年的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),2014年的數(shù)據(jù)為驗(yàn)證數(shù)據(jù)。首先,對(duì)B市的盜竊類警情記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)化,生成時(shí)間序列,時(shí)間單位為1 d。在特殊年份的處理方面,2004年、2008年、2012年均為閏年,除二月以外,閏年的時(shí)間長(zhǎng)度與平年相同,而閏年的二月份比平年的二月份僅多出2月29日1 d,其觀測(cè)值樣本較少,為減少平年、閏年的劃分對(duì)研究工作的影響,更好地研究說(shuō)明盜竊類案件的全年規(guī)律,需要將閏年特殊處理成平年,即刪除2月29日的數(shù)據(jù)。其次,在處理缺失值方面,采用相同日期歷史案發(fā)量的均值代替失時(shí)期的缺失值。
在單日警情風(fēng)險(xiǎn)等級(jí)的劃分上,采用標(biāo)準(zhǔn)差分級(jí)的方法[17-19]。根據(jù)公安部門的預(yù)測(cè)預(yù)警標(biāo)準(zhǔn),采用四色分級(jí)方法,將警情數(shù)量轉(zhuǎn)化為四類等級(jí),分別標(biāo)示為“輕度”“中度”“重度”和“嚴(yán)重”。具體劃分方法如表1所示。
表1 警情日風(fēng)險(xiǎn)等級(jí)劃分
注:min為實(shí)際警情最小值;μ為實(shí)際警情數(shù)量的均值;σ為實(shí)際案發(fā)數(shù)量的標(biāo)準(zhǔn)差;max為實(shí)際案發(fā)數(shù)量的最大值。如果預(yù)測(cè)的警情低于min,則將其劃分為一級(jí),若預(yù)測(cè)的警情高于max,則將其劃分為四級(jí)。
機(jī)器學(xué)習(xí)領(lǐng)域有一系列測(cè)試性度量方法來(lái)反映所訓(xùn)練模型的性能[20],這些測(cè)試性度量方法主要通過(guò)混淆矩陣實(shí)現(xiàn)。對(duì)此,STL-FNN模型的測(cè)試指標(biāo)借鑒了機(jī)器學(xué)習(xí)領(lǐng)域的混淆矩陣來(lái)衡量模型分級(jí)能力,混淆矩陣是一種觀察統(tǒng)計(jì)真實(shí)類別和預(yù)測(cè)類別的交叉列表,如表2所示。
表2 混淆矩陣
在機(jī)器學(xué)習(xí)領(lǐng)域,類別i被稱為興趣類別,非類別i被稱為非興趣類別,i∈(輕度,中度,重度,嚴(yán)重)。其中,P(a)是指模型真實(shí)值一致性比例,Pr(e)表示期望一致性的比例,TP為真陽(yáng)性(true positive),代表正確分類為感興趣類別樣本的數(shù)量;TN為真陰性(true negative),代表正確分類為非感興趣類別樣本的數(shù)量;FP為假陽(yáng)性(false positive),代表錯(cuò)誤分類為感興趣類別樣本的數(shù)量;FN為假陰性(false negative)代表錯(cuò)誤分類為非感興趣類樣本的數(shù)量。評(píng)價(jià)指標(biāo)主要采用Kappa值、預(yù)測(cè)精確度(Precision)、回溯精確度(Recall)和正確率(Accuracy),公式如下:
(13)
(14)
(15)
(16)
以2004—2013年間B市實(shí)際盜竊警情時(shí)間序列數(shù)據(jù)為訓(xùn)練集,以2014年B市實(shí)際盜竊警情時(shí)間序列為測(cè)試集,利用STL-FNN模型進(jìn)行預(yù)測(cè)分析。同時(shí),為便于對(duì)比,同樣采用Holt-Winters模型、LSTM模型、Prophet模型和ARIMA模型進(jìn)行數(shù)據(jù)訓(xùn)練和預(yù)測(cè)。圖2、圖3分別為STL-FNN模型、Holt-Winters模型、LSTM模型、Prophet模型和ARIMA模型的預(yù)測(cè)結(jié)果及2014年B市盜竊類警情時(shí)間序列實(shí)際發(fā)案風(fēng)險(xiǎn)等級(jí),其中構(gòu)建的ARIMA模型為ARIMA(5,1,1)。
圖2 各模型分級(jí)預(yù)測(cè)結(jié)果
從圖2可得,STL-FNN模型對(duì)2014年B市盜竊類警情時(shí)間序列風(fēng)險(xiǎn)等級(jí)的預(yù)測(cè)效果與實(shí)際結(jié)果最為接近,其中模型對(duì)“輕度”“中度”“重度”和“嚴(yán)重”四種單日警情的風(fēng)險(xiǎn)分級(jí)預(yù)測(cè)較為準(zhǔn)確,模型的延展性及可信度較高。而Holt-Winters模型則存在對(duì)“輕度”“中度”和“嚴(yán)重”風(fēng)險(xiǎn)等級(jí)預(yù)測(cè)不充分,對(duì)“重度”預(yù)測(cè)過(guò)度的問(wèn)題。LSTM模型和Prophet模型僅能對(duì)“中度”“重度”風(fēng)險(xiǎn)等級(jí)進(jìn)行有效預(yù)測(cè),但兩者的預(yù)測(cè)精確程度不高。ARIMA模型則失去了分級(jí)預(yù)測(cè)能力且對(duì)“中度”風(fēng)險(xiǎn)等級(jí)產(chǎn)生了學(xué)習(xí)過(guò)度現(xiàn)象。
利用Kappa值、預(yù)測(cè)精確度、回溯精確度和正確率四個(gè)指標(biāo)分別對(duì)不同的模型預(yù)測(cè)結(jié)果進(jìn)行評(píng)價(jià),評(píng)價(jià)結(jié)果如表3所示,其中Precision1、Precision2、Precision3、Precision4分別為對(duì)“輕度”、“中度”、“重度”和“嚴(yán)重”警情風(fēng)險(xiǎn)等級(jí)的預(yù)測(cè)精確度;Recall1、Recall2、Recall3、Recall4分別為對(duì)“輕度”、“中度”、“重度”和“嚴(yán)重”警情風(fēng)險(xiǎn)等級(jí)的回溯精確度。從表2中可見,STL-FNN模型的整體預(yù)測(cè)性能要好于其他四種模型。其中,STL-FNN模型對(duì)“輕度”“中度”“重度”和“嚴(yán)重”的警情風(fēng)險(xiǎn)分級(jí)預(yù)測(cè)能力較好,各項(xiàng)性能得分較為均衡,具有很好的穩(wěn)健性;Holt-Winter模型對(duì)“重度”識(shí)別的可信度是各個(gè)模型中最好的。LSTM模型、Prophet模型和ARIMA模型則不具備預(yù)測(cè)“輕度”“中度”“重度”“嚴(yán)重”四級(jí)的能力。STL-FNN模型整體對(duì)四類警情日風(fēng)險(xiǎn)等級(jí)預(yù)測(cè)的準(zhǔn)確率為62.47%,相對(duì)于其他四種傳統(tǒng)模型有著更好的預(yù)測(cè)效果,并可正確預(yù)測(cè)一年內(nèi)228 d的實(shí)際警情風(fēng)險(xiǎn)等級(jí)。
圖3 實(shí)際警情的分級(jí)結(jié)果
表3 各個(gè)模型分級(jí)預(yù)測(cè)的評(píng)價(jià)指標(biāo)
針對(duì)警情時(shí)間序列預(yù)測(cè)存在的不足,基于警情時(shí)間序列預(yù)測(cè)的實(shí)際需求,設(shè)計(jì)并提出了一種基于STL-FNN警情時(shí)間序列長(zhǎng)周期預(yù)測(cè)模型。該模型能夠綜合STL和FNN算法的特點(diǎn),實(shí)現(xiàn)對(duì)警情時(shí)間序列的長(zhǎng)周期風(fēng)險(xiǎn)等級(jí)預(yù)測(cè)。通過(guò)實(shí)證分析表明,STL-FNN模型能夠?qū)崿F(xiàn)周期為一年的警情時(shí)序預(yù)測(cè),并且預(yù)測(cè)效果要優(yōu)于傳統(tǒng)的預(yù)測(cè)模型。在實(shí)際應(yīng)用上,STL-FNN模型可以幫助公安機(jī)關(guān)預(yù)測(cè)未來(lái)警情的長(zhǎng)周期時(shí)間趨勢(shì),有助于預(yù)先發(fā)現(xiàn)警情異常的日期,輔助公安機(jī)關(guān)對(duì)犯罪活動(dòng)的作案時(shí)間規(guī)律進(jìn)行研判,從而制定有針對(duì)性地制定警務(wù)巡邏計(jì)劃和打擊犯罪計(jì)劃。