【金融风控项目-06】:风控建模流程

文章目录

  • 2 风控建模流程
    • 2.1 ABC评分卡简介
    • 2.2 机器学习模型工作的完整流程
    • 2.3 项目准备期
      • 2.3.1 明确需求
  • 2.4 模型设计
      • 2.4.1 业务抽象成分类/回归问题
      • 2.4.2 模型算法
      • 2.4.3 模型输入
      • 2.4.4 Y标签定义
      • 2.4.5 样本选取
      • 2.4.6 样本采样
      • 2.4.7 观察期和表现期
      • 2.4.8 Y标签阈值确定
      • 2.4.9 样本种类
    • 2.4 特征工程
      • 2.4.1 特征构建
      • 2.4.2 特征评估
      • 2.4.2 特征工程小结
    • 2.5 模型构建
      • 2.5.1 设计实验
      • 2.5.2 模型评估
    • 2.6 上线运营

2 风控建模流程

2.1 ABC评分卡简介

风控模型其中包含了A/B/C卡。模型可以采用相同算法,一般以逾期天数来区分正负样本,也就是目标值Y的取值(0或1)

  • 贷前 申请评分卡 Applicatio score card

  • 贷中 行为评分卡 Behavior score card

  • 贷后 催收评分卡 Collectio score card

C卡因为用途不同Y的取值可能有区别

  • 公司有内催,有外催。外催回款率低,单价贵

  • 可以根据是否被内催催回来定义C卡的Y。

2.2 机器学习模型工作的完整流程

  • 准备

    • 明确需求

    • 模型设计

      • 业务抽象成分类/回归问题

      • 定义标签(目标值)

    • 样本设计

  • 特征工程

    • 数据处理,选取合适的样本,并匹配出全部的信息作为基础特征

    • 特征构建

    • 特征评估

  • 模型

    • 模型训练

    • 模型评价

    • 模型调优

  • 上线运营

    • 模型交付

    • 模型部署

    • 模型监控

2.3 项目准备期

2.3.1 明确需求

  • 明确需求

    • 目标人群:新客,优质老客,逾期老客

    • 给与产品:额度,利率

    • 市场策略:冷启动,开拓市场,改善营收

      • 冷启动:数据量少,不能进行有监督学习
      • 开拓市场:利率可以降低一些
      • 改善营收:找到额度、利率的最佳平衡点
    • 使用时限:紧急使用,长期部署

举例:

1. 业务需要针对全新客户开放一个小额现金贷产品,抢占新市场
2. 针对高风险薄数据新客的申请评分卡

2.4 模型设计

A/B卡预测用户是否会违约,是一个二分类问题。与业务、运营和推荐系统,一般都是二分类问题。
l模型设计

2.4.1 业务抽象成分类/回归问题

  • 风控场景下问题通常都可以转化为二分类问题
  1. 信用评分模型期望用于预测一个用户是否会逾期,逾期用户1
  2. 营销模型期望用于预测一个用户被营销后是否会来贷款,没贷用户1
  3. 失联模型期望用于预测一个用户是否会失联,失联用户1
  4. 风控业务中,只有欺诈检测不是二分类问题。因为样本数量不足,可能是一个无监督学习模型

2.4.2 模型算法

  • 规则模型

  • 逻辑回归

  • 集成学习

  • 融合模型

2.4.3 模型输入

  • 数据源
  • 时间跨度

2.4.4 Y标签定义

  • 在构建信贷评分模型时,原始数据中只有每个人的当前逾期情况,没有负样本,负样本需要人为构建
  • 通常选一个截断点(阈值),当逾期超过某个阈值时,就认定该样本是一个负样本,未来不会还钱;
  • 比如逾期15天为正负样本的标记阈值,Y = 1的客户均是逾期超过15天的客户
  • 逾期>15天时 Y = 1,那么Y=0如何定义
    1. 只会将按时还款和逾期较少的那一部分人标记为0。如:将逾期<5天和没有逾期的人作为正样本
    2. 逾期5~15天的数据(灰样本)会从样本中去掉,去掉“灰样本”,对模型学习更加有利。
    3. “灰样本”通常放入测试集中,用于确保模型在训练结束后,对该部分样本也有区分能力。

