风控模型开发验证报告

实验 ID: 20261022-104051-f654 · 生成时间: 2026-10-22 10:40 (GMT+8) · 报告结构:标准14节模型开发验证模板

00 模型概要信息

项目内容
模型名称exp_20261022-104051-f654
开发完成日期2026-10-22
模型开发人员(人工填写)
模型开发人员邮件地址(人工填写)
模型验证人员(人工填写)
模型验证人员邮件地址(人工填写)
模型应用环节preloan_approval
模型应用频率(人工填写)
模型开发背景及业务用途描述Local MVP full pipeline run.
模型适用产品/客户描述(人工填写)
模型重开发原因(如有)—
模型拟监控频率(人工填写)
模型路线LightGBM
目标变量flag_30
实验 ID20261022-104051-f654
待补充:模型开发/验证人员、应用频率、产品描述等字段需人工补填。

01 模型设计

建模数据样本窗口

项目内容
切分方式外部 data_flag 划分(TRAIN 内 6/4 随机开发/测试,VALI 跨时间,PSI 时点)
开发样本(Train)窗口2025-01-01 ~ 2025-04-19
预留验证样本窗口2025-01-01 ~ 2025-04-19
跨时间验证样本窗口2025-04-19 ~ 2025-05-25
PSI时点样本窗口2025-05-26 ~ 2025-06-30

模型好坏定义

项目内容
目标变量flag_30
坏样本(BAD=1)占比22.06%
好样本(BAD=0)占比—
不确定样本本流程要求目标变量已预计算为 0/1 二值,不确定样本请在上游合并口径

样本排除规则

序号排除规则说明
1credit_no主键/时间/口径字段,不入模
2apply_dt主键/时间/口径字段,不入模
3flag_30 为空排除 0 行

滚动率分析

待补充:滚动率分析(M0→M6+ 状态迁移矩阵)需要逾期状态口径数据,当前流程目标变量为上游已计算的二值标签,暂未生成。
待补充:表现窗口及坏账率分析、模型细分定义需结合业务口径人工补充。

02 数据流

开发时点 — 样本排除

类别样本数
全部样本30000
排除:目标变量为空0
排除后样本30000

注:按照01模型设计的排除规则统计;当前流程的排除项为目标变量缺失。

总体样本概况

数据集样本量好样本坏样本坏样本率占比
全部样本3000023383661722.06%100.00%
开发样本108018453234821.74%36.00%
测试样本71995635156421.73%24.00%
训练+测试样本1800014088391221.73%60.00%
跨时间验证样本60004624137622.93%20.00%
PSI时点样本600046711329—20.00%

开发/预留验证样本交叉统计

类别开发+预留样本数开发样本数开发占比预留验证样本数预留验证占比
好14088845360.00%563540.00%
坏3912234860.02%156439.98%
合计180001080160.01%719939.99%

细致变量分析(预分箱口径,开发样本)

变量IV缺失率取值集中度最大相关系数
risk_score_v20.86490.00%0.94%0.9986
risk_score0.86470.00%0.91%0.9986
bh_a0010.84260.00%0.15%0.9298
ScoreCust20.79720.00%1.13%0.9952
ScoreCust2_v20.78220.00%1.14%0.9952
bh_a0090.63120.00%1.73%0.8070
avg_tnr0.44310.00%1.92%0.6947
cust_seg20.39830.00%30.86%0.6662
query_cnt_3m0.33630.00%16.53%0.5822
income_grade0.27910.00%31.12%0.5458
repay_amt_6m_grade0.25090.00%27.69%0.5342
tenure_m0.14310.00%5.50%0.3328
card_usage_ratio0.12340.00%1.69%0.3613
rare_field0.112896.32%0.76%0.0812
bank_997_cnt_3m0.05870.00%34.62%0.2757
edu_level0.00130.00%42.13%—
region_code0.00120.00%20.63%—
flag_special0.00000.00%95.41%0.0380

注:共 18 个候选变量,按 IV 降序展示前 18 个;集中度 = 最大频次取值样本数 ÷ 非空样本数;相关性为皮尔逊(仅数值变量),完整数据见 variable_detail.json。

03 单变量分析(细分箱)

