呂恩澤
摘要:時間序列是隨時間變化且相互關(guān)聯(lián)的數(shù)據(jù)序列,在經(jīng)濟、金融、科學(xué)觀測和工程等各個領(lǐng)域都廣泛存在。如何有效地管理和利用歷史時間序列,發(fā)現(xiàn)這些數(shù)據(jù)背后隱含的規(guī)律和知識,是人們廣泛關(guān)注的問題。根據(jù)傳統(tǒng)時間序列分析提出假設(shè),進行驗證的數(shù)據(jù)處理方法不同,時間序列數(shù)據(jù)挖掘適合發(fā)現(xiàn)型任務(wù),能從大量歷史數(shù)據(jù)中挖掘潛在的、未知的、有價值的知識,已吸引了越來越多科研人員與大型公司的關(guān)注。本文對比了幾個時間序列模型方法,并研究發(fā)現(xiàn)其中的問題與解決方法,以供參考。
關(guān)鍵詞:金融;機構(gòu);時間序列
DOI:10.12433/zgkjtz.20233110
中國銀聯(lián)的業(yè)務(wù)部門有監(jiān)控各家收單機構(gòu)(各大銀行、拉卡拉、通聯(lián)支持、匯付支付、開店寶等)交易量的需求,例如,某家交易機構(gòu)當天交易金額反常時產(chǎn)生報警給業(yè)務(wù)人員:分析定位問題、查找是否違規(guī)、手續(xù)費率變更等。從性質(zhì)上來看,是一個典型的時間序列異常偵測應(yīng)用場景。時間序列異常偵測有很多方法,例如,分析數(shù)據(jù)的周期、趨勢、頻率、幅度等。不過,直接分析數(shù)據(jù)的時序特質(zhì)主觀因素會較強烈,可以采用巧妙的方式,直接預(yù)測機構(gòu)交易量,再根據(jù)真實交易量是否落在預(yù)測值上下的一個范圍內(nèi),作出異常判定,把時間序列異常偵測的問題轉(zhuǎn)化成時間序列預(yù)測的問題,以此變成有訓(xùn)練標簽的場景,通過對機構(gòu)歷史交易數(shù)據(jù)(標簽)進行建模訓(xùn)練,判斷未來交易金額。
一、時間序列模型的分類與介紹
時間序列模型種類有很多,要做的是選出對場景最準確預(yù)測的模型。經(jīng)過初步篩選確定簡單統(tǒng)計學(xué)模型、Facebook的Prophet、有監(jiān)督機器學(xué)習(xí)模型LightGBM、深度學(xué)習(xí)模型LSTM四個典型代表。
(一)統(tǒng)計學(xué)模型
大機構(gòu)交易的數(shù)據(jù)特點是總體趨勢平穩(wěn),但具有很強的周期性浮動,可以直接定義這一統(tǒng)計學(xué)模型,當天預(yù)測金額為前五周同日交易金額的平均值,這個模型看似樸素,其實為模型的選擇樹立了一個很簡明的標桿(Benchmark),沒有建模經(jīng)驗業(yè)務(wù)人員也可以用這種簡單的數(shù)學(xué)公式做交易金額推導(dǎo)。從實際效果來看,模型表現(xiàn)出色(MAPE值相對較低),大多數(shù)不能跑贏這個統(tǒng)計學(xué)公式的機器學(xué)習(xí)模型,因此在初篩階段被遺棄。
(二)Prophet
Facebook的Prophet是元宇宙公司開發(fā)的一款時間序列預(yù)測模型,會充分考慮歷史數(shù)據(jù)的分布,把數(shù)據(jù)的非線性趨勢和年周期、周周期,再加上節(jié)假日影響性,綜合評估并給予預(yù)測。該模型的最大特點會考慮特殊日子(節(jié)假日、大促、大型比賽等)對數(shù)據(jù)的影響,并允許自定義特殊日期。考慮到我國大促的力度和影響,把Prophet放在候選區(qū)里,觀察是否會有良好的表現(xiàn)。
(三)LightGBM
LightGBM是一個梯度Boosting框架,使用基于決策樹的學(xué)習(xí)算法,在目前時序預(yù)測領(lǐng)域中具有良好表現(xiàn),據(jù)統(tǒng)計資料顯示,在2020年Kaggle舉辦的M5時序預(yù)測比賽中,前50名作品有超過80%都加入了LightGBM的身影。作為一款有監(jiān)督機器學(xué)習(xí)模型,LightGBM允許輸入多個特征,可以把多個機構(gòu)的數(shù)據(jù)混合訓(xùn)練。這種多元多序列的工作模式,對深入發(fā)掘數(shù)據(jù)規(guī)律具有積極作用。另一款模型XGBoost雖然預(yù)測效果與LightGBM差不多,但LightGBM的訓(xùn)練效率更高,成為機器學(xué)習(xí)模型的首選。
二、時間序列模型的實驗分析
為了便于各種類型的模型比較以及參數(shù)調(diào)優(yōu),統(tǒng)一準備三年多的數(shù)據(jù)(2017年7月到2020年10月)用于訓(xùn)練和驗證,從最后三個月的數(shù)據(jù)隨機抽取測試集評價模型效果。單個模型采用機構(gòu)名加線上或線下作為維度分別建模,然后匯總綜合評分,評價使用MAPE作為指標。需要指出的是,LightGBM模型的特點是利用上述特征,為了發(fā)揮本身的特性,做了額外的特征工程:對交易金額、筆數(shù)等時間特征做滑窗處理,再加上機構(gòu)自身的特征,用以模型訓(xùn)練。
經(jīng)過大量測試發(fā)現(xiàn),LightGBM對各家機構(gòu)的預(yù)測偏差基本在5%以內(nèi),明顯好于統(tǒng)計標桿和其他模型。本文確定以LightGBM為預(yù)測交易資金的主模型,但現(xiàn)在的問題是如何調(diào)優(yōu)模型,盡可能提高預(yù)判的準確率。當然,直接的方式是通過模型調(diào)參,雖然可以通過利用網(wǎng)格搜索技術(shù)進行超參調(diào)優(yōu),但模型在驗證數(shù)據(jù)精準提升不大,也存在過擬合的潛在問題,必須搜索每個機構(gòu)模型單獨網(wǎng)格,時間和資源的大量消耗難以達到滿意效果。
通過大量的模型和數(shù)據(jù)研究之后得出改進方案,LightGBM的特質(zhì)是可以把多家機構(gòu)數(shù)據(jù)一起訓(xùn)練,通過把機構(gòu)放入同一個模型共同訓(xùn)練,提煉機構(gòu)間的共有規(guī)律,提高模型的準確率。于是隨機篩選出一批機構(gòu)單獨建模記錄MAPE成績,再混合訓(xùn)練進行對比,部分機構(gòu)的效果比之前有所提高(MAPE更低),另一部分機構(gòu)預(yù)測能力卻不如之前,這是因為共同訓(xùn)練淡化了一些本來可以很好刻畫該機構(gòu)交易量的特征??梢缘贸鼋Y(jié)論,每家機構(gòu)都有自己的業(yè)務(wù)模式,要改進一版方案,找到具有相同業(yè)務(wù)模式的機構(gòu)并把它們放在同一個LightGBM模型中訓(xùn)練。通過對數(shù)據(jù)的干預(yù)分類,讓模型可以更好地學(xué)習(xí)業(yè)務(wù)模式上的規(guī)律,在這種情況下,每種機構(gòu)的類型會產(chǎn)生一個模型。
三、機構(gòu)重排的方法
通過觀察交易數(shù)據(jù)得出結(jié)論,銀行間的業(yè)務(wù)模式也并不相同,有的銀行業(yè)務(wù)模式甚至和三方機構(gòu)更接近,要想完善模型,還要重排機構(gòu)。
無標簽聚類算法是針對機構(gòu)重排一種很有效的手段,各種算法在網(wǎng)上也有很詳細的解釋?;旧洗蠖鄶?shù)聚類算法都是通過對象的特征值,計算對象與對象的距離,再根據(jù)距離的長短聚合。要使用一種新穎的基于結(jié)果導(dǎo)向的圖聚類算法,核心思想是把每個機構(gòu)看成圖上的一個點,確定哪些點之間可以建邊,有了點和邊的關(guān)系,利用類似于Louvain的算法計算機構(gòu)間的社區(qū)關(guān)系,把兩兩一組的機構(gòu)用LightGBM進行共同建模,如果兩家機構(gòu)的結(jié)果都比分別建模效果好,就可以定義這兩家機構(gòu)的點之間存在一條邊。有了數(shù)據(jù)之后,利用圖算法把機構(gòu)聚合成若干個社區(qū)共同訓(xùn)練。
四、機構(gòu)交易預(yù)測模型遇到的問題與解決辦法
機構(gòu)交易預(yù)測模型已完成了一半,但仍存在兩個問題:第一,對于有長期趨勢的機構(gòu),模型預(yù)測能力較差,主要是因為基于增強樹模型的LightGBM沒有辦法預(yù)測未知數(shù)據(jù)范圍的交易值,對于新興機構(gòu)或夕陽機構(gòu),預(yù)測的表述能力還不夠。第二,對于少數(shù)復(fù)雜業(yè)務(wù)模式,LightGBM難以抓住規(guī)律,分別表現(xiàn)為兩種情況,MAPE過高或大量依靠前一天的交易量預(yù)測,會影響模型預(yù)測的準確性,但業(yè)務(wù)上又不能過濾小眾機構(gòu),因此最終模型必須提供一定程度的兼容性。
為了解決這一問題,決定引進一個新的模型中和LightGBM的不足。最后的交易預(yù)測模型內(nèi)部是一個雙模型,兩個模型分別作出判斷,只有當真實值和兩個預(yù)測值都不接近時,才會檢測異常。兩個模型相互輔佐,會大大減少模型本身帶來的誤差,讓業(yè)務(wù)人員從頻繁告警中解脫出來,關(guān)注一些真正重要的內(nèi)容。
本文選擇深度學(xué)習(xí)模型LSTM作為第二個模型,作為RNN的改進版本,這種門控循環(huán)網(wǎng)絡(luò)能記住并發(fā)現(xiàn)長時間數(shù)據(jù)的規(guī)律,在復(fù)雜的業(yè)務(wù)場景下,深度學(xué)習(xí)對比起機器學(xué)習(xí),能挖掘數(shù)據(jù)深層次的規(guī)律并提供更好的擬合效果。LSTM的回歸特性能夠預(yù)測機構(gòu)的趨勢,在金融支付場景下,是對LightGBM很好的補充。
不幸的是,直接使用TensorFlow的LSTM包預(yù)測效果在數(shù)據(jù)集下效果并不理想,所以在LSTM層上前置一層卷積神經(jīng)網(wǎng)絡(luò)層(CNN),用來提取野內(nèi)周期數(shù)據(jù)的局部特征??梢钥吹剑爸镁矸e神經(jīng)網(wǎng)絡(luò)的LSTM在某些小眾機構(gòu)預(yù)測表達能力,比起LightGBM提高了3~5倍。
當然,LSTM也有不足,單個模型訓(xùn)練速度緩慢,機構(gòu)之間也不能共同訓(xùn)練,必須單機構(gòu)單模型?;阢y聯(lián)機構(gòu)的數(shù)量和時間成本考慮,雙模型架構(gòu)具有兩個不同的模型更新周期:LightGBM按周更新模型,而LSTM的更新周期為月。
此外,需要確定異常告警閾值,場景中的閾值定義為15%,這個基線可以確保大多數(shù)的機構(gòu)精準率和召回率在98%以上,滿足業(yè)務(wù)上的異常偵測需求,又不至于造成告警風(fēng)暴,讓人工智能把業(yè)務(wù)人員從繁重的數(shù)據(jù)比對和統(tǒng)計工作中解脫出來。
五、結(jié)語
金融支付領(lǐng)域機構(gòu)交易時間序列由于數(shù)據(jù)量大、維數(shù)高、規(guī)律周期跨度長,直接檢測其中的異常模式較難,所以利用LSTM和LightGBM一個機器學(xué)習(xí)模型和一個深度學(xué)習(xí)模型混合檢測,既可以高效地檢測數(shù)據(jù)中的異常模式,還能反映數(shù)據(jù)在不同時間段內(nèi)的變化趨勢,滿足日常生活中業(yè)務(wù)上的需求。同時,模型還附帶給出了預(yù)測交易量,對戰(zhàn)略決策規(guī)劃具有參考作用。
參考文獻:
[1]周大鐲,劉月芬,馬文秀.時間序列異常檢測[J].計算機工程與應(yīng)用,2008,44(35):145-147.
[2]蘇衛(wèi)星,朱云龍,劉芳,等.時間序列異常點及突變點的檢測算法[J].計算機研究與發(fā)展,2014,51(04):781-788.
[3]肖輝.時間序列的相似性查詢與異常檢測[D]上海:復(fù)旦大學(xué),2005.