3. PD模型业务定义

做模型前,先把业务定义搞搞清楚。这一步搞错了,后面全白干。我见过不少团队,模型指标挺漂亮,上生产就崩,回过头来查——违约定义和样本窗口没对齐。说白了,定义不清,模型就是个盲人摸象。

1. 违约定义——到底什么叫“坏”

信用评分卡里的PD模型,核心是预测“客户会不会违约”。但“违约”这俩字,不同机构、不同产品,标准天差地别。

咱们先看一个行业惯例表格:

违约口径逾期天数常见应用场景
M1+(早期违约)逾期≥30天现金贷、短期消费贷
M2+(中期违约)逾期≥60天信用卡、分期贷
M3+(严重违约)逾期≥90天抵押贷、大额信贷
M4+(坏账)逾期≥120天核销标准、监管要求

我个人习惯,先跟业务方确认一条底线:“逾期多少天算违约?”这取决于产品期限和风险容忍度。举个例子:7天期的现金贷,逾期30天基本已经收不回来了,用M3+反而不合理。

经验提醒: 我曾在某个车贷项目里,业务方坚持用“逾期90天”作为违约标签。结果模型训练完,预测的违约率只有0.8%,但实际逾期60天的客户后来有40%变成90天逾期。说白了,窗口开太窄,模型学不到中间状态。后来我建议把定义改为“逾期60天即违约”,预测效果明显提升。

还有一个容易踩的坑:债务重组、展期客户算不算违约? 有些机构把展期视为“非违约”,但这会低估真实风险。我记得有一次,一个客户连续展期三次,每次只还利息,最后本金还是亏了。如果按最初的定义,他永远不算违约,模型完全没捕捉到这个信号。所以——展期超过一定次数,建议视为违约事件。

2. 观察期与表现期——模型的时间骨架

每笔样本,都是一个时间点上的“快照”。模型用观察期的特征,去预测表现期的行为。这两个窗口怎么切,直接决定了模型能不能正确捕捉因果关系。

  • 观察期:用来提取特征的时间段。比如,客户过去12个月的还款记录、收入波动、多头借贷变化。这段数据必须在上一次贷款发放之前就存在,不能把未来的信息塞进去。
  • 表现期:用来观察客户是否违约的时间段。从观察期结束点开始,往后滚动一段时间(比如12个月)。在这段时长内,如果客户出现了违约事件,就标记为“坏样本”。
致命错误:前视偏差
我见过团队把表现期的数据放进观察期的特征里——比如用“未来12个月客户申请次数”做特征,然后去预测同一段表现期的违约。这相当于用答案去预测答案,模型上线后瞬间失效。切记:观察期必须完全在表现期之前,不能有任何重叠。

实际操作中,观察期长度和表现期长度需要结合产品周期来定。一个典型设定:

产品类型观察期表现期
12期消费贷过去12个月未来12个月
30天现金贷过去3个月未来60天
36期车贷过去24个月未来18个月

为什么表现期不能太短? 你想想看,如果表现期只有3个月,而大部分客户的违约发生在第6个月——那模型会误以为“那些客户都没事”,漏掉真正的坏蛋。反过来说,表现期太长,样本会过期,业务变了模型就跟不上了。我一般建议:表现期至少覆盖产品生命周期中违约高发期的80%。

3. 样本窗口选择——从历史中切出训练集

历史数据是一条长长的河流。我们要在河上选择一段“窗口”,用来提取训练样本。常见的方法有两种:固定窗口法、滚动窗口法。

避坑指南: 我曾经用了一个2008-2009年的历史窗口做信用卡评分模型。数据老旧,当时还有金融危机样本。模型在测试集上表现很好,但2015年上线后,客户的还款习惯已经完全变了,模型很快就失效了。后来我才意识到——样本窗口必须反映当前或近期的业务环境。

我画了一张时间轴图,帮大家理解观察期、表现期、样本窗口之间的关系:

观察期、表现期与样本窗口关系图 T₀ T₁(观察结束) T₂(表现结束) 观察期(12个月) 表现期(12个月) 样本窗口:20XX年1月 ~ 20XX年12月 坏样本(违约客户) 好样本(正常客户) 注意:观察期与表现期不能重叠,表现期要完整覆盖违约暴露窗口。

图中T₀是放款时间(或观察起始点),T₁是观察期结束点,T₂是表现期结束点。在T₀到T₁之间收集客户的征信特征,在T₁到T₂之间观察违约行为。如果客户在T₁到T₂内出现逾期≥90天,就标记为坏样本。

固定窗口 vs 滚动窗口

方法做法优缺点
固定窗口选取一段历史时间(如2018年1月-2019年12月)作为样本窗口,一次性切出训练集和测试集简单直接,样本数量固定;但窗口过旧会导致模型跟不上业务变化
滚动窗口每隔一段时间(如每季度)向前滚动,保留最近N个月数据,增量更新模型模型更适应新鲜数据,但需要维护多个版本,训练成本高

我个人怎么选? 如果业务稳定、样本量充足,我倾向于用滚动窗口。比如,每次建模只取最近24个月的数据,每半年更新一次模型。这样既能捕捉最新趋势,又不会让模型频繁重训。

常见陷阱:样本窗口内好坏比例失调
如果你选的窗口恰好是经济上行期,违约率极低,训练出来的模型会过度乐观。我遇到过这种情况:模型在窗口内AUC高达0.85,上线一个月后坏账率飙升,后来发现窗口恰好避开了两次紧缩政策。所以——样本窗口最好覆盖至少一个完整的经济周期(比如3-5年),或者至少包含一段高违约时期。

4. 小结——定义先行,窗口布阵

这一块没什么捷径可走。做PD模型的第一步,是坐下来跟业务方、风控策略团队,把违约口径敲定成白纸黑字的文档。然后根据产品生命周期和可用数据,确定观察期和表现期的长度。最后,选一个合理的样本窗口,别太旧,也别太短。

我经常跟团队讲:模型90%的问题都出在业务定义上。定义清晰了,后面调参、特征工程才有意义。咱们下个环节聊抽样和分组策略——不过今天先到这里,把本章的“套路”记住,你已经超过很多刚入行的分析师了。