逻辑回归返回的是标签的概率值, 希望找到一个阈值,可以完全区分两类。但是实际上在阈值附近会有一些波动,就是灰样本区域

2.4.5 样本选取

  • 代表性:样本必须能够充分代表总体。如消费贷客群数据不 能直接用到小额现金贷场景

  • 充分性:样本集的数量必须满足一定要求。评分卡建模通常要求正负样本的数量都不少于1500个

  • 时效性:在满足样本量充足的情况下,通常要求样本的观测期与实际应用时间节点越接近越好

    • 如银行等客群稳定的场景,观察期可长达一年半至两年。
  • 排除性:虽然建模样本需要具有代表整体的能力,但某些法律规定不满足特定场景贷款需求的用户不应作为样本

    • 如对行为评分卡用户、无还款表现或欺诈用户均不应放入当前样本集。
  • 评分卡建模通常要求正负样本的数量>=1500,但总样本量超过5万时

    • 许多模型的效果不再随着样本量的增加而有显著提升,而且数据处理与模型训练过程通常较为耗时。

2.4.6 样本采样

  • 如果样本量过大,会为训练过程增加不必要的负担,需要对样本做欠采样(Subsampling)处理
  • 由于负样本通常较少,因此通常只针对正样本进行欠采样。常见的欠采样方法分为:
    1. 随机欠采样:直接将正样本欠采样至预期比例。
    2. 分层抽样:保证抽样后,开发样本、验证样本与时间外样本中的正负样本比例相同。
    3. 等比例抽样:将正样本欠采样至正负样本比例相等,即正样本量与负样本量之比为1:1
    4. 当负样本较少的时候,需要进行代价敏感加权或过采样(Oversampling)处理

2.4.7 观察期和表现期

  • 观察期是指用户申请信贷产品前的时间段

  • 表现期是定义好坏标签的时间窗口,如果在该时间窗口内触发坏定义就是坏样本,反之就是好样本。

  • 举例: 要建立A卡模型, 观察期12个月,表现期3个月

    1. 用户贷款前12个月的历史行为表现作为变量,用于后续建模
    2. 如设定用户在到期3个月内未还款,即认为用户为负样本,则称表现期为3个月

2.4.8 Y标签阈值确定

模型设计 : 如何确定合适的逾期标签阈值以及观察期表现期

  • 结合滚动率分析和Vintage分析

  • 滚动率分析用于定义客户的好坏程度

  • Vintage分析用于确定合适的表现期

  1. 利用滚动率分析定义坏客户,如下图中定义:M4+为坏客户
    在这里插入图片描述
    如果在表现期中, 有M4+的情况(DPD90以上) 有80%的人依然是M4+的状态, 逾期的情况不会变好 此时M4+作为Y标签的阈值, 需要注意的是, 如果通过这种方式确定的1标签人数过少, 可以考虑M3+的情况, 也需要注意, 如果逾期情况变好的比例比较高, 不适合降低阈值
  2. 以M4+作为资产质量指标,统计Vintage数据表,绘制Vintage曲线。目的是分析账户成熟期,
  • 例如下图案例确定:账户成熟期是9个月
    在这里插入图片描述
  • 表现期, 确定Y标签, 表现期多长比较合适, 通过vintage , 观察M4+ 比例变化情况, 当M4+ 比例增量放缓, 这个时长可以作为表现期窗口长度

  • 观察期, 用观察期的数据做特征, 用表现期的数据做标签

    表现期设置为9个月, 当前做模型最早可以用到的数据, 就是1月份来申请借款的用户

    使用2022年的数据来做特征, 1月份放款以后, 最近9个月用户的违约情况做标签
    在这里插入图片描述

2.4.9 样本种类

  • 训练数据测试数据划分,数据集在建模前需要划分为3个子集:
  1. 开发样本(Develop):开发样本与验证样本使用分层抽样划分,保证两个数据集中负样本占比相同
  2. 验证样本(Valuation): 开发样本与验证样本的比例为6:4
  3. 时间外样本(Out of Time,OOT): 通常使用整个建模样本中时间最近的数据, 用来验证模型对未来样本的预测能力,以及模型的跨时间稳定性。

