采用策略分布曲线评估信用风险模型的效果

news2024/11/27 16:34:53

在信贷业务的风控体系中,模型的构建与应用始终是一项重点内容,最常见的莫过于贷前环节的申请信用风险模型。作为典型的二分类模型,为了有效识别好坏用户群体,我们经常选取某些评价指标来量化模型的综合性能,例如KS、AUC、Accuracy等,并进一步根据业务拟定的模型审批通过率,来部署模型线上决策的阈值,而模型应用后的坏账分布,则按照通过用户群体的贷后表现来反映。当然,这里针对存量数据分析得到的坏账率大小在业务上是可接受的,否则不会事先确定了模型审批的通过率范围。
风控预测模型的实施应用,对于模型通过的用户群体,不可避免的会存在少部分好用户,假设模型拟定拒绝30%的申请用户,则需要接受70%通过用户的坏账表现。这里其实还有另外一种思路来决定模型的拒绝阈值,即反向考虑模型应用的决策思路,若希望通过用户群体的坏账率不超过某个阈值,可以按照此阈值对应的模型概率值来进行决策审批。举个例子,期望模型决策后样本坏账率的最高阈值badrate=10%,与之相应的模型预测概率值p=0.7,则模型决策条件为当概率值p>=0.7时拒绝,这种情况需要明确的是,拒绝的样本用户比例在业务上同样也是可接受的。此时,若模型的区分效果越好,则用户坏账率在保持一定范围内的同时,通过率也可以较大程度的提升,这自然有利于业务的整体收益。
围绕以上实际业务背景,本文将介绍下模型应用的策略分布曲线在模型评估环节的意义,这对于不同模型效果的进一步对比有较好的参考作用。为了便于理解与分析,我们将结合具体的实例样本数据,通过建立多个模型来绘制各自的策略分布曲线,从而实现模型应用效果的量化评估。

1、实例样本介绍
本文选取的建模样本数据包含10000条样本与22个字段,部分数据样例如图1所示。其中,ID为样本主键,表示用户申请进件的订单号;X01~X20为特征变量池,各字段含义为用户不同维度的信息,除了变量X03、X06的分布类型为字符型以外,其余X变量均为标准化的数值型数据;Y为目标变量,代表用户贷后表现的好坏标志,取值0/1分别为好/坏用户,对应的分布占比如图2所示。
在这里插入图片描述
图1 建模数据样例

在这里插入图片描述
图2 建模数据样例

2、XGBoost模型构建

根据以上建模样本数据与目标分布情况,现采用XGBoost二分类算法来构建申请信用风险模型,也就是通过特征变量X01~X20数据来拟合目标变量Y,以实现模型对目标用户的好坏预测分析。由于XGBoost算法不能直接支持分类型变量输入,因此在模型训练前需要对特征X03与X06的取值类型进行转换,这里采用常见的特征onehot编码方式,具体实现过程详见知识星球代码详情,输出特征X06编码结果如图4所示。
在这里插入图片描述
图4 特征编码结果

围绕特征编码处理后的数据,现可以通过XGBoost算法来训练拟合模型,这里采用相同模型算法、不同参数组合来先后构建3个模型,差异化参数分别n_estimators(树的数量)、max_depth(树的深度)、learning_rate(学习率),各参数的具体取值如图5所示,其余未列参数均保持默认统一。
在这里插入图片描述
图5 模型训练参数

由于以上模型V1~V3的算法相同,模型训练及其评估的流程是完全一致的,这里以模型V1的建模过程为例,模型训练与模型评估的实现分别详见知识星球代码详情。
针对模型V1训练拟合的性能结果(KS=0.4581、AUC=0.7290),可以看出当前模型的区分效果表现较好。此外,对于建模各样本的预测概率值分布保存至数据集pred1_Y_proba,这里将会为后续的模型策略曲线绘制提供数据,模型V2与V3同理。根据以上建模过程,通过调整模型训练的参数组合,最终可以得到各模型的性能指标,具体如图8所示。
在这里插入图片描述
图8 模型性能对比

