【待继续研究】解析机器学习技术在反欺诈领域的应用
反欺詐簡(jiǎn)單說,就是:根據(jù)借款人提供的信息,查找多方面資料,進(jìn)行不同屬性的比對(duì),從而發(fā)現(xiàn)“羊群中的狼”。這種工作復(fù)雜而枯燥,為了識(shí)別團(tuán)伙欺詐,往往需要收集、整理、分析各種維度的數(shù)據(jù),工作量更是成倍增加。但是枯燥的工作往往是單純且有樂趣的。
舉個(gè)栗子:
一個(gè)客戶A來信貸公司進(jìn)件,說他的妻子是B。另外一個(gè)客戶C來進(jìn)件,說他的姐姐是D。分別去看A和C的進(jìn)件,我們發(fā)現(xiàn)不了任何的異常情況。但是把A和C放在大數(shù)據(jù)系統(tǒng)(需要模型支撐)搜索里面,就發(fā)現(xiàn)問題了:A的妻子B的電話和C的姐姐D的電話是一樣的,但是名字不一樣。
看到這個(gè)信息,我們肯定會(huì)思考到底B和D是不是同一個(gè)人?所以我們要調(diào)查一下,假如我們通過打電話來做調(diào)查,發(fā)現(xiàn)兩個(gè)人的聲音竟然是一樣的,但是針對(duì)不同的調(diào)查,她所描述的個(gè)人信息是不一樣的,所以我們確定B和D是同一個(gè)人,且她在撒謊。那么A和C也在撒謊,所以他們有很大的欺詐風(fēng)險(xiǎn)。
然后在系統(tǒng)中看到,有一個(gè)客戶E,他和客戶A的工作單位是一樣的。繼續(xù)對(duì)他們所在的工作單位進(jìn)行調(diào)查,發(fā)現(xiàn)分別調(diào)查的時(shí)候,兩人提到的公司的詳細(xì)信息不一樣。再后來,發(fā)現(xiàn)A和E所說的這個(gè)工作單位是一個(gè)中介公司包裝的,并不真實(shí)存在。所以,現(xiàn)在可以確定:A、E是欺詐客戶,那么和A通過B(D)關(guān)聯(lián)起來的C也是欺詐客戶;所有和A、E是同一個(gè)工作單位的客戶都是欺詐客戶。
這是一個(gè)典型的通過個(gè)別客戶的異常信息逐步發(fā)現(xiàn)欺詐客戶甚至欺詐團(tuán)伙的案例。在這些風(fēng)險(xiǎn)用戶組成的關(guān)系網(wǎng)中,含有欺詐可能的信息,都會(huì)被標(biāo)注出來,業(yè)務(wù)人員可以直觀地發(fā)現(xiàn)它們,從而降低欺詐風(fēng)險(xiǎn)。
反欺詐一直是風(fēng)控的核心,事實(shí)上,根據(jù)相關(guān)第三方數(shù)據(jù)調(diào)查統(tǒng)計(jì)顯示,消費(fèi)金融以及互聯(lián)網(wǎng)金融公司的壞賬中有超過50%來自于欺詐。對(duì)于消費(fèi)金融公司來說,欺詐風(fēng)險(xiǎn)遠(yuǎn)遠(yuǎn)大于信用風(fēng)險(xiǎn)。
欺詐者以非法牟利為目的,在真實(shí)交易方不知情的情況下,采取盜取賬號(hào)、偽造身份、提供虛假信息、進(jìn)行虛假交易等行為,給正常提供交易的各方造成損失,對(duì)互聯(lián)網(wǎng)消費(fèi)金融業(yè)務(wù)提供機(jī)構(gòu)造成嚴(yán)峻的挑戰(zhàn)。
什么是機(jī)器學(xué)習(xí)?
廣義:作為人工智能最重要的技術(shù)——機(jī)器學(xué)習(xí)(Machine Learning, ML)是一門多領(lǐng)域交叉學(xué)科,涉及概率論、統(tǒng)計(jì)學(xué)、逼近論、凸分析、算法復(fù)雜度理論等多門學(xué)科。專門研究計(jì)算機(jī)怎樣模擬或?qū)崿F(xiàn)人類的學(xué)習(xí)行為,以獲取新的知識(shí)或技能,重新組織已有的知識(shí)結(jié)構(gòu)使之不斷改善自身的性能。
金融領(lǐng)域的機(jī)器學(xué)習(xí):本質(zhì)上是進(jìn)行特征提取和問題描述。將銀行龐大的數(shù)據(jù)通過特征表達(dá)的方式轉(zhuǎn)化到復(fù)雜的數(shù)據(jù)模型上,并依靠深層的神經(jīng)網(wǎng)絡(luò),生成多層非線性的表達(dá),從而表達(dá)一些以往很難描述的金融現(xiàn)象,因此特別適合處理風(fēng)險(xiǎn)、欺詐以及金融產(chǎn)品的營(yíng)銷這些依靠過往經(jīng)驗(yàn)難以準(zhǔn)確定量的事件。
機(jī)器學(xué)習(xí)技術(shù)的反欺詐原理
利用機(jī)器的深度學(xué)習(xí)技術(shù)反欺詐的原理,實(shí)際上是從信貸反欺詐的薄弱點(diǎn)著手,通過機(jī)器收集到大量異構(gòu)、多源化的信息,包括可交叉驗(yàn)證信息主體所提供的信息以及第三方信息來源的真實(shí)性,形成共享庫。
通過對(duì)數(shù)據(jù)的采集和分析,再通過機(jī)器學(xué)習(xí)及復(fù)雜網(wǎng)絡(luò)等模型算法技術(shù),對(duì)數(shù)據(jù)進(jìn)行深度挖掘,從傳統(tǒng)歷史數(shù)據(jù)中量化抽取風(fēng)險(xiǎn)特征指標(biāo),利用復(fù)雜網(wǎng)絡(luò)關(guān)聯(lián)分析技術(shù)從歷史違約數(shù)據(jù)中發(fā)現(xiàn)實(shí)時(shí)欺詐業(yè)務(wù)風(fēng)險(xiǎn)指標(biāo),豐富深度學(xué)習(xí)風(fēng)險(xiǎn)模型的業(yè)務(wù)維度,建立人工智能反欺詐模型,從而發(fā)現(xiàn)欺詐者隱藏的蛛絲馬跡,分析其數(shù)據(jù)的矛盾點(diǎn)和可疑點(diǎn),從而識(shí)別欺詐者身份,加上與傳統(tǒng)經(jīng)驗(yàn)規(guī)則配合使用,大幅提升銀行欺詐風(fēng)險(xiǎn)的防控能力。
欺詐分析所使用的數(shù)據(jù)主要來源內(nèi)部數(shù)據(jù)和外部數(shù)據(jù),針對(duì)不同的數(shù)據(jù)源,通過多種采集方式對(duì)數(shù)據(jù)進(jìn)行有效采集,并集中在數(shù)據(jù)湖中進(jìn)行融合存儲(chǔ)。根據(jù)預(yù)測(cè)模型分析的需求,通過配套的數(shù)據(jù)處理技術(shù)工具對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,最終輸出模型訓(xùn)練所需的樣本數(shù)據(jù)。
機(jī)器學(xué)習(xí)技術(shù)的反欺詐應(yīng)用
機(jī)器學(xué)習(xí)可以根據(jù)豐富的數(shù)據(jù)和監(jiān)控模型,對(duì)數(shù)據(jù)進(jìn)行多重處理分析,建立實(shí)時(shí)反欺詐規(guī)則和模型,結(jié)合當(dāng)前用戶特征,實(shí)時(shí)識(shí)別用戶欺詐行為。機(jī)器學(xué)習(xí)流程遵循一個(gè)標(biāo)準(zhǔn)程序,稱為“訓(xùn)練算法”:包括數(shù)據(jù)抽取、數(shù)據(jù)清洗、特征推導(dǎo)、特征工程和轉(zhuǎn)換、特征選擇、模型訓(xùn)練和模型性能評(píng)價(jià)。
一、數(shù)據(jù)可視化
數(shù)據(jù)可視化 - 相關(guān)矩陣(Correlation Matrix) & 多維尺度變換(Multidimensional Scaling) ,人是視覺動(dòng)物,可以在第一時(shí)間“看到”數(shù)據(jù)中存在的問題。因此,對(duì)于大部分反欺詐問題,建議至少要做以下兩個(gè)可視化嘗試:
一是,對(duì)不同的特征(feature)做一個(gè)相關(guān)矩陣分析并可視化,分析相關(guān)矩陣的目的是告訴我們特征兩兩之間的關(guān)系,以便于我們快速發(fā)現(xiàn)一些數(shù)據(jù)里面可能存在的問題。最重要的是幫助我們檢查數(shù)據(jù)是否存在問題,有沒有什么違反常理的情況。
二是,多維尺度變換(MDS)來直接可視化數(shù)據(jù)分布,我們都知道一般來說欺詐和正常數(shù)據(jù)應(yīng)該“長(zhǎng)得不一樣”,那是否可以直接把它們畫出來來分析。
然而,數(shù)據(jù)可視化往往都是二維或者三維的,但現(xiàn)實(shí)往往是成百上千維。即使我們把一個(gè)特征作為一個(gè)維度,我們最多也只能可視化三個(gè)維度。而多維尺度變換(MDS)可以將高維的數(shù)據(jù)在二維或者三維的框架里面進(jìn)行可視化,類似的數(shù)據(jù)點(diǎn)會(huì)更加接近。通過觀察數(shù)據(jù)點(diǎn)的分布,我們可以直觀的猜測(cè)數(shù)據(jù)是否有規(guī)律,是否存在潛在異常點(diǎn)。
以一個(gè)項(xiàng)目為例,我們用MDS將一個(gè)8維的數(shù)據(jù)在2維上展示出來。我們似乎可以直觀的看到一些近似線性的關(guān)系,以及一些看起來“很可疑”的點(diǎn),在圖中標(biāo)注了出來。
這樣做的好處有兩點(diǎn):
首先我們可以看到數(shù)據(jù)是否存在特定的特征,如果所有的點(diǎn)都是隨機(jī)散亂分布,那我們的麻煩就大了。
我們似乎可以看到有一些離群的數(shù)據(jù)點(diǎn),這些點(diǎn)可能是潛在的“欺詐”,也有可能只是噪音而已。但我們可以向客戶或者老板展示這個(gè)可視圖,向他們證明項(xiàng)目有潛在的價(jià)值。
如果在可視化中我們看到了一些規(guī)律,這讓有信心繼續(xù)往下做,進(jìn)入建模階段。
二、欺詐檢測(cè)-算法
一般我們對(duì)欺詐檢測(cè)做兩種假設(shè):
時(shí)序相關(guān)(time dependent)。對(duì)于時(shí)序相關(guān)的問題,我們假設(shè)欺詐的發(fā)生依賴于時(shí)間,通過時(shí)間序列分析,我們可以發(fā)現(xiàn)異常的地方。舉例,假設(shè)一個(gè)人的信用卡平時(shí)1-11月每月消費(fèi)2000美元,但12月突然消費(fèi)了5000美元,此時(shí)時(shí)間就對(duì)我們的項(xiàng)目存在意義。
時(shí)序獨(dú)立(time independent)。對(duì)于時(shí)序獨(dú)立的問題,我們假設(shè)每一個(gè)欺詐都是獨(dú)立,和時(shí)間無關(guān)。于是在分析中,我們移除了時(shí)間這個(gè)特征,我們不再把時(shí)間作為一個(gè)分析軸或者影響欺詐發(fā)生的特征。
有監(jiān)督機(jī)器學(xué)習(xí)模型
有監(jiān)督機(jī)器學(xué)習(xí)模式是反欺詐檢測(cè)中最為廣泛使用的機(jī)器學(xué)習(xí)模式。其中包含的幾個(gè)學(xué)習(xí)技術(shù)分別有決策樹算法,隨機(jī)森林,最近鄰算法,支持向量機(jī)和樸素貝葉斯分類。機(jī)器學(xué)習(xí)通常從有標(biāo)簽數(shù)據(jù)中自動(dòng)創(chuàng)建出模型,來檢測(cè)欺詐行為。
在創(chuàng)建模型的過程中,清楚了解哪些是欺詐行為,哪些不是,會(huì)起到至關(guān)重要的作用。模型中倒入的數(shù)據(jù)會(huì)影響其檢測(cè)效果。用已知欺詐數(shù)據(jù)和正常數(shù)據(jù)做訓(xùn)練集,可以訓(xùn)練出學(xué)習(xí)模型來填補(bǔ)并增強(qiáng)規(guī)則引擎無法覆蓋的復(fù)雜欺詐行為。
下面是一個(gè)關(guān)于有監(jiān)督機(jī)器學(xué)習(xí)機(jī)制如何將新的數(shù)據(jù)劃分為欺詐和非欺詐的例子。訓(xùn)練數(shù)據(jù)通過識(shí)別模型特點(diǎn),可以預(yù)知兩種類型欺詐者: 1. 信用卡欺詐者 2. 垃圾信息制造者。
以下三種特征對(duì)識(shí)別欺詐攻擊類型非常有幫助:1. 郵件地址結(jié)構(gòu) 2. IP地址類型 3. 關(guān)聯(lián)賬戶密度指示欺詐攻擊類型(如變化的回復(fù))。實(shí)際上,一個(gè)典型的模型有成百上千種特征。
在此例中,擁有以下特征的用戶會(huì)被訓(xùn)練出的模型識(shí)別為信用卡欺詐:
郵箱地址前5個(gè)是字母,后3個(gè)是數(shù)字
使用匿名代理
中等密度關(guān)聯(lián)賬號(hào)(例如10)
有以下特征的用戶會(huì)被識(shí)別為垃圾信息制造者:
郵箱地址按某種形式隨機(jī)生成的
使用數(shù)據(jù)中心的IP地址
高密度關(guān)聯(lián)賬號(hào)(例如30+)
假設(shè)現(xiàn)在你的模型正在從下面一批用戶里評(píng)估風(fēng)險(xiǎn),這個(gè)模型會(huì)計(jì)算每個(gè)用戶的郵件地址結(jié)構(gòu),IP地址類型以及賬號(hào)關(guān)聯(lián)密度。正常情況下,模型會(huì)將第二種和第三種用戶歸類為垃圾制造者,把第一、第四、第五種歸為信用卡欺詐者。
無監(jiān)督學(xué)習(xí)
無監(jiān)督檢測(cè)算法無需依賴于任何標(biāo)簽數(shù)據(jù)來訓(xùn)練模型。這種檢測(cè)機(jī)制算法的核心內(nèi)容是無監(jiān)督欺詐行為檢測(cè),通過利用關(guān)聯(lián)分析和相似性分析,發(fā)現(xiàn)欺詐用戶行為間的聯(lián)系,創(chuàng)建群組,并在一個(gè)或多個(gè)其他群組中發(fā)掘新型欺詐行為和案例。
像Isolation Forest就是一種非常穩(wěn)定的算法,是周志華老師提出的。而且在Sklearn里面已經(jīng)得到了實(shí)現(xiàn)。基本的原理就是一種集成學(xué)習(xí),通過計(jì)算每個(gè)數(shù)據(jù)點(diǎn)需要多少次節(jié)點(diǎn)拆分(splitting)才能被劃分到獨(dú)立的空間。異常點(diǎn)因?yàn)楹推渌|c(diǎn)離得較遠(yuǎn)不大相似,因此更容易用很少的拆分就可以被劃到獨(dú)立的空間里面去。
各種Density Based的聚類方法(CBLOF)。此處需要注意,大家熟知的K-Means為原型的聚類,如K-Modes都不大適合用于異常值檢測(cè),因?yàn)槠浔旧砗苋菀资艿疆惓V岛驮胍舻臄_動(dòng)。
各種以K近鄰(KNN)為原型的檢測(cè)方法。從本質(zhì)上說,和聚類方法是比較類似的。
四、如何構(gòu)建可行的欺詐檢測(cè)方案?
首先,我們必須先要認(rèn)清一個(gè)殘酷的現(xiàn)實(shí): 單純依靠機(jī)器學(xué)習(xí)模型來檢測(cè)欺詐是愚蠢的。至少在現(xiàn)階段我們不能單純依靠純粹的數(shù)據(jù)模型來做這一點(diǎn)。比較折中且可行的方法是做 混合模型(hybridmodel),也就是把人為規(guī)則和機(jī)器學(xué)習(xí)模型合二為一,一起來使用。
首先我們通過對(duì)領(lǐng)域?qū)<业脑L談和對(duì)歷史數(shù)據(jù)的分析,可以得到一些非常可靠的評(píng)判標(biāo)準(zhǔn)。以保險(xiǎn)行業(yè)為例,如果一個(gè)人剛買短期保險(xiǎn)沒兩天就意外身亡,這存在欺詐的風(fēng)險(xiǎn)就很高。這樣的標(biāo)準(zhǔn)或許從機(jī)器學(xué)習(xí)中可以學(xué)到,或許學(xué)不到。如果有成本更低方法做到更好的效果,不要迷信全自動(dòng)模型。
總結(jié)來說,反欺詐模型難度很高,而且需要和領(lǐng)域?qū)<乙黄饏f(xié)作才能有最好的結(jié)果。機(jī)器學(xué)習(xí)從業(yè)者千萬不要閉門造車,試圖自己靠調(diào)參就搞個(gè)大新聞。
推薦的步驟是:
對(duì)數(shù)據(jù)進(jìn)行必要的可視化,如MDS
同時(shí)考慮時(shí)間是否是重要因素,如果是那么進(jìn)行時(shí)序分析
用無監(jiān)督學(xué)習(xí)得到一些可能的異常點(diǎn),如Isolation Forests
通過統(tǒng)計(jì)學(xué)方法分析得到的異常點(diǎn)是否有顯著的不同,有特征可供我們研究
歸納特征并構(gòu)造一個(gè)故事,與領(lǐng)域?qū)<夜餐?yàn)證故事的可靠性
重復(fù)1-5直到被派到下一個(gè)項(xiàng)目上搬磚,爭(zhēng)取找到盡量多有效的欺詐
構(gòu)造[規(guī)則+機(jī)器學(xué)習(xí)]的混合模型,進(jìn)一步調(diào)參優(yōu)化模型
如何提升反欺詐模型性能
基于數(shù)據(jù)
借助算法
用算法調(diào)參
借助模型融合
最后講一講在建模過程中一些調(diào)優(yōu)的經(jīng)驗(yàn)。如果發(fā)現(xiàn)反欺詐模型的效果不是很滿意,應(yīng)該采用怎樣的方法提升。可以嘗試這四個(gè)方面。
第一個(gè)是基于數(shù)據(jù)的方法。如果這個(gè)模型效果不太好,我們首先要思考的是特征是否還不夠好或者還不夠多。我們能否想方法找出更多的特征來。同時(shí)也要考慮到我們對(duì)數(shù)據(jù)的分析是不是到位,是不是對(duì)數(shù)據(jù)的處理上還不夠細(xì)致,是否在數(shù)據(jù)的整理上犯了一些低級(jí)錯(cuò)誤,而導(dǎo)致模型效果不太好。
第二個(gè)可以借助算法的方法。如果你用到的算法是線性的,它的效果可以作為你的一個(gè) benchmark。你可以嘗試使用復(fù)雜一點(diǎn)的算法去擬合你的數(shù)據(jù)集,比如用非線性的,boosting 的一些算法。用復(fù)雜的算法一般會(huì)比一些線性的算法得到更好的效果,但也同時(shí)意味著你要花更多時(shí)間調(diào)優(yōu)模型的參數(shù)。
第三個(gè)用算法調(diào)參的方法。一般說來,非線性算法是有一些超參數(shù)的。越復(fù)雜的算法超參數(shù)越多。比如像深度學(xué)習(xí)的超參數(shù)就非常多。你要通過一個(gè)復(fù)雜的算法得到一個(gè)很好的模型,是需要花很多時(shí)間去調(diào)參的,而且在調(diào)參過程中意味著你需要對(duì)算法本身有一定了解,而且了解的越深入對(duì)調(diào)參過程越有把握。
最后通過融合(ensemble)我們的模型。我們使用 random forest 或者 GBDT 的算法,本身就是一種融合的方式。我們?cè)谟煤脦追N算法得到不同 Model 后,可以把這些 Model 再次融合起來。最直接的方法是把不同 Model 的結(jié)果當(dāng)成新的 Model 的 input 重新去訓(xùn)練。在你遇到 Model 效果不太好的時(shí)候,可以嘗試使用模型融合。
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的【待继续研究】解析机器学习技术在反欺诈领域的应用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你所知道及不知道的骗贷、中介、欺诈团伙是
- 下一篇: 空壳公司骗贷的常见手段及风控措施