干货 | 联通政企数据运营体系建设

news2024/9/22 19:44:10

0b8f74308fbf7d5f425081cdca23066e.png

以下内容整理自大数据能力提升项目必修课《大数据系统基础》同学们的期末答辩汇报。

539969ae51526c38c68dd140f6d313b2.png

我们将从以下几个方面为大家介绍我们的项目,首先第一部分是需求分析,然后是数据提取及处理,接着样本定义与分布、特征粗筛与模型选择、特征精筛与评分卡建模、TOAD评分卡构建及决策建议。

940604280e52279254a00e92d7ffdf88.png

首先是需求分析。联通在客户评级场景下有以下痛点。首先,政企客户的欠费情况比较普遍,他们的逾期客户占比比较高,并且账收比高企,并且联通公司对于逾期客户缺乏预警,缺乏预期风险、营收规模、客户自身经营风险等的综合评估,并且缺乏客户评级,也因此导致他们在客户服务力量和资源的分配上没有办法按照科学的评级进行调配。此外,联通内部的数据相对比较混乱,缺乏一个具体的指标,因此就对我们提出了以下几个具体的需求:首先第一个需求是进行数据清洗,我们对现有的这样的数据资源来进行整合,重点是去筛选出来我们需要的指标;第二方面是我们需要搭建有效的这样的一个客户评级模型,我们借鉴金融风控的C卡模型来构建我们的评分卡体系,原因是我们需要根据已有的逾期的情况去预期他们是否能够按期还款,接着我们需要提高模型的准确率,因为需要去跟一些具体的企业客户进行催收的工作,所以需要尽可能减少我们的用户打扰,所以我们需要同时使用客户逾期可能性以及客户的逾期严重程度来进行模型搭建;最后,我们需要使用DWF平台来搭建一个可视化的用户评级体系来促进业务使用,并且给予业务一些象限分析的商业建议。

02acf0df6063e44d5e9751f4c24d9e7c.png

首先我们进行的数据提取与整理,我们主要包括两部分的数据,第一部分是关于我们的工商数据,我们主要是使用一个组件entid来对54张工商信息的表进行有效的整合。其次,我们是对过往的欠费数据进行了宽表整理,其中比较重要的事情是目标变量的选择,主要包括两个变量,第一个是预期可能性。我们和业务进行沟通之后,认为单月逾期涉及多方面因素,所以不能轻易的定义为逾期客户,因此我们将连续两个月以上逾期的客户定义为外客户。第二个指标是逾期严重程度。为了规划企业自身的季节性消费波动,我们计算单月逾期占年逾期的金额比例作为逾期的严重程度。也根据以上这两个跟业务沟通的目标变量的定义,进行了具体的逻辑计算,并且使用SQL进行最后的数据提取。最后,我们将工商数据与过往的欠费数据进行表的组合。

d132681564507e24533f2964392e6892.png

接下里进入到两个目标变量的解释。我们这个项目整个大环境是一个决策智能建议,决策智能最重要的其实并不是后面的模型,反而更重要的是前面target定义。就我们在这个决策智能领域,只要把target给定义好了,其实后面的事情跑通很简单。所以首先第一个是刚才同学讲的这些坏的可能性,或者说坏的趋势,术语叫做M2plus。单看一个月坏,它并不是坏,基于他们领域知识,他们认为连续两个月坏才有一个坏的趋势。我们基于这样的知识去定义一个二分类的样本定义,在表现期内,如果连续两个月以上处于逾期是一个正样本。大部分人还是好的一个样本,当然这个比金融领域的会稍微正样本会多一些。考虑到时间关系,导师在系统里面给我们抽样千分之一左右,这是让我们在本地可以跑的量级。

1d785cec9602d40c532663f5036a0e28.png