risk_score — IV 0.8674,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 519.5]255524141415.52%1.5593
2(519.5, 564.5]3183275243113.54%0.5730
3(564.5, 600.5]2574194662824.40%-0.1500
4(600.5, 643.5]1752106069239.50%-0.8545
5(643.5, inf]73728145661.87%-1.7651
risk_score_v2 — IV 0.8628,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 518.5]251123721395.54%1.5561
2(518.5, 563.5]3131271142013.41%0.5839
3(563.5, 602.5]2766209667024.22%-0.1404
4(602.5, 643.5]165399366039.93%-0.8725
5(643.5, inf]74028145962.03%-1.7717
bh_a001 — IV 0.7941,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 280.0500030517578]394136413007.61%1.2153
2(280.0500030517578, 332.75]3801305075119.76%0.1205
3(332.75, 367.75]1739115958033.35%-0.5887
4(367.75, 394.25]75639236448.15%-1.2068
5(394.25, inf]56421135362.59%-1.7956
ScoreCust2_v2 — IV 0.7932,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 507.5]16491574754.55%1.7629
2(507.5, 544.5]3158279436411.53%0.7571
3(544.5, 583.5]3802291289023.41%-0.0956
4(583.5, 606.5]129580249338.07%-0.7944
5(606.5, inf]89737152658.64%-1.6301
ScoreCust2 — IV 0.7925,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 508.5]17061626804.69%1.7309
2(508.5, 545.5]3198282537311.66%0.7437
3(545.5, 579.5]3393261378022.99%-0.0720
4(579.5, 604.5]152797355436.28%-0.7177
5(604.5, inf]97741656157.42%-1.5800
bh_a009 — IV 0.6036,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 6.3500001430511475]90243346952.00%-1.3608
2(6.3500001430511475, 8.050000190734863]1648105759135.86%-0.6996
3(8.050000190734863, 9.25]1640118345727.87%-0.3298
4(9.25, 11.449999809265137]3422285556716.57%0.3355
5(11.449999809265137, inf]318929252648.28%1.1241
avg_tnr — IV 0.4376,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 2.149999976158142]92647445248.81%-1.2334
2(2.149999976158142, 3.350000023841858]96160935236.63%-0.7328
3(3.350000023841858, 4.450000047683716]125890335528.22%-0.3474
4(4.450000047683716, 7.3500001430511475]4230339183919.83%0.1157
5(7.3500001430511475, inf]3426307635010.22%0.8925
cust_seg2 — IV 0.3733,4 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 3.5]205618671899.19%1.0094
2(3.5, 4.5]3333282251115.33%0.4279
3(4.5, 5.5]3330250582524.77%-0.1703
4(5.5, inf]2082125982339.53%-0.8558
query_cnt_3m — IV 0.3273,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 0.5]55028826247.64%-1.1863
2(0.5, 2.5]2750187587531.82%-0.5188
3(2.5, 3.5]1785138440122.46%-0.0422
4(3.5, 5.5]3012249252017.26%0.2861
5(5.5, inf]2704241429010.72%0.8382
rare_field — IV 0.2831,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, -0.05299999937415123]1881484021.28%0.0813
2(-0.05299999937415123, 0.3699999898672104]58382034.48%-0.5852
3(0.3699999898672104, 1.0099999904632568]8980910.11%0.9578
4(1.0099999904632568, 1.324500024318695]2619726.92%-0.2285
5(1.324500024318695, inf]36221438.89%-0.7751
income_grade — IV 0.2791,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 3.5]121174346838.65%-0.8187
2(3.5, 4.5]2510176674429.64%-0.4165
3(4.5, 5.5]3361268967219.99%0.1057
4(5.5, 6.5]2503215035314.10%0.5258
5(6.5, inf]121611051119.13%1.0171
repay_amt_6m_grade — IV 0.2509,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 3.5]1647104760036.43%-0.7242
2(3.5, 4.5]2268163463427.95%-0.3342
3(4.5, 5.5]2991238460720.29%0.0870
4(5.5, 6.5]2286194434214.96%0.4567
5(6.5, inf]1609144416510.25%0.8883
tenure_m — IV 0.1702,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 2.5]69641428240.52%-0.8970
2(2.5, 10.5]117989128824.43%-0.1516
3(10.5, 53.5]77156046166921.63%0.0062
4(53.5, 58.5]6475687912.21%0.6917
5(58.5, inf]564534305.32%1.5982
card_usage_ratio — IV 0.1589,5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 0.107999999076128]922854687.38%1.2495
2(0.107999999076128, 0.3381499946117401]3589290468519.09%0.1635
3(0.3381499946117401, 0.6137499809265137]44403434100622.66%-0.0532
4(0.6137499809265137, 0.7716499865055084]130992538429.34%-0.4018
5(0.7716499865055084, inf]54133620537.89%-0.7869
bank_997_cnt_3m — IV 0.0804,4 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 0.5]3447289954815.90%0.3849
2(0.5, 1.5]3739292881121.69%0.0028
3(1.5, 2.5]2224165556925.58%-0.2133
4(2.5, inf]139197142030.19%-0.4429
edu_level — IV 0.0013,4 箱
分组号分栏TotalGoodBadBad RateWOE
1大专3260257468621.04%0.0414
2本科4550355599521.87%-0.0076
3硕士及以上1405108132423.06%-0.0761
4高中及以下1586124334321.63%0.0066
region_code — IV 0.0012,5 箱
分组号分栏TotalGoodBadBad RateWOE
1其他2119165746221.80%-0.0038
2华东2156168547121.85%-0.0063
3华北2119168243720.62%0.0668
4华南2179170147821.94%-0.0116
5西南2228172850022.44%-0.0408
flag_special — IV 0.0000,1 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, inf]108018453234821.74%0.0000