通过以上模型的性能指标结果,可以直观了解到模型V1的拟合效果是最好的,在Accuracy、KS、AUC维度上均表现较好,我们也确定模型V1是相对较优模型,这也是我们通常采用的模型评价方法。接下来我们在此模型定量分析的情况下,主要介绍下采用模型策略曲线来衡量模型效果的定性方法,其核心思路是将模型的预测概率值等间隔作为模型的决策阈值,并依次得到对应样本群体的坏账率分布,从而判断以不同分位点的阈值作为业务可接受的拒绝样本比例,来观察通过用户群体的坏账大小。若多个模型按照此方式进行展现,便可有助于模型应用效果的对比分析。
模型策略的绘制主要依赖于模型的预测概率分布,例如模型V1的pred1_Y_proba,模型V2与V3同理。这里以模型V1为例,模型策略曲线的实现过程详见知识星球代码详情,输出的可视化曲线结果如图10所示。
在这里插入图片描述
图10 策略曲线可视化

对于上图展示的模型V1策略曲线,表示业务上可接受通过用户比例对应的坏账率分布,例如当接受60%的用户群体予以通过,则以预测概率60%分位点的阈值p作为模型拒绝阈值,此时对应的通过用户群体的坏账率badrate约为30%。从此策略曲线分布图可以较为直观的了解到模型应用的通过率与坏账率的关系,便于对模型决策审批策略的制定,这也是模型策略分布曲线的价值所在,可以进一步衡量模型综合效果的好坏。按照以上模型V1策略分布曲线的绘制过程,我们可以同理很容易得到模型V2与V3的策略曲线,具体结果如图11所示。
在这里插入图片描述
图11 模型策略曲线对比

针对模型V1~V3的策略曲线结果,可以很清晰的看出模型V1的区分效果最佳,假设业务上可接受80%的通过用户,则在分位点80%对应的各模型坏账率badrate结果,模型V1是最低的,模型V2次之,模型V3则最高。在模型应用的最终选择上,自然会考虑模型V1,即在现有的几个模型版本中,可以保证一定通过率的前提下,能够实现坏账率相对最低。以上根据策略曲线分析的得到模型效果好坏,与前边通过模型指标衡量模型性能的结论是一致的(图8),这也进一步从模型应用的角度验证了模型的综合性能。

综合以上内容,我们围绕具体的实际业务背景与建模样本数据,通过建立多个信用风险评估模型,重点介绍了采用模型策略分布曲线来衡量模型性能的意义,这对于多角度分析模型的应用效果具有较好的参考价值。为了便于大家对采用策略分布曲线衡量模型效果的进一步理解与熟悉,本文额外附带了与以上内容同步的python代码与样本数据,详情请移至知识星球查看相关内容。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

~原创文章

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/49801.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java定时任务技术分析

《从零打造项目》系列文章 工具 比MyBatis Generator更强大的代码生成器 ORM框架选型 SpringBoot项目基础设施搭建SpringBoot集成Mybatis项目实操SpringBoot集成MybatisPlus项目实操SpringBoot集成Spring Data JPA项目实操 数据库变更管理 数据库变更管理:Liquibase…

内存 管理

内存管理c/c中内存分布sizeof 与 strlenc 语言中动态内存管理方式malloccallocreallocc 中动态内存管理new 与 delete自定义类型空间的动态分配new 与 delete 的实现operator new 与 operator delete基本概念辨识malloc/free 与 new/delete 区别 *****内存泄漏c/c中内存分布 c…

手把手教你:CSS + JS实现文本交替

1. Koa 中间件 Koa 的中间件通过一种更加传统的方式进行级联,摒弃了以往 node 频繁的回调函数造成的复杂代码逻辑。使用异步函数,我们可以实现"真正" 的中间件。与之不同,当执行到 yield next 语句时,Koa 暂停了该中间…

Qt 在linux上检测内存泄漏,用valgrind的问题

我在ubuntu上装了Qt5.15.2, 打开我的项目后,准备检测内存泄漏问题。 此时: 内存检测工具都是可用状态,但点击内存检测后,进度条走完后,就结束了。项目都没启动起来,这怎么检测内存问题? 然后&…

11月30日(第二天)

