第一章:评分卡概述
大家好,我是老张。在风控这行摸爬滚打十几年,今天咱们聊聊申请评分卡。
很多人问我:“评分卡到底是个啥?”
说白了,它就是一把尺子。一把用来量借款人信用风险的尺子。
什么是申请评分卡
申请评分卡,英文叫 Application Scorecard。它是信贷机构在客户申请环节,用来评估客户违约概率的工具。
我习惯把它比作“信贷守门员”。客户一进门,先过它这一关。
它的核心逻辑很简单:
- 收集客户信息(年龄、收入、职业、征信记录等)
- 给每个信息项打分
- 汇总总分,判断是否通过
举个例子:
一个典型的申请评分卡输出:
总分 650 分以上 → 自动通过
总分 550-650 分 → 人工审核
总分 550 分以下 → 直接拒绝
嗯,就是这么直接。我在项目中遇到过一家小贷公司,他们之前全靠人工审批,效率低得吓人。后来上了评分卡,审批时间从2小时缩短到3分钟。你说香不香?
评分卡在信贷全生命周期中的作用
很多人以为评分卡只在申请环节用一次。其实不是的。
信贷全生命周期,我把它分成四个阶段:
| 阶段 | 评分卡类型 | 核心作用 |
|---|---|---|
| 申请阶段 | 申请评分卡 | 决定是否放款 |
| 账户管理阶段 | 行为评分卡 | 监控客户状态,调整额度 |
| 催收阶段 | 催收评分卡 | 判断催收优先级 |
| 反欺诈阶段 | 欺诈评分卡 | 识别欺诈风险 |
你看,申请评分卡只是第一关。但它是最关键的一关。为什么?
因为如果第一关没把好,后面再努力也白搭。我曾经见过一家机构,申请评分卡做得稀烂,结果坏账率飙到15%。后来重新开发了评分卡,坏账率降到3%以下。差距就这么大。
评分卡开发的标准流程(CRISP-DM框架)
说到开发流程,我强烈推荐 CRISP-DM 框架。这是数据挖掘领域的标准流程,也是我做评分卡开发的首选。
CRISP-DM 全称是 Cross-Industry Standard Process for Data Mining。翻译过来就是“跨行业数据挖掘标准流程”。
它包含六个阶段:
- 业务理解 - 搞清楚业务目标是什么
- 数据理解 - 收集数据,看看数据长什么样
- 数据准备 - 清洗数据,处理缺失值、异常值
- 建模 - 用逻辑回归等算法构建评分卡
- 评估 - 验证模型效果,看是否达到业务要求
- 部署 - 把模型上线,应用到实际业务中
下面这张图是我自己画的,展示了 CRISP-DM 的完整流程:
你可能会问:“这六个阶段是不是必须按顺序走?”
其实不是的。CRISP-DM 最大的特点就是灵活。你可以来回跳转。比如数据理解阶段发现数据不够,可以回到业务理解阶段重新定义需求。
我的经验:
在实际项目中,数据准备阶段往往最耗时。我做过一个项目,光数据清洗就花了两周。别急,这一步做扎实了,后面建模就顺了。
避坑指南:
我曾经犯过一个错误:业务理解没做透就急着建模。结果模型做出来,业务方说“这不是我们想要的”。白白浪费了一个月。所以,一定要先和业务方对齐需求。
说到建模,我习惯用逻辑回归。为什么?因为可解释性强。风控模型最怕“黑箱”。你想想看,如果模型拒绝了一个客户,你得能解释清楚为什么拒绝。逻辑回归的系数就是最好的解释。
下面是一个简单的逻辑回归代码示例:
import pandas as pd
from sklearn.linear_model import LogisticRegression
# 加载数据
data = pd.read_csv('application_data.csv')
# 特征选择
features = ['age', 'income', 'credit_score', 'debt_ratio']
X = data[features]
y = data['default_flag']
# 训练模型
model = LogisticRegression()
model.fit(X, y)
# 查看系数
print('特征系数:')
for feat, coef in zip(features, model.coef_[0]):
print(f'{feat}: {coef:.4f}')
嗯,代码很简单。但实际开发中,特征工程才是重头戏。我习惯先做单变量分析,看看每个特征和违约率的关系。然后再做多变量分析,处理特征间的相关性。
最后说一句:评分卡不是一劳永逸的。市场在变,客户在变,模型也要跟着变。我建议每半年做一次模型监控,看看 PSI 指标有没有异常。如果 PSI 超过 0.1,就得考虑模型迭代了。
好了,第一章就聊到这儿。记住:评分卡是门手艺活,既要懂技术,也要懂业务。多实践,多总结,你也能成为高手。