注:统计全部候选变量的自动分箱明细(初分组),按 IV 降序展示前 18 个变量,共 18 个;完整数据见 feature_report.json。

04 单变量分析(粗分箱)

risk_score — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 519.5]255524141415.52%1.5593
2(519.5, 564.5]3183275243113.54%0.5730
3(564.5, 600.5]2574194662824.40%-0.1500
4(600.5, 643.5]1752106069239.50%-0.8545
5(643.5, inf]73728145661.87%-1.7651
2026-10-22T10:40:55.914038 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(5.52% → 61.87%),WOE 单调下降(1.5593 → -1.7651),符合风控分箱预期。IV=0.8674,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 5 箱((643.5, inf])为极高风险区间:坏率高达 61.87%,策略上应重点管控

avg_tnr — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 2.149999976158142]92647445248.81%-1.2334
2(2.149999976158142, 3.350000023841858]96160935236.63%-0.7328
3(3.350000023841858, 4.450000047683716]125890335528.22%-0.3474
4(4.450000047683716, 7.3500001430511475]4230339183919.83%0.1157
5(7.3500001430511475, inf]3426307635010.22%0.8925
2026-10-22T10:40:56.078281 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(48.81% → 10.22%),WOE 单调上升(-1.2334 → 0.8925),符合风控分箱预期。IV=0.4376,该变量区分度尚可。

WOE 在第 3、4 箱之间穿越 0 线:前 3 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 2.149999976158142])为极高风险区间:坏率高达 48.81%,策略上应重点管控

cust_seg2 — 4 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 3.5]205618671899.19%1.0094
2(3.5, 4.5]3333282251115.33%0.4279
3(4.5, 5.5]3330250582524.77%-0.1703
4(5.5, inf]2082125982339.53%-0.8558
2026-10-22T10:40:56.208128 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(9.19% → 39.53%),WOE 单调下降(1.0094 → -0.8558),符合风控分箱预期。IV=0.3733,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 4 箱((5.5, inf])为极高风险区间:坏率高达 39.53%,策略上应重点管控

query_cnt_3m — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 0.5]55028826247.64%-1.1863
2(0.5, 2.5]2750187587531.82%-0.5188
3(2.5, 3.5]1785138440122.46%-0.0422
4(3.5, 5.5]3012249252017.26%0.2861
5(5.5, inf]2704241429010.72%0.8382
2026-10-22T10:40:56.339896 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(47.64% → 10.72%),WOE 单调上升(-1.1863 → 0.8382),符合风控分箱预期。IV=0.3273,该变量区分度尚可。

WOE 在第 3、4 箱之间穿越 0 线:前 3 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 0.5])为极高风险区间:坏率高达 47.64%,策略上应重点管控

income_grade — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 3.5]121174346838.65%-0.8187
2(3.5, 4.5]2510176674429.64%-0.4165
3(4.5, 5.5]3361268967219.99%0.1057
4(5.5, 6.5]2503215035314.10%0.5258
5(6.5, inf]121611051119.13%1.0171
2026-10-22T10:40:56.476546 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(38.65% → 9.13%),WOE 单调上升(-0.8187 → 1.0171),符合风控分箱预期。IV=0.2791,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 3.5])为极高风险区间:坏率高达 38.65%,策略上应重点管控

repay_amt_6m_grade — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 3.5]1647104760036.43%-0.7242
2(3.5, 4.5]2268163463427.95%-0.3342
3(4.5, 5.5]2991238460720.29%0.0870
4(5.5, 6.5]2286194434214.96%0.4567
5(6.5, inf]1609144416510.25%0.8883
2026-10-22T10:40:56.607202 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(36.43% → 10.25%),WOE 单调上升(-0.7242 → 0.8883),符合风控分箱预期。IV=0.2509,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 3.5])为极高风险区间:坏率高达 36.43%,策略上应重点管控

tenure_m — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 2.5]69641428240.52%-0.8970
2(2.5, 10.5]117989128824.43%-0.1516
3(10.5, 53.5]77156046166921.63%0.0062
4(53.5, 58.5]6475687912.21%0.6917
5(58.5, inf]564534305.32%1.5982
2026-10-22T10:40:56.736355 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(40.52% → 5.32%),WOE 单调上升(-0.8970 → 1.5982),符合风控分箱预期。IV=0.1702,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 2.5])为极高风险区间:坏率高达 40.52%,策略上应重点管控

