当前位置: 首页 > news >正文

【学习笔记】互联网金融:芝麻信用分的建模过程

学习资料: 数据分析学习随记 | 互联网金融行业2C授信模型(芝麻信用)

1. 背景

互联网金融的本质是风控

1.1 数据分析师的角色

数据分析师在金融行业基本上有两种角色:

1.1.1 数据建模师

偏算法,但要很懂业务。要求对算法的理解较深,相对来说对行业经验要求不是很高。
与纯互联网行业对比,金融行业的数据建模师的价值更容易得到体现,而且相对更有趣。

  • 工作内容:
    • 数据源
      这是和其他数据分析师差别最大的地方。 互联网金融很多时候需要基于大数据去规避风险,数据源越多越好。因此数据建模师需要和其他公司进行数据合作,或者数据采购。
    • 信用评分模型
      模型监控、维护、优化迭代
    • 其他数据挖掘建模
  • 能力要求:
    • 数据源在前期决定了模型的效果,要具备良好的沟通能力和快速反馈的能力。
    • 金融行业本身比较成熟,比模型更加重要的是分析师自身的想法和验证。
    • 在前期重点是围绕数据源和数据处理,模型可以用逻辑回归、决策树、GBDT、随机森林、神经网络等。

1.1.2 分控分析师

除了一定的模型理解能力,还需要大量的行业和法律法规经验。

1.2 产品对象

互联网金融与其他行业不太一样,互联网金融在产品对象上分为to B和to C,都是依赖央行信用报告。

  • to B:对企业整体的信用进行评估,做整体授信
  • to C:对个人整体的信用进行评估,得到个人信用分

2. 授信模型

以芝麻信用分为例,

  • 能够很好地判断一个人的信用到底好不好
  • 另一个潜在价值是可以结合人的行为偏好来做更准确的推荐。

芝麻信用分是以下面五个维度综合评估而来的:
在这里插入图片描述

  1. 身份特质-- 稳定性
    学历的高低影响了收入的多少,这是长时间改不了的特质。
  2. 履约能力-- 兜底性
    有无房车,个人资产能力的证明,消费后按时还款的能力。
  3. 信用历史 – 历史性
    信用卡有无逾期,历史行为最直接的信用体现。
  4. 人脉关系 – 稳定性验证 + 弱价值性
    支付宝好友的信用分是不是都很高,是否土豪,一个人的交际圈也代表着一定的偿还能力。
  5. 行为偏好-- 真正价值
    喜欢买价格高的还是买价格低的,这个部分很重要,表示人本身的当前信息,对产品后续决策有非常大的价值。

3. 模型落地

授信模型的建立过程跟数据分析标准化流程非常像,模型最终的评估指标是坏账率

3.1 数据源

每个维度用了哪些数据字段,这些就是数据源。

数据变量:

  • 原始变量:直接存储在数据库中的最基础变量,比如每天的交易额。
  • 衍生变量:因为金融的本质是风险,所以都要对原始变量进行加工转化,得到衍生变量。

一般有3种方式对原始变量进行扩充:

  • 时间维度衍生:
    • 最近一个月交易额
    • 最近三个月交易额
  • 函数衍生:
    • 最大交易额
    • 最小交易额
    • 交易额方差比例
  • 比例衍生:
    • 最近一个月交易额除以最近三个月交易额

选择变量时,基于RFM原则:

  • R(Recency,最近,最近一次消费时间间隔):指用户最近一次消费距离现在多长时间了。
  • F(Frequency,频次,一段时间内的消费频次):指用户一段时间内消费了多少次。
  • M(Monetary,,一段时间内的消费金额):指用户一段时间内消费的金额。

3.2 数据处理 => 数值化

数据处理、数据建模都是为业务服务。真实工作中,数据据处理和数据建模会慢慢迭代、优化。
所以在前期的数据处理不会很复杂,

前期的数据处理一般分为三种:

  1. 数值型和字符串型字段的缺失性和合理性检验,剔除无效字段。
    50%以上即可去掉。

  2. 数值型字段的相关性验证
    因为在前期,所有的字段都会拿出来,有很多的变量相关性非常强,但这个对于模型的训练没有帮助,因此把相关性强的先过滤掉。 【相关性规律待学】

  3. 对字符串型字段的离散化处理
    一般对字符型字段采用的是专家打分法,将字符串型变量转化成数值。