然后除了坏的趋势之外,我们还要看客户坏的程度。根据刚才讲的指标,分母是采用年化出账金额去把它规划到季节性的消费波动。所以一个客户,如果他消费的多,他同时他逾期又多,那才有可能是坏的。但最后产生另一个问题,既然是决策的话,我们可能并不需要一个连续的变量。它本来原始的数据是一个连续值,我们需要去做一个二分类才方便去做决策,但是问题是在于,如果与其比例是一个连续的,究竟选一个什么样的点是合适的?我们plot出了一个比例和前面M2plus的相关关系。我们用轴步法去大概判断出一个人的逾期比例、企业的逾期比例大于等于四分之一或者三分之一的这个区间里。以四分之一来判断,如果一个企业客户在这一个账期内,在这一年内,他的预期比例大于或等于25%我们把它判定为正样本,然后其他的是副样本,这样本正副样本比例大概一比五左右,比刚刚会稍微要高一些。

5838db8194b77d3f05ab4412f5322c91.png

样本定义完之后,我们在智能决策领域,我们讲究三个重要的指标,一个是模型的准确性或者泛化能力,第二个是讲究模型的稳定性,第三个还要讲究模型的可解释性。和刚刚同学用深度学习讲的不一样的地方在于,我们并不是追求它预测准确性,所以您看到我们整个十折交叉验证的重要指标其实是K值,是能够在金融领域或者说这种风险决策领域区分出好坏之间的差别的。所以AUC并不是我们判定的唯一指标,我们通过对比就三种模型,就Lr算一个可解释性很强的线性模型,后面两个是黑箱模型,我们想要这边想要做一个事情,就是用线性可解释的模型是否可以达到和黑箱模型相同的效果,但同时线性模型有更强的解释力呢?我们通过十折交叉验证发现在两个target上面都确实有这样的一个结论。当然,前提是我们对Lr做了一个变换,没有做WOE变换的话,其实效果很差的。

1e276dfcba23bd7fa2c45d62342fa891.png

选定Lr模型之后,我们又进一步去看不同的特征在不同的模型之间的重要性。黑箱模型其实是适合对特征做一个粗筛,两个模型如果都认为重要的,我们一定放进后期的评分卡建设中。但如果随机森林认为不重要,但是Lr认为重要,我们可能会后续斟酌一下,看是否会放进去。

7ad38f6cf38fb4e8a9730b45eaaaf630.png

最后我们就进入到后面的评分卡模型建设。在评分卡不变的话,第一步首先是基于变量的信息量对变量的粗筛。去除了一些不会进入最终评分卡模型的变量之后,我们会主要是根据它的iv值,就是它的信息值来对它进行筛选。iv其实是每一个变量里面正负样本的差值和对数比的相关系数,主要是衡量变量的信息预测能力。而在评分卡的业务上应用的时候,对于iv值大于1的一些变量,一般就会认为它是有信息泄露的可能,一般会把这些变量做额外的规则,或者基于业务的一些调整或者分时之后再考虑添加。然后iv值在0.02以下的话一般是一个对于预测没有太多价值的变量,所以一般就是在考虑在大于0.02到1的这一部分的变量作为进粗筛的变量。第二步的话是调整变量分箱,因为我们最后的用是评分卡,主要用的是能独立回归,所以最后希望实现基于每一个分箱之间的odds值是等级即进和单调变化。最理想的话,右下角这边是里面的近12个月的逾期欠费次数的理想状况,它的红色代表坏账率,这个线是单调的,而且基于业务解释的话,也能够解释到在12月的观察期内以及欠费次数越多的话,代表它后面的逾期欠费可能性越高,或者说rate的程度可能会越高的业务解释是通的,而且这样的单调和线性的分箱结果在进入到WOE编码之后,才会有一个更好的结果。而对于像左下角这种分类变量的话,比如说在这里只会有一个负值到正值的一个整数变量的话,一般的话会考虑到左上角的iv值和它的分箱结果,然后去手动尝试一些调整的分箱。比如,单独把-1的这部分给提取出来,iv值会增长,而且还是保持一个比较理想的单调变化。所以最后在评分卡模型里面也会保持三个分箱的结果,而以此类推对其他的所有可能的变量作分箱之后,就可以进入到我们后面的第二次的变量筛选,是基于模型算法的一个筛选。