card_usage_ratio — 5 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 0.107999999076128]922854687.38%1.2495
2(0.107999999076128, 0.3381499946117401]3589290468519.09%0.1635
3(0.3381499946117401, 0.6137499809265137]44403434100622.66%-0.0532
4(0.6137499809265137, 0.7716499865055084]130992538429.34%-0.4018
5(0.7716499865055084, inf]54133620537.89%-0.7869
2026-10-22T10:40:56.867793 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(7.38% → 37.89%),WOE 单调下降(1.2495 → -0.7869),符合风控分箱预期。IV=0.1589,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 5 箱((0.7716499865055084, inf])为极高风险区间:坏率高达 37.89%,策略上应重点管控

bank_997_cnt_3m — 4 箱
分组号分栏TotalGoodBadBad RateWOE
1(-inf, 0.5]3447289954815.90%0.3849
2(0.5, 1.5]3739292881121.69%0.0028
3(1.5, 2.5]2224165556925.58%-0.2133
4(2.5, inf]139197142030.19%-0.4429
2026-10-22T10:40:56.994865 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(15.90% → 30.19%),WOE 单调下降(0.3849 → -0.4429),符合风控分箱预期。IV=0.0804,该变量区分度偏弱但可用。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 4 箱((2.5, inf])为高风险区间:坏率高达 30.19%,可作为拒绝或重点风控策略的阈值参考

注:统计入模变量经合并调整后的最终分箱明细(开发样本口径)。当前流程细/粗分箱由同一自动分箱算法直接产出。

05 变量筛选

项目内容
筛选优先级黑名单 > 白名单 > 自动规则
IV 下限0.02
缺失率上限0.8
集中度上限0.9
相关性上限(皮尔逊)0.7
PSI 上限0.25
重要性 Top-K80
黑名单无
白名单无

候选变量 18,成功分箱 18,入模 9

变量白名单入模IV缺失率集中度IV门槛相关性PSI剔除原因
risk_score—Y0.8674PASSPASSPASSPASS0.0010
ScoreCust2—N0.7925PASSPASSPASSFAIL0.0019与 risk_score 相关>0.7
cust_seg2—Y0.3733PASSPASSPASSPASS0.0005
income_grade—Y0.2791PASSPASSPASSPASS0.0009
bh_a001—N0.7941PASSPASSPASSFAIL0.0006与 risk_score 相关>0.7
bh_a009—N0.6036PASSPASSPASSFAIL0.0007与 risk_score 相关>0.7
bank_997_cnt_3m—Y0.0804PASSPASSPASSPASS0.0010
avg_tnr—Y0.4376PASSPASSPASSPASS0.0010
repay_amt_6m_grade—Y0.2509PASSPASSPASSPASS0.0007
tenure_m—Y0.1702PASSPASSPASSPASS0.0015
query_cnt_3m—Y0.3273PASSPASSPASSPASS0.0002
card_usage_ratio—Y0.1589PASSPASSPASSPASS0.0004
rare_field—N0.2831FAILPASS———缺失率>0.8
flag_special—N0.0000PASSFAIL———集中度>0.9
edu_level—N0.0013PASSPASSFAIL——IV<0.02
region_code—N0.0012PASSPASSFAIL——IV<0.02
risk_score_v2—N0.8628PASSPASSPASSFAIL0.0013与 risk_score 相关>0.7
ScoreCust2_v2—N0.7932PASSPASSPASSFAIL0.0010与 risk_score 相关>0.7

06 回归结果

待补充:本实验未运行 LR 路线(或未产生回归结果),无回归明细。

07 VIF

待补充:本实验未运行 LR 路线,未计算 VIF/相关系数。

08 最终评分卡

待补充:本实验未生成评分卡(未运行 LR 路线)。

09 模型表现

模型区分度评估(按样本)

模型样本KSAUCGINI
LightGBM开发样本0.53490.84770.6954
LightGBM测试样本0.34070.73300.4660
LightGBM训练+测试样本0.45310.80200.6040
LightGBM跨时间验证样本0.32890.71780.4356

LightGBM — 4 样本评估表(score_cut 粒度)

开发样本(KS 0.0261,AUC 0.4880)

cutscntbadgoodbad_ratepopulation_pctcum_bad_ratecum_good_rate
[446, 516)108178229972.34%10.01%33.30%3.54%
[516, 532)108051856247.96%10.00%55.37%10.19%
[532, 543)108034773332.13%10.00%70.14%18.86%
[543, 552)108027081025.00%10.00%81.64%28.44%
[552, 559)108015892214.63%10.00%88.37%39.35%
[559, 567)108012595511.57%10.00%93.70%50.64%
[567, 576)1080829987.59%10.00%97.19%62.45%
[577, 588)10804610344.26%10.00%99.15%74.68%
[588, 605)10801610641.48%10.00%99.83%87.27%
[605, 660)1080410760.37%10.00%100.00%100.00%
2026-10-22T10:40:57.141338 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:57.272867 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

测试样本(KS 0.0206,AUC 0.5085)

