王新根
如何把當(dāng)前最流行的流處理技術(shù)應(yīng)用在反欺詐領(lǐng)域?
從整個(gè)金融行業(yè)的反欺詐技術(shù)路線來看,一般分為三種模式:
第一種是P處理的反欺詐識(shí)別,以反洗錢最為流行,反洗錢是其中最為常見的一種處理模式。第二種是準(zhǔn)實(shí)時(shí)處理,準(zhǔn)實(shí)時(shí)和批量分析本質(zhì)上都是事后模式,準(zhǔn)實(shí)時(shí)處理模式的時(shí)效性能夠做到幾秒鐘或者說幾分鐘或者幾小時(shí)的情況。第三種是實(shí)時(shí)處理。從實(shí)際場(chǎng)景來看,實(shí)時(shí)處理以事中處理模式最為有效。與準(zhǔn)實(shí)時(shí)不一樣,用戶交易都需要實(shí)時(shí)通過風(fēng)控引擎,由我們的風(fēng)控決策來預(yù)判這個(gè)交易有沒有風(fēng)險(xiǎn),這種場(chǎng)景化應(yīng)用能提高我們的客戶體驗(yàn)。
事中反欺詐三大技術(shù)指標(biāo)是我們攻克的主要問題,即超低延時(shí)、非線性、超高并發(fā)。
我們?cè)鯓幼龇雌墼p?
第一步對(duì)用戶交易進(jìn)行攔截,第二步基于攔截的交易,從數(shù)據(jù)庫(kù)回溯交易中相關(guān)要素,過去一段歷史時(shí)間內(nèi)的流水,從數(shù)據(jù)庫(kù)取回來,取回來后會(huì)進(jìn)行事中預(yù)算。這些指標(biāo),比如當(dāng)前登錄的用戶是A,A客戶在過去24小時(shí)過去3個(gè)月內(nèi)在哪些銀行登錄過,他的頻次是什么,他的交易是什么,他過去在什么地方交易過,諸如此類的指標(biāo)有幾百個(gè),第三步需要做的則是針對(duì)這些指標(biāo)的預(yù)算。得到這些指標(biāo)之后與當(dāng)前的交易數(shù)據(jù)合在一起,再基于這些既定的規(guī)則進(jìn)行比對(duì)(這個(gè)規(guī)則不一定是真實(shí)的規(guī)則,也有一種機(jī)器學(xué)習(xí)模型),還要進(jìn)行決策,通過一個(gè)觸發(fā)的規(guī)則列表給出一個(gè)最終風(fēng)險(xiǎn)定義。計(jì)算性能和延時(shí)如果能夠解決掉,我們的事中反欺詐基本上也得到了完美的解決。
OLAP怎么發(fā)展?
最開始是數(shù)據(jù)庫(kù)的批處理技術(shù)。我們的數(shù)據(jù)倉(cāng)庫(kù)運(yùn)行模型一般需要幾十個(gè)小時(shí),經(jīng)過幾十個(gè)小時(shí)才能給出一個(gè)完整答案。谷歌推出一個(gè)理念,基本上解決了批處理的時(shí)效性問題,把原來幾十個(gè)小時(shí)壓縮在幾小時(shí)、幾十分鐘甚至幾分鐘之內(nèi)。批處理技術(shù)講究的理念是先將原始數(shù)據(jù)累積下來,用的時(shí)候及時(shí)得到查詢結(jié)果。往往數(shù)據(jù)的回溯計(jì)算耗時(shí)較長(zhǎng),最多延時(shí)幾十毫秒為極限。
后來出現(xiàn)了流處理技術(shù),與批處理技術(shù)相比,最本質(zhì)的區(qū)別在于邏輯先行,計(jì)算所有數(shù)據(jù)中每一用戶過去24小時(shí)累積交易額邏輯,這個(gè)邏輯是增量運(yùn)營(yíng)的。流處理中所有處理結(jié)果是動(dòng)態(tài)的,隨著數(shù)據(jù)的進(jìn)入不斷地進(jìn)行變化。跟傳統(tǒng)的數(shù)據(jù)倉(cāng)庫(kù)不太一樣,流處理講究分布式處理,理論上我們可以做到在1毫秒以內(nèi)解決事中反欺詐的場(chǎng)景。
流處理技術(shù)會(huì)解決很多問題.第一是指標(biāo)的存儲(chǔ)問題。所有計(jì)算中,結(jié)果怎么存儲(chǔ)?這些結(jié)果非常大,要解決所有數(shù)據(jù)的每一個(gè)維度指標(biāo),包括所有的IP、所有設(shè)備、所有倉(cāng)庫(kù)、所有地區(qū)的各種各樣的維度,一般而言不能放在一個(gè)機(jī)器上。此外,特別是在金融領(lǐng)域,要求我們存儲(chǔ)數(shù)據(jù)是高可靠、高可用和高保障。
第二是算法需增量計(jì)算。所有的流處理算法一定要增量,需要把我們?cè)瓉碓诖髷?shù)據(jù)處理空間上的應(yīng)用轉(zhuǎn)化到時(shí)間上,這里的簡(jiǎn)單算法很好做,比如求和、平均。在金融領(lǐng)域,特別是在反欺詐里面經(jīng)常用到的算法,連續(xù)的統(tǒng)計(jì)某一個(gè)用戶過去連續(xù)的、最大的失敗交易指數(shù)是多少,這個(gè)用戶在他過去24小時(shí)連續(xù)的遞減交易,這類在流動(dòng)性檢測(cè)、市場(chǎng)風(fēng)險(xiǎn)檢測(cè)波動(dòng)的算法,包括一些排序、趨同的計(jì)算,這些都需要流處理實(shí)現(xiàn)。
第三是事件序列識(shí)別,對(duì)定位風(fēng)險(xiǎn)的時(shí)候非常有幫助。在判定當(dāng)前用戶有沒有欺詐嫌疑時(shí),我的對(duì)比是跟他類似所有用戶的結(jié)果,所有用戶是個(gè)大維度,這個(gè)數(shù)據(jù)量非常密級(jí),原來是30天,后來發(fā)現(xiàn)不行,得具備統(tǒng)計(jì)30年的長(zhǎng)周期能力,這是要解決的一些難點(diǎn)。
流立方就是在這樣一個(gè)背景下興起的云處理技術(shù),這個(gè)平臺(tái)本質(zhì)上是流處理平臺(tái),所有數(shù)據(jù)流過即處理,處理以立方體的形式保存。立方體細(xì)分為三個(gè)維度:數(shù)據(jù)維度、計(jì)算指標(biāo)和時(shí)間窗口。
我們要讓數(shù)據(jù)動(dòng)起來,系統(tǒng)時(shí)間在移動(dòng)的時(shí)候,在我們立方體里的數(shù)據(jù)也在變化。對(duì)于某一個(gè)用戶過去24小時(shí)的值在發(fā)生變化,剛好有幾筆交易在一兩秒鐘之內(nèi)發(fā)生,24小時(shí)精準(zhǔn)定位需要剔除,窗口數(shù)據(jù)已經(jīng)到來,我們的數(shù)據(jù)是動(dòng)態(tài)的。后面的數(shù)據(jù)加進(jìn)來,前面流失的數(shù)據(jù)也需要解決。數(shù)據(jù)的時(shí)間窗口要進(jìn)行任意調(diào)整,比當(dāng)前時(shí)間往前推24小時(shí),這是非常重要的幾點(diǎn)。
流立方具備基于時(shí)間窗口移動(dòng)的動(dòng)態(tài)數(shù)據(jù)快速處理技術(shù)(時(shí)序處理) 以及基于事件驅(qū)動(dòng)的模式識(shí)別技術(shù)(CEP),支持計(jì)數(shù)、求和、平均、最大、最小、方差、標(biāo)準(zhǔn)差、K階中心矩、連續(xù)、遞增/遞減、最大連續(xù)遞增/遞減、唯一性判別、采集、過濾、排序等多種分布式實(shí)時(shí)計(jì)算模型。
流立方平臺(tái)本質(zhì)上是流式處理,高存速、時(shí)序存儲(chǔ)、復(fù)雜事件是我們自有的特色,流立方有三倍效率的提升度。
我們的流立方平臺(tái)應(yīng)用反欺詐是怎么做的呢?
通過設(shè)備發(fā)起一筆交易,這筆交易流入電子銀行業(yè)務(wù)和信息系統(tǒng)會(huì)被攔截,并進(jìn)行識(shí)別。在識(shí)別過程中,用到歷史數(shù)據(jù)得到的指標(biāo)是流立方平臺(tái)實(shí)時(shí)計(jì)算出來的,計(jì)算完后告知當(dāng)前這筆交易有沒有風(fēng)險(xiǎn),這筆交易沒有風(fēng)險(xiǎn)就會(huì)流入核心電子平臺(tái)業(yè)務(wù)系統(tǒng),流入業(yè)務(wù)系統(tǒng)后,這筆流水會(huì)在流立方的計(jì)算引擎中進(jìn)行指標(biāo)計(jì)算,并存儲(chǔ)到立方體里,效率非常高。
此外,流處理技術(shù)在實(shí)時(shí)報(bào)表、儀表盤方面有很大的價(jià)值,通過采集業(yè)務(wù)系統(tǒng)的數(shù)據(jù)進(jìn)行流處理,把指標(biāo)數(shù)據(jù)在圖表上進(jìn)行展現(xiàn),可以取到一個(gè)非常好的結(jié)果。這樣的圖表在高并發(fā)、低延時(shí)方面都有先天的特性。(根據(jù)演講內(nèi)容整理,未經(jīng)本人審核)