c1a71911d4640ef04e420a96b667a26b.png

在评论卡里面主要是通过逐步回归来筛选正向逆向选择里面的变量子集,然后以AIC和BIC的准则去筛选到最后的一些能够进入到里面的一些变量,也会考虑采用LASSO或者岭回归的选择。最后目标是能够保持在8到15个变量在评分卡里面。然后右边的话就是分别以m2plus和二分后的rate的两个目标变量做的评分卡的建模的十折交叉验证,然后在评分卡的模型建构过程中,主要是用的逻辑回归。十折交叉验证,对于整体的性能和模型稳定性都有一个比较好的解释,比如在左边能看到基本上十折跑出来的结果稳定性还是相对比较高的。右边的以二分后的逾期欠费占比的评分卡会稍逊于前面的M2plus。整体的话也在变量筛选的过程中参考到随机森林和Lr联动的时候的一些重要的特征,最后确定的模型在M2plus的评分卡里面有11个,然后里面有7个是前面的共有的特征,然后rate的评分卡有10个会进入到最后的模型,还有一些像psi这样的指标是衡量评论卡里面变量的稳定性,通过实际的一些验证之后,里面的变量基本都是小于0.01的水平是比较理想的。对于最优模型的筛选,主要是用到ks bucket,在坏账率这一列,如果它是一个组和组之间的区别,相对大而且显示出严格单增,一般就是考虑到这个模型是一个比较理想的,可以作为最优的模型。

最后的话是对评分卡的赋分,一般的话是基于业务的决策层和管理层,他们对于业务理解和解释的需求,对基础的比率和评分之后做出了一个人为输入的主观的一些部分。最后TOAD这个包会通过人为的部分,然后跑出来每一个变量对每一个分箱指定的分数。正值的话是分数越高,客户逾期的可能性越低。如果是负值的分箱,代表落到这个分箱里面的客户,他的逾期可能性会越高。评分卡的特点对于业务人员而言,容易解释不同客户的不同得分,容易理解这些得分背后的原因,而且理解他如何提高得分以去判定客户的逾期可能性。然后下一步一般在实际的业务里面还会耗时间耗资源的是评分卡实施前后的报告,或者说稳定性报告以及以结合业务专家或者结合到长期的实施和实践里面的评价,对于一些iv值过高的特殊变量,会对它进行单独的客户分群处理等等。由于我们这个项目的条件的限制,这部分可能就没有在我们这个项目里体现。

然后接下来是我们把整体的评分卡设计到DWF平台上去。我们的初衷,希望能够通过我们查看客户的id可以迅速定位到他各个指标的情况,比如说我们可能查询其他的条件,比如成立时长比较长的公司,包括它注册资本规模相对来说是什么样规格的公司,它的情况,以及我们在和黄云老师沟通的过程中,我们说到可能国资背景的企业会多一些,我们也加入了这个行业的搜索等等,这是我们想实现的第一个功能。然后第二个就是我们在查询到这个公司或者说查询到几类公司之后,我们能迅速给出一个评分卡的指标,包括总分以及各个指标上的对应的分数,通过交互的方式来让客户知道在各个评分卡的中的情况。

在这个过程中,联通的这个项目让我们意识到不仅仅是对于联通公司而言,只是评估他的客户逾期的风险怎样,或者他的收益是怎么样。更重要的是可能背后我们认为可以去监测中小企业,包括说一些大企业的运行状况,对于工商的监测来讲是一个更好的补充。然后第二个就是说在我们沟通的过程中存在一个技术逻辑和业务逻辑之间的争论。通过我们平时研究的角度,我们往往会从理论上去建立一些评分卡指标,但是在这个过程中,我的队友包括现有数据的研究中,可能先有一个理论的框架去搜索数据。我们先从数据出发,然后再去建立评分卡,然后再走向理论和现实意义。