cutscntbadgoodbad_ratepopulation_pctcum_bad_ratecum_good_rate
[452, 518)72039432654.72%10.00%25.19%5.79%
[518, 533)72025346735.14%10.00%41.37%14.07%
[533, 543)72021650430.00%10.00%55.18%23.02%
[543, 552)72016555522.92%10.00%65.73%32.87%
[552, 559)72016355722.64%10.00%76.15%42.75%
[559, 567)71910961015.16%9.99%83.12%53.58%
[567, 577)7209962113.75%10.00%89.45%64.60%
[577, 588)7207464610.28%10.00%94.18%76.06%
[588, 605)720586628.06%10.00%97.89%87.81%
[605, 660)720336874.58%10.00%100.00%100.00%
2026-10-22T10:40:57.452447 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:57.571332 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

训练+测试样本(KS 0.0146,AUC 0.4967)

cutscntbadgoodbad_ratepopulation_pctcum_bad_ratecum_good_rate
[446, 517)1800118062065.56%10.00%30.16%4.40%
[517, 533)1800768103242.67%10.00%49.80%11.73%
[533, 543)1800560124031.11%10.00%64.11%20.53%
[543, 552)1800435136524.17%10.00%75.23%30.22%
[552, 559)1800324147618.00%10.00%83.51%40.69%
[559, 567)1800233156712.94%10.00%89.47%51.82%
[567, 577)1800181161910.06%10.00%94.10%63.31%
[577, 588)180012016806.67%10.00%97.16%75.23%
[588, 605)18007417264.11%10.00%99.05%87.49%
[605, 660)18003717632.06%10.00%100.00%100.00%
2026-10-22T10:40:57.695917 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:57.820363 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

跨时间验证样本(KS 0.0187,AUC 0.4993)

cutscntbadgoodbad_ratepopulation_pctcum_bad_ratecum_good_rate
[449, 516)60031628452.67%10.00%22.97%6.14%
[517, 532)60022337737.17%10.00%39.17%14.29%
[532, 543)60018841231.33%10.00%52.83%23.21%
[543, 551)60017043028.33%10.00%65.19%32.50%
[551, 559)60012447620.67%10.00%74.20%42.80%
[559, 567)60010849218.00%10.00%82.05%53.44%
[567, 576)6008351713.83%10.00%88.08%64.62%
[577, 587)6008651414.33%10.00%94.33%75.74%
[587, 603)600545469.00%10.00%98.26%87.54%
[603, 660)600245764.00%10.00%100.00%100.00%
2026-10-22T10:40:57.944750 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:58.062606 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

跨时间验证样本结论

风险高度集中在低分尾端——最低 20% 样本集中了全量 39.2% 的坏客户,策略切分空间很大。

① 样本与分箱结构:共 6,000 样本 / 1,376 坏样本,整体坏率 22.93%,好坏比约 3.4:1;10 档等频分数分栏,每箱约 10%,分箱均匀,无空箱无过厚箱。

② 排序性与单调性:逐箱 Bad Rate 52.67% → … → 4.00%(低分 → 高分),存在局部倒挂,建议复核分箱边界,最低分段坏率是最高分段的 13.2 倍。

③ 区分度与坏客户捕获:最低 20% 样本捕获全量 39.2% 的坏客户,最低 50% 捕获 74.2%;最高 20% 样本仅含 5.7% 的坏客户,其中风险最高一箱单独占 23.0%。

(口径:分数 = 按基准分/优比/PDO 刻度由模型概率转换,分数越高风险越低;结论由程序按分箱数据自动生成。)

注:score_cut 表按分数等频分 10 档(低分 → 高分):分数由模型概率按基准分/优比/PDO 刻度转换,分数越高风险越低;每表附 KS/AUC(按概率计算,与分栏口径无关);训练+测试 = TRAIN 全体。旧实验无分数转换时为 PD 等频口径。

10 KS和GINI

LightGBM

样本KSGINIAUC
开发样本0.53490.69540.8477
测试样本0.34070.46600.7330
训练+测试样本0.45310.60400.8020
跨时间验证样本0.32890.43560.7178

开发样本

2026-10-22T10:40:58.146611 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:58.213676 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

测试样本

2026-10-22T10:40:58.281254 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:58.351925 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

训练+测试样本

2026-10-22T10:40:58.419309 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:58.491578 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

跨时间验证样本

2026-10-22T10:40:58.561518 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:40:58.629316 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

注:GINI = 2×AUC−1。KS 图 X 轴为分数(升序),红虚线为最大间隔位置;ROC 图例标注 AUC。

11 PSI

模型稳定性评估

模型训练集与测试集训练集与跨时间验证训练集与oot验证集训练集与psi验证集
LightGBM0.00100.0037—0.0020

分数段 PSI 明细(开发样本 vs 跨时间验证样本)