相关性过滤:一般0.7以上是高度相关性,所以在后面建模的时候,只保留一个变量即可,其他3个相关性高于0.7的变量先不要放在模型训练里。
如下图,最近1年母婴消费金额与其他三个变量均有很高的相关性,因此在后续建模的时候先保留母婴消费金额.
在这里插入图片描述
专家打分法:是按照常识理解直接分段取值。
在模型前期,只要大的逻辑没有问题即可。比如芝麻信用分评估中的身份特质,学历是小学还是博士,这样的字段不是数字型字段而实字符串型字段。然后设定小学学历信用分段是0~20, 博士学历信用分段90~100,将字符型变量转化成数值。
在这里插入图片描述

3.3 数据标准化

虽然所有变量都以数值化,但在量级和量刚上相差很大。
【?】如交易额和交易次数,这就没有可以性,所以要对所有的字段进行标准化。

标准化的方法很多,选择合适的就行,这对后面的模型效果没有影响

  • MAX-MIN
  • Z-score

【?】数据标准化后,所有变量的取值区间都会在0~1范围,接下来就可以进行数据建模了。

3.4 数据建模

在建模之前,一定要把业务目标理清,这样才能知道能用什么模型。

芝麻信用分有5个维度,5个维度在不同时期的权重也不一样,所以每个维度都要单独建模。
建模前的思考举例:

  • 业务目标:根据用户在5个维度的综合芝麻分,来给用户提供其他额外服务,比如花呗、借呗和免押金,同时保证用户不违约。
  • 建模目标:根据用户的数据,算出用户违约的概率。而这个概率也可以转化为用户的分数。
  • 模型选择:基于建模目标,选择逻辑回归模型比较合适。一是简单,二是非线性。
    在这里插入图片描述
    以历史信用为例,假设该模块包含的字段有最近一个月主动查询金融机构信用次数x1、最近一个月徐换代总额x2、最近一个月逾期总额x3,那么其违约概率就为:(x1、2、3为3个数值)
    在这里插入图片描述
    P值为用户违约的概率,a、b、c为拟合系数。

举例:A用户:身份特质、履约能力、信用历史、人脉关系、行为偏好分别算出的概率是0.1、0.2、0.3、0.4、0.5 。根据当前产品所处阶段,觉得历史信用和履约能力两个模块最重要,那么这两个模块的影响权重就是0.35,其他都是0.1。计算步骤:

  • 那么小A 的违约概率就是: P = 0.10.1+0.350.2+0.350.3+0.10.4+0.1*0.5=275
  • 分数公式:score=(1-P)*A+B,区间为[300,900],可以算出来A=600,B=300
  • 所以A的芝麻综合分=0.725*600+300=735。

模型离线效果指标: 机器学习

  • 混淆矩阵:查准率和查全率
    在这里插入图片描述
    • 混淆矩阵的理解:

      • 100:本身是未还款,模型预测后也是未还款 - 准确
      • 400:本身是已还款,模型预测后也是已还款 - 准确
      • 20:本身是已还款,模型预测后是未还款 - 不准确
      • 80:本身是未还款,模型预测后是已还款 - 不准确
    • 查准率: 模型准确度。

      • 预测准确准确的对角线100+400 = 500
      • 所有样本量100+20+80+400 = 600
      • 查准率 = 500 / 600 = 83%
    • 查全率:预测准确的样本,在选择样本中的占比。
      金融模型的主要目标是还款,所以只需看预测成功的未还款人数,在实际的总未还款人数中的占比。

      • 模型预测准确的未还款人是100人
      • 本身未还款100 + 80 = 180人
      • 查全率是100/180 = 56%
  • ROC曲线:根据混淆矩阵做出的可视化分析,区分模型是否能较好把好坏样本分开的一个图,一般都是取ROC下面的面积AUC,来衡量模型效果,越大越好,一般至少0.6以上。

离线模型看这两个参数就够了,这块本身有点难理解,特别是ROC曲线不太好举例,如果你实在不理解参数意义,那么记住也可以,因为真实工作中,最重要的还是坏账率这个评估指标。

在产品初期,因为模型的变量太多,所以模型的迭代速度都非常快,基本上每个月都要跑一次分数,这个时候肯会出现某个用户的分数奇高,这都是正常的,而这些都需要不断调整权重和系数,慢慢优化才行,不过最重要的还是落地效果,就是用了这个模型之后坏账率怎么样,这就是模型落地了 。

3.5 模型落地

模型落地举例

  • 落地前:
    如根据芝麻信用分就可以申请招联金融信用额度,那么这就涉及到两个公司的产品合作了。金融行业的合作都是非常小心的,所以在正式合作前:

    • ①招联金融会提供一批样本给芝麻,芝麻这边数据建模师根据模型给出这批用户的违约概率;
    • ②招联金融根据芝麻给出的用户违约概率,算模型的准确度;
    • ③如果模型准确度还可以,双方才会正式展开合作(用户群覆盖度和模型准确度)
  • 落地中:
    正式落地时,招联在给每个用户评估信用时,实际上芝麻信用分只是一个参考维度而已,一般都是这样:

    • ①机器调用该用户的央行征信报告评估值X,这个是最重要的;
    • ②借口调用用户的芝麻信用分Y;
    • ③该用户在招联的信用评估情况Z;