在这里插入图片描述

  • 样本选取, vintage 选几月份的数据可以做模型 (表现期)

  • 样本选取的时候, 要留最近一部分数据, 作为时间外样本, 不参与模型训练,在上线之前做最后的验证

  • 训练A卡模型的时候, 选择的样本, 一定是新客, 在观察期中不能有内部的逾期数据

  • 训练B卡模型的时候, 选择的样本一定是未逾期的老客(在观察点的时刻一定处于未逾期的状态)

2.4 特征工程

2.4.1 特征构建

  • 画出类ER图,数据关系:一对一、一对多、多对多

在这里插入图片描述

  • 写SQL查询时要从用户列表出发,join其他表
  • 明确评估特征的样本集
    • 新申请客户没有内部贷款数据
    • 未逾期老客户档期没有逾期信息
    • 逾期老客户和未逾期老客的还款数据一定差别很大
  • 如何从原始数据中构建特征:指定特征框架,确保对数据使用维度进行了全面思考
    • 每个属性都可以从R(Recency) F(Frequency) M(Monetary)三个维度思考,来构建特征
      在这里插入图片描述

2.4.2 特征评估

  • 什么是好的特征,好的特征需要满足的条件:
  • 覆盖度高,很多用户都能使用
  • 稳定,在后续较长时间可以持续使用 PSI (Population Stability Index)
  • 区分度好,好坏用户的特征值差别大 IV (Information Value)

也可以用模型的评估指标来评估特征:单特征AUC, 单特征KS
可以拿效果最好的单特征的AUC,KS来估计模型的效果

在这里插入图片描述

2.4.2 特征工程小结

  • 特征构建注意事项

    1. 数据源对应的具体数据表,画出ER图

    2. 评估特征的样本集

      • B卡样本集不能包含逾期数据
      • C卡样本集不能包含按时还款的数据
    3. 特征框架,确保对数据使用维度进行了全面思考

      • 确定思维框架, 与组内其它人讨论
    4. 明确数据源对应的具体数据表

      • 明确数据是从哪里来的: (DE Data Engineer 数仓工程师)
        在这里插入图片描述
    5. 数据分析师拿到的数据可能是:数仓原始表或者数仓重构表

    6. 数仓原始表和数仓重构表可能数据量有差异,因为更新时间不同

      • 尽量使用数仓工程师加工好的重构表,确保逻辑统一
      • 实时预测要确保生产数据库和数据仓库数据一致 (很难)
  • 特征构建流程总结:

  • 先明确可以用到的数据
  • 梳理取数的逻辑, 从数据库的哪张表中获取数据, 把E-R图划出来(实体关系图)
  • 明确数据质量 , 看覆盖度, 是不是每个用户都能取到值
  • 特征构造
    • 分组聚合, 在数据库中, 每个用户都会对应多条数据, 最终输入到模型, 用于模型训练的样本数据, 每一个用户对应着一条样本 , 此时可以考虑使用用户ID 分组, 做聚合计算
    • 聚合的一种常用的思路R 最近/F 次数, 频率/M 关键指标
  • 特征构造之后需要做特征评价
    • 什么是一个好的特征
    • 覆盖度高 大多数用户都能取到值, 空值比较少
    • 稳定性好 覆盖度波动比较小
    • 区分度强 单特征AUC 把模型输出的结果 换成特征的取值
      • 把特征值按照从小到大/从大到小排序, 值越大违约概率越高/值越小违约概率越高, 以特征的取值做为0/1划分的标准, 输出0/1的预测, 此时可以绘制出 ROC曲线 → AUC
      • 如果单特征AUC 没有高于0.6的 模型基本效果不会好

2.5 模型构建

2.5.1 设计实验

  • 训练模型时有很多可能的因素会影响模型效果

  • 我们需要通过设计实验去验证哪些因素是会提升模型效果的

2.5.2 模型评估

  • 好的模型需要满足的条件:

    • 稳定,在后续较长时间可以持续使用 PSI (Population Stability Index)

    • 区分度好,好坏用户的信用分差别大 AUC, KS, GINI

    • 报表一:区分度,抓坏人能力在不同分段的表现
      在这里插入图片描述

