ATM 機交易異常時的預警告警機制及優化方案 B題_第1頁
ATM 機交易異常時的預警告警機制及優化方案 B題_第2頁
ATM 機交易異常時的預警告警機制及優化方案 B題_第3頁
ATM 機交易異常時的預警告警機制及優化方案 B題_第4頁
ATM 機交易異常時的預警告警機制及優化方案 B題_第5頁
已閱讀5頁,還剩26頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

ATM機交易異常時的預警告警機制及優化方案摘要隨著金融電子化的發展,ATM機在金融行業的應用越來越廣泛。然而傳統的ATM監測系統缺少能夠快速主動識別并判斷異常種類的功能,所以在交易系統發生故障時,難以做到準確報警和及時預警。為了解決這一問題,我們建立了基于數據的統計模型。在分析了系統發生異常的原因之后,找到報警的產生模式,并將這些模式運用的預警當中,建立快速高效的故障響應機制。針對問題一,由于工作日和非工作日的交易量存在差別,因此需將已有數據按過年前、過年期間、休息日(雙休日和小長假)和正常工作日分別進行分析。定義交易量峰谷值這一特征參數,之后運用統計方法篩選出交易量驟降的異常數據點;通過分析響應時間與交易量之間的函數關系構造CPU載荷這一特征參數;利用方差分析法中的雙次N值比較法,得出后端CPU載荷正常范圍的閾值為8.32,篩選出后端CPU載荷過大所導致的異常數據點;通過構建自組織映射模型(SOM),將數據聚類后篩選出離群數據點。通過三種方式篩選,共得到已給數據中的10條異常交易記錄,如4月16日出現的數據中心后端處理系統應用進程異常、4月14日發生的后端操作系統CPU載荷過大。針對問題二,建立交易量的差分自回歸模型,定義數據下降指標,觀察其歷史分布,得到交易量驟降異常的監測判據。分析四個特征參數(CPU載荷、交易量、響應時間、成功率)間的相關性。利用問題一中提取出的異常數據點,分工作日和非工作日構造樸素貝葉斯分類器,定義四種不同的交易狀態。對于某一時刻,求出對應不同交易狀態時的先驗概率。模型根據先驗概率的大小可以精確地判斷系統的狀況,異常發生時,模型能實時給出異常類型及位置。定義正常狀態的先驗概率比例作為ATM系統的健康度,并且定義健康度下降指標來實時分析ATM系統交易狀態。經過統計篩選,確定健康度下降指標大于0.2,且分類器顯示狀態為正常時,進行預警;而一旦分類器顯示狀態為異常時,認為系統處于異常狀態,進行報警。在代入部分真實數據對模型進行驗證后,發現能在異常發生前1?2分鐘提出預警。通過改變系統參數的方法對模型進行靈敏度分析,發現系統靈敏度合適,同時為不同情況下下降指標的選取提供依據。針對問題三,如果提供更多關于ATM機交易情況的指標,如交易種類、每條交易的記錄(每筆交易時間、ATM機編號、是否成功、響應時間),就能構造更精確的特征參數,實現對系統實現局部監測,判斷出具體發生故障位置;若增加數據為全年甚至連續幾年的交易情況,則可以分析有無年周期性或季節性因素影響,建立更為精確的梳系數ARIMA時間序列模型。同時,基于更大的訓練集,能夠提高貝葉斯分類器的精度,使得分類結果更為準確。通過大量數據的實驗與擬合,驗證了所建模型的正確性,并可將其推廣應用到解決信息傳輸的監測、信號編碼和傳輸的監測等數據流問題,從而幫助服務商和用戶及時發現和解決問題。關鍵詞:自組織映射神經網絡(SOM)方差分析ARIMA時間序列貝葉斯分類器目錄TOC\o"1-5"\h\z\o"CurrentDocument"ATM機交易異常時的預警告警機制及優化方案 1B題 1\o"CurrentDocument"摘要 1\o"CurrentDocument"一、 問題重述 4\o"CurrentDocument"問題背景 4待解決問題 5\o"CurrentDocument"研究現狀 5\o"CurrentDocument"二、 問題分析 5\o"CurrentDocument"問題一分析 5問題二分析 6\o"CurrentDocument"問題三分析 6\o"CurrentDocument"三、 符號說明 6\o"CurrentDocument"四、模型假設 7\o"CurrentDocument"五、 模型的建立與求解 7數據的預處理 7問題一模型的建立與求解 8\o"CurrentDocument"交易量驟降 8\o"CurrentDocument"基于自組織特征映射神經網絡的異常值篩選模型(SOM) 9后端CPU載荷模型的建立 13問題二模型的建立與求解 155.3.1基于ARIMA的交易量時序模型 15\o"CurrentDocument"基于貝葉斯定理的異常預警及監測模型 22\o"CurrentDocument"5.3.3.異常數據時間窗口的確定 29問題三模型的建立與求解 30基于更多的交易參數 30基于更多的數據總量 30\o"CurrentDocument"六、 靈敏度分析 31\o"CurrentDocument"七、模型的評價與推廣 32模型的評價 32\o"CurrentDocument"模型的推廣 32\o"CurrentDocument"參考文獻 33一、問題重述問題背景隨著中國金融電子化建設的深入發展和銀行客戶對金融服務質量要求的提高,ATM機在金融行業的應用越來越廣泛。然而,很多ATM機并沒有充分發揮其先進的作用,有些ATM機經常是故障連連,無法提供服務;有些ATM機則經常發生錯賬或吞卡現象。除了ATM機自身會出現機器故障,ATM交易系統也常會因為軟件故障或傳輸網絡故障,造成ATM機無法正常使用。因此如何對于銀行ATM交易系統的發生的異常進行預報和告警,從而對ATM交易系統進行優化,使得其能夠更好的服務大眾,成為了銀行在優化服務時的關注點之一。銀行的ATM交易系統包括前端和后端兩個部分。銀行總行數據中心監控系統通過匯總統計每家分行的業務量、交易成功率、交易響應時間,來做出數據分析,從而捕捉整個前端和后端整體應用系統運行情況以及時發現異常或故障。分行1側服務器分行2側服務器分行3側服務器分行4側服務辭1ri 「i [i|° O ' L\ L1□k i/\/\/\/\ATM終端ATM錢券ATM終端ATM餐端ATMS?ATM終端ATMS端ATMS?圖1:ATM系統拓撲網絡結構圖ATM常見的故障場景包括但不限于如下情形:(1) 分行側網絡傳輸節點故障,前端交易異常,導致業務量陡降;(2) 分行側參數數據變更或者配置錯誤,前端交易異常,影響交易成功率指標;(3) 數據中心后端處理系統異常(如操作系統CPU載荷過大),影響交易響應時間指標;(4) 數據中心后端處理系統應用進程異常,導致交易失敗或響應緩慢。待解決問題附件中給出了某商業銀行ATM應用系統某分行的交易統計數據。需要建立數學模型解決的如下問題:(1) 選擇、提取和分析ATM交易狀態的特征參數;(2) 設計一套交易狀態異常檢測方案,在對該交易系統的應用可用性異常情況下能做到及時報警,同時盡量減少虛警誤報;(3) 若可增加采集的數據,基于需擴展的數據,尋找達到任務(1)(2)中目標的方法。研究現狀近十幾年來,伴隨著信息化的推進,基于數據分析的預警和報警系統越來越受到人們的重視,成為數據科學研究的重點?,F有的主要手段包括以下幾種:(1) 統計分析。通過大量的歷史數據生成系統的正常行為輪廓,自適應的學習系統的正常行為模式。五個經典的異常檢測的統計模型:操作模型、平均值和標準差模型、多元模型、馬爾科夫過程和時間序模型[1]。(2) 智能算法。采用仿生的神經網絡模型,可以有效的對系統進行有監督或無監督學習,歸納出型的輸入輸出關系,由此進行判斷。同時神經網絡可以和一些智能算法如遺傳算法、退火算法結合起來,提高有效性[2][3]。(3) 貝葉斯技術。貝葉斯技術是一種概率論的推理技術。它將時間的先驗概率與后驗概率聯系起來,利用先驗信息和樣本數據確定時間的后驗概率。(4) 模式預測。模式預測的目標則是在樣本特征和樣本標簽之間建立起有一種有效的映射關系。Teng將時間序列和模式預測結合起來,提出基于時間的推理方法,將偏離預測的行為看成是異常[4]。二、問題分析問題一分析由于工作日和非工作日的交易量存在差別,因此首先將已有數據分為過年前、過年期間、休息日(雙休日和小長假)和正常工作日四類。題目中要求提取并分析特征參數,通過觀察和分析附件中給出的數據,發現若僅選擇已交易量、成功率、響應時間作為特征參數,不能夠全面的反映導致交易異常的原因。因此在分析三者之間的相互關系后,還需提取出新的指標作為特征參數。之后對四類交易日期分別進行假設檢驗,分析參數變化與對應交易發生時間的關系以及參數間是否相互獨立。綜合上述分析結果后,對1~4的數據進行處理,篩選出異常點。問題二分析題目中的給出四種故障最終都通過業務量、成功率、響應時間以及三者間的關系反應出來,所以以問題一中提取的特征參數為依據,對這些異常進行刻畫。為了及時報警同時減少虛警誤報,運用數理統計中的貝葉斯定理,根據問題一中已篩選出的異常點計算出每種特征參數可能出現異常的先驗概率,并通過選擇合適的分類器,對各個異常點進行分類報警。構建趨勢型指標可以提前對系統出現的異常進行預警。問題三分析考慮基于橫向的數據拓展,通過建立新的參數,對新信息進行分析建模,可以細分系統的交易狀態,以進一步剔除隨機因素以及操作人的影響??紤]基于縱向數據,可為問題二模型提供更多樣本,整體提高系統的精度。三、符號說明st步長指數訓練樣本的指數D(t)輸入向量us)pqdXk(q)Xk(m)UCD(t)的BMU指數學習系數自回歸項數滑動平均項數成為平穩序列所做的差分次數預報向量時間序列實時的數據下降指標獨立的類別變量F,…,FN特征變量n特征數量Zp(C)P(i\C證據因子類先驗概率獨立概率分布S交易狀態,Se{R,Ei,E2,E3,E4}rijA相關系數矩陣特征值XI特征參數e{交易量,響應時間,成功率,CPU載荷,預測交易量}bjp(R)s= 工p 數據清洗在數據來源可靠的條件下,進行數據挖掘之前,還必須對數據的質量進行評估。因為已有數據大多來自計算機的自動獲取,所以結果有一定幾率出現異常,因此在對原始數據進行缺失值、重復值的篩選與處理后,發現原始數據中沒有重復,但有27組數據缺失。 表1 數據清洗在數據來源可靠的條件下,進行數據挖掘之前,還必須對數據的質量進行評估。因為已有數據大多來自計算機的自動獲取,所以結果有一定幾率出現異常,因此在對原始數據進行缺失值、重復值的篩選與處理后,發現原始數據中沒有重復,但有27組數據缺失。 表1:1?4月缺失的數據

日期 時間 日期 時間W信息貢獻率系統健康度,Se{r,E1,E2,E3}W時間窗口內遞減的分鐘數最小時間窗口叫第i天的健康度下降指標sl第l天的健康度工D(n)T n=i-WW+1健康度下降指標四、模型假設1、 ATM系統的數據僅與系統狀態有關,而與持卡人的操作水平無關。2、 假設題目中所給數據是2017年,工作日和節假日按照2017年劃分。3、 假設日交易總量差異僅與工作日、節假日有關,不存在洗錢等行為。4、 假設僅考慮該銀行ATM機前后端系統應用程序故障。5、 假設所給數據均為真實可靠的。五、模型的建立與求解數據的預處理(1) 數據分類首先,對整體數據進行宏觀上的探索。根據數據交易量的時序變化以及銀行業務的特點,發現雙休日的日交易量略多于工作日,而節假日(即春節前后和清明節三天小長假)的日交易量則明顯多于工作日和雙休日。于是根據日交易量將交易日期分為工作日、雙休日和節假日,便于后續對于數據的準確使用。

1月28日07:311月31日07:211月28日08:223月19日07:181月29日07:243月19日07:191月29日08:213月30日05:281月30日07:284月16日10:04~10:21在處理非連續缺失數據時,選擇利用均值填補遺漏值,如:1月31日缺失的數據采用上下相鄰的兩分鐘數據平均值補齊;在處理連續缺失數據時,則采用同類別均值填補遺漏值,如4月16日缺失的數據采用前一天的數據補齊[5]。問題一模型的建立與求解交易量驟降(1)模型分析由于交易量在一天中的變化趨勢相似,但統計指標的數值相差大,和具體的日期相關性強,且數值易受到多種隨機因素的影響,噪聲較大。所以通過構造峰-谷值(q)這一特征參數并結合統計分析,準確的篩選出交易量異常值。對于第i分鐘的交易量d,,其峰-谷值(w)為e= 3+ 2+ 1+di+l+di+2+di+3_d61通過對第i分鐘前后三分鐘取平均,來準確地描述驟降的含義,同時減小隨機因素對結果的影響,提高結果的可靠性。通過分析圖2知,相較于正態分布,q分布峰度更高、尾部更肥,統計學上將這種分布特點稱為“尖峰肥尾”,其中“肥尾”解釋為信息偶爾以成堆的方式出現,而不是以平滑連續的方式出現。為了合理檢測出數據中不符合統計規律的點,采用與正態分布中33分位數一致的點作為異常檢測的閾值,即認為數據中有99.74%的數據為正常值[6],其余的為異常值。由此得到峰-谷值(0)的閾值為?=-131,此時有?V-131異常?>-131正常根據?的閾值確定出原始數據中的65組異常數據(已經剔除掉了數據量突增的點)。同時因為故障在出現后會持續一段時間,所以在去除某一分鐘突然出現交易量下降而下一分鐘交易量又恢復正常的數據時間點后,最終得到以下兩個交易異常情況1月25日16:04~16:061月26日13:26~13:272月10日16:28~16:32基于自組織特征映射神經網絡的異常值篩選模型(SOM)(1) 模型分析相比于交易量這一特征參數,響應時間和成功率不具有明顯的分布特征。因此在分析響應時間和成功率時,采用機器學習這一方式,通過聚類來判斷數據的分布情況。由于維數和樣本量龐大,而有監督的機器學習在訓練過程中,需要預先給網絡提供期望輸出,因此對于本題中無期望輸出、無監督的情況下,選擇無監督學習中自組織特征映射網絡(SOM)來解決問題。(2) 模型簡介1981年芬蘭Helsink大學的TKohonen教授提出一種自組織特征映射網,簡稱SOM網,又稱Kohonen網。Kohonen認為:一個神經網絡接受外界輸入模式時,將會分為不同的對應區域,各區域對輸入模式具有不同的響應特征,而且這個過程是自動完成的,是一種典型的無監督學習。自組織特征映射正是根據這一看法提出來的,其特點與人腦的自組織特性相類似。通過訓練,建立起這樣一種布局:它使得每個權值向量都位于輸入向量聚類的中心。一旦SOM網完成訓練,就可以用于對訓練數據或其他數據進行聚類[7]。(3)模型的建立因為SOM訓練采用的是競爭性學習的方式,所以當訓練樣本提供給網絡的時候,就會計算它與每個權重之間的歐氏距離。將權重向量與輸入最相似的神經元稱為最佳匹配單元(BMU)。通過改變SOM柵格中BMU的權重,使與其鄰近的神經元向著輸入向量調整。從而BMU的量會隨著時間和距離而降低。因此擁有權值WV(s)的神經元v的更新公式為[8]WV(s+1)=WV(s)+0(u,v,s)a(s)(D(t)-Wv(s))其中s為步長指數t為訓練樣本的指數D(t)為輸入向量u為D(t)的BMU指數a(s)為一個單調遞減的學習系數0(u,v,s)為在步長為s下給出神經元u和神經元V之間距離的鄰近函數t可以系統地從(0丄2,...,T-1)中多次重復選取(T為訓練樣本的大小)。也可以隨機的從數據集中取出(Bootstrap抽樣),或采用其他一些抽樣方法(如Jackknifing),在此選擇系統地訓練所有樣本。

(4)模型的實現通過MATLAB自帶的神經網絡工具箱代碼進行編程,對交易量和響應時間兩個數據進行訓練。訓練過程如下1、 標準化。采用一般的標準差法進行標準化。2、 距離函數的確定。由于考慮到輸入向量為二維向量,且數據量較大,所以采用歐式距離。3、 神經元數量的選擇(競爭層的大?。I窠浽臄盗繒O大的影響到分類的效果。過多的神經元會導致分類結果過細,需要人工進行二次分類,甚至會出現“死節點”,即在訓練過程中,某個節點從未獲勝過且遠離其他獲勝節點,因此它們的權值從未得到過更新;而過少的神經元將會導致分類失敗。經過多次嘗試、篩選后發現10*10的競爭層網絡效果最好,能順利明確的將神經元分類。4、 選取初始權值的基本原則是盡量使權值的初始位置與輸入樣本的分布區域充分重合,避免出現大量的初始“死節點”,在此利用從訓練集中隨機抽取m=100個輸入樣本作為初始權值。5、 學習率的選擇。待分類的數據量較大這一明顯特點,學習率過大會影響精度,容易產生過擬合;而學習率小則可能導致算法效率低下,花費資源過長。湖北工業大學的劉幺和等[9]指出,采用一種學習率隨迭代次數下降的動態

學習率可以達到很好的優化效果。在訓練開始時,學習率可以選取較大的值,之后以較快的速度下降,這樣有利于快速捕捉到輸入向量的大致結構;之后學習率在較小的值上緩降至0值,這樣精細地調整權值使之符合輸入空間的樣本分布結構。這種動態學習率的具體函數為7=Ae圖6:SOM訓練過程拓撲圖MATLAB訓練結果如下經過三次訓練后,SOM將131040個樣本數據分類到了100個神經元之中,神經元之間的距離反映了其離群的程度。圖7:神經元距離圖圖7中小六邊形為神經元,紅線代表神經元之間的距離,線的顏色越深表示相鄰的神經元之間距離越遠,由圖7可知第1、2、11、12號神經元有明顯的離群特征??疾炱鋽祿芍?1、12號神經元對應第二類異常,共12組;1、2號神經元對應第四類異常,共19組。部分結果如下表2:不同神經元對應的異常類型日期時間成功率響應時間神經元02092170.766,7351202092190.877,6911202092200.826,6841202092270.817,1681202092280.726,3111202092290.826,5521203093040.6016,896110323480.1846,25610323490.3139,37620323500.0050,62410323510.0653,54310323520.1449,01810323530.1349,59310323540.0057,21110323550.0653,88910323560.1747,39710323570.1051,69710323580.0056,75810323590.1945,991103231000.2644,476103231010.7928,8202由表2可見分類效果良好,因此得到歷史數據中的故障情況如下同時經過對結果的分析,可知第二類錯誤其異常值可能存在不連續分布。猜測可能是因為第二類異常是由于某一分行側網絡節點故障所致,與系統后端的異常相比,分行發生交易請求不連續(特別在交易量本來就低的凌晨時段),所以出現了成功率較低的異常點斷續分布的情況。分行側網絡出現故障1月30日06:36~06:38數據中心后端處理系統應用進程異常2月09日02:17~02:293月23日00:47~01:044月16日06:00~06:035.2.3后端CPU載荷模型的建立(1)模型分析由題目所給出的條件和信息可知,一筆交易沿著ATM前端經過分行側網絡節點到后端服務器,經過處理后再原路返回。由前面的假設,在系統其它功能正常的情況下,單筆交易的響應時間只受中心服務器處理速度的影響,即每一筆交易響應時間的差異是由中心處理器處理速度不同引起的。在不考慮側網絡節點的故障的情況下,當后端中心服務器的負載過大的時候,會表現出單筆交易響應時間較長這一特征;CPU載荷情況還會受到同一時刻并行處理事務數量的影響,在CPU載荷大的時刻,交易量會表現出相對增加這一特征。因此認為只有同時滿足單筆交易響應時間長、單位時刻交易量大這兩個特征的異常點,才能被判斷為CPU過載。引入CPU載荷指數L作為評估后端中心服務器交易處理情況的特征參數。為了避免某一時刻由于單筆交易響應時間和交易量中其中一個值過大而另一值正常,造成對CPU過載的誤判,所以在定義CPU載荷指數時引入對數計算,來保證L值大時,交易量和響應時間均較大。同時為響應時間增加一個1.4倍的指數因子使得L值對響應時間更加敏感。綜上,定義CPU載荷指數L為L=log(N)xlog(r)1'4其中N為每分鐘的交易量T為每筆交易的平均響應時間與交易量一樣,CPU載荷指數L也是一個隨時間呈現周期性變化的量。在此將第三類的異常定義為CPU載荷指數明顯大于正常值,并且認為當ATM系統出現異常情況時,之后一段時間內均會連續出現異常;而當只有單個點異常時,不能判定為ATM系統出現異常。(2)閾值的確定對CPU載荷指數的數據進行探索,發現其正常值數量巨大,離群點較少,具有和重尾分布相似的分布特征。相比于正態分布,其部分統計參數容易受到離群點的影響(如標準差),因此可應用方差分析法來尋找其置信區間。方差分析法作為一種數理統計方法廣泛應用于氣象、水文、地震等行業數據的科學統計與分析,常被用來計算最新采集數據與均值的離散程度。正常的CPU載荷的數據分布集中在一定范圍內,而當數據變化的絕對值超過N倍標準差,則說明數據存在異常。在利用方差分析數據異常時,N的取值通??刹捎脙煞N方法來實現(1) 單次N值比較法。通常情況下N值默認為3,即數據變化超過3倍標準方差即認為該點數據不正常。當這種不正常的數據點個數超過用戶設定的某個數值時即認為數據存在異常,其中N的取值和不正常數據點個數可由用戶根據被測項類型與長期統計結果具體設定,通過該方法可檢測出數據超出3倍均方差的數據異常。(2) 雙次N值比較法。利用第1次N值比較去除干擾,即認為數據變化超過N次標準方差的數據點為干擾點,去掉干擾點后進行第2次N值比較,通常取N為2,即去掉干擾后,數據變化超過2倍方差的數據個數超過用戶設定的某個數值時即認為數據存在異常。在分析CPU載荷的數據時,發現CPU載荷存在極大偏離值,因此選用雙次N值比較法更為合理。根據雙次N值比較法的要求,首先進行第一次N值比較處理,在去除極端異常值后求出CPU載荷的平均值和方差作為其特征參數。經過兩次N值比較處理后的結果如下表3:兩次N值比較處理后的結果第一次N值比較第二次N值比較49515491606105039193異常點數量28117由第三類異常的定義,找出偶然出現的單個時間點異常后,將這類點歸為正常點。最終找出來了62組異常的數據,并根據這些數據的連續性將其劃分為三個出現連續異常的時間段3月01日22:04~22:134月05日07:17~07:234月14日07:17~07:23

5.3問題二模型的建立與求解5.3.1基于ARIMA的交易量時序模型(1)模型分析與預處理使用MATLAB繪制部分天數日交易量隨時間變化的分布圖。通過對圖像的觀察,發現不論是工作日還是非工作日,交易量隨時間的變化趨勢及發生變化的時間段大致相同,滿足時間序列的特征,因此使用時序模型對交易量進行分析。圖9:日交易量隨時間的變化分布由圖9可看出,雖然大體上交易量隨的時間變化具有直觀的趨勢性,但就單個數據而言,模型的噪聲較大,不利于后續分析,也不能對某一分鐘作出精確預測,因此首先需要對數據進行降噪處理。由模型一中篩選出的異常點可知,一個異常所持續的時間一般為三至五分鐘。為了去除噪聲同時盡可能不丟失原有數據特征,選取三分鐘作為時間窗口,以三分鐘內交易量的平均值作為其對應交易量,結果如下由圖10可驗證取三分鐘作為時間窗口時,可較好的降低交易量變化過程中的產生噪聲,使得后續建模過程更加精確。同時,由于時序模型的主要目的是依據歷史的健康數據,對未來交易量的正常值進行預測,為異常的判斷提供實時依據。因此在后續的建模過程中已去除模型一中篩選出來的異常數據,并采取相鄰數據取平均的方法補齊,之后利用相應的健康數據進行擬合。(2)模型簡介時間序列法是一種定量預測方法,在統計學中作為一種常用的預測手段被廣泛應用。時間序列分析則是根據系統觀測得到的時間序列數據,通過擬合和參數估計來建立數學模型的理論和方法。對于平穩時間序列,可使用通用ARMA模型(自回歸滑動平均模型)及其特殊情況的自回歸模型、滑動平均模型或組合ARMA模型等來進行擬合。當觀測值多于50個時一般都采用ARMA模型。對于非平穩時間序列則要先將觀測到的時間序列進行差分運算,化為平穩時間序列,再用適當模型去擬合這個差分序列。(3)平穩性檢驗(ADF檢驗)通過對交易量隨時間變化趨勢的分析,發現當差分次數d=0時,數據具有明顯的周期性,不滿足ARMA模型對數據平穩性的要求,因此判斷交易量的時間序列為非平穩時間序列。此時使用ARMA模型的推廣模型ARIMA模型來對交易量進行分析。ARIMA模型即差分自回歸滑動平均模型,是時間序列預測分析方法之一。不同于ARMA模型的只能用于檢驗平穩時間序列,ARIMA模型在對原始時間序列進行差分后,將非平穩的時間序列組合成平穩的序列進而實現對非平穩時間序列的分析。在ARIMA(p,d,q)中,AR為“自回歸”,p為自回歸項數;MA為“滑動平均”,q為滑動平均項數,d為使之成為平穩序列所做的差分次數(階數)。其數學表達式為:1-£如](1-L)dX,=|1+£如],