分数段开发样本占比跨时间验证样本占比PSI 贡献累计 PSI
(-inf,0.0403]10.00%9.22%0.00060.0006
(0.0403,0.07]10.00%10.07%0.00000.0006
(0.07,0.1015]10.00%10.72%0.00050.0011
(0.1015,0.1351]10.00%9.93%0.00000.0011
(0.1351,0.1708]10.00%9.85%0.00000.0012
(0.1708,0.2116]10.00%9.03%0.00100.0021
(0.2116,0.2674]10.00%11.27%0.00150.0037
(0.2674,0.3428]10.00%9.95%0.00000.0037
(0.3428,0.4749]10.00%9.97%0.00000.0037
(0.4749,inf]10.01%10.00%0.00000.0037

分数段 PSI 明细(开发样本 vs PSI时点样本)

分数段开发样本占比PSI时点占比PSI 贡献累计 PSI
(-inf,0.0403]10.00%9.37%0.00040.0004
(0.0403,0.07]10.00%10.33%0.00010.0005
(0.07,0.1015]10.00%10.52%0.00030.0008
(0.1015,0.1351]10.00%10.43%0.00020.0010
(0.1351,0.1708]10.00%9.88%0.00000.0010
(0.1708,0.2116]10.00%9.48%0.00030.0013
(0.2116,0.2674]10.00%10.60%0.00040.0016
(0.2674,0.3428]10.00%9.43%0.00030.0019
(0.3428,0.4749]10.00%9.85%0.00000.0020
(0.4749,inf]10.01%10.10%0.00000.0020
2026-10-22T10:40:58.773068 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

模型样本量分布评估

评分段开发样本样本量开发样本占比测试样本样本量测试样本占比训练+测试样本样本量训练+测试样本占比跨时间验证样本样本量跨时间验证样本占比PSI时点样本样本量PSI时点样本占比
(-inf, inf]108010.00%7179.96%17979.98%5539.22%5629.37%
(0.0403, 0.07]108010.00%7059.79%17859.92%60410.07%62010.33%
(0.07, 0.1015]108010.00%73910.27%181910.11%64310.72%63110.52%
(0.1015, 0.1351]108010.00%74110.29%182110.12%5969.93%62610.43%
(0.1351, 0.1708]108010.00%72210.03%180210.01%5919.85%5939.88%
(0.1708, 0.2116]108010.00%7129.89%17929.96%5429.03%5699.48%
(0.2116, 0.2674]108010.00%76110.57%184110.23%67611.27%63610.60%
(0.2674, 0.3428]108010.00%72310.04%180310.02%5979.95%5669.43%
(0.3428, 0.4749]108010.00%7069.81%17869.92%5989.97%5919.85%
(0.4749, inf]108110.01%6739.35%17549.74%60010.00%60610.10%
sum10801100.00%7199100.00%18000100.00%6000100.00%6000100.00%

变量 PSI(开发样本 vs PSI时点样本,按入模变量分箱)

特征项PSI状态
tenure_m0.0015稳定
bank_997_cnt_3m0.0010稳定
risk_score0.0010稳定
avg_tnr0.0010稳定
income_grade0.0009稳定
repay_amt_6m_grade0.0007稳定
cust_seg20.0005稳定
card_usage_ratio0.0004稳定
query_cnt_3m0.0002稳定
risk_score — PSI 0.0010
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 519.5]23.66%23.95%0.29%0.0000
(519.5, 564.5]29.47%30.13%0.66%0.0001
(564.5, 600.5]23.83%22.52%-1.31%0.0007
(600.5, 643.5]16.22%16.37%0.15%0.0000
(643.5, inf]6.82%7.03%0.21%0.0001
avg_tnr — PSI 0.0010
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 2.149999976158142]8.57%8.88%0.31%0.0001
(2.149999976158142, 3.350000023841858]8.90%8.87%-0.03%0.0000
(3.350000023841858, 4.450000047683716]11.65%11.57%-0.08%0.0000
(4.450000047683716, 7.3500001430511475]39.16%37.82%-1.35%0.0005
(7.3500001430511475, inf]31.72%32.87%1.15%0.0004
cust_seg2 — PSI 0.0005
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 3.5]19.04%19.07%0.03%0.0000
(3.5, 4.5]30.86%30.50%-0.36%0.0000
(4.5, 5.5]30.83%31.77%0.94%0.0003
(5.5, inf]19.28%18.67%-0.61%0.0002
query_cnt_3m — PSI 0.0002
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 0.5]5.09%5.28%0.19%0.0001
(0.5, 2.5]25.46%25.40%-0.06%0.0000
(2.5, 3.5]16.53%16.27%-0.26%0.0000
(3.5, 5.5]27.89%28.37%0.48%0.0001
(5.5, inf]25.03%24.68%-0.35%0.0001
income_grade — PSI 0.0009
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 3.5]11.21%10.70%-0.51%0.0002
(3.5, 4.5]23.24%23.15%-0.09%0.0000
(4.5, 5.5]31.12%31.07%-0.05%0.0000
(5.5, 6.5]23.17%24.25%1.08%0.0005
(6.5, inf]11.26%10.83%-0.42%0.0002
repay_amt_6m_grade — PSI 0.0007
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 3.5]15.25%14.83%-0.42%0.0001
(3.5, 4.5]21.00%21.75%0.75%0.0003
(4.5, 5.5]27.69%26.92%-0.78%0.0002
(5.5, 6.5]21.16%21.43%0.27%0.0000
(6.5, inf]14.90%15.07%0.17%0.0000
tenure_m — PSI 0.0015
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 2.5]6.44%5.53%-0.91%0.0014
(2.5, 10.5]10.92%11.22%0.30%0.0001
(10.5, 53.5]71.43%71.92%0.49%0.0000
(53.5, 58.5]5.99%6.13%0.14%0.0000
(58.5, inf]5.22%5.20%-0.02%0.0000
card_usage_ratio — PSI 0.0004
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 0.107999999076128]8.54%8.40%-0.14%0.0000
(0.107999999076128, 0.3381499946117401]33.23%33.98%0.75%0.0002
(0.3381499946117401, 0.6137499809265137]41.11%40.27%-0.84%0.0002
(0.6137499809265137, 0.7716499865055084]12.12%12.15%0.03%0.0000
(0.7716499865055084, inf]5.01%5.20%0.19%0.0001
bank_997_cnt_3m — PSI 0.0010
分栏开发基准比例PSI时点样本 比例变更贡献
(-inf, 0.5]31.91%32.48%0.57%0.0001
(0.5, 1.5]34.62%35.27%0.65%0.0001
(1.5, 2.5]20.59%20.35%-0.24%0.0000
(2.5, inf]12.88%11.90%-0.98%0.0008

