基于迁移学习的反欺诈方法研究
遷移學(xué)習(xí)(Transfer learning),顧名思義,就是把已知學(xué)到的知識應(yīng)用于理解未知事物上,這很符合我們的認(rèn)知過程。舉個最簡單的例子,假設(shè)我們給朋友介紹一種新產(chǎn)品,就叫“奇里古剎幣”(亂編個名字也是很費腦細(xì)胞的),你很難講解其中的邏輯。但你如果這么說:“類似于比特幣,屬于虛擬貨幣的一種,只不過僅限于購買牛奶”。你的朋友可能瞬間就理解了,“哦,原來如此”。
我們嘗試分析一下你朋友大腦的運作:
第一步:把對比特幣的認(rèn)知直接轉(zhuǎn)移(transfer)到了“奇里古剎幣”
第二步:以此為基礎(chǔ),再加上限制條件“僅限于購買牛奶”
如此,便完成了遷移學(xué)習(xí)的過程。
事實上,遷移學(xué)習(xí)是每個數(shù)據(jù)分析師的必備技能,它不是一種算法模型,甚至稱不上一種技術(shù),只是一種方法論,或者說是一種模型設(shè)計思路。
遷移學(xué)習(xí)的基本概念
#定義#
對于兩個相關(guān)場景A和B,A有大量的標(biāo)簽,B僅有少量標(biāo)簽或沒有標(biāo)簽。遷移學(xué)習(xí)是指通過將對A學(xué)習(xí)的結(jié)果轉(zhuǎn)移到B的建模中,以此提高B的建模效率。
#為什么要進行遷移學(xué)習(xí)#
建模人員都知道,有監(jiān)督機器學(xué)習(xí)需要大量的標(biāo)簽數(shù)據(jù),而為數(shù)據(jù)打標(biāo)簽十分耗時,而且通常需要大量人力參與,因此是一筆巨大的開銷。對于一般有監(jiān)督學(xué)習(xí),我們通常會采用隨機的方式初始化參數(shù),再進行不斷的迭代學(xué)習(xí)得到收斂的參數(shù)組合。我們可以這么理解,遷移學(xué)習(xí)實際上是特殊化的初始化流程,也就是,我們的初始化不是采用隨機參數(shù)方式,而是將其他相關(guān)場景的訓(xùn)練結(jié)果拿來,作為這個模型的初始化。
遷移學(xué)習(xí)的主要優(yōu)勢
首先,遷移學(xué)習(xí)可以提高機器學(xué)習(xí)的效率。這顯而易見,通過遷移學(xué)習(xí),你可以不再通過隨機的方式初始化參數(shù),站在巨人的肩膀上learning,相比于從零開始的模型,必然已經(jīng)贏在起跑線上了;
其次,遷移學(xué)習(xí)可以降低對訓(xùn)練數(shù)據(jù)的量級要求,尤其對于深度學(xué)習(xí)。試想,對于一個五層神經(jīng)網(wǎng)絡(luò)模型,功能是識別男女。那么,你拿一個識別人類的三層神經(jīng)網(wǎng)絡(luò)作為基礎(chǔ),進行遷移學(xué)習(xí),那么,你只需要訓(xùn)練后兩層即可,而無需從零開始。可想而知,這樣的話,對于標(biāo)簽數(shù)據(jù)的數(shù)據(jù)量要求就少得多了;
?
遷移學(xué)習(xí)示意圖
最后,遷移學(xué)習(xí)的適用性較強。遷移學(xué)習(xí)雖然不能應(yīng)用在任意場合,但只要兩個場景具有一點相關(guān)性,即可以使用遷移學(xué)習(xí)。例如,國內(nèi)某公司,其團隊開始主要做精準(zhǔn)營銷,對客戶進行分群,目的是識別出其需求和鑒別購買力。后采用遷移學(xué)習(xí)進行欺詐識別,雖然場景不盡相同,捕捉到人群特征也不盡相同,但其在精準(zhǔn)營銷上訓(xùn)練的模型參數(shù)可以作為反欺詐模型的初始化,以此節(jié)約訓(xùn)練時間。同樣,對于反欺詐業(yè)界所提倡的聯(lián)防聯(lián)控,除了共享黑名單數(shù)據(jù)庫外,其另一個比較重要的應(yīng)用就是遷移學(xué)習(xí)。事實上,國內(nèi)某知名電商日前發(fā)布的關(guān)于騙保反欺詐產(chǎn)品,就是以其商城購買行為分析模型為基礎(chǔ)構(gòu)建的,這也是一種遷移學(xué)習(xí)。
總之,遷移學(xué)習(xí)并非一種技術(shù),而是一種方法論。其根本目的就是“站在巨人的肩膀上”建模,而至于能否采用“遷移學(xué)習(xí)”,就要看你有沒有找對這個“巨人”了。跟“巨人”的場景關(guān)聯(lián)性越高,遷移學(xué)習(xí)的適用性就越好。而如果你胡亂找錯人,那么可能會一不小心掉進大坑,反倒費時了。
遷移學(xué)習(xí)的三種類型
遷移學(xué)習(xí)的關(guān)鍵,用四個字概括,就是“找對巨人”,也就是需要找到不同場景之間的關(guān)聯(lián)和共性(特征),本文就系統(tǒng)性地介紹一下遷移學(xué)習(xí)的幾種方法。
首先,來看幾個定義。
1. Domain:
包含兩個component,一是向量空間X,一個是X的分布P(X)
?
2. Task:
給定一個特定的domain和label空間Y,對于domain里每一個xi,都可以預(yù)測出相應(yīng)的yi。通常,如果兩個task不同,那么其通常有不同的label空間,或者不同的條件分布P(Y|X)
?
3. Source domain:
如果把一個task A上的knowledge遷移到taskB上,那么就說task A對應(yīng)的domain就是Source domain, P(XS)
?
4. Target domain:
如果把一個task A上的knowledge遷移到taskB上,那么就說task B對應(yīng)的domain就是Target domain, P(XT)
下面,根據(jù)標(biāo)簽的情況,將遷移學(xué)習(xí)分為三種類型:
?
Vontear在其blog里有一個形象的說明,在此引用下其說明:
Transductive Learning:從彼個例到此個例,有點象英美法系,實際案例直接結(jié)合過往的判例進行判決。關(guān)注具體實踐。
?
Inductive Learning:從多個個例歸納出普遍性,再演繹到個例,有點象大陸法系,先對過往的判例歸納總結(jié)出法律條文,再應(yīng)用到實際案例進行判決。從有限的實際樣本中,企圖歸納出普遍真理,傾向形而上,往往會不由自主地成為教條。
?
而對于unsupervised learning,屬于比較普遍的內(nèi)容,在此不再贅述。
?
幾種遷移學(xué)習(xí)的選擇流程,如下圖所示:
?
風(fēng)控與反欺詐的應(yīng)用場景
根據(jù)遷移的對象,可以將遷移學(xué)習(xí)分為四種類型,進一步展開就是風(fēng)控與反欺詐的應(yīng)用場景。以下,具體介紹一下幾種常用的思路。
?
1、Inductive Transfer Learning + Instance-transfer
?
適用條件:Source Domain和Target Domain數(shù)據(jù)的特征(feature)和標(biāo)簽(label)完全相同。
?
處理方式:重新調(diào)整source domain的權(quán)重,應(yīng)用于target domain。
?
舉例:信用卡申請的申請表和小額貸款的申請表的申請字段相同,其他埋點信息也相同,且最終的結(jié)論都是【通過】和【拒絕】。那么,在兩者的申請場景下,可以采用此種方法。
?
2、Inductive Transfer Learning + Feature-representation-transfer
?
適用條件:Task之間具有一定關(guān)聯(lián)性,且包含共同的特征
?
處理方式:把每一個task作為輸入,用task之間共同的feature來建模。解釋一下,首先你要通過一些方法將source domain里無標(biāo)簽的數(shù)據(jù)做一個更高level的提煉,稱為representation;然后要將target domain的數(shù)據(jù)也做一個類似的轉(zhuǎn)換,即representation;這樣,我們就可以用可以利用representation來作為建模,且使用與representation相關(guān)的標(biāo)簽了。(很像求最小公倍數(shù)的思路)
?
舉例:這也是一種常用的思路。舉一個最經(jīng)典的例子,信用卡還款,有各種逾期行為,我們定義壞人的方式是認(rèn)為M3&M3+;消費貸分期,也會有各種沒有按時還款的行為,而這個定義是M2&M2+。看上去兩個定義不同,但我們給這樣一個新定義:壞人。此處,【壞人】就是一個共同的feature,也就是我們的定義representation。
?
3、Inductive Transfer Learning + Parameter-transfer
?
適用條件:Task之間具有一定關(guān)聯(lián)性,且在某個獨立模型中共用一些參數(shù)。
?
處理方式:提取共用的參數(shù)直接遷移即可,這種方式在多任務(wù)模型(Multiple tasks model)中應(yīng)用比較廣泛。
?
舉例:前文中的關(guān)于識別男女和識別人類的多層神經(jīng)網(wǎng)絡(luò)的應(yīng)用,就是一個非常典型的parameter-transfer的例子。
?
4、Inductive Transfer Learning +Relational-knowledge-transfer
?
適用條件:Source domain的內(nèi)部關(guān)系和target domain的內(nèi)部關(guān)系有相似性。什么意思呢?舉個:在學(xué)術(shù)領(lǐng)域和影視業(yè)就有如下相似的關(guān)系。
?
處理方式:將source domain學(xué)習(xí)到的MLN(Markov Logic Network)遷移到target domain中,輸出一個針對target domain的新的MLN。
?
舉例:這個可以用來分析新的團伙欺詐模式,例如信用卡申請和銀行放貸的內(nèi)外勾結(jié)、中介機構(gòu)包裝偽造信息等。
此外,Transductive Transfer Learning與Instance-transfer和Feature-representation-transfer相結(jié)合的應(yīng)用與上述第一種和第二種類似。
對于Unsupervisedtransfer learning,通常應(yīng)用于source domain有大量無標(biāo)簽數(shù)據(jù),而target domain的數(shù)據(jù)量比較小且也是無標(biāo)簽的情況,采用的方式為Feature-representation-transfer方法。特別地,基于層次聚類方法論,采用parameter-transfer也可以大幅提高模型的運算效率。
至此,我們已經(jīng)了解了比較主流的遷移學(xué)習(xí)方法。那么,我們還有最后一個問題:如何能夠避免找錯巨人而誤入大坑(專業(yè)名詞為negative transfer)呢?Sinno Jialin Pan提出過一個防止誤入大坑的建議(黑色對號)。而基于筆者的實際項目經(jīng)驗,將調(diào)整后的表格修改如下(紅色對號為筆者添加):
綜上,Transfer Learning對于提高模型運算效率有十分重要的意義。然而,是否能夠遷移,如何進行有效地遷移仍然是建模工程師重點關(guān)注的。對于已知欺詐,Transfer learning具有更好的適用性,而對于未知欺詐,若想使用transferlearning,通常還是需要配合一些背景調(diào)查以及一些標(biāo)簽和業(yè)務(wù)知識輸入,否則,也較難適用。
總結(jié)
以上是生活随笔為你收集整理的基于迁移学习的反欺诈方法研究的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【采用】概率图模型在反欺诈的应用(无监督
- 下一篇: 漫谈风控指标