中国统计网Python实战:信用评分模型开发「Part 2」( 二 )
输出结果:
本文插图
ROC曲线
从上图可知 , AUC值为0.85 , 说明该模型的预测效果还是不错的 , 正确率较高 。
7
信用评分
我们已经基本完成了建模相关的工作 , 并用ROC曲线验证了模型的预测能力 。 接下来的步骤 , 就是将Logistic模型转换为标准评分卡的形式 。
1.评分标准
本文插图
依据以上论文资料得到:
- a=log(p_good/P_bad)
- Score = offset + factor * log(odds)
- 基础分值
- PDO(比率翻倍的分值)
- 好坏比
# 我们取600分为基础分值 , PDO为20(每高20分好坏比翻一倍) , 好坏比取20 。 z =20 / math.log(2)q =600 -20 * math.log(20) / math.log(2)baseScore = round(q + p * coe[0],0)个人总评分=基础分+各部分得分2.部分评分
下面计算各变量部分的分数 。 各部分得分函数:
#计算分数函数 def get_score(coe,woe,factor): scores= for w in woe: score=round(coe*w*factor,0) scores.append(score) return scores计算各变量得分情况:# 各项部分分数x1 = get_score(coe[1], woex1, p)x2 = get_score(coe[2], woex2, p)x3 = get_score(coe[3], woex3, p)x7 = get_score(coe[4], woex7, p)x9 = get_score(coe[5], woex9, p)我们可以得到各部分的评分卡如下图所示: 本文插图
各变量的评分标准
8
自动评分系统
根据变量来计算分数 , 实现如下:
#根据变量计算分数def compute_score(series,cut,score): list =i =0 while i <len(series): value = http://news.hoteastday.com/a/series[i] j =len(cut) -2 m =len(cut) -2 while j >=0: if value >= cut[j]: j = -1 else: j -=1 m -=1 list.append(score[m]) i +=1 return list我们来计算test里面的分数:test1 = pd.read_csv('TestData.csv')test1['BaseScore']=Series(np.zeros(len(test1)))+baseScoretest1['x1'] = Series(compute_score(test1['RevolvingUtilizationOfUnsecuredLines'], cutx1, x1))test1['x2''age'], cutx2, x2))test1['x3''NumberOfTime30-59DaysPastDueNotWorse'], cutx3, x3))test1['x7''NumberOfTimes90DaysLate'], cutx7, x7)test1['x9''NumberOfTime60-89DaysPastDueNotWorse'], cutx9, x9))test1['Score'] = test1['x1'] + test1['x2'] + test1['x3'] + test1['x7'] +test1['x9'] + baseScoretest1.to_csv('ScoreData.csv',index=False)批量计算的部分分结果:本文插图
批量计算的部分结果
9
总结及展望
【中国统计网Python实战:信用评分模型开发「Part 2」】本文通过对kaggle上的Give Me Some Credit数据的挖掘分析 , 结合信用评分卡的建立原理 , 从数据的预处理、变量选择、建模分析到创建信用评分 , 创建了一个简单的信用评分系统 。 基于AI的机器学习评分卡系统可通过把旧数据(某个时间点后)剔除掉后再进行自动建模、模型评估、并不断优化特征变量 , 使得系统更加强大 。
推荐阅读
- 印度|中印边境一声巨响,印军试射导弹直指中国,解放军高原霸气亮剑
- 中国青年网|男子放手一搏再买6400元!结局令人震惊,买彩票输光15000元
- 中国网推荐|店家:她有脑子,1次刮痧5万!妈妈哭诉女儿理发店被骗十几万贷款
- 印度|印媒: 中国被我们冷落了!
- 窘境|窘境中求助惨遭拒绝!中国此次也选择置之不理,俄国:早该如此
- 人民日报海外版|人民日报海外版:中国经济复苏走在全球前列
- 中国新闻网|尼泊尔交通部部长感染新冠病毒 政府决定加紧增设高依赖病床
- 下个10年,Go能取代Python成为开发者的首选语言吗?
- 图表视界|印度GDP将反超日本!仅次于中国、美国?,柳叶刀最新预测!30年后
- 海峡军志号|否则以后卖给印度,继煤炭后棉花被禁?澳农业部要求中国“澄清”