c9a80cf8f7b92a9a319a8060c01d7ccc.png

在这个基础上,我们最后想实现的一个功能是给予联通公司也给予政府一个能够决策的建议,分为两个层面,第一个层面,企业本身有没有逾期的可能性;第二个是关于逾期的程度,就是说它逾期的金额大概有多少。这是第一个指标。第二个指标,我们想说企业本身的营收能力,给联通公司带来的营收能力大概是高还是低。第二个就是结合它的预期风险,建立这样一个思维的指标,我们了解并不是仅仅去完成一个作业,而是可能在这个项目沟通包括完成任务的过程中,我们要更加细心,更加负责任。

编辑:文婧

校对:刘光栋

4c38df246d1bb233a4a2cbd4501cd8fa.png

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

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

相关文章

Java性能权威指南-总结28

Java性能权威指南-总结28 数据库性能的最佳实践Lambda表达式和匿名类Lambda表达式与匿名类加载 数据库性能的最佳实践 Lambda表达式和匿名类 对很多开发者而言,Java 8最激动人心的特性就是加入了Lambda表达式。不可否认,Lambda对Java开发者的开发效率有…

mac电脑 flv转mp4怎么转

mac电脑 flv转mp4怎么转?相信大家平时在电脑上下载视频的时候遇到过这样一个尴尬的事情,下载下来的视频不能被直接打开播放,而是需要使用专门的播放器才能打开查看,例如flv就是这样一种视频格式。大家都知道视频文件的格式种类非常…

CoT及ReAct解密与实战(三)

第8章 CoT及ReAct解密与实战 8.5 ReAct及计划和执行案例实战 我们来看一下LangChain的官方文档,首先它很简单的说了一下,计划和执行代理(Plan and execute agents)首先计划要做什么,然后执行子任务来实现目标,言外之意ReAct不是这样的,我们在ReAct中看见的内容是,有一步…

Debian使用Tomcat实现国密访问

环境准备: Debian 10 java version "1.8.0_131 Apache Tomcat/9.0.76 360国密浏览器 一.下载并安装jdk8 1.访问网站下载jdk8 https://www.oracle.com/java/technologies/downloads/#java8 2.解压到相应目录 3.配置环境变量 vim ~/.bashrc# java export JAV…

云端地球在建筑设计行业的应用

背景概述 建筑设计行业一直处于技术革新的前沿。随着数字化、信息化、智能化等技术的不断发展,建筑设计也将呈现出新的发展趋势。比如,计算机辅助设计、虚拟现实技术等将成为建筑设计的重要工具。此外,人工智能、大数据、物联网等新技术的应…

leetcode刷题——复制带随机指针的链表

思维导图: 题目描述: 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点…

WPS Office AI实战:AI带来的文档智能化体验

前面我们已经了解过 AI 在PPT制作、Word写作方面带来的革命性效率提供,今天一起来聊聊在线文档的AI应用。如果你习惯用在线文档的话,一样也可以享受到AI的强大优势。金山在线智能云文档已经接入WPS Office AI套件大家庭,用AI来改造写作的新时…

QT day3作业

有点不对,不能运行了,怪事 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//字体 void Widget::on…

认识MQTT(C语言)

MQTT基础概念 MQTT 入门介绍 | 菜鸟教程 MQTT使用 在linux下搭建MQTT服务器(Broker) 在linux下执行下面命令安装MQTT服务器 📎mosquitto-1.6.3.tar.gzhttps://www.yuque.com/attachments/yuque/0/2023/gz/35243076/1687955850547-b594126…

003-Dubbo服务的发布和引用