序列化:implements Serializable,public final static Long SeriaVersionUid 1L;MP的使用步骤:在BookBO类上使用TableName(“表名")去关联,在字段上使用TableId,TableField进行字段关联。(最好新建一个BookVO类,…

嫦娥五号探测器详细介绍

嫦娥五号(Change 5),即嫦娥五号探测器,是由中国空间技术研究院研制的中国首个实施无人月面取样返回的航天器,是完成中国探月工程重大科技专项“绕、落、回”三步走发展战略最后一步的关键任务。 中国探月工程三步走 嫦…

Linux 主机间ssh相互免密

Linux 主机间ssh相互免密两步实现ssh主机免密详细教程请往下看主机间ssh相互免密 —— 方法一主备两台未配置密钥主机作为测试生成公私密钥拷贝公钥到目标主机ssh免密测试主机间ssh相互免密——方法二实验准备分发密钥对免密测试MobaXterm免密登录服务器(以ecs-4207…

SAP中的PI接口

文章目录1 Pi overall2 Create pi process3 Inbound interface4 Outbound interface5 Matter need attention6 Pi test7 View log8 Transport CTS1 Pi overall What is the pi ? Pi is Sap’s middle software . it is interacted with SAP an external system. 2 Create p…

【Python】Python 中实现数据序列化

文章目录一、前言二、为什么要进行序列化三、Python 中的数据序列化1. json模块2. pickle模块3. shelve模块4. 总结参考链接一、前言 首先,要了解什么是序列化,请参考我的另一篇文章:序列化与反序列化介绍 本文主要介绍 Python 中的数据序列…

i.MX 6ULL 驱动开发 二十七:块设备

参考:【块设备】通用块层 struct bio 详解 | zzm (aliez22.github.io) 一、Linux 中块设备驱动框架 二、块设备基本概念 1、扇区的概念来自硬件,扇区是硬件最小操作单位。 2、块的概念来自文件系统,是文件系统数据处理的最小单位。 3、段…

django 开启CSRFtoken校验,以及postman实现问题

1.0 Django默认的CSRFtoken 表现: 后端使用的是Django的表单验证 post请求携带参数的问题 2.0 先处理post请求携带数据的csrfmiddlewaretoken 在登录界面 在input输入框中隐藏,所以需要提取input的value值,在【tests】脚本中进行提取&…

小样本关系分类(原型学习):Better Few-Shot Relation Extraction with Label Prompt Dropout

Better Few-Shot Relation Extraction with Label Prompt Dropout core idea 在小样本关系分类中,prompt信息是relation name是信息,这篇文章为了保持train和test的一致性,将train中的一些relation name信息删除掉了。(相反&…

linux应用移植问题

背景 公司设备降成本,设备运行平台从armv7架构mpu换成了armv5架构的mpu,应用移植过程都挺顺利的,只是牵涉到一个引用外部库的应用时,运行该应用到引用库中的函数时,应用抛出illegal instrution异常。 问题分析 初步…

HTML(超文本标记语言)

HTML(超文本标记语言) 网页的基本信息 、等成对的标签,分别叫**开放标签**和**闭合标签**,单独呈现的标签(空元素),如;意为用 / 来关闭空元素 DOCTYPE:告诉浏览器,我们要使用什么规范 head:代…

Jenkins安装与配置Windows11系统

目录 Jenkins安装 一、下载 官网地址:Jenkins download and deployment 点击LTS(长期稳定版)下的Windows 二、安装 基本就是一路Next即可 三、配置 访问地址 http://localhost:8080/,会出现如下界面: 安装 注&…

Redis实战——优惠券秒杀(一人一单业务)

需求:修改秒杀业务,要求同一个优惠券,一个用户只能下一单 我们只需要在增加订单之前,拿用户id和优惠券id判断订单是否已经存在,如果存在,说明用户已经购买。 代码实现: package com.hmdp.serv…

狂神说Go语言学习笔记(二)

一、匿名变量 匿名变量的特点是一个下划线 “_”,它本身就是一个特殊的标识符。它可以像其他标识符那样用于变量的声明或赋值(任何类型都可以赋值给它),但任何赋给这个标识符的值都将被抛弃,因此这些值不能在后续的代…

共享雨伞app开发,提高资源利用率

共享经济无疑是当下热门行业之一,生活中随处可见的共享自行车、共享汽车、共享充电宝等一系列设备都是共享经济的产物。互联网时代下的共享经济已经呈现出多元化的发展趋势,其中在日常出行方面,共享雨伞的出现可以很好的解决用户偶遇的突发天…

Centos7 + kubenetes 一键安装实战

1. kubernetes部署环境要求 一台或多台机器,操作系统CentOS7.x-86_x64硬件配置:内存2GB或2G,CPU 2核或CPU 2核集群内各个机器之间能相互通信集群内各个机器可以访问外网,保证网络畅通(最好能访问谷歌),需要…

【STM32笔记】HAL库中的SPI传输(可利用中断或DMA进行连续传输)

【STM32笔记】HAL库中的SPI传输(可利用中断或DMA进行连续传输) SPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola(摩托罗拉)首先在其MC68HCXX系列处理器上定义的。 SPI,是一种高速的&…