左昌盛 宋 歌
(平安銀行股份有限公司,廣東 深圳 518034)
?
基于機(jī)器學(xué)習(xí)的動(dòng)態(tài)基線及其在銀行網(wǎng)絡(luò)流量數(shù)據(jù)監(jiān)測(cè)中的應(yīng)用
左昌盛 宋 歌
(平安銀行股份有限公司,廣東 深圳 518034)
隨著金融科技的快速發(fā)展,基于網(wǎng)絡(luò)流量數(shù)據(jù)的性能管理、風(fēng)險(xiǎn)防范,尤其是異常流量檢測(cè)逐漸引起人們的重視。然而,傳統(tǒng)基于固定基線的流量檢測(cè)方法不能適應(yīng)逐漸增多的數(shù)據(jù)及日漸復(fù)雜的數(shù)據(jù)類(lèi)型,導(dǎo)致其檢測(cè)結(jié)果不準(zhǔn)確而產(chǎn)生錯(cuò)誤警報(bào),同時(shí)也大大耗費(fèi)人力物力。本文提出基于機(jī)器學(xué)習(xí)方法中主成分分析及最小二乘支持向量回歸機(jī)的動(dòng)態(tài)基線預(yù)測(cè)及檢驗(yàn)方法,實(shí)現(xiàn)了動(dòng)態(tài)基線的自主構(gòu)造及對(duì)異常指標(biāo)數(shù)據(jù)的自動(dòng)檢測(cè)。實(shí)際仿真結(jié)果表明,本文所提方法與基于加權(quán)方法的動(dòng)態(tài)基線相比,能更好地實(shí)現(xiàn)異常檢測(cè)與預(yù)警。
動(dòng)態(tài)基線;流量檢測(cè);分級(jí)預(yù)警;機(jī)器學(xué)習(xí)
1.引言
近年來(lái),隨著銀行業(yè)信息化建設(shè)的日趨完善,增強(qiáng)銀行風(fēng)險(xiǎn)防范水平是銀行業(yè)發(fā)展的必然要求。一方面,穩(wěn)定高效的信息系統(tǒng)可以提高銀行交易的便利性和管理的有效性;另一方面,隨著物聯(lián)網(wǎng)、大數(shù)據(jù)、云計(jì)算等新技術(shù)的發(fā)展和應(yīng)用,無(wú)處不在的數(shù)據(jù)正以前所未所的方式改變著人們的工作和生活。因此,數(shù)據(jù)分析已成為信息管理的重要和有效途徑。特別地,針對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)的監(jiān)測(cè),由于銀行交易量大,涉及范圍廣,對(duì)由此產(chǎn)生的大量原始數(shù)據(jù)進(jìn)行手工人為檢測(cè)將消耗大量的人力物力,并且效率低,不全面。因此,設(shè)計(jì)基于數(shù)據(jù)挖掘技術(shù)的異常流量自動(dòng)檢測(cè)系統(tǒng)是必要的。
對(duì)此,本文設(shè)計(jì)基于主成分分析(PCA)[1]及最小二乘支持向量回歸機(jī)(LS-SVR)[2]的動(dòng)態(tài)基線預(yù)測(cè)模型。具體地,本文利用主成分分析方法對(duì)預(yù)處理過(guò)的原始數(shù)據(jù)構(gòu)造綜合指標(biāo)以增加可解釋性,并構(gòu)造線性及非線性最小二乘支持向量回歸機(jī)模型,實(shí)現(xiàn)動(dòng)態(tài)基線值的預(yù)測(cè)。同時(shí),設(shè)計(jì)基于閾值技術(shù)的動(dòng)態(tài)預(yù)警機(jī)制,使得流量異常時(shí)能夠?qū)崿F(xiàn)實(shí)時(shí)預(yù)警。
2. 動(dòng)態(tài)基線模型
本節(jié)將實(shí)現(xiàn)基于網(wǎng)絡(luò)流量數(shù)據(jù)的多指標(biāo)體系的動(dòng)態(tài)基線預(yù)測(cè)及預(yù)警。假設(shè)一天截取數(shù)據(jù)節(jié)點(diǎn)數(shù)有m個(gè),已監(jiān)測(cè)l天。每個(gè)節(jié)點(diǎn)流量用n個(gè)特征指標(biāo)描述。記xij=(xij1,…,xijn)∈Rn為第j天第i個(gè)節(jié)點(diǎn)流量,其中xijk是xij的第k個(gè)流量指標(biāo)值,i=1,2,…,m,j=1,2,…,l,k=1,2,…,n。
2.1 綜合指標(biāo)構(gòu)建
為考慮多個(gè)特征指標(biāo)對(duì)基線值的綜合作用,同時(shí)為區(qū)分每個(gè)特征的貢獻(xiàn)率,本文利用由多個(gè)指標(biāo)構(gòu)成的綜合指標(biāo)做基線值預(yù)測(cè)。具體地,將采取主成分分析技術(shù)。
記
則主成分分析優(yōu)化問(wèn)題如下:

s.t.vTv=1,v∈Rn,
(1)

此時(shí),矩陣X變換成一個(gè)列向量,綜合指標(biāo)也得以構(gòu)造。值得注意的是,此時(shí)v*是二維向量,其分量分別為兩個(gè)特征指標(biāo)的在綜合指標(biāo)中的權(quán)重。
2. 2 動(dòng)態(tài)基線回歸
為實(shí)現(xiàn)基線值的預(yù)測(cè),下面對(duì)綜合指標(biāo)構(gòu)造回歸模型。對(duì)固定的i,i=1,2,…,m,考慮數(shù)據(jù)集{(1,xi1),…,(l,xil)}。根據(jù)綜合指標(biāo)的特點(diǎn),可選擇線性或非線性LS-SVR。記A=(1,2,…,l)T,Yi=(xi1,xi2,…,xil)T,e=(1,1,…,1)T∈Rl。對(duì)線性回歸,設(shè)所求解的回歸方程為f(z)=wz+b,其中w,b∈R為欲求系數(shù),z為變量。則該線性回歸問(wèn)題可由以下最小二乘支持向量回歸機(jī)(LS-SVR)實(shí)現(xiàn):
s.t.(Aw+eb)-Y=ζ,
(2)
其中C>0是一個(gè)調(diào)節(jié)參數(shù)。
由于模型(2)采用線性等式約束,且考慮平方損失函數(shù),因此求解速度較快。事實(shí)上,優(yōu)化問(wèn)題(2)可通過(guò)其對(duì)偶問(wèn)題求解,且本質(zhì)上只相當(dāng)于求解一個(gè)線性方程組。具體地,設(shè)α∈Rl為問(wèn)題(2)的對(duì)偶變量,則求解a和b需求解以下線性方程組
(3)
由(2)求解得到a和b后,可得預(yù)測(cè)函數(shù)為

(4)
其中zi為A的第i行(第i個(gè)樣本點(diǎn)),z為未知預(yù)測(cè)的樣本點(diǎn)。