<,=1丿 <=1 丿其中L是滯后算子deZ,d>0因為平穩性檢驗其實也是探求ARIMA模型中d值的過程,所以首先進行一階差分,即令d=1,繪制出此時的交易量時序圖。一階差分后的交易量忖序圖(節選)1.2 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28時間(節選) x104圖12:差分次數d=1的交易量時序圖觀察圖12發現此時沒有明顯的趨勢性,為了更加嚴格地檢驗一階差分后數據的平穩性,對差分后的數據進行ADF檢驗。ADF檢驗是平穩性檢驗中最為常用的一種方法,它由美國的兩位統計學家D.A.Dickey和W.A.Fuller于20世紀70年代提出,用以驗證其自相關性系數是否等于1[10]。在采用MATLAB對交易量時序的一階差分進行ADF檢驗后,得到序列的p值小于10-5,證明時間序列是平穩的。同時計算序列的自相關系數和偏相關系數得到的結果如下:

圖14:差分后序列的偏相關性圖由圖13和圖14,序列的自相關系數具有拖尾性;偏相關系數在lag=15時截斷,在lag=3的時候也進入了置信區間。因此考慮采用ARIMA(15,l,0)或者ARIMA(3,1,0)模型。AIC準則定階在驗證了使用ARIMA模型的合理性后,需要對模型進行定階,這里利用AIC準則。AIC準則又稱Akaike信息準則,是由日本統計學家Akaike于1974年提出的。AIC準則起源于Kullback—Leibler信息量,是信息論與統計學的重要研究成果,具有重要的意義[11]。根據AIC準則,若設X為隨機變量,則X的概率密度為f(x)(其中含有k個未知參數),此時有