2.6 上线运营

  • 模型交付
    • 交付流程:

      1. 提交特征和模型报表
      2. 离线结果质量复核 (无缺失,无重复,存储位置正确,文件名规范)
      3. 保存模型文件,确定版本号,提交时间
      4. 老大审批,通知业务方
      5. 线上部署,案例调研, 持续监控
    • 特征报告

      1. 特征项目需求
      2. 特征项目任务列表
      3. 特征项目时间表
      4. 类ER图
      5. 样本设计
      6. 特征框架
      7. 每周开发进度和结果
      8. 每周讨论反馈和改进意见笔记
      9. 特征项目交付说明
      10. 特征项目总结
    • 模型报告

      1. 模型项目需求
      2. 模型项目任务列表
      3. 模型项目时间表
      4. 模型设计
      5. 样本设计
      6. 模型训练流程和实验设计
      7. 每周开发进度和结果
      8. 每周讨论反馈和改进意见笔记
      9. 模型项目交付说明
      10. 模型项目总结

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Gartner发布中国PAM特权访问管理创新洞察:PAM的8个主要目标和国内9个主要提供商

特权账户是攻击者的主要目标&#xff0c;对每个组织来说都是重大的安全风险。安全和风险管理领导者可以利用这项研究来了解技术前景并降低特权访问风险。 主要发现 合规在推动中国采用特权访问管理 (PAM) 工具方面发挥着重要作用。然而&#xff0c;这些工具的实施经常遭到IT管理…

mayo介绍和QTqmake编译基于Opencascade开发的mayo工程-小白配置

目录: 一、mayo介绍:zap: 最新功能&#xff08;截止7.8.2&#xff09;在这里插入图片描述 二、编译准备三、编译过程3.1QT Creator打开源码的pro工程3.2修改几处pro配置3.3复制所需的动态链接库3.4编译完成 一、mayo介绍 1️⃣mayo是一个基于opencascade开源库开发的一个开源CA…

ISUP协议视频平台EasyCVR私有化部署视频平台如何实现RTMP推流将大疆无人机的视频画面回传?

在现代视频监控和流媒体技术领域&#xff0c;EasyCVR视频融合云平台以其卓越的性能和灵活性&#xff0c;成为了跨区域、网络化视频监控综合管理的理想选择。作为TSINGSEE青犀视频“云边端”架构体系中的核心组件&#xff0c;私有化部署视频平台EasyCVR不仅能够实现视频数据的集…

如何高效实现汤臣倍健营销云数据集成到SQLServer

新版订单同步-&#xff08;Life-Space&#xff09;江油泰熙&#xff1a;汤臣倍健营销云数据集成到SQL Server 在企业信息化建设中&#xff0c;数据的高效集成和管理是提升业务运营效率的关键。本文将分享一个实际案例——如何通过新版订单同步方案&#xff0c;将汤臣倍健营销云…

OpenHarmony-2.DeviceInfo适配

DeviceInfo适配说明 1.启动子系统设备信息说明 2.OHOS 2.1.OHOS 固定值参数适配 OHOS 固定值参数: const.ohos.version.security_patch const.ohos.releasetype const.ohos.apiversion const.ohos.fullname适配说明&#xff1a; OHOS 固定值参数由OHOS系统填充&#xff0…

Java实现两数交换

文章目录 实现两数交换方法一、&#xff08;数组的方式进行交换&#xff09;方法二、&#xff08;对象的方式进行交换&#xff09;总结 实现两数交换 实现两数交换&#xff0c;没有办法通过直接传递数字达到交换的结果&#xff0c;定义的int型变量是被存储在栈空间上的&#xf…

uniapp 购物弹窗组件 (微信小程序)

效果图&#xff0c;暂时只适应单规格&#xff0c;居中弹出和下方弹出&#xff0c;如需求不满足&#xff0c;请自行修改代码 &#xff08;更新于24/11/15) 居中显示效果 下方弹出效果 html <template><view class"" v-if"show":class"mod…

革新车间照明,分布式IO模块引领智能制造新纪元

在智能制造的浪潮中&#xff0c;每一个细节的优化都是推动生产效率与能耗管理迈向新高度的关键。车间照明系统&#xff0c;作为生产环境中不可或缺的一环&#xff0c;其智能化升级正成为众多企业转型升级的重要着力点。 一、从传统到智能&#xff1a;照明系统的变革之旅 传统…