為預(yù)測(cè)新的一天,即第l+1天的動(dòng)態(tài)基線值,將z=l+1代入到(4)中,得到的f(z)值記為yi,則yi即為由前l(fā)天歷史數(shù)據(jù)得到的新的一天第i個(gè)節(jié)點(diǎn)處的基線值。具體實(shí)現(xiàn)中,可采用以下兩種方法。
(一)全天節(jié)點(diǎn)同時(shí)預(yù)測(cè):由l天全天數(shù)據(jù)預(yù)測(cè)l+1天的數(shù)據(jù)。這時(shí),默認(rèn)一天內(nèi)各節(jié)點(diǎn)間沒(méi)有直接關(guān)系,因此可以實(shí)現(xiàn)批量預(yù)測(cè)。
(二)單個(gè)節(jié)點(diǎn)逐個(gè)預(yù)測(cè):前l(fā)天前n小時(shí)的數(shù)據(jù)預(yù)測(cè)第l+1天前n小時(shí)的數(shù)據(jù)。l=1時(shí),對(duì)于確定的n,可以實(shí)現(xiàn)第2天前n個(gè)小時(shí)的預(yù)測(cè)。這時(shí),對(duì)于第2天第n個(gè)小時(shí)后的第1個(gè)節(jié)點(diǎn)預(yù)測(cè),可用第2天前n個(gè)小時(shí)的數(shù)據(jù)作為歷史數(shù)據(jù)。由于一天之內(nèi)各節(jié)點(diǎn)的數(shù)據(jù)值顯然呈非線性,因此這時(shí)需采用非線性回歸。此時(shí),當(dāng)時(shí)間節(jié)點(diǎn)跨越一天時(shí),可不受不同天的限制,但n值需事先取定。相對(duì)于方法一,該方法計(jì)算量相對(duì)較大。
方法二與方法一相比其所應(yīng)用技術(shù)相同,而處理的具體數(shù)據(jù)不同。因此,下面本文只考慮方法一。
2. 3 異常流量預(yù)警

pi=|xi,l+1-yi|.
理論上,pi的值越小,則實(shí)際數(shù)據(jù)xi,l+1與該節(jié)點(diǎn)基線值yi越接近。此時(shí),可根據(jù)具體數(shù)據(jù)特點(diǎn),確定閾值0≤δ1<δ2<δ3。當(dāng)pi≤δ1時(shí),斷定流量正常;當(dāng)δ1
為了合理確定閾值警告界線,我們采取添加噪聲法。具體地,其步驟如下:
(a) 在原始數(shù)據(jù)中添加強(qiáng)度為0的白噪聲數(shù)據(jù),并認(rèn)為此時(shí)的p值的峰值為該模型這次添加白噪聲之后的輕微警告界限。由于一次實(shí)驗(yàn),存在極大的偶然性,因此將這一過(guò)程重復(fù)N次,最終取N次p值的峰值的均值(記為δ1)為該模型的輕微警告閾值。實(shí)際中,可以根據(jù)數(shù)據(jù)量的大小、數(shù)據(jù)處理速度的要求等確定N值。
(b) 添加強(qiáng)度為1的白噪聲數(shù)據(jù),重復(fù)過(guò)程(a),可得該模型的中度警告界限(δ2)。
(c) 添加強(qiáng)度為2的白噪聲數(shù)據(jù),重復(fù)過(guò)程(a),可得該模型的嚴(yán)重警告界限(δ3)。
(d) 通過(guò)上述三步,可以得到某一模型的警告閾值。對(duì)于多組模型,可取所有警告閾值的平均值。
3.數(shù)值實(shí)驗(yàn)
為驗(yàn)證本文所提模型的有效性,本節(jié)將其應(yīng)用于實(shí)際數(shù)據(jù)中,并與文獻(xiàn)[3]所提動(dòng)態(tài)基線模型比較。
a) 數(shù)據(jù)預(yù)處理
本次實(shí)驗(yàn)以個(gè)人網(wǎng)銀業(yè)務(wù)為對(duì)象,對(duì)其業(yè)務(wù)流量數(shù)據(jù)進(jìn)行采集和處理。首先對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理。為使基線值預(yù)測(cè)更準(zhǔn)確,這里將工作日的數(shù)據(jù)與周末數(shù)據(jù)區(qū)分開(kāi)。對(duì)于缺失數(shù)據(jù),由于可以認(rèn)為數(shù)據(jù)在同一節(jié)點(diǎn)上的數(shù)值分布基本一致,因此從橫向角度,將某一天固定節(jié)點(diǎn)處的缺失值用前若干天相鄰節(jié)點(diǎn)值均值進(jìn)行填充。若前若干天數(shù)據(jù)有缺失,則對(duì)該天數(shù)據(jù)發(fā)掘縱向分布規(guī)律,根據(jù)分布填補(bǔ)缺失值。
根據(jù)數(shù)據(jù)特點(diǎn),我們對(duì)原始數(shù)據(jù)選取兩個(gè)代表性特征,即交易量和平均響應(yīng)時(shí)間。其次,考慮到這兩個(gè)特征的量綱級(jí)別差異較大,因此進(jìn)行最大最小標(biāo)準(zhǔn)化,將特征歸一到[0,1]區(qū)間。對(duì)于ml個(gè)數(shù)據(jù)樣本集,第i個(gè)樣本點(diǎn)zi標(biāo)準(zhǔn)化后的點(diǎn)記為ri,則