基于X,Y,Z,内部在根据专家规则法出一套授权方案(很灵活),到这一步,基本上模型就正式使用了。

3.6 模型优化

  • 落地后:
    前期一般是每一周,招联金融都会和芝麻这边对一次坏账情况,只有到这个时候,模型的参数调整才是最有意义的,这个时候也是最考验数据建模师的时候,

调参方法:

  • ①先找出是因为某个子模型引起还是所有模型引起;
  • ②如果是子模型引起,直接调整该模型的参数即可,如果是整体模型都有问题,那就要重新进行数据处理了,如WOE分组,更换衍生变量,字符型字段重新打分等等。

相关文章:

【学习笔记】互联网金融:芝麻信用分的建模过程

学习资料: 数据分析学习随记 | 互联网金融行业2C授信模型(芝麻信用) 1. 背景 互联网金融的本质是风控。 1.1 数据分析师的角色 数据分析师在金融行业基本上有两种角色: 1.1.1 数据建模师 偏算法,但要很懂业务。要求对算法的理解较深&am…...

Linux C/C++或者嵌入式开发到底有没有35岁危机?

一个读者问了一个问题: 我现在25岁,双非一本本科。在深圳上班,做嵌入式开发,打算走Linux C/C开发,工资目前一般。读了前辈写的很多博客之后,觉得很棒。我现在有一些疑问。 1.最近互联网裁员很厉害嘛&#x…...

国内领先的十大API接口排行

应用程序编程接口API即(Application Programming Interface),现在众多企业的应用系统中常用的开放接口,对接相应的系统、软件功能,简化专业化的程序开发。 一、百度API 百度API超市开通1136个数据服务接口。 网址&a…...

【Linux】Kickstart 配置U盘自动化安装Linux系统

文章目录前言一、刻录USB二、配置以BIOS方式启动引导2.1 引导文件配置2.2 KS文件配置三、以EFI方式启动引导3.1 引导文件3.2 KS文件四、 总结前言 之前安装系统,例如在VMware虚拟机中或物理服务器中,都是根据图形界面上的指示进行下一步这类的操作。 现…...

【Spring MVC】这一篇,带你从入门到进阶

目录 1、什么是MVC? 2、什么是 Spring MVC 3、如何学好 Spring MVC? 3.1、如何创建 Spring MVC 项目 3.1.1、使用Spring Initializr创建(推荐) 3.2、将 Spring 程序与用户(浏览器)联通 3.3、基础注解…...

InstallAware Multi-Platform updated

InstallAware Multi-Platform updated 原生ARM:为您的内置设置、IDE和整个工具链添加了Apple macOS和Linux ARM构建。 本地化:引擎内多语言感知,可再分发工具,具有资产隔离功能,使您的IP保持安全。 模板:将…...

Spring Batch 高级篇-多线程步骤

目录 引言 概念 案例 转视频版 引言 接着上篇:Spring Batch ItemWriter组件,了解Spring Batch ItemWriter处理组件后,接下来一起学习一下Spring Batch 高级功能-多线程步骤 概念 默认的情况下,步骤基本上在单线程中执行&…...

关于iframe一些通讯的记录(可适用工作流审批)

一.知识点(1).我们可以通过postMessage(发送方)和onmessage(接收方)这两个HTML5的方法, 来解决跨页面通信问题&#xff0c;或者通过iframe嵌套的不同页面之间的通信a.父页面代码如下<div v-if"src" class"iframe"><iframeref"iframe"id…...

JavaWeb

1、静态Web html、css 2、动态Web 提供给所有人看的数据始终会发生变化。技术栈&#xff1a;Servlet/JSP&#xff0c;ASP&#xff0c;PHP。 Web应用程序&#xff1a;可以提供浏览器访问的程序。 1、这个统一的web资源会被放在同一个文件夹下&#xff0c;web应用程序-->Tom…...

ip段192.168.1.0/24和192.168.0.0/16

192.168.1.0/24192.168.1.1 ~ 192.168.1.254前24位为网络前缀&#xff0c;后8位代表主机号。如下1100 0000&#xff0c;1010 1000&#xff0c;0000 0001&#xff0c;0000 0000192.168.0.0/16192.168.0.1 ~ 192.168.255.254前16位为网络前缀&#xff0c;后16位代表主机号。如下1…...

《爆肝整理》保姆级系列教程python接口自动化(二十二)--unittest执行顺序隐藏的坑(详解)

