今年Reinhard Hsu以爲最有意思的事情,是參加了拍拍貸第二屆魔鏡杯互聯網金融數據應用大賽。經過「富爸爸隊」,認識了一羣小夥伴,帶領你們成功進入到複賽階段,並打造了複賽階段用戶評分最高的分析類產品。詳見《祝賀富爸爸隊的投資分析做品成功進入拍拍貸魔鏡杯複賽階段》。html
Prosper是美國的一家金融科技公司,Reinhard Hsu在進入金融科技行業前就已經知道該公司,由於名字與Reinhard Hsu以前的老東家很是類似,以致於Tableau的原廠顧問在一開始覺得個人老東家與他的老客戶Prosper是同一家公司。api
此次Reinhard Hsu使用R語言對Prosper公開數據集的分析,看看Prosper風險評分的影響因素都有哪些。網絡
## 'data.frame': 84853 obs. of 14 variables: ## $ CreditGrade : Factor w/ 7 levels "AA","A","B","C",..: 2 2 5 3 6 4 1 1 4 3 ... ## $ Term : int 36 36 36 60 36 36 36 36 60 36 ... ## $ BorrowerAPR : num 0.12 0.125 0.246 0.154 0.31 ... ## $ EmploymentStatus : Factor w/ 7 levels "Employed","Full-time",..: 1 1 1 1 1 1 1 1 1 1 ... ## $ EmploymentStatusDuration : int 44 113 44 82 172 103 269 269 300 1 ... ## $ InquiriesLast6Months : int 3 0 1 0 0 3 1 1 1 1 ... ## $ BankcardUtilization : num 0.21 0.04 0.81 0.39 0.72 0.13 0.11 0.11 0.51 0.7 ... ## $ DebtToIncomeRatio : num 0.18 0.15 0.26 0.36 0.27 0.24 0.25 0.25 0.12 0.18 ... ## $ ProsperPaymentsLessThanOneMonthLate: int NA NA 0 NA NA NA NA NA NA NA ... ## $ ProsperPaymentsOneMonthPlusLate : int NA NA 0 NA NA NA NA NA NA NA ... ## $ LoanOriginalAmount : int 10000 10000 15000 15000 3000 10000 10000 10000 13500 4000 ... ## $ ProsperScore : num 7 9 4 10 2 4 9 11 7 4 ... ## $ ListingCreationDateInHour : num 8.47 11.03 18.63 8.43 9.87 ... ## $ CreditScoreRangeMean : num 690 810 690 750 690 ...
## CreditGrade Term BorrowerAPR EmploymentStatus ## AA: 5372 Min. :12.00 Min. :0.04583 Employed :67310 ## A :14551 1st Qu.:36.00 1st Qu.:0.16328 Full-time : 7927 ## B :15581 Median :36.00 Median :0.21945 Not employed : 649 ## C :18345 Mean :42.49 Mean :0.22666 Other : 3806 ## D :14274 3rd Qu.:60.00 3rd Qu.:0.29254 Part-time : 256 ## E : 9795 Max. :60.00 Max. :0.42395 Retired : 367 ## HR: 6935 Self-employed: 4538 ## EmploymentStatusDuration InquiriesLast6Months BankcardUtilization ## Min. : 0.0 Min. : 0.0000 Min. :0.0000 ## 1st Qu.: 30.0 1st Qu.: 0.0000 1st Qu.:0.3300 ## Median : 74.0 Median : 0.0000 Median :0.6000 ## Mean :103.1 Mean : 0.9646 Mean :0.5642 ## 3rd Qu.:148.0 3rd Qu.: 1.0000 3rd Qu.:0.8300 ## Max. :755.0 Max. :27.0000 Max. :2.5000 ## NA's :19 ## DebtToIncomeRatio ProsperPaymentsLessThanOneMonthLate ## Min. : 0.000 Min. : 0.00 ## 1st Qu.: 0.150 1st Qu.: 0.00 ## Median : 0.220 Median : 0.00 ## Mean : 0.259 Mean : 0.66 ## 3rd Qu.: 0.320 3rd Qu.: 0.00 ## Max. :10.010 Max. :42.00 ## NA's :7296 NA's :65056 ## ProsperPaymentsOneMonthPlusLate LoanOriginalAmount ProsperScore ## Min. : 0.00 Min. : 1000 Min. : 1.00 ## 1st Qu.: 0.00 1st Qu.: 4000 1st Qu.: 4.00 ## Median : 0.00 Median : 7500 Median : 6.00 ## Mean : 0.05 Mean : 9083 Mean : 5.95 ## 3rd Qu.: 0.00 3rd Qu.:13500 3rd Qu.: 8.00 ## Max. :21.00 Max. :35000 Max. :11.00 ## NA's :65056 ## ListingCreationDateInHour CreditScoreRangeMean ## Min. : 0.00 Min. :609.5 ## 1st Qu.: 9.10 1st Qu.:669.5 ## Median :12.60 Median :709.5 ## Mean :12.79 Mean :708.9 ## 3rd Qu.:16.52 3rd Qu.:729.5 ## Max. :23.98 Max. :889.5 ##
咱們看到Prosper平臺的借款金額主要以15000如下的小額借款爲主。其中幾個數額的借款人數不少,4000元、10000元、15000元。ide
咱們看到風險評級的分佈中,中等風險的數量最多,高風險和低風險的數量較少。函數
咱們看到風險評分的4分、6分、8分的數量最多。高分和低分的較少。大數據
咱們看到Prosper的借款期數主要以長期爲主。其中3年期最多,其次是5年期。咱們知道通常而言,借款人信用越好,能借到的期數越長,這說明Prosper的借款人的信用看起來還不錯。ui
咱們看到這個分佈呈右偏分佈,有一些借款人的徵信信用評分相對比較高。3d
咱們看到絕大多數實在6點到21點之間進行借款的,也有少數在半夜進行借款。code
咱們看到這是一個右偏倚數據,在右邊有着長長的尾巴。少數人連續從事一份職業可以達到50年之久。數量最多的是1年、2年和3年,其次是不到1年工做狀態就發生變化的。orm
這個數據竟然可以超過100%,我以爲有點難以想象。後面我會將異常值過濾掉。大部分人的已用額度在30%到80%之間,中位數在60%左右。
咱們看到大多數人的負債收入比在17%到32%之間,應該還算是不錯的一個水平。
咱們看到,Prosper的借款期數主要以3年期爲主,其次是5年期的。而1年期的借款不多。借款金額主要以4000、10000、15000爲主,大部分金額較低。
咱們的Prosper數據集有81個特徵,超過11萬個觀察對象。通過清晰和轉換後,個人數據集擁有14個特徵,和84853個觀察對象。
在本次分析中,我最感興趣的特徵是Prosper對每一個散標的風險評分ProsperScore。
Prosper數據集中的特徵很豐富,這裏我挑選了最感興趣的14個特徵,它們分別是:
特徵 | 描述 |
---|---|
CreditGrade | Prosper對散標的風險評級 |
Term | 借款的期數 |
BorrowerAPR | 借款年化利息 |
EmploymentStatus | 借款人的工做狀態 |
EmploymentStatusDuration | 借款人當前工做狀態持續的月數 |
CreditScoreRangeMean | 借款人徵信數據中的信用評分範圍上下限的均值 |
InquiriesLast6Months | 前6個月借款人徵信數據被查詢的次數 |
BankcardUtilization | 借款人信用卡已用額度佔比 |
DebtToIncomeRatio | 借款人負債收入比 |
ProsperPaymentsLessThanOneMonthLate | 借款人在Prosper逾期還款在一個月內的次數 |
ProsperPaymentsOneMonthPlusLate | 借款人在Prosper逾期還款在一個月以上的次數 |
LoanOriginalAmount | 借款人的借款金額 |
ListingCreationDateInHour | 借款人發起借款請求的時間段(小時) |
ProsperScore | Prosper的風險評分 |
在拍拍貸魔鏡大數據風控系統之父顧鳴博士的一次分享中,我瞭解到借款人發起借款請求的時間段與散標的風險有一些關係。他給出的理由是,若是一我的在半夜借錢,從機率上講他極可能是沒有工做的。
根據這個提示,我從ListingCreationDate中取出小時,建立了ListingCreationDateInHour特徵。
在對特徵調查的過程當中,我發現借款人徵信數據中的信用評分上下線的均值、借款人發起借款請求的時間段,這兩個基本呈正態分佈。
由於Prosper風險評分字段在2009年後才加入,我會將以前沒有風險評分的數據過濾掉。
在對Prosper風險評級特徵進行可視化時,我發現並未按照風險大小的順序進行排序。我又將其轉換爲有序因子。
## ## Pearson's product-moment correlation ## ## data: as.numeric(as.factor(prosper$CreditGrade)) and prosper$ProsperScore ## t = -289.74, df = 84851, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.7085876 -0.7018231 ## sample estimates: ## cor ## -0.7052214
散標的風險評分給出的分數越高,風險評級的風險越低。這兩個特徵的皮爾遜相關係數達到了-0.7052,說明這兩個特徵之間的關係頗有意義。頗有可能風險評級是根據風險評分去定的。
## ## Pearson's product-moment correlation ## ## data: prosper$ProsperScore and log(prosper$BorrowerAPR) ## t = -277.2, df = 84851, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.6928780 -0.6858159 ## sample estimates: ## cor ## -0.6893633
散標的風險評分給出的分數越高,借款年化利息越低,這兩個特徵的皮爾遜相關係數是-0.6894,說明這兩個特徵之間有必定的關係。
## ## Pearson's product-moment correlation ## ## data: as.numeric(as.factor(prosper$CreditGrade)) and log(prosper$BorrowerAPR) ## t = 808.67, df = 84851, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## 0.9400468 0.9415923 ## sample estimates: ## cor ## 0.9408244
風險評級給出的風險越高,借款年化利率越高。這兩個特徵的皮爾遜相關係數達到了0.9408,說明這兩個特徵之間的關係頗有意義。頗有多是由於年化利息是根據風險評級而定的。
## ## Pearson's product-moment correlation ## ## data: ProsperScore and sqrt(DebtToIncomeRatio) ## t = -80.585, df = 75261, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.2883991 -0.2752455 ## sample estimates: ## cor ## -0.2818355
借款人負債收入比越高,通常風險評分給出的分數越低。這兩個特徵的皮爾遜相關係數只有-0.2818,沒有什麼實質性的關係。
## ## Pearson's product-moment correlation ## ## data: ProsperScore and BankcardUtilization ## t = -73.435, df = 84842, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.2507807 -0.2381273 ## sample estimates: ## cor ## -0.2444644
借款人信用卡已用額度佔比越高,通常風險評分給出的分數越低。可是這兩個特徵的皮爾遜相關係數只有-0.2445,沒有什麼實質性的關係。
## ## Pearson's product-moment correlation ## ## data: prosper$ProsperScore and prosper$CreditScoreRangeMean ## t = 115.87, df = 84851, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## 0.3637793 0.3753979 ## sample estimates: ## cor ## 0.369603
借款人徵信數據中的信用評分範圍上下限均值越高,通常風險評分給出的分數越高。這兩個特徵的皮爾遜相關係數達是0.3696,說明這兩個特徵之間的關係有意義,可是很小。
## ## Pearson's product-moment correlation ## ## data: prosper$ProsperScore and prosper$LoanOriginalAmount ## t = 80.475, df = 84851, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## 0.2600308 0.2725335 ## sample estimates: ## cor ## 0.2662933
通常風險評分給出的評分越高,借款人的借款金額越高。這兩個特徵的皮爾遜相關係數是-0.2663,說明這兩個特徵之間沒有什麼實質性關係。
## ## Pearson's product-moment correlation ## ## data: ProsperScore and EmploymentStatusDuration ## t = -3.5037, df = 83736, p-value = 0.000459 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.018878712 -0.005334483 ## sample estimates: ## cor ## -0.01210715
風險評分在10分以上的借款人當前職業狀態持續月數的中位數,比其它分值的要稍微高一點點。這兩個特徵的皮爾遜相關係數是-0.0121,說明這兩個特徵之間沒有什麼實質性關係。
## ## Pearson's product-moment correlation ## ## data: prosper$ProsperScore and sqrt(prosper$InquiriesLast6Months) ## t = -95.58, df = 84851, p-value < 2.2e-16 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.3178320 -0.3056831 ## sample estimates: ## cor ## -0.3117703
最近6個月借款人徵信數據被查詢次數越多,通常風險評分給出的分數越低。這兩個特徵的皮爾遜相關係數達是-0.3118,說明這兩個特徵之間的關係有意義,可是很小。
咱們看到風險評分在6分及以上的,借款人近6個月徵信數據被查詢次數大可能是0次到1次,中位數是0次。評分在3到5分的,查詢次數大可能是0次到2次,中位數是1次。評分是1分和2分的,查詢次數明顯多一點,特別是1分的,查詢次數大可能是1次到5次,中位數達到了3次。
## ## Pearson's product-moment correlation ## ## data: prosper.group_by_hour_late$ListingCreationDateInHour_24 and prosper.group_by_hour_late$ProsperPaymentsOneMonthPlusLate_Mean ## t = 2.6215, df = 22, p-value = 0.01558 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## 0.1051864 0.7447116 ## sample estimates: ## cor ## 0.4878814
經過分析借款人發起借款請求的時間段,與借款人在Prosper逾期還款在一個月以上的次數的均值,咱們看到在23點到0點之間發起借款的人,逾期還款一個月以上的次數的均值要高一些。這兩個特徵的皮爾遜相關係數是0.4879,說明兩個特徵之間的關係有必定意義。
## ## Pearson's product-moment correlation ## ## data: prosper.group_by_hour_bank$ListingCreationDateInHour_27 and prosper.group_by_hour_bank$InquiriesLast6Months_Mean ## t = 4.476, df = 22, p-value = 0.0001886 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## 0.3977499 0.8555152 ## sample estimates: ## cor ## 0.6903752
經過分析借款人發起借款請求的時間段,與前6個月借款人徵信數據被查詢的次數的均值,咱們看到在20點到2點之間發起借款的人,前6個月借款人徵信數據被查詢的次數的均值很是高。這兩個特徵的皮爾遜相關係數是0.6904,說明兩個特徵之間的關係有必定意義。
咱們在辦信用卡、貸款、逾期還款時,會查詢咱們的徵信數據。通常咱們認爲,徵信數據近期被查詢的次數越高,這我的可能越缺錢,逾期的風險也越大。
## ## Pearson's product-moment correlation ## ## data: prosper.group_by_hour_bank$ListingCreationDateInHour_27 and prosper.group_by_hour_bank$CreditScoreRange_Mean ## t = -1.9706, df = 22, p-value = 0.06149 ## alternative hypothesis: true correlation is not equal to 0 ## 95 percent confidence interval: ## -0.68387345 0.01904139 ## sample estimates: ## cor ## -0.3873305
經過分析借款人發起借款請求的時間段,與借款人徵信數據中的信用評分範圍下限的均值,咱們看到在20點到2點之間發起借款的人,借款人徵信數據中的信用評分範圍下限的均值很是低。這兩個特徵的皮爾遜相關係數是-0.3873,說明兩個特徵之間的關係有必定意義。
經過ggpair函數,咱們生成了變量關係矩陣圖。咱們最感興趣的是ProsperScore風險評分,咱們看到它與借款年華利率之間的關係有必定意義,與過去6個月借款人徵信數據被查詢的次數之間的關係有必定意義。與信用卡已用額度佔比,和借款金額之間沒有什麼實質性的關係。
經過同時對兩個特徵的分析,咱們看到風險評分特徵,與其它不少特徵有相關性。
我觀察了借款人發起借款請求的時段,與逾期超過一個月的次數的均值、前6個月徵信數據被查詢的次數的均值、徵信信用評分範圍的均值之間的關係,發現半夜發起借款申請的借款人,缺失風險更大。
發現了借款年化利息與風險評級之間、風險評級與風險評分之間有強相關性。這與咱們的業務知識相一致,咱們都知道借款年化利息是根據風險評級的高低定的,而風險評級又是根據風險評分定的。
## ## Calls: ## m1: lm(formula = I(ProsperScore) ~ I(InquiriesLast6Months), data = prosper) ## m2: lm(formula = I(ProsperScore) ~ I(InquiriesLast6Months) + BankcardUtilization, ## data = prosper) ## m3: lm(formula = I(ProsperScore) ~ I(InquiriesLast6Months) + BankcardUtilization + ## CreditScoreRangeMean, data = prosper) ## m4: lm(formula = I(ProsperScore) ~ I(InquiriesLast6Months) + BankcardUtilization + ## CreditScoreRangeMean + DebtToIncomeRatio, data = prosper) ## m5: lm(formula = I(ProsperScore) ~ I(InquiriesLast6Months) + BankcardUtilization + ## CreditScoreRangeMean + DebtToIncomeRatio + ProsperPaymentsLessThanOneMonthLate, ## data = prosper) ## ## ============================================================================================== ## m1 m2 m3 m4 m5 ## ---------------------------------------------------------------------------------------------- ## (Intercept) 6.436*** 7.732*** -2.847*** -2.822*** -5.580*** ## (0.009) (0.017) (0.131) (0.132) (0.269) ## I(InquiriesLast6Months) -0.504*** -0.556*** -0.494*** -0.519*** -0.541*** ## (0.006) (0.005) (0.005) (0.005) (0.010) ## BankcardUtilization -2.208*** -1.203*** -1.199*** -0.782*** ## (0.025) (0.027) (0.027) (0.057) ## CreditScoreRangeMean 0.014*** 0.015*** 0.019*** ## (0.000) (0.000) (0.000) ## DebtToIncomeRatio -1.080*** -1.438*** ## (0.023) (0.054) ## ProsperPaymentsLessThanOneMonthLate -0.036*** ## (0.006) ## ---------------------------------------------------------------------------------------------- ## R-squared 0.1 0.2 0.2 0.3 0.4 ## adj. R-squared 0.1 0.2 0.2 0.3 0.4 ## sigma 2.3 2.2 2.1 2.0 2.1 ## F 8194.3 8426.6 8284.2 7122.6 2085.7 ## p 0.0 0.0 0.0 0.0 0.0 ## Log-likelihood -189940.7 -186165.3 -182953.0 -164587.3 -38518.0 ## Deviance 437019.4 399811.4 370657.0 316533.1 80115.3 ## AIC 379887.3 372338.7 365916.0 329186.5 77050.0 ## BIC 379915.3 372376.1 365962.7 329242.1 77104.5 ## N 84853 84853 84853 77557 17724 ## ==============================================================================================
咱們看到,徵信數據的信用評分上下線均值越低,通常Prosper信用評級給出的風險也越高。
信用卡已用額度佔比越低,通常Prosper信用評級給出的風險越低。可是咱們注意到信用卡已用額度佔比爲0的話,也就是這我的沒刷信用卡就跑來借錢,Prosper信用評級認爲風險很高。
咱們知道風險評級是基於風險評分生成的,借款的年化利率又是根據風險評級定的,這兩個特徵雖然都與風險評分有着較強的相關性,可是由於是先有的風險評分,再有的風險評級,最後纔有的年化利率,因此沒法使用這兩個特徵去預測風險評分。
這裏生成了模型,使用的都是與風險評分弱相關性的特徵,最後模型的r平方係數是0.4,比較低,說明我這裏特徵可能沒有選好。
咱們看到,正如拍拍貸魔鏡大數據風控系統之父顧鳴博士所說,半夜借錢的人,逾期的風險比較高。
特別是0點發起借款申請的人,逾期一個月以上的次數的均值,是其它時間段的2倍以上。
Prosper的風險評分竟然與信用卡已用額度佔比有相關性。咱們看到已用額度佔比的均值越高,風險評分越低。
有多是由於已用額度佔比高的借款人,供他們週轉的資金已經不多了,還款壓力較大,逾期的風險也更高。
借款期數如此之長,仍是挺令我驚訝的。咱們看到借款金額主要是15000元之內的小額借款,借款期數卻能夠長達3年5年。
借款期數長一方面多是由於,可以經過Prosper審覈的借款人都是信用較好的借款人,另外一方面也有多是由於美國那邊的信用體系更完善,Prosper可以獲取到的用戶信用數據更多,美國人更重視信用,因此敢放得長一點。
相對而言,國內的P2P借款主要以短時間爲主。
拍拍貸風控負責人曾在分享中提到,他們的風控系統是利用成百上千個特徵去建模的,每一個特徵所佔的權重很小,而且他們發現利用高度相關的特徵訓練出來的模型效果並很差,須要利用大量弱相關的特徵去作建模。
因此我以爲,我獲得的模型r平方值只有0.4,一方面可能確實是由於個人特徵沒有選好,另外一方面可能真的是須要利用大量弱相關的特徵,我用的特徵太少了。
咱們看到Prosper的風險評分與借款人的一些徵信數據有必定相關性,咱們能夠試着再加入更多的徵信數據,看能不能提高模型的效果。
另外一方面咱們在分析中看到借款發起申請的時段確實與風險有必定關係,可是在最終構建模型時卻沒有很好地利用上時段這個特徵。
國內P2P平臺還會利用借款人的住房公積金、社保、社交網絡、網購等數據對徵信數據進行補充,來構建風控模型,預測風險,這部分數據Prosper的數據集裏沒有提供,不知道國外P2P是否是僅僅依靠銀行徵信數據就夠。