f(x)=g(x10°)其中0°=(0°,02,???,0k)T為未知參數向量f(x)屬于分布族g(x10)K-L是一種用來刻畫f(x)與g(x10)的接近程度的信息量,通過求出K-L的最小值尋得最接近于f(x)的參數概率密度g(x|0),其定義為1(f(?),g(?10))=1f(x)In£0)dx當給定容量為n的樣本時,設樣本觀測值x=(x15x2,…,x”),模型參數0=(0,02,…,0k),ln(L(0))為其對數似然函數,則AIC信息準則滿足AIC(k)=-2ln(L(k0(m)))+2k=min其中k0m是模型參數0=(01,02,???,0$的最大似然估計k為未知參數的個數,k=p+q+1計算得到ARIMA(15,1,0)模型的AIC值為408031.5;ARIMA(3,1,0)模型的AIC值為414603.9。選取ARIMA(15,1,0)模型更加合理。5)系數求解采用最小二乘法估計參數。設X是ARMA(p,q)序列,X的一個觀測樣本為眉,£X”?,F取k=t-1,即由{Xt,X—…,X]}的線性組合來預報Xt,Xt的估計量為t-1其系數滿足如下方程一1Pt-1其系數滿足如下方程一1P1 …'Pt-2「%1,1「「P1「1-'Pt-3也-1,2=P2_Pt—2Pt-3 …-1_Pt-1,t-1_Pt-1_D-i,jXt-j,j=2,3,…,”j=1t=2,3,…,”、2、2丿S@。)=自Xt—hjXt-jj=2V j=l在Xt的平穩可逆域中尋求處玄,使得S(血倪)=min,則滿足上式的處玄稱為<p,0的(無條件)最小二乘估計(ULS估計)。利用MATLAB進行上述過程,可得到序列ARIMA(15,1,0)o(6)ARMA模型的檢驗為了進一步檢驗ARIMA(15丄0)模型是否符合統計規律,利用/檢驗判斷數據經過時間序列處理后產生的是否為白噪聲。Seriesresid(modl)opo5 10 15 20 25 30圖15:經過時序處理后的數據擬合可見模型擬合效果良好,通過模型后的數據為白噪聲。下面嚴格按照理論判若擬合模型的殘差記為£,它是乞的估計,記、、八八〉丿 +kHk=笫 ,k=1,2,…,mLjung-Box的/檢驗統計量是k=1n—k檢驗的假設是H0:pk=0,當k<m;H、:對某些k<m,pk工0在H)成立時,若n充分大,於近似于於(m-r)分布,其中r是估計的模型參數個數。在進行於檢驗時,給定顯著水平理,查表得上理分位數為疋(m-r)。則當於>%a(m-r)時,拒絕H,即認為5非白噪聲,模型檢驗未通過;而當/<%a(m-r)時,接受H即認為5是白噪聲,模型檢驗通過。計算可得模型的Ljung-Box統計量Z2=5.439<%952(15),在95%的置信度下通過檢驗,因此模型的擬合效果良好[12]。