简介 大多数的初学者在使用 unittest 框架时候&#xff0c;不清楚用例的执行顺序到底是怎样的。对测试类里面的类和方法分不清楚&#xff0c;不知道什么时候执行&#xff0c;什么时候不执行。虽然或许通过代码实现了&#xff0c;也是稀里糊涂的一知半解&#xff0c;这样还好&am…...

【第二章 IOC操作bean管理(XML注入其他类型属性(字面量,外部bean,内部bean,级联赋值)、XML注入集合属性)】

第二章 IOC操作bean管理&#xff08;XML注入其他类型属性&#xff08;字面量&#xff0c;外部bean&#xff0c;内部bean&#xff0c;级联赋值&#xff09;、XML注入集合属性&#xff09; 1.IOC操作bean管理&#xff08;XML注入其他类型属性&#xff09; &#xff08;1&#xf…...

Kotlin-枚举和印章

kotlin-枚举 枚举也是一个对象&#xff0c;枚举对象的定义需要使用enum关键字 枚举对象可以定义函数 假设定义一个星期枚举对象。就是一下写法 enum class Week {星期一,星期二,星期三,星期四,星期五,星期六,星期日;//打印星期几fun printWeek(){println("这是星期枚举对…...

_linux (TCP协议通讯流程)

文章目录TCP协议通讯流程TCP 和 UDP 对比TCP协议通讯流程 下图是基于TCP协议的客户端/服务器程序的一般流程: 服务器初始化: 调用socket, 创建文件描述符;调用bind, 将当前的文件描述符和ip/port绑定在一起;如果这个端口已经被其他进程占用了, 就会bind失 败;调用listen, 声…...

PMP考试详解,新考纲有什么变化?

一&#xff0c;为什么优先考虑PMP持证人员&#xff1f; PMP证书在我国大型企业、跨国企业、央企/国企等单位的招聘中都比较重视&#xff0c;特别是在许多项目投标环节中&#xff0c;明确标明需要有PMP持证人员&#xff0c;才能在投标、竞标中代表公司有资格承担项目。 除此之…...

C++学习笔记-日期和时间

C中可以使用的日期时间API主要分为两类&#xff1a; C-style 日期时间库&#xff0c;位于头文件中。这是原先<time.h>头文件的C版本。 chrono库&#xff1a;C 11中新增API&#xff0c;增加了时间点&#xff0c;时长和时钟等相关接口。 在C11之前&#xff0c;C编程只能使…...

Nordic nRF芯片FDS模块学习

FDS系统学习 文章目录FDS系统学习一、ROM&#xff0c;RAM&#xff0c;FLASH作用二、ROM,RAM和FLASH在单片中的运作原理三、Flash访问模块FDS用法1. FDS在sdk_config.h中的配置2. fds_register()注册3. fds_record_write()写记录4. fds_record_find()查找5. fds_record_open()读…...

JVM 学习(1)—JVM 与 JMM 内存模型简单理解

一、JVM 内存模型概述 (1) 为什么会出现 JVM 内存模型呢&#xff1f; JVM 内存模型是为规范描述 Java 虚拟机在执行 Java 程序时&#xff0c;将程序中的数据和代码存储到计算机内存中的方式和规则。JVM 内存模型定义 Java 虚拟机所使用的内存结构以及内存区域之间的关系&…...

NMS详解

(类别&#xff0c;坐标1&#xff0c;坐标2&#xff0c;坐标3&#xff0c;坐标4&#xff0c;类别分数) step1&#xff1a;对最后一列分数进行排序 &#xff0c;可以看到类别就被打乱了 step2&#xff1a; 弹出得到selected_bboxes作为基准&#xff0c;减少bbox_list。其实就是准…...

考出PMP证书到底有没有用?

我们将从三方面分享&#xff1a; 1. PMP 证书在国内的含金量怎么样&#xff1f; 2. HR 如何看待 PMP 证书&#xff1f; 3. 拿到 PMP 证书后&#xff0c;有哪些变化&#xff1f; 一&#xff0c;PMP证书的含金量 说到 PMP 证书的含金量&#xff0c;相信这个问题是所有学员都…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

React---day11

14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store&#xff1a; 我们在使用异步的时候理应是要使用中间件的&#xff0c;但是configureStore 已经自动集成了 redux-thunk&#xff0c;注意action里面要返回函数 import { configureS…...

基于Springboot+Vue的办公管理系统

角色&#xff1a; 管理员、员工 技术&#xff1a; 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能&#xff1a; 该办公管理系统是一个综合性的企业内部管理平台&#xff0c;旨在提升企业运营效率和员工管理水…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...