注:PSI ≤ 0.1 视为稳定,0.1~0.25 需关注,> 0.25 不稳定。

12 单变量分析

注:统计所有入模变量的单变量分析(开发样本口径)。预留验证/总体/OOT 口径的分组明细待扩展。

risk_score
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 519.5]255523.66%24141415.52%17.12
2(519.5, 564.5]318353.12%275243113.54%6.39
3(564.5, 600.5]257476.96%194662824.40%3.10
4(600.5, 643.5]175293.18%106069239.50%1.53
5(643.5, inf]737100.00%28145661.87%0.62
合计108018453234821.74%3.60
2026-10-22T10:40:58.883740 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(5.52% → 61.87%),WOE 单调下降(1.5593 → -1.7651),符合风控分箱预期。IV=0.8674,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 5 箱((643.5, inf])为极高风险区间:坏率高达 61.87%,策略上应重点管控

avg_tnr
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 2.149999976158142]9268.57%47445248.81%1.05
2(2.149999976158142, 3.350000023841858]96117.47%60935236.63%1.73
3(3.350000023841858, 4.450000047683716]125829.12%90335528.22%2.54
4(4.450000047683716, 7.3500001430511475]423068.28%339183919.83%4.04
5(7.3500001430511475, inf]3426100.00%307635010.22%8.79
合计108018453234821.74%3.60
2026-10-22T10:40:59.009895 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(48.81% → 10.22%),WOE 单调上升(-1.2334 → 0.8925),符合风控分箱预期。IV=0.4376,该变量区分度尚可。

WOE 在第 3、4 箱之间穿越 0 线:前 3 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 2.149999976158142])为极高风险区间:坏率高达 48.81%,策略上应重点管控

cust_seg2
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 3.5]205619.04%18671899.19%9.88
2(3.5, 4.5]333349.89%282251115.33%5.52
3(4.5, 5.5]333080.72%250582524.77%3.04
4(5.5, inf]2082100.00%125982339.53%1.53
合计108018453234821.74%3.60
2026-10-22T10:40:59.137923 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(9.19% → 39.53%),WOE 单调下降(1.0094 → -0.8558),符合风控分箱预期。IV=0.3733,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 4 箱((5.5, inf])为极高风险区间:坏率高达 39.53%,策略上应重点管控

query_cnt_3m
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 0.5]5505.09%28826247.64%1.10
2(0.5, 2.5]275030.55%187587531.82%2.14
3(2.5, 3.5]178547.08%138440122.46%3.45
4(3.5, 5.5]301274.97%249252017.26%4.79
5(5.5, inf]2704100.00%241429010.72%8.32
合计108018453234821.74%3.60
2026-10-22T10:40:59.268229 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(47.64% → 10.72%),WOE 单调上升(-1.1863 → 0.8382),符合风控分箱预期。IV=0.3273,该变量区分度尚可。

WOE 在第 3、4 箱之间穿越 0 线:前 3 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 0.5])为极高风险区间:坏率高达 47.64%,策略上应重点管控