這里,zmax和zmin分別是該特征數(shù)據(jù)的最大值和最小值。類(lèi)似地,可以對(duì)每個(gè)指標(biāo)(共n個(gè))分別進(jìn)行同樣的標(biāo)準(zhǔn)化。本文中,不妨記標(biāo)準(zhǔn)化的數(shù)據(jù)仍為T(mén)={xij}。
b) 參數(shù)選取
在實(shí)際中,本文所提算法中LS-SVR模型若固定參數(shù)值會(huì)降低模型性能。因此,最優(yōu)訓(xùn)練天數(shù)及模型中參數(shù)需進(jìn)行選取最優(yōu)值。由于采取全天節(jié)點(diǎn)同時(shí)預(yù)測(cè),而又可以認(rèn)為同一節(jié)點(diǎn)數(shù)據(jù)分布基本一致,因此這里只考慮線性回歸,從而模型只需考慮優(yōu)參數(shù)C及最優(yōu)訓(xùn)練天數(shù)。
對(duì)于訓(xùn)練天數(shù)的選取,當(dāng)天數(shù)過(guò)少時(shí),將導(dǎo)致預(yù)測(cè)結(jié)果很不穩(wěn)定;當(dāng)天數(shù)過(guò)多時(shí),由于數(shù)據(jù)流量具有時(shí)效性,因此較早數(shù)據(jù)已不具參考價(jià)值,從而將影響預(yù)測(cè)結(jié)果。綜合以上分析及數(shù)值實(shí)驗(yàn),以絕對(duì)誤差為檢驗(yàn)標(biāo)準(zhǔn),我們選取7天為實(shí)際訓(xùn)練天數(shù)。
當(dāng)選擇模型(2)的參數(shù)C時(shí)我們采取網(wǎng)格搜索法。首先,根據(jù)經(jīng)驗(yàn),確定兩參數(shù)的范圍為{2-8,2-7,…,27,28}。在此范圍內(nèi),對(duì)懲罰參數(shù)尋優(yōu)。
c) 動(dòng)態(tài)基線值預(yù)測(cè)
文獻(xiàn)[3]中利用線性加權(quán)技術(shù),使得新一天基線值由先前基線值及若干天真實(shí)值的加權(quán)而得到。文章中指出,基于加權(quán)方法的動(dòng)態(tài)基線效果優(yōu)于固定基線。因此,下面將本文所提基于LS-SVR的動(dòng)態(tài)基線預(yù)測(cè)與該加權(quán)基線預(yù)測(cè)方法進(jìn)行比較。
圖1(a)、(b)分別給出了兩個(gè)不同時(shí)間段各節(jié)點(diǎn)處的真實(shí)值,以及基于加權(quán)方法和基于LS-SVR方法所得到的動(dòng)態(tài)基線值。圖中紅色虛線代表真實(shí)值,藍(lán)色實(shí)線代表兩種方法預(yù)測(cè)所得的基線值,且(a)、(b)圖中左側(cè)子圖均為文獻(xiàn)[3]中基于加權(quán)方法預(yù)測(cè)的基線值,右側(cè)子圖為基于加權(quán)方法預(yù)測(cè)的動(dòng)態(tài)基線值。從圖中可以看出,無(wú)論哪個(gè)時(shí)間段,基于加權(quán)方法所得基線值均與真實(shí)值相差較大,而本文所提算法則更接近真實(shí)值,同時(shí)更符合真實(shí)數(shù)據(jù)的曲線趨勢(shì)。實(shí)驗(yàn)結(jié)果表明了本文所提算法的有效性。