7)基于ARIMA模型的預報已知時間序列為Xk(m)=叭Xk(mj)+必Xk(m-2)+…+gk(m-p),m>p在已知前p個數據的情況下,時間序列的預報公式為~0_一 -G,10-…0G10-G201-…0G2Xkq)+Xk+1+0—Gq-100-…1Gq-1\Jp「Gq+0;*0q-1*0q-2 …*… 01 __Gq_工0jXjk+q+1-j_j=q+1 _其中式中常數項在p<q時為0冏,j=1,2,…,p0,j>pX(q)=(X(1),X(2),…,X(q))T為預報向量兩曲線基本重合,可見預報的精度良好。(8)系統狀態的監測根據已建立的ARIMA(15,1,0)模型,利用歷史數據對未來數據的正常值做出預測,為數據異常的監控提供依據。對于第一類異常,交易量在某個時間區間內會出現明顯的下降,此時預測的健康數據大于實際數據。兩者之間的差值在一定程度上反映了數據的下降情況,但由于數據基數對第一類異常也有影響,因此定義實時的數據下降指標為U= X100%xt

其中xt為時間序列預測的三分鐘內的平均交易量xt為三分鐘內的平均交易量實際值上式給出了交易量下降的量化指標,在系統出現故障時,這個值會明顯偏大因此利用第一問篩選出來的數據對U進行檢測由圖17可知U是一個峰度較大的近似正態分布,大部分值集中在半徑為0.5的0的鄰域中。計算可知有58個值小于-1的數據點,和第一類異常的數據點基本重合。有99%的數據大于-0.5,定義U處于[-1,-0.5]時,系統為亞健康狀態。第一類異常的報警、預警規則為U>-0.5正常-1<U<—0.5預警U<-1報警基于貝葉斯定理的異常預警及監測模型(1)模型分析相比于第一類異常,第二、三、四類異常的發生更加迅速、隨機性更加大,而且一般在發生之前沒有預兆,這樣給預測帶來了困難。但是二、三、四類異常其參數的特征均十分明顯表3:各類異常的參數特征類別父易成功率指標響應時間指標交易量指標CPU載荷指標正常高正常正常正常分行側網絡出現故障高正常正常正常數據中心后端處理系統異常高緩慢偏高偏高數據中心后端處理系統進程異常低緩慢正常偏高考察這些數據的相關性,計算其相關性矩陣表4:參數間的相關性CPU載荷交易量響應時間成功率CPU載荷1.00 0.43 0.02 -0.11