Java基于微信小程序+SSM的校园失物招领小程序

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

微软Office 2021 24年11月授权版

概述 Microsoft Office LTSC 2021 专业增强版是微软公司推出的一款专为企业客户设计的办公软件套件。该版本于2024年11月进行了批量许可版更新推送&#xff0c;旨在为企业用户提供更加稳定、高效的办公体验。 主要特点 LOGO设计趋势强化&#xff1a;新版Office将棱角改为圆角…

uniapp实现中英文切换

home.js const data {ZH: {content1: "苹果",},EN: {content1: “Apple”,} } export default dataindex.js import home from "./home.js" export default {home }en.js import part1 from ./data/part1/index.js const en {language: {name: "…

go-zero(七) RPC服务和ETCD

go-zero 实现 RPC 服务 在实际的开发中&#xff0c;我们是通过RPC来传递数据的&#xff0c;下面我将通过一个简单的示例&#xff0c;说明如何使用go-zero框架和 Protocol Buffers 定义 RPC 服务。 一、生成 RPC项目 在这个教程中&#xff0c;我们根据user.api文件&#xff0…

C#.Net筑基-字符串超全总结

字符串是日常编码中最常用的引用类型了&#xff0c;可能没有之一&#xff0c;加上字符串的不可变性、驻留性&#xff0c;很容易产生性能问题&#xff0c;因此必须全面了解一下。 01、字符与字符编码 1.1、字符Char 字符 char 表示为 Unicode字符&#xff0c;在C#中用 UTF-16 …

ROS Action

在 ROS 中&#xff0c;Action 是一种支持长时间异步任务的通信机制。与 Service 不同&#xff0c;Action 允许客户端发起一个请求&#xff0c;并在任务执行的过程中不断接收反馈&#xff0c;直到任务完成。这种机制非常适用于可能需要较长时间来完成的任务&#xff0c;比如机器…

23.UE5删除存档

2-25 删除存档制作_哔哩哔哩_bilibili 按照自己的风格制作删除按钮 这样该行的存档就被从存档列表中删除了&#xff0c;并且实际存档&#xff08;我的存档蓝图&#xff09;中也被删除了 但是存在一个问题&#xff0c;如果存档数据中存在索引为: 0 1 2 3的存档&#xff0c;当索…

LoFTR: Detector-Free Local Feature Matching with Transformers—特征点匹配算法系列

LoFTR: Detector-Free Local Feature Matching with Transformers 受到&#xff1a;受到开创性作品 SuperGlue 的启发 摘要总结&#xff1a; 提出了一种局部图像特征匹配的新方法。更为突出说明的是室内场景下的特征点的匹配问题。 不是依次执行图像特征检测、描述和匹配&#…

图像基础算法学习笔记

目录 概要 一、图像采集 二、图像标注 四、图像几何变换 五、图像边缘检测 Sobel算子 Scharrt算子 Laplacian算子 Canny边缘检测 六、形态学转换 概要 参考书籍&#xff1a;《机器视觉与人工智能应用开发技术》 廖建尚&#xff0c;钟君柳 出版时间&#xff1a;2024-…

排序算法 -归并排序

文章目录 1. 归并排序&#xff08;Merge Sort&#xff09;1.1 简介1.2 归并排序的步骤1.3 归并排序c 语言实现代码说明 1.4 时间复杂度1.5 空间复杂度1.6 动画 1. 归并排序&#xff08;Merge Sort&#xff09; 1.1 简介 归并排序&#xff08;Merge Sort&#xff09;是一种基于…

wireshark 基础

wireshark 基础 一、wireshark介绍 Wireshark&#xff08;前称Ethereal&#xff09;是一个网络封包分析软件。网络封包分析软件的功能是捕获网络封包&#xff0c;并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口&#xff0c;直接与网卡进行数据报文交换…

GIT 入门详解指南

前言&#xff1a; 注&#xff1a;本博客仅用于记录本人学习过程中对git的理解&#xff0c;仅供学习参考&#xff0c;如有异议请自行查资料求证 安装 使用git之前必须完成git的安装&#xff0c;Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行 git 安装教程 基本…