偵查欺詐交易.pptx_第1頁
偵查欺詐交易.pptx_第2頁
偵查欺詐交易.pptx_第3頁
偵查欺詐交易.pptx_第4頁
偵查欺詐交易.pptx_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、偵查欺詐交易,郝召 馬驍,為什么研究欺詐交易,數(shù)據(jù)挖掘的結(jié)果有助于公司的事后檢查活動 數(shù)據(jù)挖掘過程能夠提供某種欺詐概率排序作為輸出結(jié)果,可以使公司以最佳方式來利用其事后檢查資源 應(yīng)用方面:信用卡交易、稅務(wù)申報檢驗等 本章新的數(shù)據(jù)挖掘主題: 離群值活異常值檢驗、聚類分析、辦監(jiān)督預(yù)測模型,問題的描述與目標,欺詐行為通常與異常的觀測值相關(guān)聯(lián),因為這些欺詐行為是偏離常規(guī)的。在多個數(shù)據(jù)分析領(lǐng)域,這些偏離常規(guī)的行為經(jīng)常稱為離群值,問題的描述與目標,本案例使用的數(shù)據(jù)時某公司的銷售員所報告的交易數(shù)據(jù)。這些銷售員負責銷售該公司的產(chǎn)品并定期報告銷售情況。 銷售員可以按照自己的策略和市場情況來自由設(shè)置銷售價格。月末

2、,向公司報告銷售情況。 數(shù)據(jù)挖掘應(yīng)用的目的是根據(jù)公司過去發(fā)現(xiàn)的交易報告腫的錯誤和欺詐企圖,幫助公司完成核實這些銷售報告的真實性的工作。提供一份欺詐率排名報告,這個欺詐率排名將允許公司把有限的檢驗資源分配給系統(tǒng)提示的更“可疑”的那些報告,可用的數(shù)據(jù),數(shù)據(jù)來自一個未公開的渠道 共401 146行,每一行包括來自銷售員報告的信息。包括: ID:說明銷售員ID的一個因子變量 Prod:說明銷售產(chǎn)品ID號的一個因子變量 Quant:報告該產(chǎn)品銷售的數(shù)量 Val:報告銷售記錄的總價值 Insp:有三個可能值的因子變量ok表示公司檢查了該交易并認為該交易有效;fraud表示發(fā)現(xiàn)該交易為欺詐;unkn表示該交