交易量0.431.00-0.03-0.08相應時間0.02-0.031.00-0.37成功率-0.11-0.08-0.371.00可見數據之間的相關性都很低,數據之間比較獨立,說明這些指標能夠高效地對系統的狀態信息進行表征。結合上述特征綜合考慮,引入貝葉斯分類器模型。(2)樸素貝葉斯分類器介紹樸素貝葉斯分類器是一系列在假設各特征之間強(樸素)獨立的情況下,以貝葉斯定理為基礎的簡單概率分類器。該分類器模型會從自有限集合中取出用特征值表示的類標簽,之后分配給問題實例。其中,樸素貝葉斯算法不是訓練這種分類器的單一算法,而是一系列基于相同原理的算法:所有樸素貝葉斯分類器都假定樣本每個特征與其他特征不相正常關。盡管這些特征相互依賴或者有些特征由其他特征決定,然而樸素貝葉斯分類器認為這些屬性在判定類型時概率分布上是獨立的[13]。理論上,概率模型分類器是一個條件概率模型曲件?…,Fn)其中獨立的類別變量C有若干類別條件依賴于若干特征變量F,…,fn模型分析然而,當特征數量n較大或者每個特征能取大量值時,基于概率模型列出概率表變得不現實。于是修改模型為下式p(p(C|F1, ,Fn)=P(C)p(A,…,FJC)

p(幷,…,F)在實際應用中,只需要關心分式中的分子部分,因為分母并不依賴于c,而特征值F又是給定的,所以可以認為是分母一個常數。此時分子等價于聯合分布模型pc,F1,....,Fn)使用鏈式法則p(c,F1, ,Fn)Xp(C)p(F1,....,Fn\C)Xp(C)p(F1\C)p(F1,....,Fn\C,F1)Xp(C)p(F1|C)p(F2|C)p(F1,,Fn|C,F1,F2)根據貝葉斯分類器原理中的條件獨立假設,每一個F對其他的特征Fj,j豐i時是條件獨立的。此時有p(F\C,Fj)=p(F\C)聯合分布模型表示為p(C,Fn)=Zp(C)冇p(F\C)Z i=1

