如何做好模型验证?

随着越来越多的金融机构进入线上化转型阶段,对模型的重视程度变得越来越高、使用也越来越广泛,而随着模型复杂度及应用场景的增加,如何确保建立的模型合理有效,则需要在模型上线前进行验证。

模型验证的目的是为了确保数据分析的准确性、模型设计的合理性、开发过程和结果的有效性、稳定性,以及模型是否符合业务逻辑、是否符合监管要求等。针对以上几个关键点,可以从以下几个方面对模型进行验证。

1.数据验证

对建模数据进行验证,是为了确保数据分析、处理过程的准确性,确保选取的样本数据具有代表性,能够符合建模的要求。

数据验证主要包括数据来源的准确性数据选择的完整性数据质量及缺陷的处理方式等。

首先要确认数据来源、表之间的逻辑关系、字段的含义等是否清晰准确;其次要确认样本数据的选取时间段是否满足样本量、表现期等的要求,同时尽可能的保证市场环境、客群情况与当前基本一致,以减少影响模型稳定性的因素。

另外,数据也应基本能够覆盖风险特征的各个维度,确保样本的全面性。

最后要确认数据处理过程中,对于数据缺陷问题的处理方式是否合理,如缺失率高于90%的数据指标一般应直接剔除;极端值可以进行分位数替换;特殊值根据其含义和分布情况,将其转化为有效信息,一般单独分箱。

2.模型设计验证

模型设计验证主要包括模型方法论验证样本排除规则关键定义验证,确保模型的设计的合理性、适用性。

根据业务实际情况,如业务类型业务发展阶段样本数据量等,确认建模方法的选用是否符合要求、建模思路是否清晰、建模方案是否完整;其次要确认样本排除规则是否与模型应用的业务场景相匹配,通过排除不适用的样本,以提高模型的实际训练效果。

最后要确认模型的关键定义如违约定义、观察期、表现期等是否合理,这决定了后续模型开发的有效性,是非常关键的一步,通常根据监管要求、行业普遍标准、样本数据量和应用业务的实际表现等多维度进行验证。

如通过账龄(vintage)分析,累计坏账率增速在某一账龄出现明显放缓的趋势时,可以初步确认表现期。

但由于业务的实际发展阶段、还款方式等情况,可能存在样本时间内均未出现明显放缓的趋势,这就需要进一步结合业务经验、行业普遍标准和数据量要求设置表现期。

3.模型开发验证

模型开发验证主要包括模型开发过程的验证和模型结果的验证,确保模型参数的选择合理、变量分析和模型训练的过程真实准确、模型结果有效。

模型开发过程的验证包括验证入模变量的筛选、分析过程是否清晰合理、单一变量的权重是否过高、变量的分组是否与业务逻辑一致且满足应用要求、最终模型变量的维度是否覆盖全面,以及整个建模过程是否可以完全复现。

模型结果的验证主要是通过训练集、验证集和测试集的比对,验证模型的区分能力、稳定性、准确性等,以确保模型在较长一段时间内能够有效识别风险。

一般来说模型在训练集、验证集和测试集的表现不能存在较大的差异,通常使用KS和AUC值来判断区分能力、PSI值来判断稳定性,KS值高于0.4或AUC高于0.7、PSI小于0.1时,说明模型训练的效果较好。4业务逻辑验证

除了从主要的技术层面对模型进行验证,更重要的是对模型的业务逻辑验证,确认所建立的模型是否符合业务场景、应用客群,例如入选的变量是否在该业务流程中能够采集到真实准确的数据、目标客群是否与建模时的开发样本客群保持一致等。

模型验证完成后,根据验证结论决定模型是否可以上线决策,整个模型的验证细节、模型存在的问题及整改情况等都应被有效的记录和保存,以便随时查阅和回溯。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注