首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

评分法模型开发-WOE值计算

对入模的定量和定性指标,分别进行连续变量分段(对定量指标进行分段),以便于计算定量指标的WOE和对离散变量进行必要的降维。对连续变量的分段方法通常分为等距分段和最优分段两种方法。...等距分段是指将连续变量分为等距离的若干区间,然后在分别计算每个区间的WOE值。...结束对连续变量的分段及其WOE值的计算,接下来我们需要对离散变量做必要的降维处理及其WOE值得计算。...可见,该步骤在整个模型开发过程中占据非常重要的位置,定量和定性入模指标的筛选及其WOE值的计算,都会对整个信用风险评分卡产生重要的影响。...在模型开发的第五步,我们将使用入模定量指标和入模定性指标的WOE值进行逻辑回归,并详细讲述生成信用风险评级模型标准评分卡的过程。

1.4K60
您找到你想要的搜索结果了吗?
是的
没有找到

IV值和WOE值记录

IV和WOE记录 IV (Information Value) 1)用途:评价特征或变量的预测能力。...类似的指标还有信息增益 、增益率和基尼系数等 2)IV的计算依赖于WOE WOE(Weight of Evidence) 1)要对一个变量进行WOE编码,需要把这个变量进行分组处理(离散化 / 分箱...),分组后对于第i组,WOE的计算公式如下: WOE_i=ln(\frac{py_i}{pn_i})=ln(\frac{\frac{\#y_i}{\#y_T}}{\frac{\#n_i}{\#n_T}}...所以,WOE表示的实际上是“当前分组中响应客户占所有响应客户的比例”和”当前分组中没有响应的客户占所有没响应的客户的比例“的差异 IV的计算 IV_i=(py_i-pn_i)*WOE_iIV = \...为什么使用IV而不是直接用WOE 1.IV和WOE的差别在于IV在WOE基础上乘以($py_i-pn_i$)- $pyn$ ,乘以了这个$pyn$变量保证了每个分组的结果都是非负数。

2.4K20

风控建模中的IV和WOE

并用简单的例子让大家明白在实际中如何运用这两个变量,最后给出建模过程中实际需要用到的Python代码。 1....WOE和IV的公式 2.1 WOE WOE可以写成两种形式,分别对应了两种不同的解释 第一种: ?...我们来看一种极端的情况,看看WOE的值会是多少。 ? 表 1 - 极端例子1(用第一种方法算WOE) 从表1可知,如果该分箱中坏人在总坏人中的占比和的该分箱中的好人在总好人中占比相同,WOEi为0。...用Python计算WOE和IV 接下来用一个实例说明如何在python中计算变量的WOE和IV 3.1 加载数据 由于篇幅原因,不在文中放具体数据,如需要,请到公众号中回复“用python计算iv”...在变量转换成woe的阶段会根据业务逻辑微调变量切割的阈值。

1.9K30

风控ML | 风控建模的WOE与IV

的原理 WOE是weight of evidence的缩写,是一种编码形式,首先我们要知道WOE是针对类别变量而言的,所以连续性变量需要提前做好分组(这里也是一个很好的考点,也有会说分箱、离散化的,变量优化也可以从这个角度出发...先给出数学计算公式,对于第i组的WOE可以这么计算: 从公式上可以看出,第i组的WOE值等于这个组的响应客户占所有响应客户的比例与未响应客户占所有未响应客户的比例的比值取对数。...对于上面的公式我们还可以 简单做一下转化: 所以,WOE主要就是体现组内的好坏占比与整体的差异化程度大小,WOE越大,差异越大。...02 IV的原理 上面我们介绍了如何计算一个分组的WOE值,那么我们就可以把变量所有分组的WOE值给算出来了,对应地,每个分组也有一个IV值,我们叫 ,其中: 计算这个变量的IV值就是这样子就可以了...04 Python实现 我们知道,针对连续型变量,是需要先转换为类别变量才可以进行IV值的计算的,现在我们把数据导入到Python中,原始变量是连续型变量,那么我们如何在Python里实现IV值的计算呢

3.4K20

风控算法最常见的知识WOE讲解!

想起刚入门风控时,天天对变量进行WOE变换,很多书籍和文章都讲得很详细,公式和例子都有,但他们很少直接回答: 为啥要用WOE? 不用WOE不行吗? WOE有啥神奇功效?...我们需要引入WOE编码。 一、什么是WOE 我相信在看到这篇文章时,你已经看过很多关于WOE的讲解,但为了照顾第一次研究WOE的朋友,我还是详细解释下。...现在我们观察bad rate 和 WOE的关系,WOE越大,bad rate越高,也就是说,通过WOE变换,特征值不仅仅代表一个分类,还代表了这个分类的权重。这就回答了问题”WOE编码为啥有效“。...为了解决这个非线性的问题,我们用WOE代替年龄段,根据WOE的计算过程,我们可以知道WOE值越高的分类,违约率越高,这样就可以把非线性映射转换成线性映射。...下图已经把年龄换成了WOE,可以看到WOE和违约率是线性。 ?

2.8K50

风控ML | WOE前的分箱一定要单调吗

今天分享的WOE单调性讨论,也是我们在建模过程中选择特征进行模型前需要考虑的一个细节问题。关于WOE,可以参考一下前面的文章回顾一下哈,《风控ML[3] | 风控建模的WOE与IV》。...✍️ 背景交代 WOE回顾 LR模型的入参一定要WOE吗? WOE不单调可以进LR模型吗?...WOE转化前的变量分箱结果的badrate一定需要满足单调性吗? 连续变量一定要分箱?难道就不可以直接进LR模型吗? 02 WOE回顾 在我们开始拆解问题前,有一个知识点需要回顾一下,那就是WOE。...对于上面的公式我们还可以 简单做一下转化: 所以,WOE主要就是体现组内的好坏占比与整体的差异化程度大小,WOE越大,差异越大。 03 LR模型的入参一定要WOE吗?...并非所有LR的入参都需要WOE的,也可以是直接原始值入模型的。但存在即合理,为什么大家都在说要对变量进行WOE编码呢?我们可以引出下面两个问题: 什么情况下用WOE比较合适?

1.7K30

评分卡原理及Python实现

本文目录 评分卡原理 评分卡Python实现 2.1 根据客户违约概率计算客户得分 2.2 根据分箱WOE和特征系数计算客户得分 一、评分卡原理 根据逻辑回归原理,客户违约的概率p有如下式子: ?...二、评分卡Python实现 从评分卡原理的分析中知,得到客户的最终得分有两个计算公式: ? 或 ? 如果已经通过逻辑回归的训练得到客户的违约概率,且只想得到客户的最终得分。...根据最终评分卡形式编写Python脚本如下,可得到标准评分卡 def var_card(cut,woe,coef,B): import warnings warnings.filterwarnings...如果想根据评分卡对应分段的值得到最终得分,可在Python中输入如下代码: def all_score(score_card,data,A,B,θ0): var_name = score_card...至此,逻辑回归的原理和代码阐述完毕,感兴趣的同学可以自己根据公式,写出对应的Python代码。

1.1K30

【干货】风控建模中把原始变量转成WOE实现

很多刚开始建模的同学,对原始变量转WOE都是一知半解,弄不清楚为什么要转WOE,也不清楚要怎么把变量转成WOE。...对于WOE原理不清楚的小伙伴,可以先看下本公众号之前的文章:风控建模中的IV和WOE。 本文重点讲解用Python中的toad库实现变量的WOE转换。...二、Python实现变量WOE转换 1 读取数据 首先导入挑选完入模变量后的建模数据,包括12个自变量,1个因变量。...至此,风控建模中把原始变量转成WOE实现已讲解完毕 往期回顾: 一文囊括Python中的函数,持续更新。。。 一文囊括Python中的有趣案例,持续更新。。。...一文囊括Python中的数据分析与绘图,持续更新。。。 一文囊括风控模型搭建(原理+Python实现),持续更新。。。

55330

风控模型—WOE与IV指标的深入理解应用

WOE和IV的应用价值 Part 2. WOE和IV的计算步骤 Part 3. WOE定义的初步猜想 Part 4. 从贝叶斯角度理解WOE Part 5....WOE和IV的应用价值 WOE(Weight of Evidence)叫做证据权重,大家可以思考下为什么会取这个名字? 那么WOE在业务中常有哪些应用呢?...若相邻分箱的WOE值相同,则将其合并为一个分箱。 当一个分箱内只有好人或坏人时,可对WOE公式进行修正如下: 在实践中,我们还需跨数据集检验WOE分箱的单调性。...下图是合理的WOE曲线变化示例。 图 2 - 左为训练集WOE曲线,右为测试集WOE曲线(都单调) 这里提前给大家留下问题:为什么要保持WOE曲线要保持单调性?在某些情况下是不是可以不满足单调性?...WOE曲线的斜率是否越陡越好? Part 3. WOE定义的初步猜想 为了搞清楚为什么WOE公式是如此定义的,我们尝试对其进行各种变换。

1.8K51

Machine Learning-特征工程之卡方分箱(Python

初次接触变量分箱是在做评分卡模型的时候,SAS软件里有一段宏可以直接进行连续变量的最优分箱,但如果搬到Python的话,又如何实现同样或者说类似的操作呢,今天就在这里简单介绍一个办法——卡方分箱算法。...六、Python代码实现 1.导入相关库 import numpy as np from scipy.stats import chi2 import pandas as pd from pandas...return 'group{}'.format(num_groups) 5.实现WOE 编码 def calWOE(df ,var ,target): ''' 计算WOE编码 param...() 七、Python代码使用 cutoffs = chiMerge(data,'MAX_AMOUNT','target',max_groups=8) ''' PS:绝大数情况下,会将缺失值NaN归类到最后一组...评分卡建模—卡方分箱(1) 2.Python评分卡建模—卡方分箱(2)之代码实现 3.python评分卡建模—实现WOE编码及IV值计算 (以上文章均来自“风控建模”公众号,作者为东东&Monica)

5.6K20

一文介绍特征工程里的卡方分箱,附代码实现

初次接触变量分箱是在做评分卡模型的时候,SAS软件里有一段宏可以直接进行连续变量的最优分箱,但如果搬到Python的话,又如何实现同样或者说类似的操作呢,今天就在这里简单介绍一个办法——卡方分箱算法。...六、Python代码实现 1.导入相关库 import numpy as np from scipy.stats import chi import pandas as pd from pandas import...return 'group{}'.format(num_groups) 5.实现WOE 编码 def calWOE(df ,var ,target): ''' 计算WOE编码...() 7.Python代码使用 cutoffs = chiMerge(data,'MAX_AMOUNT','target',max_groups=8) ''' PS:绝大数情况下,会将缺失值NaN归类到最后一组...评分卡建模—卡方分箱(1) [2] Python评分卡建模—卡方分箱(2)之代码实现 [3] python评分卡建模—实现WOE编码及IV值计算 (以上文章均来自“风控建模”公众号,作者为东东&Monica

3.7K20
领券