圖1 不同時(shí)間段節(jié)點(diǎn)處真實(shí)值及基于加權(quán)方法、基于LS-SVR方法的動(dòng)態(tài)基線值
d) 預(yù)警閾值確定
本節(jié)首先采用絕對(duì)對(duì)誤差p為確定閾值的指標(biāo):p=|xi,l+1-yi|,其中xi,l+1為預(yù)測(cè)天的真實(shí)值,yi為得到的擬合基線值。
在數(shù)據(jù)處理過(guò)程中提取判斷指標(biāo)的數(shù)據(jù),可以得到各天的判斷指標(biāo)誤差分布。由于假設(shè)已知數(shù)據(jù)皆為真實(shí)且無(wú)異常的數(shù)據(jù),因此可以根據(jù)誤差分布圖對(duì)閾值進(jìn)行確定。我們將判斷指標(biāo)數(shù)值歸一到0~1的范圍內(nèi),如圖2所示。
因?yàn)樵跊](méi)有噪聲的情況下假設(shè)所有數(shù)據(jù)均正常,因此不應(yīng)有警報(bào),此時(shí)警告程度應(yīng)為0。在加入白噪聲且強(qiáng)度為最低的情況下,應(yīng)有警報(bào)產(chǎn)生,由此符合警報(bào)的敏感性。由于噪聲強(qiáng)度為最低,所以不應(yīng)該有非常大的差異。此外,當(dāng)添加強(qiáng)度為1的噪聲時(shí),警報(bào)應(yīng)該比添加低強(qiáng)度噪聲時(shí)更敏感,且應(yīng)有較大差異。

圖2 某日判斷指標(biāo)歸一化后的分布
基于以上思想,分別加入白噪聲強(qiáng)度為0和強(qiáng)度為1的白噪聲,并如上處理方式,可得此時(shí)的判斷指標(biāo)如圖2所示:

圖3 加入白噪聲數(shù)據(jù)判斷指標(biāo)圖
結(jié)合圖2及圖3的數(shù)據(jù)指標(biāo)分布可以確定:閾值的判斷指標(biāo)為小于0.26為正常;大于等于0.26且小于0.36為輕微警告;大于等于0.36且小于0.56為中級(jí)警告;大于等于0.56為嚴(yán)重警告,具體如表1所示。

表1 基于相對(duì)誤差的警告閾值確定表
4.結(jié)論
本文提出一種基于機(jī)器學(xué)習(xí)的新的動(dòng)態(tài)基線方法。通過(guò)結(jié)合無(wú)監(jiān)督降維技術(shù)及基于最小二乘支持向量機(jī)的回歸技術(shù),本文構(gòu)造了新的確定動(dòng)態(tài)基線的方法。該方法能實(shí)現(xiàn)對(duì)每天各個(gè)結(jié)點(diǎn)的實(shí)時(shí)預(yù)測(cè),并確定實(shí)時(shí)基線。實(shí)驗(yàn)表明,該方法較基于加權(quán)方法的動(dòng)態(tài)基線有很大優(yōu)勢(shì)。
[1] Jolliffe I. Principal component analysis[M]. John Wiley & Sons,Ltd,2002.
[2] Van Gestel T,De Brabanter J,De Moor B,et al. Least squares support vector machines[M]. Singapore: World Scientific,2002.
[3] 郭煒. 基于動(dòng)態(tài)基線的業(yè)務(wù)運(yùn)營(yíng)支撐網(wǎng)異常流量檢測(cè)研究[C]. 中國(guó)通信學(xué)會(huì)學(xué)術(shù)年會(huì),2011.