《《Python金融數(shù)據(jù)挖掘》-課件第15章》由會員分享,可在線閱讀,更多相關(guān)《《Python金融數(shù)據(jù)挖掘》-課件第15章(47頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、,,《Python,金融數(shù)據(jù)挖掘,》,高等教育出版,,,,,,,,,,第十五章,綜合案例,1,:信用卡虛假交易識別,【知識框架圖】,,基于數(shù)據(jù)挖掘算法的虛假交易鑒別業(yè)務(wù)流程,,,,,,,目錄,Contents,第一節(jié),案例背景,第二節(jié),算法評價指標(biāo),第三節(jié),數(shù)據(jù)概況,,第四節(jié),操作流程,本章,學(xué)習(xí)目標(biāo),1.,信用卡虛假交易識別,,,01,案例背景,信用卡虛假交易是指通過不存在的、偽造變更的實體商品或者服務(wù)交易,來套取信用卡內(nèi)資金的違法行為,。,進(jìn)行,虛假交易的持卡人往往缺乏正常健康的還款能力,因此會給信用卡發(fā)行機(jī)構(gòu)的資金安全帶來威脅,。,同時,,虛假交易套取的資金往往流向了限制或者禁止資金進(jìn)入
2、的領(lǐng)域,助長了違法犯罪活動的發(fā)生,。,因此,,對信用卡的虛假交易進(jìn)行識別,是信用卡發(fā)行機(jī)構(gòu)和各國政府執(zhí)法部門密切關(guān)注的一項日常任務(wù)。,信用卡虛假交易識別,先后經(jīng)歷了人工甄別、規(guī)則判斷和大數(shù)據(jù)人工智能識別等三個階段。,目前,虛假交易識別已進(jìn)入大數(shù)據(jù)人工智能識別階段。該階段借助信用卡交易大數(shù)據(jù)記錄和飛速發(fā)展的數(shù)據(jù)挖掘算法,能在第一時間發(fā)現(xiàn)可疑的虛假交易,從而避免損失、遏制違法犯罪活動,。,基于數(shù)據(jù)挖掘算法的虛假交易鑒別業(yè)務(wù)流程,,第一,步:是,對原始業(yè)務(wù)記錄數(shù)據(jù)進(jìn)行清洗,得到滿足算法輸入要求的訓(xùn)練集數(shù)據(jù)。因為銀行交易記錄一般是非常規(guī)范和完善的,因此這一步的工作往往集中對數(shù)據(jù)項進(jìn)行合理地數(shù)值化。賬戶
3、的基本信息和每一筆交易信息,是算法訓(xùn)練集的屬性;而對該筆交易進(jìn)行人工分析或者事后反饋的結(jié)果,則是分類標(biāo)簽,。,第二步:是,選用某種數(shù)據(jù)挖掘算法進(jìn)行模型訓(xùn)練,。,第三步:是,算法參數(shù)調(diào)優(yōu),。,第四,步:訓(xùn)練,好的算法模型可以用來對第四步的新交易信息進(jìn)行分類預(yù)測,。,第五步:算法,的輸出即為預(yù)測的分類結(jié)果,可以及時地判定當(dāng)前新交易是否有虛假交易的可能,從而采取相應(yīng)的措施。,,,02,算法評價,指標(biāo),,要評價一個數(shù)據(jù)挖掘算法效果的好壞,必須有可以量化的評價指標(biāo),。,假設(shè)有一個數(shù)據(jù)集,一共有,100,個樣本,其中包含,60,個逾期還款(陽性)樣本,,40,個正常還款(陰性)樣本。分類算法的目標(biāo)是能夠?qū)?/p>
4、正常和逾期還款的樣本進(jìn)行正確分類。假設(shè)某個分類算法將,100,個樣本分成兩類,每一類均為,50,個樣本,其中分類到陽性逾期類別的樣本中只有,40,個是真實的陽性逾期樣本,另外,10,個樣本屬于陰性正常類別,即分類算法出現(xiàn)了錯誤分類,一方面將,10,個陰性樣本誤分為陽性,另一方面將,20,個陽性樣本誤分為陰性。,,假設(shè)分類算法的預(yù)測類別分為陽性,Positive,和陰性,Negative,兩類,預(yù)測結(jié)果的正確性用正正確(,True,)和錯誤,(False),表示,則預(yù)測標(biāo)簽和數(shù)據(jù)真實標(biāo)簽之間的關(guān)系有以下四種:,TP,(正確預(yù)測的陽性逾期結(jié)果,即,TruePositive,)、,TN,(正確預(yù)測的
5、陰性正常結(jié)果,即,TrueNegative,)、,FP,(錯誤預(yù)測的陽性逾期結(jié)果,即,FalsePositive,)和,FN,(錯誤預(yù)測的陰性正常結(jié)果,即,FalseNegative,)。按照這種表示方法,樣本的分類情況可由表,15-1,表示。,,,預(yù)測結(jié)果,,總計,,,逾期陽性,正常陰性,,實際類別,逾期陽性,TP=40,FN=20,P=60,,正常陰性,FP=10,TN=30,N=40,,總計,50,50,,表,15,-,1,分類算法預(yù)測結(jié)果,,分類,模型的常見評價指標(biāo)包括:,1.,準(zhǔn)確率,A,ccuracy,:準(zhǔn)確率是最直觀的評價指標(biāo),即被正確分類的樣本數(shù)除以樣本總數(shù)。上面這個例子中正確
6、率,,。,,2.,精確率,P,recision,:即所有被分類為逾期陽性的樣本中,實際上是逾期陽性的樣本所占的比例。上面這個例子的精確率,,。,,3.,召回率,R,ecall,:即所有真實分類為逾期陽性的樣本中,被分類算法分類為逾期陽性的樣本所占的比例。上面這個例子的召回率,,。,,4.,假陽率,F,alse,P,ositive,R,ate,:該指標(biāo)表示被錯誤預(yù)測為逾期陽性(意味著它實際值是正常陰性)的樣本,占所有實際為正常陰性的比例。上面這個例子的假陽率,,。,,5.,真陽率,T,rue,P,ositive,R,ate,:該指標(biāo)表示被正確預(yù)測為逾期陽性的樣本,占所有實際為逾期陽性的比例。上面
7、這個例子的真陽率和召回率,Recall,相等,,。,,其他用來衡量分類算法性能的指標(biāo)還包括:錯誤率(,Error Rate = 1-Accracy,)、靈敏度(,Sensitive= TP/P,)、特效度(,Specificity= TN/N),以及算法計算速度、可擴(kuò)展性、魯棒性(算法處理異常值和缺失值的能力)和可解釋性等,。,,混淆矩陣,在,Python,數(shù)據(jù)挖掘的應(yīng)用中,很多算法訓(xùn)練后將得到表,15-1,的結(jié)果報告,稱之為混淆矩陣,(Confusion Matrix),,進(jìn)而計算得到上面提到的衡量指標(biāo)。,,算法訓(xùn)練、測試與,評估,很多,數(shù)據(jù)挖掘算法會將,AUC,的值和混淆矩陣一起輸出,便于
8、使用者對算法的分類效果進(jìn)行評估。,,圖 15-3 算法訓(xùn)練、測試與評估,,圖,15-3,描述了算法訓(xùn)練、測試與評估的主要過程。首先將原始數(shù)據(jù)拆分成訓(xùn)練集和測試集,。,訓(xùn)練集,用于數(shù)據(jù)挖掘算法模型的學(xué)習(xí),從而得到模型的各項參數(shù)(即知識),。,測試,集用于檢驗?zāi)P偷姆诸愋Ч?,即將測試樣本集輸入到模型中,查看模型的輸出是否與實際相符,。,通過,對預(yù)測分類結(jié)果和實際樣本標(biāo)簽進(jìn)行比較,就得到算法的評估情況。,,在開展數(shù)據(jù)挖掘業(yè)務(wù)的過程中,模型接收的一般是一個靜態(tài)數(shù)據(jù),集。,比方說,我們的數(shù)據(jù)集是銀行個人貸款的資料,其中包含了客戶的個人信用信息、賬戶流水信息、以及客戶是否逾期還款信息(即分類標(biāo)簽),。,這
9、個,數(shù)據(jù)集通常會分為兩部分:訓(xùn)練集和測試集,。,訓(xùn)練集,可能占據(jù)整個數(shù)據(jù)集的,80~90%,,用來訓(xùn)練數(shù)據(jù)挖掘模型,。,模型,訓(xùn)練完后,使用測試集檢驗?zāi)P偷姆诸愵A(yù)測情況,得到一個分類結(jié)果(不會逾期,/,會逾期),。,這個,預(yù)測結(jié)果和測試集里的實際結(jié)果進(jìn)行對比,就是表,15-1,混淆矩陣中,TP,、,FN,、,FP,、,TN,數(shù)據(jù)。,,,03,數(shù)據(jù)概況,,,,,,數(shù)據(jù)說明,Kaggle,網(wǎng)址,:,https://,,。,,,,,,,數(shù)據(jù)文件來自一個歐洲的信用卡發(fā)卡機(jī)構(gòu),記錄了,2013,年,9,月中某兩天的信用卡刷卡活動,。,數(shù)據(jù),下載地址:, 15-4 正常交易與欺詐交易餅圖,可以看出,原始數(shù)
10、據(jù)包括,Time,,,V1,V2……V28,,,Amount,,,Class,等列,共有,284807,行,沒有缺失值。如果按照,Class,的取值分類繪制餅圖,可以發(fā)現(xiàn)正常交易占了絕大多數(shù)比重。按照原始數(shù)據(jù)文件說明,虛假交易的比例是,492/284807=0.1727%,。,接下來提出幾個猜想,例如虛假交易是否和交易金融有關(guān)?是否和交易時間有關(guān)?然后驗證這些猜想。,輸出結(jié)果:,圖,15,-,5,交易量與時間的關(guān)系,真實,/,欺詐交易與交易金額的關(guān)系,輸出結(jié)果:,圖 15-6 交易量與金額的關(guān)系,從圖,15-5,和圖,15-6,來看,虛假交易和正常交易在交易時間和交易金額這兩個維度上都沒有表現(xiàn)
11、出明顯的不一致。也就意味從交易時間和交易金額上不能有效區(qū)分虛假和真實交易。,接下來對,V1-V28,個屬性進(jìn)行逐個驗證,看看在哪一個屬性上,虛假交易和真實交易有比較明顯的區(qū)別。,輸出:正常,/,欺詐交易在各屬性下的分布關(guān)系,圖 15-7,可以看到,在屬性,V14,上,虛假交易和正常交易的分布區(qū)分比較明顯;而在屬性,V15,上,虛假交易和正常交易是疊加在一起的,很難區(qū)分。如果要做進(jìn)一步的相關(guān)性分析的話,,V14,和,V15,會有截然不同的結(jié)論。,很明顯,如果只選取部分屬性作為欺詐交易監(jiān)測的目標(biāo),那么應(yīng)該重點關(guān)注像,V14,這樣的屬性。因為在這個屬性上,正常交易和欺詐交易有明顯的差異。在實際應(yīng)用中
12、,是否要進(jìn)行屬性選擇,取決于業(yè)務(wù)特征、數(shù)據(jù)規(guī)模、運算資源、決策時效等因素。本案例后續(xù)的分析中,選擇了全部屬性參與模型訓(xùn)練,。,接下來使用該數(shù)據(jù)集來訓(xùn)練,Sklearn,內(nèi)置的邏輯回歸、隨機(jī)森林和支持向量機(jī)等三種算法模型。,二、模型訓(xùn)練,首先要將數(shù)據(jù)集分成訓(xùn)練集和測試集。,將,70%,的數(shù)據(jù)作為訓(xùn)練集,,30%,作為測試集數(shù)據(jù),也可以按照,75%-25%,分拆。,使用數(shù)據(jù)集依次對三種算法進(jìn)行訓(xùn)練與測試。需要強調(diào)的是:每次運行的最終結(jié)果可能會有一些微小的差異,這主要是由樣本的隨機(jī)抽樣結(jié)果和算法本身的數(shù)學(xué)特性導(dǎo)致的。,1.,邏輯,回歸,方法,,輸出結(jié)果:,從邏輯回歸的結(jié)果來看,在,85443,個測試
13、樣本中,有,85283,個正常交易樣本被識別,,84,個虛假交易樣本被識別。但是,也有,12,個正常樣本被錯誤標(biāo)識成虛假交易,而,64,個虛假交易樣本被錯誤標(biāo)識成正常。,2.,隨機(jī),森林,算法,,以,決策樹為基礎(chǔ),隨機(jī)森林算法將多棵樹集成為一片森林:每棵決策樹都是一個分類器(假設(shè)現(xiàn)在針對的是分類問題),那么對于一個輸入樣本,,N,棵樹會有,N,個分類結(jié)果,。,而,隨機(jī)森林集成了所有的分類投票結(jié)果,將投票次數(shù)最多的類別指定為最終的輸出,。,因為,隨機(jī)森林算法是一個統(tǒng)計投票結(jié)果,因此那些隨機(jī)擾動產(chǎn)生的錯誤會在很大程度上被緩解,其結(jié)果會更加穩(wěn)定,準(zhǔn)確率也比較高。,Scikit,中已經(jīng)集成了隨機(jī)森林算
14、法,可以直接調(diào)用。,隨機(jī)森林,算法程序如下:,輸出結(jié)果:,,3.,支持,向量機(jī),算法,,輸出結(jié)果:,從支持向量機(jī)的結(jié)果來看,在,85443,個測試樣本中,有,85163,個正常交易樣本被識別,只有,10,個虛假交易樣本被識別。有,132,個正常樣本被錯誤標(biāo)識成虛假,而,138,個虛假樣本被錯誤標(biāo)識成正常。,在這個案例中,預(yù)測效果最好的是隨機(jī)森林模型;運行速度最快的是邏輯回歸,;,而,支持向量機(jī)的表現(xiàn)比較差,大部分的虛假交易樣本都沒有被檢測出來,同時算法標(biāo)識的虛假交易中有很多被錯誤標(biāo)識的正常交易。,可見,在真實的案例中,并不是數(shù)學(xué)理論復(fù)雜的方法一定會有好的效果,。,本,例的三個分類算法中,隨機(jī)森
15、林算法相對較簡單,但在預(yù)測效果和執(zhí)行速度上,都取得了更好的結(jié)果。,三、模型應(yīng)用,模型訓(xùn)練好以后,就可以使用模型進(jìn)行預(yù)測了。從,x_test,測試集中隨機(jī)抽取一條記錄,考察用三種訓(xùn)練好的模型對它進(jìn)行正常,/,欺詐交易分類的結(jié)果。,輸出結(jié)果:,明顯地,對于輸入的這樣一組由,V1,V2……V28,項數(shù)據(jù)構(gòu)成的一個樣本,三個模型都給出相同的結(jié)果,0,,也就意味著這是一個真實的信用卡交易。,請注意,因為,x_test,測試集由隨機(jī)抽取產(chǎn)生,所以每次運行取第,10,條得到的,new_input,很可能是不同的,當(dāng)然,測試結(jié)果也會有差異。,本章小結(jié),早期鑒別虛假交易主要依靠人工甄別:信用卡交易結(jié)束后,收單行
16、人工將刷卡憑證傳遞到發(fā)卡行,發(fā)卡行根據(jù)憑證進(jìn)行資金清算,在資金清算過程中甄別虛假交易。人工甄別虛假交易具有時間滯后和易遺漏等不足。,隨著計算機(jī)和網(wǎng)絡(luò)通信技術(shù)的發(fā)展,虛假交易識別進(jìn)入了規(guī)則判斷階段:聯(lián)網(wǎng)的,POS,機(jī)實時將交易數(shù)據(jù)傳遞到發(fā)卡行或者信用卡發(fā)行機(jī)構(gòu)的服務(wù)器上,由程序根據(jù)事先總結(jié)出來的經(jīng)驗規(guī)則對于異常的刷卡地點、時間、金額、頻率進(jìn)行判斷,從而在交易中實時發(fā)現(xiàn)可能的虛假交易。,目前,虛假交易識別已進(jìn)入大數(shù)據(jù)人工智能識別階段。該階段借助信用卡交易大數(shù)據(jù)記錄和飛速發(fā)展的數(shù)據(jù)挖掘算法,能在第一時間發(fā)現(xiàn)可疑的虛假交易,從而避免損失、遏制違法犯罪活動。,重要概念,信用卡,虛假,交易,虛假交易鑒別業(yè)務(wù)流程,人工甄別,規(guī)則判斷,大數(shù)據(jù)人工智能識別,復(fù)習(xí)思考題,自己上,kaggle,網(wǎng),網(wǎng)站:,https,://, 下節(jié)課見,