其中Z為證據因子,是一個只依賴于Fn的縮放因子,當特征和變量的值已知時為常數。由于分解成所謂的類先驗概率p(C)和獨立概率分布卩卑|C,上述概率模型的可掌控性得到很大的提高。從得出的先驗概率中通過比較以及時序分析得到很多有用信息,通過構造特征參量以及求解,直接對系統的狀態以及將來可能出現的狀態做出預警或者報警。(4)模型建立在前面所述模型的基礎上,從給出的數據中建模,并提取出來了發生異常的時候的數據點。利用這些數據點,結合構建的特征參數(CPU載荷),構造樸素貝葉斯模型。則每一時刻系統的狀態一共有以下四種情況:表5:系統的交易狀態及其對應代號正常分行側參數數據變更或 數據中心后端處理系統應者配置錯誤 數據中心后端處理系統異常 用進程異常R E1 E2 E3求出每一種交易狀態的先驗概率:(S)=P(XIS)p(s)p(X)(S)=P(XIS)p(s)p(X)k=1np(xk)k=1其中S為交易狀態,Se{R,E],E2,E3}X為特征參數,心e{交易量,響應時間,成功率,CPU載荷}5)模型求解首先采用標準差法將數據標準化:x'ij=其中—1nx=工Xni=11n—SJ=\-工(xj-xj)2Yni=1標準化之后的數據均值為零,標準差為1,無量綱。其次求出各個狀態的獨立概率P(S)nP(Si)=N,i=1,2,3,4,5,6結果如下表6:各交易狀態的獨立概率