3、易未經(jīng)過公司審核。,加載數(shù)據(jù),library(DMwR) data(sales) head(sales) 得到一個名為sales的數(shù)據(jù)框,探索數(shù)據(jù)集,Summary()函數(shù)可以使人們出不了解數(shù)據(jù)的統(tǒng)計特征 summary(sales) 數(shù)據(jù)中有大量的產(chǎn)品和銷售人員信息,探索數(shù)據(jù)集,還可以用nlevels( )來確認這一點 nlevels(sales$ID) nlevels(sales$Prod),探索數(shù)據(jù)集,如果在同一個交易中Quant列和Val列有大量的缺失值,就會產(chǎn)生比較嚴重的問題,這回導(dǎo)致一條銷售交易中的有關(guān)銷售量的關(guān)鍵信息缺失。檢驗如下: length(which(is.na(sale

4、s$Quant) & is.na(sales$Val) sum(is.na(sales$Quant) & is.na(sales$Val),探索數(shù)據(jù)集,欺詐行為的比例對于總體而言是很低的 table(sales$Insp)/nrow(sales)*100 繪制每個交易人員的交易數(shù)量和每個產(chǎn)品的交易數(shù)量圖形 totS - table(sales$ID) totP - table(sales$Prod) barplot(totS,main=Transactions per salespeople,names.arg=,xlab=Salespeople, ylab=Amount) barplot(t

5、otP,main=Transactions per product,names.arg=,xlab=Products, ylab=Amount),探索數(shù)據(jù)集,探索數(shù)據(jù)集,檢查產(chǎn)品單位價格的分布: sales$Uprice - sales$Val/sales$Quant summary(sales$Uprice) Min. 1st Qu. Median Mean 3rd Qu. Max. NAs 0.00 8.46 11.89 20.30 19.11 26460.00 14136,探索數(shù)據(jù)集,檢查最貴的和最便宜的產(chǎn)品 用單位價格的中位數(shù)來代表已經(jīng)銷售的產(chǎn)品的標準價格 attach(sales)

6、upp - aggregate(Uprice,list(Prod),median,na.rm=T) topP - sapply(c(T,F),function(o) upporder(upp,2,decreasing=o)1:5,1) colnames(topP) - c(Expensive,Cheap) topP,探索數(shù)據(jù)集,用上述5個產(chǎn)品的單位價格的箱圖來確認它們完全不同的價格分布: tops - salesProd %in% topP1,c(Prod,Uprice) tops$Prod - factor(tops$Prod) boxplot(Uprice Prod,data=tops,y

7、lab=Uprice,log=y),探索數(shù)據(jù)集,找出那些給公司帶來更多(少)資金的銷售人員: vs - aggregate(Val,list(ID),sum,na.rm=T) scoresSs - sapply(c(T,F),function(o) vsorder(vs$x,decreasing=o)1:5,1) colnames(scoresSs) - c(Most,Least) scoresSs,探索數(shù)據(jù)集,給公司帶來更多資金的前100名銷售人員的資金收入幾乎占公司資金收入的40%,而底部的2000人的總收入不足公司總收入的2%。這說明,該公司需要進行內(nèi)部改革。 sum(vsorder(v

8、s$x,decreasing=T)1:100,2)/sum(Val,na.rm=T)*100 sum(vsorder(vs$x,decreasing=F)1:2000,2)/sum(Val,na.rm=T)*100,探索數(shù)據(jù)集,對每個產(chǎn)品所銷售的數(shù)量進行類似的分析,有: qs - aggregate(Quant,list(Prod),sum,na.rm=T) scoresPs - sapply(c(T,F),function(o) qsorder(qs$x,decreasing=o)1:5,1) colnames(scoresPs) - c(Most,Least) scoresPs sum(a

9、s.double(qsorder(qs$x,decreasing=T)1:100,2)/ sum(as.double(Quant),na.rm=T)*100 sum(as.double(qsorder(qs$x,decreasing=F)1:4000,2)/ sum(as.double(Quant),na.rm=T)*100,探索數(shù)據(jù)集,確定每個產(chǎn)品的異常值個數(shù): out - tapply(Uprice,list(Prod=Prod), function(x) length(boxplot.stats(x)$out) outorder(out,decreasing=T)1:10,探索數(shù)據(jù)集,找

10、到29446個被認為是離群值的教一,相當于總交易的7% sum(out) sum(out)/nrow(sales)*100,數(shù)據(jù)問題,處理缺失值的辦法: 1)剔除這些個案 2)用某些策略來填補缺失數(shù)據(jù) 3)運用可以處理缺失值的工具,數(shù)據(jù)問題,前面提到,主要的問題是變量Quant和Val都有數(shù)據(jù)缺失的交易,如果移除所有的888個個案將導(dǎo)致剔除某些產(chǎn)品或是銷售人員的大部分交易,這時候全部剔除888個個案是有問題的, 下面,檢查這種情況是否會發(fā)生,數(shù)據(jù)問題,可以用下面的代碼顯示與存在問題的交易有關(guān)的銷售人員和產(chǎn)品,以及變量Quant和Val同時有缺失值的交易占很大比例的交易人員: 至少從銷售人員方面

11、來看,直接剔除這些同時在兩個變量有缺失值的交易時合理的,因為它們代表了很小的一部分交易,數(shù)據(jù)問題,兩個變量都有缺失值的交易占較大的比例的產(chǎn)品: 多個產(chǎn)品將被剔除的交易超過20%,特別是產(chǎn)品p2689將有近40%的交易被刪除。有點太多了,數(shù)據(jù)問題,如果剔除有缺失數(shù)據(jù)的交易后只有少量的交易,那么我們就可以和類似產(chǎn)品的交易相結(jié)合一增加離群值檢驗的統(tǒng)計可靠性??傊?,剔除所有同事在數(shù)量和價格上有缺失值的交易時最好的選擇 detach(sales) sales - sales-which(is.na(sales$Quant) & is.na(sales$Val), detach()函數(shù)是用來禁止直接訪問數(shù)

12、據(jù)框的列,數(shù)據(jù)問題,分析剩余的在數(shù)量或者價格變量上有缺失值的交易。計算每一種產(chǎn)品在數(shù)量上有缺失值的交易: P2442和p2443兩個產(chǎn)品所有的交易數(shù)量是缺失的,因此我們無法計算其標準價格,所以這些產(chǎn)品的交易信息不可能進行任何分析。 標記為ok的報告,意味著檢查員掌握了比這個數(shù)據(jù)集更多的信息,或者我們得到的數(shù)據(jù)有輸入錯誤,因為從這些交易中似乎不可能得到任何結(jié)論,基于此,將刪除這些交易報告:,數(shù)據(jù)問題,sales - sales!sales$Prod %in% c(p2442,p2443), 刪除了兩種產(chǎn)品,得到新的的Prod的水平 nlevels(sales$Prod) sales$Prod -

13、 factor(sales$Prod) nlevels(sales$Prod),數(shù)據(jù)問題,是否有銷售人員的所有交易數(shù)量為缺失值? 從結(jié)果上看,有幾個銷售人員沒有在報告中填寫交易的數(shù)量信息。 我們只要有其他銷售人員報告的相同產(chǎn)品的交易,就可以嘗試使用此信息來填補那些缺失值,數(shù)據(jù)問題,對交易的Val列的缺失值進行類似的分析 這些數(shù)字是合理的,因為刪除這些交易是沒有意義的,我們將用其他的交易來填補這些缺失值,數(shù)據(jù)問題,從銷售人員方面,計算這些數(shù)字的方法如下: 同樣,這個比例不是太高 在這個階段,我們已經(jīng)刪除了所有沒有足夠信息來填補缺失值的報告 我們將首先獲得每一個產(chǎn)品的標準單價,計算標準價格時,跳過

14、標記為欺詐的交易價格,數(shù)據(jù)問題,對剩余的交易,我們將使用每個產(chǎn)品單位價格的中位數(shù)作為相應(yīng)產(chǎn)品的標準價格: tPrice - tapply(salessales$Insp != fraud,Uprice, list(salessales$Insp != fraud,Prod), median,na.rm=T),數(shù)據(jù)問題,因為我們沒有交易同時在這兩個變量上有缺失值,所以每一個產(chǎn)品有了一個標準單價后,我們就可以用它來計算兩個可能的缺失值(Quant和Val)。下面的代碼將填補所有剩余的缺失值。 然后重新計算Uprice列的值來填補先前未知的單位價格 保存數(shù)據(jù)集,數(shù)據(jù)問題,有些產(chǎn)品只有極少的交易,因為

15、太少的交易,在要求的統(tǒng)計學(xué)顯著性下很難做出決定。這種情況下,考慮是否可以喝一些產(chǎn)品的交易一起分析來避免這個問題 盡管缺失產(chǎn)品之間關(guān)系的信息,但可以嘗試通過觀察產(chǎn)品單價分部之間的相似性來推斷其中的一些關(guān)系,如果可以發(fā)現(xiàn)具有類似價格的產(chǎn)品,我們可以考慮合并它們相應(yīng)的交易并對它們一起進行分析,從而找到異常值 比較兩個分布的一種方法是可視化檢查法(在此不可行);另一種是比較總結(jié)分布的一些統(tǒng)計特性。 連續(xù)變量分布 的兩個重要屬性是集中趨勢和離散趨勢 這里使用中位數(shù)作為衡量中心的統(tǒng)計量,應(yīng)用四分位距(IQR)作為離散指標的統(tǒng)計量更有意義,數(shù)據(jù)問題,上面的代碼使用函數(shù)boxplot()獲得中位數(shù)、第一個四分

16、位數(shù)和第三個四分位數(shù)。對每個產(chǎn)品的所有交易,計算這些統(tǒng)計量,從分析中剔除有欺詐的交易。有了這些統(tǒng)計量以后,得到含有每個產(chǎn)品的中位數(shù)和四分位距的一個矩陣,數(shù)據(jù)問題,根據(jù)每個產(chǎn)品的中位數(shù)和IQR繪制的圖形 par(mfrow=c(1,2) plot(ms,1,ms,2,xlab=Median,ylab=IQR,main=) plot(ms,1,ms,2,xlab=Median,ylab=IQR,main=,col=grey,log=xy) smalls - which(table(Prod) 20) points(log(mssmalls,1),log(mssmalls,2),pch=+),數(shù)據(jù)問

17、題,對于交易數(shù)量少于20的產(chǎn)品,我們將尋找與它的單位價格分布最相似的產(chǎn)品,然后用Kolmogorow-Smirnov檢驗來檢查兩個產(chǎn)品是否在統(tǒng)計意義上相似。 下面的代碼用來獲得一個矩陣(similar)。矩陣中存儲的事這種少于20個交易的每個產(chǎn)品的檢查信息,用對象ms來保存前面獲得的每個產(chǎn)品的單位價格的中位數(shù)和IQR,數(shù)據(jù)問題,dms - scale(ms) smalls - which(table(Prod) 20) prods - tapply(sales$Uprice,sales$Prod,list) similar - matrix(NA,length(smalls),7,dimnam

18、es=list(names(smalls), c(Simil,ks.stat,ks.p,medP,iqrP,medS,iqrS) for(i in seq(along=smalls) d - scale(dms,dmssmallsi,FALSE) d - sqrt(drop(d2 %*% rep(1,ncol(d) stat - ks.test(prodssmallsi,prodsorder(d)2) similari, - c(order(d)2,stat$statistic,stat$p.value,mssmallsi, msorder(d)2,) head(similar),數(shù)據(jù)問題,矩

19、陣similar對象的前幾行,數(shù)據(jù)問題,用下面的代碼得到矩陣similar前幾行相應(yīng)產(chǎn)品的ID: levels(Prod)similar1,1 在90%的顯著水平下,我們可以檢查單位價格分布有相似性的產(chǎn)品的數(shù)量: nrow(similarsimilar,ks.p = 0.9,) 或者是 sum(similar,ks.p = 0.9) 保存similar對象 save(similar,file=similarProducts.Rdata),定義數(shù)據(jù)挖掘任務(wù),有些交易報告被強烈懷疑為欺詐交易,這個應(yīng)用程序的主要目的是運用數(shù)據(jù)挖掘工具,為確定是否核查這些交易提供指導(dǎo)。由于可用于該檢查任務(wù)的資源師有限

20、的并且是變化的,因此這個指導(dǎo)應(yīng)該以欺詐概率排序的形式給出,問題的不同解決方法,主要問題是大多數(shù)可用的報告沒有被檢驗 從確定已有報告是否為欺詐的任務(wù)角度來看,變量Insp中的unkn值和缺失值的意義是一樣的。這個值代表缺少這筆交易是OK還是欺詐信息。 也就是說,我們的數(shù)據(jù)集有兩種類型的觀測值,我們有一個較小的數(shù)據(jù)集,其中的數(shù)據(jù)有標記,它有交易的特征描述和檢驗的結(jié)果。另一個較大的數(shù)據(jù)集是沒有標記的,它們沒有被檢驗,列Insp的值為unkn。在這種情況下,取決于用于建模的觀測值的類型,我們有不同的建模方法。,1、無監(jiān)督技術(shù),我們面臨的不是預(yù)測任務(wù)(即有監(jiān)督方法的目標),而是一個描述性的數(shù)據(jù)挖掘任務(wù)

21、對于未被檢驗的報告,Insp列沒有任何信息,所以它對分析沒有影響。對于這些觀測值,我們只有對交易的描述。這意味著這些銷售報告僅僅有描述他的自變量,這種類型的數(shù)據(jù)適用于非監(jiān)督學(xué)習技術(shù)。即它們的目標不是像有監(jiān)督的方法那樣在“老師”的監(jiān)督下學(xué)習概念。,無監(jiān)督技術(shù),聚類分析是描述性數(shù)據(jù)挖掘的一個例子。 聚類方法師徒對一組觀測值形成多個聚類,一個聚類內(nèi)的個案相似,從而找到這些觀測值的“自然”組別。 相似性概念通常要求由描述觀測值的變量所定義的空間給出一個距離定義 這個距離定義是衡量一個觀測值和其他觀測值之間距離的函數(shù) 距離靠近的個案通常認為屬于同一個自然組,無監(jiān)督技術(shù),異常值檢驗也可以看做是描述性的數(shù)據(jù)

22、挖掘任務(wù)。 有些異常值(或稱為離群值)檢驗方法假定數(shù)據(jù)的預(yù)期分布,把背離這一分布的任何標記值記為異常值。 另一個常見的異常值檢驗策略是假定一個變量空間的距離度量,然后把距離其他觀測值“太遠”的觀測值標記為異常觀測值,無監(jiān)督技術(shù),我們的目標是得到一組觀測值的異常值排序 這個排序作為公司內(nèi)檢驗決策的基礎(chǔ) 這意味著選擇的無監(jiān)督工具必須可以用來識別和排列異常值,有監(jiān)督技術(shù),目標:是找到目標變量(需要學(xué)習的概念)和一組自變量(預(yù)測變量或者屬性)之間的關(guān)系 這個模型可以認為是一個與描述了目標變量Y和預(yù)測變量 之間關(guān)系的未知函數(shù)Y=f( )的近似。這個模型技術(shù)的任務(wù)是得到能夠優(yōu)化某些選擇準則的模型參數(shù),半監(jiān)

23、督技術(shù),找到標記觀測值的成本很大,或是有目標變量取值的個案很難找到,因此有了半監(jiān)督辦法,這種信息通常需要領(lǐng)域?qū)<业墓ぷ?,這增加了數(shù)據(jù)收集的成本。 另一方面,隨著傳感器和其他類型數(shù)據(jù)自動采集裝置的廣泛使用,沒有標簽的數(shù)據(jù)往往是容易獲得的。 因此,經(jīng)常遇到的問題是很大比例的數(shù)據(jù)沒有標記,二只有少量的帶標記數(shù)據(jù)和它們一起。,半監(jiān)督技術(shù),半監(jiān)督技術(shù)之所以這么命名是因為它可以處理這種存在有標記個案和為標記個案的數(shù)據(jù)集 通常有兩種不同的半監(jiān)督方法: 一種是:借助未標記個案提供的額外信息來提高標準的監(jiān)督分類算法的性能 另一種是:半監(jiān)督聚類方法,它嘗試在聚類過程中形成組別的準則上包含一些約束,這些約束是基于標

24、記的數(shù)據(jù),這樣就可以對聚類過程進行糾偏,半監(jiān)督技術(shù),半監(jiān)督聚類的思想是利用現(xiàn)有的標簽來對聚類過程糾偏,使相同的個案在同一類中(must-link),或者把不同的個案放入不同的組中(cannot-link),評價準則,當給出交易報告的一個測試集時,每個模型將產(chǎn)生這些報告的排序。 本節(jié)討論怎么評價這個排序 我們數(shù)據(jù)集的特性是同事包含標記和未標記的數(shù)據(jù)。在這個應(yīng)用中,它們被轉(zhuǎn)換為檢驗和為檢驗的報告。著增加了模型比較的困難,因為對監(jiān)督和無監(jiān)督方法的評價方法通常是不同的。模型得到的排序很可能同時包含標記和未標記的觀測值。對前者而言,很容易評價將標記數(shù)據(jù)列入待檢查報告集合的正確性。 在為標記的情況下,因為

25、我們不能確定這些個案是否為欺詐,所以這種評價是比較困難的,決策精準度與回溯精確度,一個成功模型應(yīng)該得到一個交易排序,其中已知的欺詐交易在排序的頂部。我們的數(shù)據(jù)中有欺詐的報告占少數(shù)。給定一個我們的資源所允許檢驗的報告?zhèn)€數(shù)k,我們希望在排序的頂部k個位置中,或許只有欺詐交易的報告或者為檢驗的報告。然而,我們希望這個測試集中所有已知的欺騙報告出現(xiàn)在這k個位置中,決策精準度與回溯精確度,當我們的目的是預(yù)測一個小集合的罕見事件(這里是欺騙)時,決策精確度和回溯精確度是合適的評價指標。 給定檢驗限制k值,我們可以計算排序的最頂端k個位置的決策精確度和回溯精確度。這個限定值k決定了根據(jù)模型那些報告應(yīng)被檢驗

26、從監(jiān)督分類的角度看,這相當于把頂端的k個位置預(yù)測為fraud類,其余的則為正常報告。 決策精確度告訴我們頂端的k個值的多大比例事實上是標記為欺詐報告。 回溯精確度的值給出這個k個位置所包含的測試集的欺詐行為的比例。 我們所獲得的值是悲觀的,如果如果頂端k個值包括的是未標記的報告,它們不會進行決策精確度和回溯精確度的計算。但是,如果對它們進行了檢驗,我們就可以發(fā)現(xiàn)它們實際上是詐騙交易,因此決策精確度和回溯精確度可能會更高,提升圖和PR曲線,不同的模型可能會在不同的水平上占據(jù)一定的優(yōu)勢,而且在比較模型時,著也可能成為有用的信息。 決策精確度/回溯精確度(PR)曲線是模型性能對這兩者的一種可視化表示

27、。通過在不同的工作點得到上面的兩個統(tǒng)計量的插值,從而得到該曲線。這些工作點由模型提供的感興趣的類別排序的中斷點給出,提升圖和PR曲線,需要添加包ROCR 通過函數(shù)prediction()來做預(yù)測,提升圖和PR曲線,產(chǎn)生的PR曲線具有鋸齒形狀。 這通常認為是不正確的,有一種方法可以克服這種情況。在一個確定的會隨精確度r下,可以計算任何大于或等于r的回溯精確度水平所對應(yīng)的決策精確度的最大值Precint,并把該值作為水平r的決策精確度,提升圖和PR曲線,在performance()函數(shù)的返回值,我們發(fā)現(xiàn)一個名為y.values的屬性,它包含圖像y軸上的值,即所繪的決策精確度。我們依據(jù)上式計算插值的決策精確度,并用它替換y軸坐標值,就可以得到一個無鋸齒效果的圖。代碼如下: PRcurve - function(preds,trues,.) require(ROCR,quietly=T)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論