income_grade
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 3.5]121111.21%74346838.65%1.59
2(3.5, 4.5]251034.45%176674429.64%2.37
3(4.5, 5.5]336165.57%268967219.99%4.00
4(5.5, 6.5]250388.74%215035314.10%6.09
5(6.5, inf]1216100.00%11051119.13%9.95
合计108018453234821.74%3.60
2026-10-22T10:40:59.400222 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(38.65% → 9.13%),WOE 单调上升(-0.8187 → 1.0171),符合风控分箱预期。IV=0.2791,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 3.5])为极高风险区间:坏率高达 38.65%,策略上应重点管控

repay_amt_6m_grade
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 3.5]164715.25%104760036.43%1.75
2(3.5, 4.5]226836.25%163463427.95%2.58
3(4.5, 5.5]299163.94%238460720.29%3.93
4(5.5, 6.5]228685.10%194434214.96%5.68
5(6.5, inf]1609100.00%144416510.25%8.75
合计108018453234821.74%3.60
2026-10-22T10:40:59.529800 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(36.43% → 10.25%),WOE 单调上升(-0.7242 → 0.8883),符合风控分箱预期。IV=0.2509,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 3.5])为极高风险区间:坏率高达 36.43%,策略上应重点管控

tenure_m
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 2.5]6966.44%41428240.52%1.47
2(2.5, 10.5]117917.36%89128824.43%3.09
3(10.5, 53.5]771588.79%6046166921.63%3.62
4(53.5, 58.5]64794.78%5687912.21%7.19
5(58.5, inf]564100.00%534305.32%17.80
合计108018453234821.74%3.60
2026-10-22T10:40:59.658178 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调下降(40.52% → 5.32%),WOE 单调上升(-0.8970 → 1.5982),符合风控分箱预期。IV=0.1702,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 1 箱((-inf, 2.5])为极高风险区间:坏率高达 40.52%,策略上应重点管控

card_usage_ratio
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 0.107999999076128]9228.54%854687.38%12.56
2(0.107999999076128, 0.3381499946117401]358941.76%290468519.09%4.24
3(0.3381499946117401, 0.6137499809265137]444082.87%3434100622.66%3.41
4(0.6137499809265137, 0.7716499865055084]130994.99%92538429.34%2.41
5(0.7716499865055084, inf]541100.00%33620537.89%1.64
合计108018453234821.74%3.60
2026-10-22T10:40:59.788668 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(7.38% → 37.89%),WOE 单调下降(1.2495 → -0.7869),符合风控分箱预期。IV=0.1589,该变量区分度尚可。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 3 箱 WOE<0(风险高于平均)

第 5 箱((0.7716499865055084, inf])为极高风险区间:坏率高达 37.89%,策略上应重点管控

bank_997_cnt_3m
组号ValueTot. Records累计占比#Goods#BadsBad RateG/B Odds
1(-inf, 0.5]344731.91%289954815.90%5.29
2(0.5, 1.5]373966.53%292881121.69%3.61
3(1.5, 2.5]222487.12%165556925.58%2.91
4(2.5, inf]1391100.00%97142030.19%2.31
合计108018453234821.74%3.60
2026-10-22T10:40:59.920618 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

关键结论

单调性良好:随分栏增大,Bad Rate 单调上升(15.90% → 30.19%),WOE 单调下降(0.3849 → -0.4429),符合风控分箱预期。IV=0.0804,该变量区分度偏弱但可用。

WOE 在第 2、3 箱之间穿越 0 线:前 2 箱 WOE>0(客户质量优于整体),后 2 箱 WOE<0(风险高于平均)

第 4 箱((2.5, inf])为高风险区间:坏率高达 30.19%,可作为拒绝或重点风控策略的阈值参考

13 压力测试

注:验证压力情境下模型的有效性和区分能力稳定性:a.坏浓度更高样本 b.时间外样本 c.特定特征客群 d.极端时间样本。当前流程自动生成情景1(跨时间样本)与情景2(跨时间样本剔除一半好样本,批注16)。

测试情景1:跨时间验证样本

变量贡献度

变量贡献度
card_usage_ratio1186.0000
risk_score1120.0000
avg_tnr1044.0000
tenure_m882.0000
query_cnt_3m410.0000
repay_amt_6m_grade241.0000
income_grade221.0000
bank_997_cnt_3m213.0000
cust_seg2204.0000

区分度验证 — LightGBM @ 跨时间样本

KS = 0.3289,GINI = 0.4356

2026-10-22T10:41:00.114592 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:41:00.235511 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

测试情景2:跨时间样本剔除一半好样本

指标数值
样本量6000 → 3688(剔除好样本 2312)
KS0.3325
AUC0.7163
GINI0.4326
2026-10-22T10:41:00.363425 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/ 2026-10-22T10:41:00.490913 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

注:情景2 模拟好样本分布右移的压力情形(固定 seed=42,可复现);剔除后 KS/AUC 下降幅度反映模型对好样本结构的敏感度。