目录 Dubbo3.0发布注册应用级注册-配置应用级注册-端口应用级注册-消费者-确定服务信息应用级注册-消费者-元数据中心 Dubbo3.0 发布注册 应用级注册-配置 因为接口级注册随着服务增多,注册中压力会越来越大 所以在3.0版本提供了应用级注册 #默认是all 接口和应…

两两交换链表中的节点——力扣24

题目描述 方法一:递归 class Solution{ public:ListNode* swapPairs(ListNode* head){if(!head || !head->next){return head;} ListNode* newHead head->next;head->next swapPairs(newHead->next);newHead->next head;return newHead;} }; 方法…

python以固定时间间隔取行

目录 1. 间隔取行2. 时间戳间隔取行:下采样参考链接 1. 间隔取行 dataframe 实现每隔 n 行取 1 行 近期在做数据分析的时候,用到了对csv文件每隔n行取1行的操作,正常情况下会立马想到for循环,可能大家还会有其他方法&#xff0c…

第八章——函数探幽

C内联函数 内联函数是为了提高程序运行速度所做的一项改进。常规函数与内联函数的主要区别不在于编写方式,而在于C编译器如何将它们组合到程序中。 对于 C内联函数,编译器将使用相应的函数代码替换函数调用,程序无需跳到另一个位置处执行代…

LEADTOOLS V22 支持.NET 5-7.0 Crack

使用 LEADTOOLS 构建更好的应用程序 LEADTOOLS 由专利人工智能和机器学习算法提供支持,是一系列综合工具包,可将识别、文档、医疗、成像和多媒体技术集成到桌面、服务器、平板电脑、网络和移动解决方案中。 光学字符识别/ICR 以无与伦比的速度和准确性提…

Django系列所有漏洞复现vulhubCVE-2018-14574,CVE-2022-34265,CVE-2021-35042

文章目录 Django < 2.0.8 任意URL跳转漏洞&#xff08;CVE-2018-14574&#xff09;漏洞详情&#xff1a;复现&#xff1a; Django Trunc(kind) and Extract(lookup_name) SQL注入漏洞&#xff08;CVE-2022-34265&#xff09;漏洞详情&#xff1a;复现&#xff1a; Django Qu…

十五分钟逐步掌握关键路径问题(时间余量、关键活动以及关键路径的求解)

关键路径问题 名人说&#xff1a;莫听穿林打叶声&#xff0c;何妨吟啸且徐行。—— 苏轼《定风波莫听穿林打叶声》 本篇笔记整理&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 关键路径问题〇、概念说明1、AOE网2、关键路…

微服务系列文章之 nginx负载均衡

nginx负载均衡 负载均衡建立在现有网络结构之上&#xff0c;提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽&#xff0c;增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。 随着网站的发展&#xff0c;服务器压力越来越大&#xff0c;我们可能首先会将数…

虚拟IP绑定公网IP访问

绑定公网 IP 我们目前的虚拟 IP&#xff0c;还不能通过公网的形式进行访问&#xff0c;我们首先&#xff0c;来使用内部的 IP 进行访问看看效果如下&#xff1a; curl 虚拟IP 如上图我访问了两次&#xff0c;第一次访问返回的是 2222 的 nginx&#xff0c;第二次访问是 1111 的…

【SpringCloud-9】JWT

这一篇主要介绍一下&#xff0c;微服务之间的用户权限问题。 通常呢&#xff0c;对于用户的登录鉴权&#xff0c;有两种方式&#xff1a; 1、基于session的方式&#xff1a; session是要存到服务端的&#xff0c;但是分布式服务太多&#xff0c;不可能每个服务端都存。 那就…

Python:文件选择界面 and 文件夹选择界面

文章目录 &#xff08;1&#xff09;文件选择界面&#xff08;2&#xff09;文件夹选择界面 Python本身没有内置的文件夹选择界面。然而&#xff0c;可以使用第三方库来实现在代码中选择文件或文件夹的功能。一个常用的库是tkinter&#xff0c;它是Python的标准GUI库之一&#…