交易狀態SjRE2E3E4P(sj(百分數)99.64780.21300.11030.0289之后求解條件概率P(Xj|SJ,由于這些量的分布都是連續的,所以其概率密度為一連續函數,因此只需要求出其概率密度函數即可。由于樣本數據足夠大,所以可用樣本的頻率來求解原始隨機變量的分布,此處由于各個數據的分布不符合現有已知的標準分布,在概率論中常采用核密度估計來擬合其密度函數[14],屬于非參數檢驗方法之一。其求出的概率密度仍然符合下列規則:利用概率密度函數的兩條性質f(xd=1-gP(0<x<a)=[f(x)dx其中P(0<x<a)=F(0<x<a),即概率用頻率近似用MATLAB求解可得到各個參量的條件分布。對于所有點求出其對應各種狀態的概率后,認為最大概率所對應的狀態即是當前狀態。(6)系統全局指標的構建1、健康度指標利用貝葉斯定理以及現有數據(先驗數據)可得出現在系統處于各個狀態的先驗概率p(S),Se{R,EE2,Ej。但單一的先驗概率不能準確表征系統的健康程度度,例如當其他概率相同時,對{p(R)=80%p(Ei)=20%}和sg{r,eE2,e3}{sg{r,eE2,e3}s=P(R)

工P(S.Y

對Ss=2、健康度下降指標在實際的系統中,系統的各個參數隨時間動態的、連續的變化,由于數據采集精度的限制,只能以最小一分鐘為單位,將數據進行離散的采集。前面構造貝葉斯模型的時候,利用離散的數據對其分布進行擬合以達到將概率連續化的目的。這里,利用前面已經使用過的動態時間窗口的方法,計算特征參量在一段時間內的變化,以監測系統的連續變化趨勢。在實踐中,一個正常的系統,其系統正常的先驗概率p(R)應該隨時間平穩,當系統進入異常狀態時,其p(R)會經歷一段連續下降的過程,利用一段時間窗口內的p(R)進行曲線擬合所得的斜率作為衡量,如果斜率隨時間不斷增大,那系統即將進入異常狀態的可能性就很大。根據前面的時間窗口的設置,計算每一分鐘的系統健康度下降趨勢,選取統計時間窗口W=6,則定義一分鐘內的健康度趨勢為£(si-s)(/-了)二i—W £(i-)2l=i—W其中q為第/分鐘的健康度下降趨勢sl為第l分鐘的健康度若健康度趨勢為不斷下降的,則認為有很大幾率系統即將發生異常,計算W時間窗口內遞減的分鐘數為:°,少,>q—15Sq_i定義這W時間窗口內的健康度下降指標為£D(n)T—n=i-W -W+1在后面的應用中,認為當健康度下降指標T>0.2時,認為系統有很大傾向在向著異常發展,可以根據最大的異常先驗概率對系統進行預警,在整體異常前提醒工作人員進行排查?;谏鲜鲋笜耍Y合前面的先驗概率的計算,此時模型不僅能夠對系統的異常進行報警,還可以對系統即將發生的異常進行預警,以保證ATM系統工作的正常。綜上,基于貝葉斯分類器的ATM系統預警及報警的模型流程圖如下

(7)模型檢驗隨機從各個類別的交易狀態內抽取測試組數據15組,利用上述的貝葉斯分類器進行分類,測試數據是否能準確報錯。表7:各類狀態實際報錯次數與貝葉斯分類后預測報錯次數預測值實際值RE1E2E3R15000E111410

E200114E300311由表7知,實際檢驗過程中分類器的效果良好。由問題一可知,在3月23日00:49~01:06出現了一次較大的系統異常,為不失一般性,從00:45開始對系統進行監測直到01:08分結束。結果如下:表8:分類器對3月23日00:45~01:08監測情況時間p(R)p(E1)p(E2)pE3) t0:450.520.000.000.000.000:460.360.000.000.000.000:470.500.000.000.000.000:480.040.000.000.080.170:490.000.000.0044.190.330:500.000.000.00126.010.500:510.000.000.00151.560.500:520.000.000.0092.040.500:530.000.000.00200.540.500:540.000.000.00190.320.330:550.000.000.00183.170.330:560.000.000.00182.700.330:570.000.000.00200.440.330:580.000.000.00142.770.330:590.000.000.00129.860.501:000.000.000.00119.970.671:010.000.000.00194.810.671:020.000.000.00195.270.501:030.000.000.00283.420.501:040.000.000.00149.190.501:050.000.150.007.860.331:060.010.000.000.000.171:070.120.000.000.000.001:081.660.000.000.000.17

由第一題結論可知,此時系統應該是發生了第三種交易狀態異常,結合數據和圖20看出,開始發生異常時,p(R)也就是系統正常的先驗概率迅速下降,而第三種異常的先驗概率迅速上升。在異常開始的的第二分鐘(00:48),p(R)<p(e3),可見變化十分的靈敏。同時,受到數據變化的影響,異常的中間時段,P(R)保持在較低的水平,而其他的幾種異常的先驗概率也有不同程度的上升,但是仍小于p(E3)。在開始異常的第一分鐘(00:47),系統迅速給出了預警,在第二分鐘(00:48)系統的預警變為警報,且正確地指出了第三種異常??梢娔P头磻杆?,效果直觀明顯。5.3.3.異常數據時間窗口的確定在離線的異常檢測過程中基于已有的分類模型可以對數據點逐一分類,以達到目的。但是這樣做往往會忽略前后數據之間的關聯,某些系統一段連續的時間之內的異??赡軙慌卸楹芏啻萎惓!TO計系統時我們采用了雙次計數的方法將比較連續的異常值進行時間窗口的劃定,從而可以直接生成報告,知道異常數據的時間跨度。5.4問題三模型的建立與求解5.4.1基于更多的交易參數(1)交易的種類每一筆種類交易可能會涉及到不同工作量,比如跨行轉賬和查詢余額。而前者需要調動的信息及操作更多,相應的會更加消耗時間和資源。根據這些參數,豐富ATM系統的拓撲圖,能夠為故障的發生以及成因提供更多分析的依據。如基于交易種類的數據,可以更加精確地對前面所述的后臺CPU載荷進行計算:L'=/*f(N)xg⑺其中N為每分鐘的交易量『為每筆交易的平均響應時間7為修正系數,針對每一筆交易,根據其工作量(交易類型)不同(2) 其他分行的數據如果能得到其他分行的數據,可以減少由于其他原因產生的虛報后端異常。基于前端后端系統相對獨立的假設,若如果多個分行的數據同時異常,則有很大幾率是后端處理系統發生了故障;若只有一個分行的數據發生故障,則更有可能是前端或者分行測網絡有故障。(3) 用戶的操作細節雖然在分析問題前,假設ATM系統數據與持卡人的操作水平無關,但事實上每個人對銀行系統的熟悉程度、對密碼的記憶力、輸入速度都有區別。如果能提供操作者的操作信息,在建模過程中去除這些因素的干擾,系統的精度將會得到提升?;诟嗟臄祿偭浚?)更加精確的時序模型如果能夠擁有數量更多的數據,則可以建立一個更加精準的時間序列模型。從現有的數據來講,ATM交易的筆數不僅僅只是工作日和非工作日有區別,一周之內的各個工作日中,ATM交易筆數也有穩定的差別。星期六和星期天的分布也有差別,甚至這些分布隨著月份的變化也會相應的變化,例如一月份和二月份比其ATM交易量日平均值更高。隨著數據的增加,可以將各個時間序列做進一步的細分,從而可以提高模型的精度,減少誤報。同時,ATM交易量還受一些固定節日的影響。從現有的數據來看,一月份由于經歷了春節,在除夕之前的日子可能受工資結算或者年底資金回籠的影響,交易量與其他日子相比,顯著增加,春節之后,ATM交易量下降。相類似的,在其他的節日,人們的消費或者資金容易受到節日的影響。在獲取更多數據后,可以對各個節日建立不同的序列模型,對可能的異常進行預測,從而應對節日里交易量突增的情況?;跁r間跨度更大的數據,我們可以對數據進行季節性分析,建立梳系數ARIMA模型,使得結果更加準確。(2)表現更好的貝葉斯模型貝葉斯分類器模型中,訓練數據的分布直接決定了先驗概率的計算結果。如果訓練數據過少,在對一些沒有出現過的異常進行分類時可能產生嚴重的錯誤?;诟蟮臄祿?,能夠豐富貝葉斯分類器的訓練集,從而提高監測系統應對各種異常的靈敏度與準確率。六、靈敏度分析系統在實際的應用過程中,數據將會更加復雜多變,能否保證在遇到異常時迅速、準確的預警對整個ATM系統的安全十分重要,接下來主要針對預警系統進行靈敏度分析。(1)時間窗口的改變在定義健康度下降指標中,將健康度下降指標定義為前六分鐘內健康度下降的比例,這樣得到的健康度下降指標剔除了隨機產生的誤差,如果窗口值過小,會影響報警的效果。為此分別設定2-8分鐘的時間窗口對系統進行測試,測試數據為3月23日00:00~01:40(包含一段時間的第四類異常),結果如下:表9:不同窗口時長的報警情況(3月23日00:00~01:40)窗口時長2345678報警次數15.0019.002225232528準確率遺漏報警100.00%90.91%80.00%86.96%80.00%71.43%預警提前時間2.002.0022111報警結束滯后時間3.004.0066678可見時間窗口越長,報警結束滯后也會越長,相反預警提前時間會減少,實際應用過程中顯然前一個指標更加重要,同樣還發現窗口越長,報警的準確率會降低,但是當時間窗口小于3,將會有異常點被遺漏,這是不允許的。綜合上述分析可知,當系統選擇W=3的時間窗口時,效果最好。模型對W

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論